ios - 修补应用内购买黑客;卡在第四步

标签 ios encoding in-app-purchase decoding

正如我们许多人所知,Apple 最近出现了一种情况,黑客可以免费获得任何 App 内购买。 Apple 最近发布了 this document 描述了如何修补它,但我对第 4 步有点困惑,希望得到任何帮助。

第一步是下载他们的补丁 .h 和 .m,将其包含在您的项目中,并将其链接到安全框架。好的,好的,明白了。然后苹果说:

4。提供 base64 编码器、base64 解码器以及验证成功时要执行的操作。

关于编码器的部分究竟意味着我应该做什么? (我很清楚验证成功时要执行的操作。)当然,我在类中看到了名为 base64_encodebase64_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*,但为什么第二对返回 char*void*?这些函数期望返回什么?我真的不明白。

最佳答案

听起来他们想要一个通用的 base64 编码器。在此处尝试一些代码:

http://cocoadev.com/wiki/BaseSixtyFour

(免责声明:我没有测试过这些)

这是第二个更容易阅读的: http://cocoawithlove.com/2009/06/base64-encoding-options-on-mac-and.html

关于ios - 修补应用内购买黑客;卡在第四步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11612897/

相关文章:

c++ - 使用字符串流解码十六进制编码的字符串

python 2.7 : How can I pass in arguments such as 'café' from the shell and not get 'cafÚ' ?

ios - 购买应用内购买后保存更改

ios - ios7中的自动续订订阅

cocoa-touch - 自动订阅应用内购买 : Restoring Subsequent Renewals

ios - 编辑 plist 中的现有数据

iphone - 从推送通知打开应用程序时,如何转到某个 View ?

iphone - PresentModalViewController 操作耗时

ios - Xcode - 可执行文件仅在 RELEASE 模式下使用无效权利进行签名

java - 字符串编码不输出所有字符