正如我们许多人所知,Apple 最近出现了一种情况,黑客能够免费获得任何应用内购买。Apple 最近发布了描述如何修补它的文档,但我对第 4 步有点困惑,希望能提供任何帮助。
第一步是下载他们的补丁 .h 和 .m,将其包含在您的项目中,并将其链接到安全框架。好的,好的,知道了。然后苹果说:
4. Provide a base64 encoder, a base64 decoder, and the action to perform when validation succeeds.
关于编码器的部分到底意味着我应该做什么?(验证成功时要执行的操作对我来说很清楚。)当然,我在类中看到了命名的base64_encode
函数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 个编码和 2 个解码功能。我知道有一对返回NSString*
s,但为什么第二对返回 achar*
和 a void*
?这些函数期望返回什么?我真的不明白。