java cipher des 加解密问题 10

SecureRandomsr=newSecureRandom();byterawKeyData[]=。。。。DESKeySpecdks=newDESKeySpec(raw... SecureRandom sr = new SecureRandom();
byte rawKeyData[] = 。。。。
DESKeySpec dks = new DESKeySpec(rawKeyData);
SecretKey key = SecretKeyFactory.getInstance("DES").generateSecret(dks);
Cipher cipher = Cipher.getInstance("DES");
cipher.init(Cipher.DECRYPT_MODE, key, sr);
代码如上,在初始化(cipher.init)中 sr 的作用是什么,文章中说是随机数源,加密的时候也加入,解密的时候也需要加入,但是这个随机数种子没在外面定义,难道是在init内部定义的? 这个参数很是困惑,麻烦有明白的大侠牺牲点时间指点指点,不胜感激。
展开
 我来答
  • 你的回答被采纳后将获得:
  • 系统奖励15(财富值+成长值)+难题奖励10(财富值+成长值)+提问者悬赏10(财富值+成长值)
wantwo3
2016-11-30
知道答主
回答量:6
采纳率:0%
帮助的人:2.9万
展开全部
种子可以自己定义,不定义就使用默认方式。
http://tool.oschina.net/uploads/apidocs/jdk-zh/java/security/SecureRandom.html
在CBC模式下,如果用SecureRandom,则每次加密的结果都会不一样,因为JAVA内部会用随机的IV来初始化Cipher对象
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式