当前位置:首页 > 开发 > 编程语言 > 加密解密 > 正文

aes加密时的Illegal key size or default parameters

发表于: 2014-06-06   作者:alleni123   来源:转载   浏览:
摘要: KeyGenerator kgen = KeyGenerator.getInstance("AES"); kgen.init(256, new SecureRandom("test".getBytes("utf-8"))); SecretKey secretKey = kgen.gener
 KeyGenerator kgen = KeyGenerator.getInstance("AES");  
         kgen.init(256, new SecureRandom("test".getBytes("utf-8")));  
         SecretKey secretKey = kgen.generateKey();  
         byte[] enCodeFormat = secretKey.getEncoded();  
         SecretKeySpec key = new SecretKeySpec(enCodeFormat, "AES");  
         Cipher cipher = Cipher.getInstance("AES");// 创建密码器   
         byte[] byteContent = "content".getBytes("utf-8");  
         cipher.init(Cipher.ENCRYPT_MODE, key);// 初始化   
         byte[] result = cipher.doFinal(byteContent);  
		
         System.out.println(result.length);


这里kgen.init()只能设置128,设置大于这个数时就会报标题上的错误。

解决方法 http://stackoverflow.com/questions/6481627/java-security-illegal-key-size-or-default-parameters

这里要把文件解压缩到jdk/jre/lib/security
之前解压到jre/lib/security没有效果。

aes加密时的Illegal key size or default parameters

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号