我正在尝试创建我的 Cocoa 应用程序的试用部分。我已设置所有许可(包括 key )等。
但我想知道如何存储用户第一次在安全位置运行程序的时间,用户无法轻易找到和/或编辑它。
我对 NSUserDefaults standardUserDefaults 很感兴趣,但用户可以在 Library > Preferences 中轻松找到和编辑该数据。
最佳答案
我反对让它 super 安全。我们曾经有一个服务器激活,但完全离开了它。以下是一些原因:
- 即使是最“安全”的存储方式也可能被攻破
- 即使是小众产品,也可能会开发出破解方法,无论您的方法多么安全,都无法绕过
- 很少有非常昂贵、非常安全的方法。其他的都破解了
- 这有悖于公平和诚实的用户,使他们更难解决引起问题的问题
- 如果用户确实破解了您的软件或规避了您的安全措施,他也可能永远不会购买它
- 80% 的用户甚至不知道什么是偏好文件
- 95%的用户没有想到为了延长试用期而删除它的可能性
- 一种大规模重置试用期的简单方法可以简化您对出于任何原因想要再次试用的用户的支持
- 信任用户是一个很好的卖点
- 高级用户倾向于反对保护过多的软件
我很确定这些想法有一些异常(exception),但极少数。我会说:不要把时间浪费在注册安全上,而是给
关于objective-c - 如何使用 Objective C 安全地存储数据? (Mac/ cocoa 开发),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3475295/