Android Encryption And Decryption With Hex Decimal Values?
本问题已经有最佳答案,请猛点这里访问。
我需要在Android中进行加密和解密,
现在我使用"aes"算法加密,我得到了一些加密值,比如"?*?1FO??'但我需要这样的输出'38533f4b3f385203f443f283f3f'
谁都知道……
我的加密代码
1 2 3 4 5 6 7 8 9 10 | IvParameterSpec _IVParamSpec = new IvParameterSpec(IV); SecretKeySpec sks = new SecretKeySpec(KEY,"AES"); cipher.init(Cipher.ENCRYPT_MODE, sks,_IVParamSpec); /*byte[] bt = new byte[256] ; bt = hexStringToByteArray(strToDecrypt);*/ //final String decryptedString1 = new String(cipher.doFinal(bt)); //final String decryptedString = new String(cipher.doFinal(strToDecrypt.getBytes("UTF-16LE"))); final String decryptedString2 = new String(cipher.doFinal(Base64.decode(strToDecrypt, Base64.NO_WRAP))); String StrHex = toHex(decryptedString); final String decryptedString1 = new String(cipher.doFinal(strToDecrypt.getBytes())); |
使用此包:http://commons.apache.org/proper/commons-codec/它支持转换十六进制字符串,并提供除aes(afaik)之外的各种加密。