0

私はiPhoneアプリとPHPWebサービスの間に暗号化を実装しようとしています。ただし、機能していません。テキストの前半は復号化されていないようですが、後半は正常に復号化されています。私は何をすべきか?

PHPの暗号化方法は次のとおりです。

function decrypt($str, $iv) {
    $iv .= "00000000";
    $str = base64_decode($str);
    return self::decrypt_data($str, $iv, self::secret_key);
}

テキストを暗号化するiPhoneのものは、次のようなCryptoHelperクラスを使用します。

NSString *encrypted = [[CryptoHelper sharedInstance] encryptString:dataString];

CryptoHelperクラスはhttp://pastie.org/1267796で見ることができます。

4

1 に答える 1

1

既知のBase64エンコード文字列をiPhoneアプリからPHPに送信する簡単な例を試してください。

既知の有効な文字列をPHPが取得しているものと比較します。最近、スクリプトからPHPにAjax投稿を行おうとすると+、URLデコードを自動的に実行していたため、一部の文字(具体的には)がPHPによってスペースに変換されるという問題が発生していました。+すべてを%(URLエンコードされ%2Bた)同等のものに切り替える必要がありました。これで問題が解決しました。

于 2010-11-02T21:43:12.090 に答える