在java中有一个类 - 'Key Generator' - 这个类提供了秘密(对称)密钥生成器的功能。
你基本上需要使用这个类为秘密密钥生成,在一个方式如下:
SecretKey aesKey = KeyGenerator.getInstance("AES").generateKey();
这将产生与它作为参数传递的算法默认长度的密钥,在这个例子中将生成128位的密钥(默认为AES)。
或使用以下功能:
public static SecretKey generateSecretKey()
{
KeyGenerator keyGener = KeyGenerator.getInstance("AES");
keyGener.init(256) // here you can pass any valid length
return keyGener.generateKey();
}
您可以将这些生成的密钥转换为字符数组,字节数组或字符串,然后可将它们存储与任何数据库,使用下列内容:
char[] key = encodeHex(aesKey.getEncoded());
或
byte[] key = aesKey.getEncoded();
更多细节请参阅KeyGenerator类: http://docs.oracle.com/javase/7/docs/api/javax/crypto/KeyGenerator.html
乐意帮忙。
感谢,ANKIT
你需要使用'blob'用于存储对象和对象必须在数据库存储之前被序列化。看到这个更多的信息。 http://stackoverflow.com/questions/2747203/want-to-store-object-in-mysql-database – Ali786 2014-10-30 08:45:07
什么将数据类型的秘密密钥 – 2014-10-30 08:53:30
使用字符串对象来存储密钥。 – Ali786 2014-10-30 08:58:42