对闭源应用程序的某些功能进行逆向工程,然后将这些功能集成到可能是商业或非商业应用程序的闭源或开源应用程序中是否合法?
布朗尼指出了一个涵盖印度局势的答案。
对闭源应用程序的某些功能进行逆向工程,然后将这些功能集成到可能是商业或非商业应用程序的闭源或开源应用程序中是否合法?
布朗尼指出了一个涵盖印度局势的答案。
就您在问题中所述的目的而言,简短的回答是否定的,但请继续阅读以确切了解允许的内容。同样值得一读的是此处包含的两个链接。
在美国,数字千年版权法案 (DMCA)(17 USC § 1201 (f) - 逆向工程)第 103(f)条明确指出,逆向工程和规避保护以实现计算机程序之间的互操作性是合法的(例如应用程序之间的信息传输)。互操作性在第 103(f) 节的第 4 段中定义。
只要合法获得,对工件或过程进行逆向工程通常也是合法的。如果软件获得专利,则不一定需要对其进行逆向工程,因为专利要求公开披露发明。需要说明的是,仅仅因为一个软件获得了专利,并不意味着整个软件都获得了专利;可能有未公开的部分。
另外值得注意的是,在美国,大多数最终用户许可协议 (EULA) 都明确禁止逆向工程。法院已认定此类合同禁令凌驾于明确允许的版权法之上(Bowers v. Baystate Technologies , 320 F.3d 1317 (Fed. Cir. 2003))。
换句话说,就您的目的而言,将逆向工程程序的功能集成到另一个程序中用于商业或非商业用途似乎是非法的。如果您试图启用互操作性(再次参见上文第 103(f) 节),情况就会有所不同。
据我所知,软件的全部或部分直接逆向工程用于您自己的商业用途的软件,均受版权保护。逆向工程的受保护原因与美国类似。根据文章商业秘密、合同和逆向工程(另请注意尾注 5),版权法广泛保护出于以下目的的行为(包括逆向工程):
此外,由于处理包括许可协议在内的所有合同的《印度合同法》第 23 条,如果违反公共政策,合同将被宣布无效。《版权法》第 52 条宣布了有关逆向工程的公共政策,即以有限的方式允许逆向工程。在版权法允许的范围内禁止对软件进行逆向工程的合同(或 EULA)在法庭上可能无效。
《版权法》第 52 条 (aa) 至 (ad) 小节解释了这些受保护的行为(参见1957 年印度版权法,第 33 页,以及这些自 2012年以来修订的第 18 条)。另一个来源(虽然可能有点过时)是印度的软件专利和版权法(一篇论文)及其脚注。
1991 年欧盟计算机程序指令第 6 条允许以互操作性为目的的逆向工程,但禁止以创建竞争产品为目的,也禁止公开发布通过软件逆向工程获得的信息(来源)。
至少对于欧盟而言,答案是否定的(您没有说明您的问题适用的国家/地区)。
我仍然认为,这个问题目前过于开放。
我认为 RCE 总是包含道德方面的内容。就像核科学家拥有丰富的专业信息,可以用于好坏,逆向工程师也是如此。
严格来说,实现一个功能是可疑的。确实很腥。ReactOS将是如何处理这种情况的一个很好的例子。该方法被称为“洁净室逆向工程”。更可疑的是根据实现细节重新实现一些东西,但没有洁净室方法。
粗略地说,这里的重点是一方查看原始实现和代码(逆向工程师)。他/她记录了实施细节。可以想象,这在 ReactOS 等致力于二进制兼容性的情况下可能很重要。如果您阅读 Raymond Chen 的《旧的新事物》一书,您就会立即明白我的意思。
另一方(开发人员,可以这么说 - 重要的是这些方确实是不同的个体,但我认为精神分裂症不算数)然后使用实现细节的文档并重新实现它。现在,IANAL,但鉴于 ReactOS 依靠来自世界各地的开发人员的贡献而蓬勃发展,并没有被起诉到必杀技,所以我怀疑这在法律上是没问题的。你或其他人是否认为它符合道德是另一回事。
...从你的问题中我不明白:为什么要重新实现以专有形式存在的东西?当然,为了提供互操作性(比如OOo阅读 MS Office 格式),这是有道理的。但总的来说,使用现有应用程序的想法并实施这些想法不是更聪明吗?可能会扩展它们并在特性和功能上超越现有功能?
想法的问题在于,有些国家拥有软件专利,即使在欧盟等司法管辖区,大玩家也在大力游说,以通过立法以公开允许软件专利。目前,它们仅存在于现有立法的壁垒中,并且由于 EPO(和国家 PO)的官员不一定是最了解新技术的人。
在大多数情况下,即使使用 FLOSS,您也应该对互操作性保持安全,这再次从事实上的状态中汲取灵感,其中 OpenOffice.org 和 LibreOffice 等项目也没有被起诉到必杀技。Samba 也是如此,微软甚至邀请该项目的开发人员与微软开发人员交谈。
您最好的做法是在您所在的国家/地区寻求法律建议。这并不意味着这也适用于其他司法管辖区,但它会给你一个开始。
虽然 Remko 提到的欧盟指令存在,但在德国,版权所有者已经对“Urheberrecht”(缩写:UrhG)进行了相当广泛的修改,这与立法基于普通法的国家的版权并不完全相同(特别是美国)。这些变化还导致在刑法典(第 202c 条,StGB)中增加了所谓的“黑客段落”。
该段规定(法律术语的自由形式翻译,上述链接的维基百科文章中的原文):
这是最重要的部分,您可以看到为什么德国人对司法文献体感到“自豪”,据称这些文献量超过了最大图书馆中的文献量。
无论如何,问题应该很明显,如果不是,我会及时指出。问题是法律中没有定义包含此类工具的内容。IDA Pro 是这样的工具吗?OllyDbg 怎么样?WinDbg 呢?GDB 或 Immunity Debugger 怎么样?Metasploit 呢?从字面上看,违反该法律的可能性太多了,以至于CCC及其成员和同情者等组织多次批评它。无济于事。
TL;DR:在德国,这是一个更滑的斜坡。它甚至导致书籍在德文版中几乎毫无用处,因为作者要根据 Hackerparagraph 承担责任。
我认为以“...是否合法”这一条款开头的问题只能在法庭上得到肯定的正确回答。正如@0xC0000022L 所提到的,您需要首先指定您要询问的国家/地区。
除了上法庭,我认为这些问题只能用“这取决于”这句话来正确回答。
从其他答案来看,在这个社区内似乎众所周知,逆向工程与版权法和计算机欺诈和滥用法密切相关,两者(如链接所证明的那样)现在在美国都受到激烈争论.
哈佛法学院最近发布了一个关于版权的大规模开放在线课程。这位教授在 2004 年出版了一本关于版权改革的书。他还在2007 年创办了Noank Media, Inc.,尝试在中国实施他书中的一个想法。尽管他的 MOOC 讲座和阅读材料都在全球范围内可用,但我现在正在通过edX学习这门课程,即使有几位法学院学生帮助回答问题,仍然有很大的帮助要考虑的信息量和歧义(甚至将我在这里的回答范围限制在版权上,而不是与 CFAA 打交道)。正如@JMcAfreak 所写,DMCA 也适用,我猜还有其他几项法律也可能适用于您在美国的问题。
在这门课程中,我在 8 周后学到的是,在真正能够回答您在这里提出的问题之前,您需要至少花 12 周阅读判例法。正如 Aaron Swartz 发现的那样,风险非常高,计算机程序员和逆向工程师(他们可能经常做一些——可能是非法的——通过使用计算机程序进行数千或数百万次的行为)特别容易受到多次非法惩罚加起来很快的行为。
如果你正在考虑做一些让你问这个问题的事情,那么你还需要考虑谁可能最有动力去追捕你从事非法活动,如果那是一个富有的个人或商业实体,那么你可能不应该冒这个险。如果 Shepard Fairey 为他的奥巴马 HOPE 海报使用了一张参考照片,该海报由一个比美联社更不富裕的实体拥有,那么我相信这种情况对他来说结局会大不相同。