私は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に移植する方法についての助けは非常にありがたいです。
ありがとう。