サーバーでAES256暗号化を行い、iosで復号化します。それは長い間機能しませんでしたが、暗号化する前にテキストを base 64 エンコードして暗号化することにしました。
誤って base64_encode($source) の周りに中かっこを置き、それが機能し始めました。したがって、この間違ったコードが機能するようになりました(iosでうまく復号化されます):
$ciphertext = mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key, "base64_encode($source)", MCRYPT_MODE_CBC, $iv);
そして正しいことはまったく機能しません:
$ciphertext = mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key, base64_encode($source), MCRYPT_MODE_CBC, $iv);
それが違いを生む場合は、cake phpを使用してください。何が間違っていて、違いは何ですか? なぜブレースが機能し、ブレースがないと復号化に失敗するのですか? 非常にばかげた質問で申し訳ありませんが、私は暗号化が初めてです。