开源代码被人抄去用另一个语言重写闭源,只能认栽吗

52 天前
 Dimole

如题。每次开源项目更新后第二天,闭源的程序就能跟进一样的功能。使用 IDA 反编译后发现其闭源程序部分实现逻辑相似度较高,只是使用了不同语言,而对方认为他用另一个语言重写了就是没有相似度、和开源原作无关联。

开源的时候不知道江湖水深,选择的是 MPL-2.0 ,是只能认栽了吗?

4508 次点击
所在节点    问与答
43 条回复
kinghly
52 天前
你造车,别人也造车。
peteretep
52 天前
选择开源前就要想清楚,
这就是开源的效果啊,
人家不参考不复制,那开源的意义在哪里?
iorilu
52 天前
这很正常把

这已经是文明的了

再说了, 如果你不愿意这样, 那完全可以关闭开源, 并且从性能功能超过对方不就行了
Greendays
52 天前
用另一种语言写了那就是人家的东西了。
w3
52 天前
我的所有开源项目都是 AGPL-3.0 最严格的条款。

- 代码修改后再发布时必须同许可证开源
- 代码仅跑在自家服务器、供外部用户通过网络使用时必须开源
a33291
52 天前
@WillBeethoven OP 描述这种好像没办法,类似 TX 直接"借鉴"别人的创意,并未直接借用任何产物
zzz22333
52 天前
既想开源又不想被白嫖,建议还是不要开源了。
w3
52 天前
@a33291 对方留下了可比对的“文本相似度”证据,如果没有那是真没办法了。
nevin47
52 天前
@Dimole #8 拿了就跑正常,拿了跑了不回馈社区还嘴贱骂一嘴,这种建议贴出来骂死他。。。
Foxkeh
52 天前
那就许可证改掉
icanfork
52 天前
那你以后闭源就好了
hxsf
52 天前
> "而对方认为他用另一个语言重写了就是没有相似度、和开源原作无关联"

首先,直接阅读你代码然后自己再写一份(不论语言)都是侵犯你著作权的!
像规避著作权侵犯,一般最稳健的做法是使用净室设计( Clean-room design )( https://en.wikipedia.org/wiki/Clean-room_design )百科里也有相关案例(正反面)
BTW 净室方法不能规避专利。
dcsuibian
52 天前
第一个层面:
首先,如果对方是大量参考了你的代码然后翻译成另一种语言,那他这种实际属于派生作品。如果他闭源分发了,那就是违法开源协议。
第二个层面:
即使他违反开源协议,你要举证也是非常困难的。

建议:
谁主张谁举证。如果你觉得他说开源版本会丢数据的言论不实的话,你可以大大方方地在项目相关文档中说明并驳斥,要求对方提供证据。但是不要说对方抄袭(否则这个就是你来举证了)。
他诋毁你是因为他怕抢不走你的用户。
项目本身开源免费的话,那你大大方方的就可以了。开源是你的优势,闭源是他的劣势。如果是完全相同的功能,用户为啥要选择闭源版本?
同时如果他增强了你的功能,你可以直接拿过来,毕竟你是开源的,他是闭源的。你肯定没法抄他的。
久而久之他的就不会有啥用户的。

另外多说一嘴:
如果是我开源,不打算赚钱搞开闭源版本的话,那直接就是 MIT 协议起手了。这样就不用担心这种问题。
因为许可证相当宽松,基本怎么样都不违反。甚至即使被我讨厌的人拿去用了,我也会继续开源,毕竟本来就没有任何限制。
HENQIGUAI
52 天前
是这样的,无论你选择什么协议,其实都只是相当于一个君子协定。你就算闭源打包加壳的代码,他们都会解密拆壳反编译的。
GeruzoniAnsasu
52 天前
没错所以真正的开源项目一定有商业版:

如果厂商只会抄 -> 那么他的产品一定落后于商业版
如果厂商不止抄 -> 但他产品不开源,那口碑一定不如开源+商业版
如果厂商抄完了还开源 -> 大家都开源,那太好了

全赢!
CKylinMC
51 天前
啊?佬,是你吗?我看见一个项目刚给所有 contributers 询问要不要换 AGPL3 ,理由完全一样的
newaccount
51 天前
你可以在项目里加个页面叫耻辱柱,把对方钉死在上面
iv8d
51 天前
直接闭源,要想炒照样能炒,你拿出证据直接扔出来。
iv8d
51 天前
@dcsuibian 大佬说的在理
fbichijing
51 天前
感觉 #17 和 #36 这两种方法都很有趣。

从 #17 引申一下,或可以让自己的闭源领先开源几个版本或者一段时间。不过从程序角度可能客观来说,可能只是加大了一点难度?

#36 的方法感觉很好玩。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1151709

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX