如何在Java中为AES算法创建自己的密钥?

时间:2012-02-18 13:18:30

标签: java encryption cryptography key aes

如何在Java中使用AES算法创建自己的密钥来加密字符串,而不是使用

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

创建一个随机密钥?

2 个答案:

答案 0 :(得分:4)

使用SecretKeySpec

SecretKey key = new SecretKeySpec(bytes, "AES");

答案 1 :(得分:2)

kgen不是关键,实际关键是您的SecretKeySpec对象。您可以使用原始字节创建密钥...请参阅下面的示例...

KeyGenerator kgen = KeyGenerator.getInstance("AES"); 
            kgen.init(128);
            byte raw[] = {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16};
            SecretKeySpec spec = new SecretKeySpec(raw, "AES");
            //SecretKey key = kgen.generateKey();
            //byte keybytes[] = key.getEncoded();
            //SecretKeySpec spec = new SecretKeySpec(keybytes, "AES");