Дорогие Гуру,
У меня есть код на Java с lib надувной замок, как это:
private static String AES (boolean encrypt, String inputString, String keyString) {
byte [] input, cipherText;
int outputLen;
BufferedBlockCipher cipher = new BufferedBlockCipher(new AESEngine());
input = HexString.hexToBytes(inputString);
cipher.init (encrypt, new KeyParameter (HexString.hexToBytes(keyString)));
cipherText = new byte[cipher.getOutputSize(input.length)];
outputLen = cipher.processBytes( input, 0, input.length, cipherText, 0);
try {
cipher.doFinal (cipherText, outputLen);
} catch (DataLengthException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalStateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InvalidCipherTextException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return HexString.bytesToHex(cipherText);
}
этот метод вывода выглядит так:
screet: 6a7573742074657374696e6700000000
ключ: 6f2ca4106748c1eaeff88bdad4049285
Результат: f1ecd6bc3109b1f2355be3a32dd49874
и это мой код на IOS:
NSLog( @"Screet : %@", secret );
NSLog( @"Key : %@", key );
NSString *encryptedString = [secret AES256EncryptWithKey:key];
NSLog( @"Result : %@", encryptedString );
NSLog( @"Result Hex : %@", [NSString stringToHex:encryptedString] );
Screet: 6a7573742074657374696e6700000000
Ключ: 6f2ca4106748c1eaeff88bdad4049285
Результат: UBXp6lFnM + XAZvVeOuYkI / T4 + brXyGBmzGOUMO + XrGS8MWGDVb0RrZGBHyw2l2Ml
Результат Hex: 55425870366c466e4d2b58415a7656654f75596b492f54342b6272587947426d7a474f554d4f2b58724753384d57474456623052725a4742487977326c3246
Я использую NSData + AESCrpt с этого форума.
Есть ли какие-либо предположения, что для того же результата, то же IOS и Java (32 байта на строку)?
Спасибо за помощь гуру:).