下载此文档

关于加密数据的填充方式的研究.doc


文档分类:IT计算机 | 页数:约13页 举报非法文档有奖
1/13
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/13 下载此文档
文档列表 文档介绍
关于加密数据的填充方式的研究.doc关于加密数据的填充方式的研究摘要:针对不同平台环境下加解密的互通问题,结合Java平台下密码扩展服务SunJCE提供的加密类函数Cipher,对加密算法中使用到的明文填充方式进行阐述。详细介绍加密时明文数据的常用填充规则,并比较数据填充前后的区别,深入分析SunJCE支持的填充方式与常用填充规则的对应性,并对RSA算法的加解密互通进行了测试。加密数据填充方式的研究,为Java平台与其他平台之间加解密参数的约定提供了依据。双方只有遵循相同的填充和去填充规则,才能实现有效的解密。关键词:SunJCE;Cipher;加密模式;填充中图分类号:TN911?34文献标识码:A文章编号:1004?373X(2014)22?0020?04StudyonmodeandpaddinginencryptionalgorithmFANZhi?ying(,Beijing100048,China)Abstract:Aimingattheinteroperabilityofencryptionanddecryptionindifferentplatformenvironment,,andtheiradvantages,,whichcannarrowtherangeofencryptionanddecryptionparametersforJavaandotherplatforms,:SunJCE;Cipher;encryptionmode;padding0引言对网络中传输的信息进行加密,可以有效地保护重要信息和敏感信息的安全。但是在计算机软件开发中,编程语言种类繁多,虽然都提供标准算法的支持,但如果没有统一加密算法中的参数,不同语言环境下的通信双方往往不能正确解密。一般情况下,使用不同语言开发的双方只有约定加密模式和明文填充方式,保证字节序列相同,保证密钥的生成方式与编码相同,使用相同字符编解码方式等,才可以保证加解密双方的互通。本文主要结合Sun公司的Java加密扩展(JavaCryptographyExtension,SunJCE)服务提供的加密类―Cipher,对加密模式和明文填充方式这两个重要参数的进行了深入分析,为加解密参数约定提供参考。1加密类Cipher参数分析使用Java编程实现时,SunJCE提供的加密类Cipher包含了多种公开的对称和非对称加密算法。为了创建Cipher对象,需要调用Cipher类的getInstance方法,并传递一个transformation参数。其中在获取cipher实例的时候使用的API为:iphergetInstance(Stringtransformation,Stringprovider)其中provider的名称是可选参数,默认为SunJCE提供者。transformation的格式为:“algorithm/mode/padding”。表1详细列出了transformation的参数,后节主要针对下表中的填充方式进行深入分析[1]。2填充方式从表1可以看出,SunJCE加密算法中提供的模式有:电子密码本模式(ECB)、密码分组链接模式(CBC)、密码反馈模式(CFB)、输出反馈模式(OFB)、计数器模式(CTR)、密码文本盗用模式(CTS)、扩散密码分组链接模式(PCBC),还有一种模式为NONE,它表示在加解密过程中不使用任何模式。由于不同平台和不同编程语言遵循的加密模式具有一致的定义,因此只要加解密双方按照协商指定模式进行加解密即可。表1SunJCEProvider支持的Cipher的详细信息而对数据在加密时进行填充、解密时去除填充则是通信双方需要重点考虑的因素。对原文进行填充,主要基于以下原因:首先,考虑安全性。由于对原始数据进行了填充,使原文能够“伪装”在填充后的数据中,使得攻击者很难找到真正的原文位置。其次,由于块加密算法要求原文数据长度为固定块大小的整数倍,如果加密原文不满足这个条件

关于加密数据的填充方式的研究 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数13
  • 收藏数0 收藏
  • 顶次数0
  • 上传人lxydx
  • 文件大小67 KB
  • 时间2016-09-08