免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: week008
打印 上一主题 下一主题

[算法] 求助DES加密算法在java与c之间的差别 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2010-10-13 12:58 |只看该作者
回复 1# week008


    加密算法一般是根据块加密的,比如8字节,16,32字节对齐。
    好久没接触了,DES好像是56有效位+8位吧。
    当加密的最后一个分片大小不够对齐的时候,则会采用一个默认字符来补齐。比如使用“空格”来补齐。
    而不同的库可能使用的补齐字符不相同,有些可能使用空格,有些可能使用0,这样一来,相当于
    加密的字符串已经不同了,所以最后的加密结果也会不同。所以你需要先确定两个库使用的补齐字符
    是相同的

    另外解密的时候,因为加密后的结果都是按块对齐的,所以不需要再次对齐,但是解密后的结果有可能
    是加了补齐字符的,你可以通过计算md5看看是否存在这个情况,如果存在的话,则你还需要将后面补齐
    的字符去掉。

论坛徽章:
0
12 [报告]
发表于 2010-10-13 13:01 |只看该作者
DES算法的提出者,好像没有给出高效的实现方法,加解密速度很慢的,不太适合使用频率高,或者加解密大文件,你可以试试AES的算法。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP