下载此文档

rsa(117位)限制加密解决方案.doc


文档分类:IT计算机 | 页数:约5页 举报非法文档有奖
1/5
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/5 下载此文档
文档列表 文档介绍
前一阵给公安局做项目,用到了公钥加密技术及对称密钥加密技术。信息通过 3 DES 进行加密,而密钥通过 RS A公钥体系传送。客户端使用 CP U卡 eKe y进行解密。但是在系统编写过程中发现, . net 中的 RSA 加密算法为了提高安全性, 在待加密数据前要添加一些随机数,因此, 中的 RSA 加密算法一次最多加密 117 字节数据(多于 117 字节需要拆分成多段分别加密再连接起来),经过加密后得到一个长度为 128 字节的加密数据。但这对于需要进行收发双方身份确认的公钥体系来说会带来不少麻烦。在我的系统中,我需要通过以下步骤实现对用户会话密钥的网上加密传递: 加密过程: 1、对会话密钥添加随机数,补充到 128位, 2、使用 CA私钥解密,结果为 128位数据, 3、对数据使用用户公钥加密,得到 128位数据, 通过网络传送。解密过程: 1、使用用户私钥解密网上传送的128 位数据; 2、将结果使用 CA 公钥加密; 3、去掉用来混淆的随机数, t中的 RS A加密最多只能对 117字节数据进行操作, 导致 128 位数据不得不分两部分进行处理, 于是加密数据不断膨胀。为了解决这个问题, 并使得 RS A加密、解密过程与 e Key 上的过程相一致,我只好编写自己的 R SA 加密算法。经过查找了大量资料后, 我决定利用现成的 B igInt eger 类。可以参考 http ://ww eproj om/cs harp/ bigin teger .asp 得到更多的信息。利用 BigI ntege r,我添加了两个方法 RSAEn crypt 和 RSAD ecryp t,实现 R SA 加密解密。这样就再也不用受 117 字节的限制了。下面给出了两段程序, et自带 R SA 加密算法实现加密解密,不过 Text Lengt h属性一旦超过 117,系统将无法加密;程序二是经过改造的系统,可以对128 位的数据进行加密,没有了 117 的限制。程序二省略了 BigIn teger 类,需要的话可以从 h ttp:/ /www. codep rojec /csha rp/bi ginte sp下载, 不要忘了注释其中的 M ain 方法,否则在编译时会有一个编译错误,说有两个入口点(当然也可以在项目属性中指定一个入口点)。程序一: usi ng Sy stem; usin g Sys ecuri yptog raphy ; usi ng Sy stem. Text; cla ss Ol dRSA ...{ st atic void Main( )...{ int TextL ength =117; b yte[] encr ypted Data; byt e[] d ecryp tedDa ta; strin g Key 1=" <RSAK eyVal ue><M odulu s>4n6 EJsx4 qNFpp 6h+wc PdJz8 sSMMR JEVJa BQEGs OOBHK NePo/ v3M94 Nf89+ zL5lL H7/Lu RgcUf nizVI ETH/z 9+H/y DuM0F 3fjIm N3UtK 1

rsa(117位)限制加密解决方案 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数5
  • 收藏数0 收藏
  • 顶次数0
  • 上传人tanfengdao
  • 文件大小56 KB
  • 时间2017-05-24