我的任务是将 AES 加密从 Java 移植到 Objective-C。我无权访问发生解密的服务器代码。使用FBEncryptor,我设法在 Objective-C 中对字符串进行简单的 AES 加密,并在 Java 中对其进行解密,反之亦然。
但是,当我尝试将 Objective-C 中的加密数据发送到服务器(同样,我无权访问)时,服务器向我发送了“DER 输入不是八位字节字符串”错误。我认为 Java 中的这段代码是我无法在 Objective-C 中复制的,它是我在任务中取得成功的道路。
Cipher cipher = Cipher.getInstance("AES/CBC/PKCS5Padding");
cipher.init(Cipher.ENCRYPT_MODE, sKey);
String ivBase64 = Base64.encodeBytes(cipher.getParameters().getEncoded());
与ivBase64
加密字符串一起发送到服务器。
cipher.getParameters().getEncoded()
非常感谢任何有关如何将这个小部分移植到 Objective-C 的帮助。
谢谢。