含注释版首发 | 请求停止侵权还是披露代码?——违反自由软件“版佐”许可条款的责任承担方式
原文发表于《电子知识产权》2022年第8期
摘要:
自由软件运动在版权法和合同法的法律机制之下,借助其版权许可证特别是“版佐”许可条款来贯彻软件代码自由共享的理念。针对违反版佐许可条款的情况,自由软件版权人可以根据版权法,要求停止侵权,并根据具体情况要求损害赔偿。由于执行成本、利益衡量等因素的制约,自由软件版权人根据合同法主张违约并要求特定履行即强制披露代码的诉请,一般不应得到法院的支持。从目前我国合同法规定和自由软件许可证的条款来看,只有自由软件版权人才有法律资格进行版佐许可维权,许可合同之外的第三人主张违约面临一定的法律障碍,即便可以,其要求披露代码的诉请也难以获得法院的支持。
1 问题的提出
2 版佐许可条款的具体规定及义务设定
3 选择停止侵权为主要救济方式的原因
3.1 许可合同关系可能因许可证信息缺失而不成立
3.2 契合版权许可证在美国法之下的法律性质和救济力度
3.3 更强有力的救济力度
3.4 自由软件社区的维权不以损害赔偿为首要目标
4 自由软件版权人诉请开放代码获得司法支持的可能性
5 第三方诉请开放代码获得司法支持的可能性
5.1 下游的软件用户
5.2 与软件用户有竞争关系的企业
1 问题的提出
2 版佐许可条款的
具体规定及义务设定
本文以GNU的通用公共许可证第2版(GPL v2)、第3版(GPL v3)以及我国木兰公共许可证第2版(MulanPubl v2)为例,展示其中的版佐许可条款的具体规定,但删除与讨论主题不相干的部分。值得注意的是,就GNU GPL而言,虽然FSF声明只有GNU GPL英文原版才具有法律效力[13],但在我国发生诉讼时,自由软件版权人必须提供中文译本。目前我国涉及GNU GPL诉讼案件的裁判文书同样是援引了GPL的中译文本进行说理。[14]
表1: 版佐许可条款的具体规定
从上表来看,除去一些关键用语的区别,例如GPL v3为了适用美国之外的版权法律制度而放弃了“衍生作品”(derivative work)和分发(distribution)的表述之外,GPL v2、GPL v3和MulanPubl v2的版佐许可条款都具有共同的“传染性”的特征,即在授权软件用户自由使用、修改、分发自由软件的同时,对软件用户进行了两方面的义务设定:
第一项义务是信息告知义务,即自由软件用户在后续传播被使用、修改、传播的代码时,对这些代码所附带的开源许可证信息和版权信息,都负有以合理形式加以声明公告的义务。信息告知义务其实也出现在许多宽松型开源软件许可证之中,属于宽松型开源软件许可证和自由软件许可证的共同特征之一。
信息告知义务可以起到如下几点作用:(1)对自由软件代码贡献者的人身权利的尊重。虽然自由软件版权人对自由软件代码的财产性权利做了某些程度的“让渡”,允许软件用户在一定条件之下的自由使用、修改和传播,但是人身权利自始至终没有放弃,许多国家的版权法也不允许这样的放弃。(2)事先的版权声明可以为将来在某些国家采取版权维权诉讼提供必要的事实依据和法律前提。(3)在软件代码的传播链条之中,发挥版权的公示作用,为版权许可合同的成立创设事实基础。对软件版权人而言,软件一旦发行,后续的复制和传播很难进行控制。如果自由软件版权人想要与后续传播链条远端的软件用户建立许可合同法律关系,就必须要确保传播链条远端的软件用户知晓正在下载、安装、使用、修改、传播的软件代码其实是依附着版佐许可条件的相应“负担”的,否则难以成立版权许可合同关系。因此,确保自由软件用户承担起信息告知义务,保障电子化的权利管理信息和许可信息能够随着自由软件的一同传播,是自由软件保护与维权制度之中不可或缺的一环。2021年意大利就有自由软件版权人专门针对软件用户违反GPL信息告知义务进行维权的案件,威尼斯地方法院支持其诉请,判决软件用户停止侵权、支付罚金和公告裁判的费用等。[18]
第二项义务是更加富有进攻性的“开源义务”,即自由软件用户不仅必须确保没修改过的自由软件代码的后续分发必须遵循GPL许可证的要求,而且对修改自由软件代码而产生的衍生作品或基于自由软件代码的作品,在传播时同样必须遵循GPL许可证的要求,也即必须公开共享源代码(以及有些情况之下的目标码),并允许他人自由的使用、修改和分发。
开源义务的设定可以起到如下两点作用:(1)贯彻自由软件的哲学理念,对抗软件代码的私有化。GPL的核心理念是代码的自由共享,借助版佐许可条款的约束,可以确保自由软件代码发布之后不被私有化并封闭起来。软件用户依然能够拥有运行、使用、修改软件的自由,以及再次发行原软件复制件和软件修改版本的自由。[19](2)借助软件的互操作性,扩大自由软件的边界。自由软件的所谓“(强)传染性”,主要源自这个特征。因为按照版佐许可条款的规定,只要后续传播、分发“本软件的衍生作品”(GPL v2),或者“基于本程序的软件”或者“对本程序进行修改而得的软件”(GPL v3),或者“衍生作品”(MulanPubl v2),那么这些衍生软件作品和“基于本程序的软件”的代码都必须转变成为自由代码,否则就违反了自由软件版权许可协议。由于目前自由软件已经逐渐渗透到整个软件开发生态(尤其在网络软件技术领域),版佐许可这种“一触即染”的特征,难免让主张软件私有的软件企业产生不愉快的联想和抱怨。
3 选择停止侵权为
主要救济方式的原因
3.1 许可合同关系可能因
许可证信息缺失而不成立
自由软件的版佐许可条款如果想在一国法院具备可执行力,首先必须确保自由软件版权许可是成立且有效的。尽管目前已经看到多个国家的法院支持GPL的效力,但并不能排除在有的情况之下,版权许可合同并不成立。前文曾提到版佐许可条款给软件用户设置了信息告知义务及其重要作用,现实中很有可能因为许可信息的缺失而导致建立许可合同关系链条的瓦解。举例来说,如果企业A在Github上发布了GPL v3的自由软件,但在后续传播之中,有软件用户B故意删除了自由软件代码所带的GPL许可证信息和版权人的信息,然后发布到其他软件平台供其他用户下载,而软件用户C或D使用了被抹除版权和许可信息的自由软件,并且无从查证软件代码的真正来源。在这种情况下,软件用户C或D及后续的软件用户很难因其使用、修改和传播行为而与版权人企业A建立版权许可合同关系。在这种情况下,如果用户C或D的后续传播没有遵守开放源代码的要求,企业A即便可以进行维权,也只能根据版权法赋予的排他权,要求用户C或D停止未经过许可而使用、修改和传播软件的行为。合同法的救济在这种场合之下并没有发挥作用的机会。
3.2 契合版权许可证在
美国法之下的法律性质和救济力度
自由软件基金会(FSF)及其创立者理查德·斯托曼曾经旗帜鲜明地反对将GNU GPL在法律上定性为一种合同。GPL v2第五条明确表明,自由软件许可使用关系的成立不必遵循普通合同的要约和承诺过程——“因为您并未在本授权上签名,所以您无须(表示)接受本授权”。GPL v3草案第九条的标题甚至直接明示GPL不是合同,后来应该是考虑到GPL v3的目标受众主要位于美国之外其他国家,无法回避合同法的规制(当时德国法院已经明确了德国《民法典》的合同规则对GPL v2的适用),因此最后删除了该具有争议的表述。
FSF坚持GPL的法律性质不属于合同,有其美国法之下的特殊原因。第一,FSF抵制美国合同法领域的州模范法即《统一计算机交易法》(Uniform Computers Information Trade Act,UCITA),认为该模范法的推广适用对自由软件不利。FSF甚至直接在官网呼吁自由软件行业抵制UCITA,认为“UCITA是一项由私有软件开发者设计的法律提案,它将灾难性地威胁自由软件社团。”[20]第二,美国合同法属于州法的范畴,如果GPL的法律定性是合同,那么在诉讼之中首先会面临“联邦优先原则”的审查,判断联邦版权法是否优先适用从而排除州合同法的适用[21],而如果最后适用州法,那么GPL及版佐条款的法律效力就取决于各州合同法的制定法和案例法。这样的维权过程将有很大的不确定性,很有可能产生不一致的裁判结果(例如有的州的合同法对合同的约因或对价有较严格的判例法规则),这绝不是自由软件社区希望看到的局面。相反,如果依照GPL的字面含义即通用公共“许可证”,将GPL认定是版权许可证,那么版佐条款的效力在美国法之下将更加牢固:一方面可以直接借助版权的排他性而具有对世效力,不必考虑合同相对性的制约;另一方面是按照许可证的相关规定,一旦软件用户违反许可证即终止版权许可[22],直接追究起版权侵权责任也更加便捷。
不过,我国并不存在类似美国联邦和地方法律管辖冲突以及合同法适用不一致的问题。我国《著作权法》第七章直接使用了“著作权许可使用和转让合同”的表述,也即版权许可表现为合同形态,受我国合同法的约束。在罗盒诉风灵案中,我国法院也清楚论述了通常情况下GPL许可协议能够成立并且生效的理由:“授权人许可的权利符合我国著作权法的相关规定;其采用开源许可证发布源代码,将自己的大部分著作权授予不特定用户,完全是出于自愿。用户在许可证下复制、修改或再发布源代码,通过行为对许可证作出承诺,也是出于自愿。用户在对源代码进行复制、修改或发布时许可证成立,同时许可证发生法律效力。…… GPL3.0协议具有合同性质,可认定为授权人与用户间订立的著作权协议,属于我国《合同法》调整的范围”。[23]因此,自由软件版权人在我国选择具体救济措施时,更多是考虑救济措施的力度。
3.3 更强有力的救济力度
在Jacobsen v. Katzer案之中,美国法院首次支持了开源软件版权人侵权禁令的请求,并且明确了自由软件版权人在两种救济之间进行选择的可能性。在该案之中,软件用户没有遵守信息公告义务,删除了代码的出处和作者(版权声明),结果被版权人起诉侵犯版权,并请求临时禁令的救济。一审加州北区联邦地区(旧金山)法院驳回了这个请求,认为该开源许可证创设了没有限制的非排他许可,而该许可的条款仅仅规定了契约关系(mere covenants),而不是版权条件(not copyright conditions),因此该案属于“违反契约”而不是“侵犯版权”。法院进而认为,在违约而非侵权的思路之下,由于没有产生“无法弥补的损失”,因此驳回原告临时禁令的请求。但联邦巡回上诉法院推翻该判决,支持了禁令的救济。有意思的是,法院还认为,该案许可证的规定可以构成“条件”而不仅仅是“契约”,而且合同对价(consideration)除了可以表现为以美元计价的费用,也可以是选择遵守开源的要求,两者都应该得到法律的承认。[24]这实际意味着,上诉法院同时认可了自由软件版权许可的合同性质,从而存在违约救济的空间。
但是,对自由软件版权人而言,无论是在美国还是其他国家,通常版权许可(及附随的对版权侵权)的救济力度会大于普通合同违约的救济力度。在版权许可/版权侵权的思路之下,如果出现不遵守许可而侵犯版权的情况,自由软件版权人可以向法院申请禁令救济,要求马上禁止软件用户的侵权行为,例如停止继续贩卖侵权的软件产品,停止提供侵权的软件服务。由于禁令救济的快捷和便利很快会影响到软件市场,对具备一定规模的企业而言,这种救济方式会产生较大的震慑力和阻却效果,自由软件版权人也可以获得较有利的谈判地位。另外,针对版权侵权,各国版权法都提供了多种损害赔偿的计算方式,包括实际损失和法定赔偿等等,版权人能够获得补偿的空间较大。
相比之下,如果请求违约救济,自由软件版权人能够获得的救济力度较弱,有时难以实现其维权目标。原因主要如下:第一,违约救济一般难以获得禁令救济,对行为不端的软件用户的威胁较小。第二,违约的救济措施虽然也包括损失补偿,但自由软件许可证是格式合同,本身没有也不得另行约定违约金和其他补偿费用,其免费发行的特点也导致损失难以计算。实际上,在美国就曾有被告在自由软件版佐维权案件中向法庭提起简易判决动议,请求径直驳回违约的损失赔偿诉请,理由是损失很小且难以计算(虽然最后被法院驳回)。[25]第三,自由软件基金会(FSF)开展版佐维权的首要目的也并非获取损害赔偿,就此下文详细展开介绍。
3.4 自由软件社区的维权
不以损害赔偿为首要目标
违约损害赔偿是违约救济中最常见的诉求,但FSF在其官方维权信息之中,明确了不以损害赔偿作为自由软件社区维权的首要目的。FSF对维权之中的损害赔偿的态度包括如下几点:(1)FSF的首要目标是在版佐维权之中实现“GPL合规”(GPL compliance),因此停止不正确的软件代码传播行为,鼓励正确的传播方式,并处理违法行为对贡献者的损害,才是版佐维权和GPL维权的核心。(2)合规维权一般出于教育和协助目的(特别是针对软件用户的非故意和过失行为),采取法律诉讼永远是最后的手段。FSF认为,即便针对软件用户故意违反GPL的情况,能够通过协商解决,达成合意停止传播软件并赔偿已经发生的损害,也比诉诸法庭要强。也因为如此,相比较GPL v2的违反即永久终止许可的严格规定,GPL v3之中新增了针对初犯者的自动恢复许可的条款,即如果GPL初犯者能够很快改正其错误行为,将重新获得GPL许可。[26](3)自由软件导向的维权绝不将获得经济利益作为首要目标。FSF承认,损害赔偿是遏抑违规行为所必须的,如果只是停止侵权而没有损害赔偿的制度设计,会纵容不良软件用户实施违规行为并不担心可能的诉讼威胁,但如果依照版权法将损害赔偿制度发挥到极致,则在某些情况下会跟自由软件的理念相悖。因此,自由软件导向的维权绝不应该以金钱赔偿来勾兑自由软件的基本原则,例如向违反版佐协议的行为进行妥协或者部分妥协。[27]
值得注意的是,随着开源软件生态的发展,许多商业软件公司基于商业策略的考虑(例如汲取开源社区的创意等等)也采取了多元化的许可策略,其中可能包括采取开源软件许可乃至自由软件版佐许可的方式。作为完整、原始代码的权利人,这些企业完全可以选择采取不同的许可策略,例如对不同版本的代码按照商业许可、GPL、LGPL许可等不同方式进行发布。但身份复杂化之后,可能也会带来自由软件版佐维权目的和策略的变化。在国内罗盒系列案之中,我们看到自由软件版权人分别提出了1500万(罗盒诉玩友)和2000万(罗盒诉风灵)的高额损害赔偿金请求[28],这样的主张明显是将追求经济利益作为最主要目的,已经开始带有“版权流氓”(copyright troll)的味道[29],显然与FSF的自由软件社区导向的理念是完全相悖的。对这类行为,我国法院宜立足于自由软件许可证本身及社区所倡导的理念与原则,从严适用损害赔偿计算的相关规则。
综上所述,追究版权侵权责任而非违约责任,对在欧美和我国进行维权的自由软件版权人而言,无论从现行法律架构还是GPL许可的规则来看,都是比较理性的选择。不过,上述认识大致是建立在了解了过去十多年间自由软件版佐维权司法结果的基础之上的,难免带有“后见之明”的味道。实际上,在各国司法态度尚未明朗之前,版权人主动选择违约救济的并不少见。美国最初进入法庭的两个版佐案件即Progress Software v. MySQL案和MontaVista software v Lineo Inc案都是如此。在前一案中,MySQL请求临时禁令,阻止被告发布MySQL以及使用MySQL商标,认为被告违反了GPL的协议将MySQL与私有软件一起发行而没有公开私有软件的代码。法院支持了针对商标侵权的临时禁令,且在接受了合同理论的情况下驳回了临时禁令的申请,因为当事人没有证明无法弥补的损害或者胜诉可能性。[30]在后一案件之中,版权人同样在诉状中主张被告违反了GPL合同约定,但该案在正式审理之前和解。[31]
4 自由软件版权人诉请开放代码
获得司法支持的可能性
在GPL效力相继被多国司法机关认可之后,许多软件开发企业难免担心,如果违反了自由软件许可协议中的版佐条款,会否被法院强制要求特定履行合同义务——披露源代码以及(如果发行方式采取的话)目标码。这种担忧并非杞人忧天。在2017年争讼的美国Artifex Software. v. Hancom案之中,原告使用GPL许可方式发布自己开发的软件Ghostscript,在发现被告利用其代码开发新软件但违反版佐条款封闭源代码之后,原告就同时主张违约和版权侵权,也即不仅申请禁令救济,而且要求被告向衍生软件的每个被许可人以GPL许可证分发完整的源代码。被告提起简易判决的动议,要求驳回基于违约救济的特定履行、不当得利和间接损害(consequential damages)以及基于版权侵权的法定赔偿和惩罚性赔偿,但法院从诉讼仍处在诉请阶段(pleading stage)而驳回了被告的申请。[32]
笔者认为,强制开放代码的特定履行救济在现阶段仅有理论探讨的意义,中外法庭支持这种激进主张的可能性很小。具体原因如下:
第一,在英美法国家,特定履行作为一种专门针对被告方的衡平法补偿措施,并非一种是普遍性补偿措施。特定履行的救济通常以损害赔偿的不充分为前提,而且往往取决于法官自由裁量权的行使。在这种情况下,如果自由软件版权人主张特定履行的救济,必须向法院证明,仅凭损害赔偿尚不足以获得充分救济。但从保护自由软件版权人的利益角度来看,一般的损害赔偿以及赔礼道歉等责任承担方式,已经足够救济版权人。法院支持特定履行的可能性很小。在前面提到的美国Artifex Software. v. Hancom案之中,尽管法院驳回了被告的简易判决动议,即在诉请阶段不宜直接驳回原告申请的特定履行救济,但法院在判词之中也明确提到“最终对被告苛以该责任方式是极为可疑的(extremely dubious)”。
第二,在民法法系很多国家,法院也极少支持对违约的特定履行救济。有研究指出,由于相对于损害赔偿救济,要求当事人积极采取行动的特定履行会造成很高的制度成本,因此民法法系国家(例如德国、法国等)基本都采用了与普通法国家类似的思路,尽量避免适用特定履行的救济方式。有的民法法系国家(丹麦)甚至彻底放弃了特定履行的救济方式。另外,目前可查的涉及《联合国国际货物销售合同公约》(United Nations Convention on Contracts for the International Sale of Goods,CISG)的案件也没有出现过法院判决特定履行的情况。[33]
第三,从成本的角度考虑,如果法院强制要求不情愿的软件用户披露代码,必然涉及具体披露哪些代码、披露是否符合要求等具体事实和信息的审查,这对自由软件权利人、法官以及执行人员,都是必须投入相当资源和成本的工作。在代码丛林之中,在可以料想到的被告不积极配合的情况之下,上述强制履行的过错很有可能是反反复复的猫抓老鼠的游戏。尽管法院可以采取强力的惩罚措施来强迫软件用户配合,但比起采取一次性制度投入就能够产生结果的损害赔偿救济方式,要求披露代码的特定履行在执行成本上是极高的。实践之中,笔者也从没听说有哪个国家法院裁判要求违约的软件企业强行披露代码的情况。
第四,支持开放代码的特定履行,在某些个案之中可能产生不公平的结果,有违“比例原则”。例如,GPL等自由软件协议都强调其“传染力”涉及整个衍生作品或基于GPL代码的作品,这意味着在具体案件之中,很可能只是使用了小部分自由软件代码,就得被迫披露整个软件的源代码。这种有失比例的过于激进的做法,很可能会对软件用户造成一系列扩大的、不利法律后果,例如因商业秘密丧失而违反其他约定、核心竞争力下降和企业市价下滑等等。而这些扩大的损失本来通过停止侵权使用或剔除侵权代码就可以做到。
第五,开放代码的特定履行属于非金钱债务的履行,而与前述的理由相关,在个案之中,非金钱债务的特定履行有可能触发适用特定履行的例外规定。例如我国《民法典》第580条规定,在债务的事实上不能履行、履行费用过高、债权人在合理期限内未请求履行等情况之下,不支持特定履行的请求,如果因此不能实现合同目的的,人民法院或者仲裁机构可以根据当事人的请求终止合同权利义务关系,但是不影响违约责任的承担。[34]
5 第三方诉请开放代码
获得司法支持的可能性
最后,我们仍需要分析另一种可能性:第三方诸如下游软件用户或者与违反版佐条款者有竞争关系的企业可否从第三方受益者或者竞争者的角度,向法院要求违反版佐许可条款的软件用户履行版佐义务,向下游的软件用户披露代码。
5.1 下游的软件用户
我国有媒体曾简单报道过法国巴黎上诉法院裁判的EDU 4 v. AFPA案,并提到“一般认为,只有版权持有人才可以去执行许可条款中的规定,但很显然,至少在法国并不是如此。”[35]然而,严格来说该案并非是执行GPL版佐条款的案件。在该案中,软件用户起诉违约的权利基础是其与被告的IT设备购买和使用合同,起诉的原因也不是因为被告违反了GPL的版佐条款,而是被告提前终止了合作项目,因此请求法院裁断这种行为构成违约。诚然,巴黎法院在裁判文书中也认定提供商存在违反了版佐许可条款的事实,因为该提供商删除了软件文档之中的版权信息和许可证,并替换成自己版权信息,但是软件用户起诉的请求权基础显然并非是GPL许可协议。[36]
真正值得关注的是仍在进行的美国案件Software Freedom Conservancy v. Vizio。在该案中,与FSF联系密切的非盈利组织“自由软件管理委员会”(SFC)在2021年10月19日起诉电视机制造商Vizio,认为后者在提供流媒体产品和服务(特别是其SmartCast系统)时没有遵守版佐许可条款(主要涉及GPL v2和LGPL),要求其遵守GPL的版佐许可要求。该案的特别之处在于SFC并非以版权人的身份提起诉讼,而是以消费者的身份主张Vizio没有遵守版佐许可协议的要求,导致下游软件用户无法获得版佐许可所保障的权利。SFC认为,下游软件用户根据版佐许可条款享有合理预期,即Vizio会向他们开放SmartCast系统的源代码以供审阅、修改和分发。[37]Vizio则请求法院驳回SFC的违约之诉,认为版佐维权受美国联邦版权法的管辖,应该排除州合同法的适用。但加州中区联邦地区法院在2022年5月13日驳回这一请求,认为GPL不仅仅是版权许可,同时也是合同协议,SFC有权提起这一诉讼。这意味着SFC可以在州层面继续推进违约之诉,而且一旦胜诉,则意味着Vizio的SmartCast系统的所有软件用户都有权以GPL许可的合同受益人的身份进行版佐维权。[38]该案是开源社区首次出现的真正以消费者(下游软件用户)身份提起的版佐维权案件,但目前仍在审理阶段,结果并不明朗。
那么下游软件用户可否作为GPL许可协议的第三方,请求软件提供商履行版佐义务,披露相关的源代码呢?如果具有提起诉请的法律地位,其披露代码的特定履行请求是否能够得到法院的支持呢?
我们可以结合法国案件的事实和中国的法律规则做进一步的分析。在该案中, GPL许可合同关系发生在自由软件版权人与被告AFPA之间,提起诉讼的软件用户EDU属于GPL许可合同之外的第三人。根据合同相对性原则,就被告AFPA违反版佐许可条款的义务的情况,软件用户EDU作为第三人通常并无主张违约的权利基础,除非其构成合同法上的利益第三人。我国《民法典》第五百二十二条第二款规定,“法律规定或者当事人约定第三人可以直接请求债务人向其履行债务,第三人未在合理期间内明确拒绝,债务人未向第三人履行债务或者履行债务不符合约定的,第三人可以请求债务人承担违约责任;债务人对债权人的抗辩,可以向第三人主张。”据此,利益第三人的权利取得包括“法律规定”和“合同约定”两种方式。前者包括建设工程合同中实际施工人的直接请求权以及《民法典》第五百三十五条、第五百三十九条合同保全中代位权人和撤销权人等,显然不能适用于自由软件许可协议的情况。“合同约定”的利益第三人则有特别的身份取得条件,具体包括(1)合同约定第三人可直接向债务人要求履行给付义务,(2)第三人未在“合理期间”明确拒绝。很明显,从目前几类自由软件许可证的条款来看,它们并不满足第一个条件,因此难以构成我国合同法之下的利益第三人。
从自由软件许可证本身的规则来看,虽然其主要目标是受益广大(具备编程能力的)软件用户并让源代码充分发挥教育科研等功能,但如果因此允许所有受益者都构成合同法意义上的利益第三人并可以执行违反GPL许可证,可能超出了自由软件基金会(FSF)最初的维权设想。当然,从自由软件运动的发展态势来看,我们不能排除这种可能,即FSF为了鼓励发现并纠正违反版佐许可的行为,在下一版GPL中设计利益第三人的条款,授权与自由软件版权人没有直接合同关系的下下游软件用户进行版佐维权。但通过自由软件版权许可的方式进行范围不确定的利益第三人设定,是否能产生具有效力的第三人权利,目前实践尚无先例,理论上也仍有争议。[39]而且,即便我们假设FSF真的在新版GPL中明确为第三方增设了利益第三人的条款,并且假设法院也据此支持了下游软件用户的版佐维权资格,鉴于强制执行披露代码的执行成本和争议性,下游软件用户主张披露代码的特定履行也会困难重重。道理很简单,债权人(自由软件版权人自己)亲身维权都难以获得支持的特定履行,换了利益第三人(下游软件用户)来主张实施,并不会在法庭上取得更好的结果。而且,根据自由软件许可证的规定,从当事人违反版佐许可时起,许可合同关系就被终止了,第三人利益也难以继续存在,在这种情况下,如果法庭接受利益第三人的特定履行请求,继续要求披露软件代码,显然有失公允。退一步讲,即便法院支持下游软件用户的违约诉请,其救济方式仍然会以已经发生的违约损失为主(虽然公益性软件用户诸如SFC并不在意损害赔偿),真正披露代码的情况恐怕最多是出现在双方谈判并和解的场合。对自由软件社区而言,理想的情况是可以发动下游软件用户开展版佐维权,进一步教育软件开发者要遵守版佐许可协议,从而强化软件行业的开源合规,扩大自由软件的影响。至于代码披露与否,可以是次要的目标,毕竟被维权者停止侵权,不再传播违反版佐协议的代码,也属于GPL版佐合规的表现之一。
5.2 与软件用户有竞争关系的企业
我们可以假设一种极有可能发生但国内外至今尚未出现的诉争场景:
甲公司发布了自由软件A之后,乙公司在使用A的过程中严格遵守了版佐条款,公布了自己的衍生软件B的源代码,而丙公司在使用A的过程中不遵守版佐条款,不公布自己的衍生软件C的源代码,但最后因为各种原因(例如员工跳槽)而东窗事发。如果乙公司和丙公司在该软件产品领域有竞争关系,且乙公司并非丙公司的软件用户,那么当乙公司发现丙公司违反版佐许可之后,能否以竞争者的身份,根据竞争法的规则,主张(1)丙公司对其构成不正当竞争?(2)如果可以,能否要求法院强制披露丙公司软件C的代码?笔者认为,在上述情况下,乙公司诉请丙公司构成不正当竞争的主张难以成立,要求披露代码的诉请也不太可能得到司法机关的支持。
就第一个问题,由于丙公司违反版佐许可条款的行为并非我国《反不正当竞争法》所规制的典型行为,乙公司要证明其不正当竞争诉请的成立,目前只能依照该法的一般条款[39]。根据我国目前司法裁判所遵循的规则,乙公司除了应该证明竞争关系的存在,还需要证明丙公司行为的不正当性或可责性,自己合法权益遭遇到损害,以及丙公司不正当行为和自己损害的因果关系。[40]从两公司产品同类且具有可替代性角度看,乙、丙公司存在竞争关系的认定不应存在障碍。其次,丙公司不遵守版佐条款,将开源代码封闭为私有代码的行为,显然不是诚信行为,也与开源社区的道德准则不符,似乎可以据此认定其行为的不正当性。但是,丙公司失信行为的对象主要是甲公司,开源社区的道德准则或行规是否足以对丙公司产生法律上的约束力,因此这种不正当性是否属于《反不正当竞争法》意义上的不正当性,笔者持怀疑态度。最后,即便丙公司违反版佐条款的行为具有竞争法意义上的不正当性,乙公司想要证明因为丙公司这种不正当行为给自己公司造成损失,依然存在明显的障碍。理论上看,虽然丙公司的行为有可能导致乙公司在与丙公司的软件产品竞争之中处于不利的地位,但事实也可能并非如此,例如乙公司因其开源策略而获得更多声誉和开源社区的支持,因此乙公司是否存在相应的损失并不清晰。而且,纵然乙公司在与丙公司的软件产品竞争之中存在劣势,该劣势和难以证明的损失,与丙公司违反甲公司的版权许可的行为之间是否具有直接的因果关系,同样难以证明。再退一步讲,即便丙公司违反版佐许可的行为构成不正当竞争,对乙公司的救济方式也应该以反不正当竞争法所提供的停止侵害和损害赔偿等方式为主,其理由与司法机关对自由软件版权人版佐维权的救济方式是一样的,无需赘述。
注释 请向上滑动阅览
[41] 参见最高人民法院“海带配额案”的观点, 最高人民法院(2009)民申字第1065号。
南京未来高新技术有限公司与江苏云蜻蜓信息科技有限公司、刘某某侵害计算机软件著作权纠纷案,江苏省南京市中级人民法院(2021)苏01民初3229号民事判决书