知识产权保护第一平台 咨询热线:13808808035

程序作品之间的对比鉴定

时间:2015-12-20 21:32来源:

  1.两段源程序的对比

  某些案件的技术鉴定中,送检的原、被告方程序均为源程序,这些案件的技术鉴定是针对双方源程序是否相同或实质相似进行的。由于源程序可以基于多种程序语言开发、编写,因此源程序之间的对比鉴定又包含两种情况。

  (1)同种程序语言写成的两段源程序对比

  这种情况是程序作品对比鉴定的基础性问题,也是绝大多数软件版权案件鉴定涉及的比较普遍的问题。两程序作品相同意味着构成程序的基本元素——程序代码数量相同或基本相同、组织顺序一致;两作品实质相似则是指尽管两组程序代码数量和/或组织顺序不完全相同,但两者的差别部分对于整段程序作品而言,其数量一般只占有较小的比重、其功能对于程序的整体功能而言是次要的、辅助性的,而且,差别部分在技术上比较容易实现改写,即程序片段的替换;反之,则认为两段源程序不相同。到目前为止,已经有程序提供的比较功能(如MS WORD软件具备的对比功能)能够在程序对比中发挥一定的作用。但这些工具往往只是在两段源程序代码完全相同,或程序的某部分片段代码完全相同时,其比较结果才有意义。如果两段程序代码数量、组织顺序有较大差别,则其对比结果只能作为参考——这种情况并不能完全排除两段程序实质相似的可能性。事实上,程序作品技术鉴定中,最为关键性的对比和判断工作是依靠技术人员大脑完成的。因为,和其他形式的作品一样,源程序作品的创作毕竟是人在智力劳动,鉴定中比较两段源程序作品是否实质相似,实质上是在分析作者在源程序创作中的创意如何表现,两者是否通过实质相同的“表达方式”固化在程序作品中,以及某种创意在用特定的程序语言表达时,客观上是否具备足够的“创作空间”。而这一分析判断的过程,无不涉及人的思维活动。因此,两段程序是否在作品表达意义上构成相同或实质相似或不同,最关键的判别工具是自然人的主观活动,这恐怕是任何工具(包括计算机)无法替代的。

  (2)不同程序语言写成的两段源程序对比

  这种情况在软件鉴定案件中也经常出现。通常的情形是,原告软件与被告软件用途、功能相似,且一般存在软件开发人员“跳槽”的背景,使原告有理由相信被告软件的开发存在对原告软件作品抄袭、剽窃。近年来,计算机程序开发语言(高级语言)的发展以及程序员编写程序能力的提高,使得在软件开发基础性工作(特别是系统设计)已经完成的情况下,用不同的高级语盲编写程序代码,并通过编译获得目标程序的工作不再是软件工程中的难点。通常情况下,程序编码及测试可能只占软件开发总工作量的30%以内。因此,有的案件中,被告方在掌握原告软件的某些重要开发资料的情况下,通过重新组织程序员、运用不同的高级语言编写程序代码的方式,开发其软件产品。这就使软件鉴定不能拘囿于同种语言的源程序对比。这种情况类似于文字作品中,汉语作品和英文作品的对比。鉴定中,鉴定人员往往通过对两软件的用户界面的分析,对比两软件的用途和功能,初步判断两者是否存在相似的可能性。然后根据需要,将不同语言的源程序“翻译”成为同种源程序作品进行对比,或是从两段源程序中提炼出体现各自在组织、顺序和结构方面的“表达”。再进行相似性的对比。

  2.源程序和目标程序间的对比

  鉴定中,源程序和目标程序间的对比一般基于以下情况:

  (1)原告举证提供原告软件的源程序和被告软件的目标程序,但原告不能举证提供被告源程序,且被告拒不提供其源程序。

  (2)被告提供了其目标程序和源程序,但委托鉴定的单位对被告源程序的真实性需要确认,即要求判断该源程序与目标程序是否系“同一作品”。

  上述两种情况均需要对源程序和目标程序是否相同或实质相似进行对比。实践中,对源程序和目标程序的对比分析可能遇到各种技术上的困难,使得鉴定的技术工作比较复杂。例如,基于开发成熟程度或某些人为因素,作为鉴定对象的源程序可能无法直接编译成为目标程序;或者目标程序无法运行,给两程序的用途、功能对比造成困难,也给鉴定人员分析双方的程序造成困难。必要情况下,鉴定人员需要在基本保持程序作品原貌的前提下,对程序中存在的明显的错误进行修正,对缺省的文件进行复制等技术处理,使得源程序可读或可编译,目标程序可执行,再进行程序对比工作。在源程序与目标程序一致性不明显的情况下,鉴定人员一般要将目标程序进行反编译成为“准源程序”,再进一步与源程序进行相似性对比。

  3.两段目标程序间的对比

  实践中也存在这样的情况:有的原告因为管理等方面原因,在诉讼中无法提供自己软件的源程序,只能提供双方的目标程序(原告的高级技术人员跳槽,带走了原告的开发资料包括源程序)。这种情况虽然鲜见,也是有的。如果双方目标程序都可以执行,那么对于鉴定环节而言,一般不会造成什么特殊的困难。当然,如果目标程序存在错误,无法正常执行,两者又不完全相同,鉴定的技术分析就可能相当复杂和困难,在此不再赘述。

  因为技术条件、鉴定成本等方面的原因,目前不是所有涉及软件的技术问题都可以短时间内通过鉴定加以解决。例如.2000年北京市公安局海淀分局曾经委托我中心就一起涉嫌侵犯软件著作权犯罪案件的技术问题进行鉴定。当时,委托单位提供的犯罪嫌疑人的证据为包含计算机芯片(单片机,型号为89C51)的电子仪器主板,而涉嫌侵权的程序就存储在该芯片中。我中心委派专业人员对该芯片进行了技术分析,获取了程序的某些外部特征,例如功能、用途等信息,但当技术人员试图从该芯片中读取存储的目标代码时,因为该芯片以内部破坏某管腿电路的方式进行了加密处理,使得鉴定工作陷入僵局。从中科院等单位了解到,要破解该芯片的保密措施,必须有专用设备,而我国大陆当时仅有的两台设备因为损坏和其他原因不可用。这种无法克服的技术困难使该案技术鉴定最终搁浅。

  此外,尽管“分层、抽象、比较”的“三步法”已经在美国乃至世界主要国家的司法实践中予以采纳,我国司法界对软件作品对比鉴定中适用该方法也表示认同,但鉴定实践中还少有实际应用。主要原因是我们遇到的案件中,几乎所有被告方都不提供其软件的开发文档以及能够支持其软件开发各阶段工作的其他证据。鉴于此,仅就被告程序(主要是目标程序)的反向研究,鉴定人员无法获得足够的技术信息,对被告软件作品所谓的分层和抽象也显得不切实际。因此,我国软件著作权案件的技术鉴定工作还集中在对程序代码、程序的组织、结构和顺序等表达的分析、对比方面。对于“三步分析法”的应用研究,还需要有更多案例和相应的鉴定实践。


知呼【侵犯商业秘密罪辩护律师】侵犯商业秘密罪经侦报案_侵犯商业秘密罪无罪辩护_商业秘密保护_侵犯商业秘密罪案例_软件著作权_侵犯著作权罪

知呼【侵犯商业秘密罪辩护律师】专注于侵犯商业秘密罪、侵犯著作权罪辩护,全国的案件胜诉率遥遥领先。实现商业秘密、软件著作权一站式保护网,为大中型企业提供侵犯商业秘密罪辩护、侵犯商业秘密罪经侦立案、软件著作权维权、侵犯著作权罪经侦立案、商业秘密鉴定、侵犯商业秘密罪审计等知识产权法律服务。

延伸阅读