2013-10-01 55 views
0

只是一個簡單的問題:將密鑰(使用AES)轉換爲字符串

如何將SecretKey轉換爲字符串?

使用javax.xml.bind.DatatypeConverter爲BASE64我得到以下錯誤消息:在javax.xml.bind.DatatypeConverter

printBase64Binary(字節[])不能被施加到(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); 

回答

0
作爲

錯誤消息指示printBase64Binary需要一個字節數組作爲參數,但要傳遞實現SecretKey的接口,而不是一個對象。 嘗試

DatatypeConverter.printBase64Binary(myAesKey.getEncoded());