2015-04-17 4 views
-1

мне нужно сделать шифрование и дешифрование в андроиде,Шифрование и дешифрование Android с шестнадцатеричными десятичными значениями?

Теперь я использую «AES» Алгоритм шифрование, я получил некоторые шифровании значения, как «*» 1FO, но мне нужен такой вывод «38533F4B3F3852203F443F3F283F3F»

Любой есть идея ..

Мой код для шифрования

  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())); 
+0

Итак, вы спрашиваете, как преобразовать массив байтов в шестнадцатеричную строку в Java? http://stackoverflow.com/questions/9655181/convert-from-byte-array-to-hex-string-in-java –

+0

38533F4B3F3852203F443F3F283F3F - это Hex String, это не encakepted. каковы ваши исходные данные? – Amir

+0

@Amir Для примера, если введите «userid», мне нужен вывод, подобный этому «40d44d0» с шифрованием AES – saravanan

ответ

0

использовать этот пакет:
http://commons.apache.org/proper/commons-codec/
поддерживает преобразование шестигранных строчек, а также предоставляет различное шифрование, кроме AES (AFAIK)

+0

ОК, я попробую..thanks для ur replay – saravanan

+0

Пожалуйста, попробуйте и отформатируйте свои предложения, это не YouTube, мы стараемся избегать языка YouTube, потому что он затуманивает сайт. –

Смежные вопросы