私たちの多くが知っているように、Apple では最近、ハッカーがアプリ内購入を無料で入手できるという状況がありました。Apple は最近、パッチの適用方法を説明したこのドキュメントをリリースしましたが、ステップ 4 で少し混乱しており、助けていただければ幸いです。
最初のステップは、パッチ .h および .m をダウンロードし、それをプロジェクトに含めて、セキュリティ フレームワークにリンクすることです。わかりました。すると、Apple は次のように述べています。
4. Provide a base64 encoder, a base64 decoder, and the action to perform when validation succeeds.
エンコーダに関する部分は、私がすべきことを正確に何を意味していますか? (検証が成功したときに実行するアクションは、私には明らかです。)確かに、クラス内にbase64_encode
andという名前の関数が表示されます。base64_decode
しかし、それは何を求めているのでしょうか? これは、ハッキングを防ぐための、私だけが知っている特別な PIN 番号のようなものですか? ここで何をすべきかわかりません。もちろん、エンコードとデコードの全体的な概念はわかりますが、この状況で適切に生成する方法のプログラムの詳細はわかりません。
これが役立つ場合、Appleが書いたコード:
- (NSString *)encodeBase64:(const uint8_t *)input length:(NSInteger)length
{
#warning Replace this method.
return nil;
}
- (NSString *)decodeBase64:(NSString *)input length:(NSInteger *)length
{
#warning Replace this method.
return nil;
}
#warning Implement this function.
char* base64_encode(const void* buf, size_t size)
{ return NULL; }
#warning Implement this function.
void * base64_decode(const char* s, size_t * data_len)
{ return NULL; }
また、エンコード機能とデコード機能が 2 つずつあることにも困惑しています。sを返すペアがあることはわかりましたが、2 番目のペアが aと aを返すNSString*
のはなぜですか? これらの関数は何を返すと予想されますか? 私は本当にそれを取得しません。 char*
void*