将密钥(使用AES)转换为字符串

时间:2013-10-01 14:58:42

标签: string base64 secret-key

只是一个简单的问题:

如何将SecretKey转换为字符串?

对base64使用javax.xml.bind.DatatypeConverter我收到以下错误消息:

javax.xml.bind.DatatypeConverter中的

printBase64Binary(byte [])无法应用于(javax.crypto.SecretKey)                     String myAesKey_as_string = DatatypeConverter.printBase64Binary(myAesKey);

代码是:

        KeyGenerator keygenerator = KeyGenerator.getInstance("DES"); 
        SecretKey myAesKey = keygenerator.generateKey(); 
        String myAesKey_as_string = DatatypeConverter.printBase64Binary(myAesKey);

1 个答案:

答案 0 :(得分:0)

由于错误消息指示printBase64Binary期望将字节数组作为参数,但您传递的是实现SecretKey接口的对象。 尝试

DatatypeConverter.printBase64Binary(myAesKey.getEncoded ());