问答详情
源自:3-1 JAVA-对称加密算法AES

请问老师aes加密时候用的password是密钥吗?为什么用KeyGenerator又生成了一个key

          KeyGenerator kgen = KeyGenerator.getInstance("AES");  

                kgen.init(128, new SecureRandom(password.getBytes()));  --这里传入了一个password的字符串!

                SecretKey secretKey = kgen.generateKey();  

                byte[] enCodeFormat = secretKey.getEncoded();  

                SecretKeySpec key = new SecretKeySpec(enCodeFormat, "AES");  


提问者:慕粉3168712 2016-04-08 19:47

个回答

  • dreaming2015
    2016-05-22 14:48:32

    password可以认为是密钥,但是除password之外,实际还要设置IV属性。之后用generateKey生成的是最终的key,也就是加密使用的key