在过去的几周中,我开发并发布了一个小型的OS X实用程序应用程序,该应用程序在Mac App Store中的售价约为3美元。但是,由于法国针对包含加密机制的应用程序制定了出口法律,因此该应用程序在法国应用程序商店中不可用。
(它附带并使用libssh2并通过SSH实现SCP,因此它不使用“操作系统提供的加密机制”-其注册过程全部在法语中进行,苹果公司和法国政府似乎都无法执行帮助。)
当我收到一堆电子邮件询问为什么该应用程序目前在法国Mac App Store中不可用时,我想到了提供该应用程序的非MAS版本。谈到我的第一个问题,我不确定是否要花时间实施任何类型的许可证密钥检查等,还是只提供完全没有DRM /许可证检查的版本,因为它肯定会被破解。 (Mac App Store版本现在已经可以使用torrent了,因此无论我最终做什么,想要窃取该应用程序的人都可以使用。)
所以,我想问你们如何处理这个问题,或者如果您处于我的情况下将如何处理呢?花时间实施将通过两种方式破解的许可证密钥检查,或者只是提供将在法国出售的非DRM版本以使所有人满意?
谢谢。
免责声明:来自HN(https://news.ycombinator.com/item?id=7796397)的原始线程
更新以完成此操作:
我最终决定为Mac App Store版本实施许可证验证,这对用户而言非常轻松。在最好的情况下,他甚至不会注意到这一点,在最坏的情况下(在应用捆绑包中找不到收据),该应用将触发商店代理下载收据,然后成功重新启动。很简单
对于非Mac App Store版本(由于上面解释了法语App Store问题而引入了该版本),我坚持由第三方承包商负责,该承包商为我处理所有许可。
我想这种方式是安全性与积极的用户体验之间的良好折衷。感谢您的输入。
最佳答案
以我的经验,如果您打算出售该软件,则应考虑使用非常轻巧的许可证检查器。正如您所指出的,如果人们有足够的动机,他们就会破坏您的DRM,因此您不能希望防止故意的盗版。但是,拥有一个简单的系统来提醒在线下载软件的用户,他们应该为此付费(如果有必要,请提供一个基本的试用系统)是一种合理的方法。
但是,不要花费太多时间来实施该系统,并确保在每个发行版之前都对关键系统进行了全面的测试,因为试图向用户说明您不小心使他们无法使用已付费的软件是你永远不想做的事情。
比是否会被黑客入侵更大的问题是,管理许可的开销是否会压倒利润。例如,我已经看到具有非常便宜的应用程序的人基本上为购买应用程序的用户提供了一个复选框,以关闭试用版中的提醒。非常类似于共享软件,但是考虑到许可问题的成本和潜在的审查麻烦,可能值得考虑采用这种方法。
如果您想付出更多努力,则有几个开源库,包括Aquatic Prime提供了更完善的保护,但需要与您使用的任何类型的在线商店进行集成。由于它在社区中得到了广泛的使用,因此FastSpring之类的商店系统提供了与其的内置集成。同样,开源Potion Store似乎开箱即用。我没有亲自使用过。
除此之外,我的经验是,创建/调试/支持非常麻烦,除非您的应用昂贵到需要部分启用,到期许可,区域测试,实时吊销等特殊功能,否则可能不值得做任何自定义工作。
关于macos - 非MAS应用程序:实现许可证验证,还是不?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23857211/