入力されたNSStringをCCCrypt(AES256)とプレーンテキストキーを使用して暗号化するiPhoneアプリがあります。文字列とキーは、NSDataオブジェクトを返す暗号化メソッドに渡されます。
[データの説明]をリクエストすると、「data」は暗号化された文字列データで、「<0b368353 a707e7de 3eee5992 ee69827e e3603dc2 b0dbbc0b 861ca87d f39ce72a>」のようなNSStringが得られますが、これをNSStringに変換しようとすると、「(null)」になります。
NSStringをユーザーに返す必要があります。これは、同じプレーンテキストキーを使用して元の文字列に復号化するために使用できます。NSDataオブジェクトの'description'プロパティが文字列を返すことができる場合、 "(null)"を取得せずにNSDataオブジェクトからNSStringを生成する方法はありますか?
更新:混乱した文字列を生成するためにBase64エンコーディングを使用することを提案してくれたQuinnに感謝します。私が理解していることから、Base64エンコーディングは単に文字を交換するのではなく、文字交換は位置に依存するので、それで問題ありません。
私の唯一の懸念は、メッセージを「パスフレーズ」で暗号化し、混乱した文字列をデコードする必要があるときに同じパスフレーズを入力する必要があることです-これを実装する方法を誰かが提案できますか?