所以,经过6个月的努力,我终于发布了我的申请。今天我发现第一个下载它的网站被破解了,我想知道你们程序员同事中是否有人知道如何应对这种东西?

有什么软件作者可以做什么来让破解的版本离线,或者我只是骨头,不应该再创建任何软件,而只是在客户的项目上工作?你有什么建议?有人有这方面的经验吗?

编辑:编程是我所做的——所以是否继续没有问题,只是客户为每个项目支付真金,我仍然不知道独立开发是否至少会为所投入的时间付出代价,现在有了破解的下载,我试图评估该做什么,以及是否有办法做出反应

帖子讨论:当我看到这个问题引起了多大的兴趣时,我想说,即使不是纯粹的编程主题,社区也需要说出他们的想法。我想说,对于任何对这个主题感兴趣的程序员来说,这个页面都是一个非常好的读物。


当前回答

I don't know for sure what I would do in your position, but at least one developer who found his cracked software available as a torrent emailed the host to complain -- not about the crack, but about the quality of the crack. It seems that the cracker didn't do a very good job and made the software less desirable. The developer was apparently horrified that his product, with his name, was going out to people and would ruin his product's good reputation, and demanded that if someone was going to crack it, that they needed to do a better job!

这个故事出现在Slashdot上:

开发者要求海盗湾不移除Torrent

其他回答

好的,我在网上卖软件已经快10年了。我有好几种产品面向个人和企业销售。

当我看到开发人员很高兴有人认为他们的软件值得窃取时,我总是感到震惊。你不是已经知道了吗?如果你认为它毫无价值,为什么还要花时间去创造它呢?

我敢打赌,如果有人闯进你的房子偷了你的东西,你不会说:“哇,我有一些很棒的东西,有人不费吹吹之力把它拿走了,我感到很荣幸。”偷就是偷,不管是保时捷911涡轮增压、音乐、软件还是一包口香糖。

还有一种流行的说法是,盗版不会影响销售。我自己也做过一些不同的实验,在这个行业中也有朋友因为盗版而遭受了巨大的收益影响。

事实上,我有一款产品,我总能知道它什么时候是关键产品,因为销量会立即暴跌70%。我使用的是部分密钥验证,当我更新验证以使假代码停止工作时,销售立即恢复正常。我想你会认为一个月几千美元对销售有很大影响吧?

在一个实验中,我使用部分密钥验证将输入盗版密钥的客户重定向到一个特殊的网页,该网页解释说他们正在窃取。

你猜怎么着?超过50%的人去了那个页面购买了软件。这几乎使销量回到了关键时期之前的水平。

如果代码对他们有用,那些人就会偷软件。这是一款功能齐全的30天试用产品,所以他们已经对软件进行了全面测试。此外,这款产品价格不到20美元,所以不算贵。

我认识的其他人也尝试过将虚假代码重定向到网页的技术,结果与此类似(有时效果明显更好)。

我同意有些人永远不会买你的软件,你必须平衡保护未经授权的使用和给诚实的客户带来不便。

但不要以为盗版不是什么大问题,不值得投入大量精力来防止。人们并不像我们大多数人想的那样诚实。

更新

首先我想说的是,正如我在下面的评论中所说的,我不会就此展开争论或辩论——尤其是基于语义的争论。多年来,我一直在亲自、在会议上、在私人论坛上讨论这个问题。我以前听过所有的争论。

现在我想回答一些建设性的问题。

我用两种不同的产品做了自己的实验。

其中一个是Outlook插件,用于管理各种隐藏的安全设置。个人和公司都购买了它。上面的数字是该产品。

我还在一个以业务为目标的产品上做了另一个实验,该产品将数据库模式转换为各种格式。这个产品从我重定向假密钥到的页面的转化率略低(大约少10%,所以是40%)。

我也知道有几个企业主也做了同样的实验,并私下与我讨论了结果。这些产品范围很广。有些是垂直市场,有些是水平市场。他们在假关键页上的转化率在20%到70%之间。即使在低端,这也是一笔可观的额外收入。

接受现实吧。大多数盗版你的软件的人无论如何都不会买它。但这并不是停止制作软件的理由,几乎所有主要的软件都被破解和盗版,但Adobe和大型游戏工作室等都还在经营。

你可能想要添加这样的内容:

你从未告诉我们破解的版本是否来自演示版本-但你应该直接从你的构建中识别这一点。

我的做法是在构建过程中在几个地方使用ID常数来识别客户。这样我就能找到泄露的源头,只需要下载被破解的那个。

演示版本很容易被破解(但你也应该识别它们——一个ID用于tucows,另一个用于major,等等)。我没有一个简单的方法,除非你能一直考虑在线使用。

问候 拉斐尔

想要移除被破解的版本就像猫捉老鼠的游戏,水下拳击,死马殴打,在流沙中游泳。你可能想尝试使用像Crack Tracker这样的工具,但这仍然是一个非常无用的斗争,恕我直言。

你唯一能指望的是“让诚实的人保持诚实”,并说服一些几乎诚实的人试着诚实一点。无论你想出什么疯狂的保护方案,最终你的保护都会被取消……特别是如果它很有趣的话。黑客们做了一些疯狂的事情,比如在硬件加密狗中实现的RE'd程序功能,并将它们重新添加到软件中…

正如Dana提到的,部分密钥验证是一个非常有趣的想法。再加上“好吧,我放弃”之类的信息(包括一个到你的订单页面的链接,可能还有折扣)可能会产生奇迹……但这一切都取决于你的应用有多专业,以及你的市场是什么样的。

不要认为你可以让“我永远不会付钱”的盗版者付钱,也不要给你的合法客户带来太多不便。