作者:何国铭律师 (专注于商标犯罪与商业秘密犯罪案件控告及辩护)
要点一:计算机软件程序可以同时成为著作权和商业秘密的保护对象,但著作权保护软件程序的表达,而商业秘密保护软件程序的思想等内容。如果进一步深层次探究,著作权法中的“独创性”和商业秘密案件中要求的“秘密性”确实是存在一定区别的,著作权法中的独创性更加强调的是对表达基于个人意志的选择空间,而“秘密性”或者说是“不为公众知悉”性,则强调的是信息本身的不为公众所知道、了解、获得、掌握。
要点二:被告人使用了权利人的软件代码编写某应用软件,并将该软件在APP分发平台上架,此时计算被告人的违法所得则不能直接以(每个软件的合理的利润*数量)来计算,而是要以其与平台分成获利的数额来计算违法所得。
要点三:鉴定非公知性的基准日是非常重要的,应以实施侵权行为时为鉴定的基准日。
要点四:注意对检材的鉴真,以防被告人拿了一份虚假的载体,反驳其与被害人所主张的技术信息不相同。为此,应认真考究被告人终端产品中的目标代码与其出示的源代码载体是否能够吻合。
要点五:不能根据目标代码不同而简单地认定为源代码亦不同,因为相同的源程序可以运用不同的编译语言编译成不同的目标代码;反之,目标代码相同则基本可以认定为源程序相同。因此,在被告没有提供反证的情况下,当双方软件目标代码完全相同时,应当认定双方的计算机软件之间构成相同;或者目标代码实质性相同且有其他证据予以佐证时,此时亦应当认定双方计算机软件之间构成实质性相同。
要点六:软件版本不准确会带来一系列的问题,比如说权利内容和范围不清,无法确定代码完成的时间、被告人接触的事实被质疑、无法(顺利)比对以及对公开(或开源)代码进行筛选。因此,我们需要关注被害人梳理出来的,用以提交鉴定的秘点,其是否出自于所提交的哪个软件版本,两者是否能够对应得起来。如果对应不起来,那么其所提交的那一份秘点鉴定也是不应被采纳的。
要点七:假定被告以反向工程来辩解,以下几点是值得注意的。一是被告人所提出的反向工程是否在产品公开出售前就已经进行;二是在反向工程的进程上,被告人所推出的竞争产品在时间上是否合理,是否出现时间过快等不合理情形;三是竞争对手的员工是否在被害人所在单位工作过,是否符合净室程序的要求。
要点八:质疑源代码并非出自涉诉软件版本之载体,我们可以审查电子数据,查阅软件形成的各种哈希值,得出该软件版本的形成时间,同时根据版本的形成时间,来确定被告人是否有接触到这个软件版本的可能性,获取根据版本的形成时间,来确定好被害人所采取的保密措施是否延至被告人。
要点九:目前,转存公司的商业信息,即使获取后未使用,或未允许他人使用,即使不能认定构成侵犯商业秘密罪,其亦有可能会被认定构成非法获取计算机信息系统数据罪,且在刑期上,违法所得五千元以上或者造成经济损失一万元以上的,就达到入罪的数额标准,当违法所得两万伍仟元以上或者造成经济损失五万元以上的,刑期在三年以上七年以下有期徒刑。
要点十:如果被告提交了源程序,应当确定被告源程序与涉诉目标程序的关系,即同一性问题,如果满足同一性,则直接将原被告双方的源程序进行比较,构成相同,或实质性相同,则侵权;如果原被告双方的源程序比较结果,不构成相同或实质性相同,则不构成侵权;如果被告未提交源程序,在进行软件商业秘密鉴定时,将原告编译后的目标程序与被告目标程序进行比较,构成相同则构成侵权,否则不构成侵权。
要点十一:在被告接触源代码,且原告也能提供源代码的情况下,软件商业秘密鉴定会先将原告源程序编译成目标程序,因为源程序是软件开发者身份的证明。如果该源程序无法编译成目标程序,则原告有可能因无法证明其设计开发了相应程序而承担不利的后果。
要点十二:对软件的目标代码主张为商业秘密在司法实践来说还是很少见的,原因是当涉诉的软件投入市场后,他人可以通过购买该软件商品,通过一些简单的方式,即能获取其目标代码,常常可能会因“使用公开”之缘故,而致使该软件失去秘密性。除非该权利人能够提出其对该目标代码采取了特别的保密措施,或与购买方签订了合同,约定不得公开该软件代码,否则软件的目标代码是很难被认定为商业秘密的。
要点十三:在涉软件的商业秘密案件中,需要注意商业秘密的权属,这直接关乎到被害人是否具有提起控告侵犯商业秘密侵权的权利,以及被告人使用涉诉的商业秘密是否构成侵权,假定该技术秘密的权属归被告人,则其自然是不能被认定构成侵权的。在这个问题上,需要关注软件代码的委托开发以及合作开发的问题。
要点十四:涉软件代码的商业秘密案件需关注软件开源的问题,特别是被害人在使用开源代码开发涉诉软件时,该开源代码附带有各种开源许可证的,则此时需关注被害人是否已遵守开源许可证的相关规定,其提出将涉诉软件源代码主张为商业秘密是否具有正当性。
要点十五:涉嵌入型软件代码的商业秘密案件有一个特殊的地方,即是判断代码是否相同,或者代码是否具有同样的瑕疵,可以通过操作硬件设备判断。例,判断被告人所提交的源代码是否与涉诉目标代码是否吻合,该源代码是否为案件真实代码,可以将源代码编译成目标代码后,烧录至设备芯片,通过操作机械,在同等指令下,新烧录代码的设备与涉诉侵权设备是否表现出同一行为。同样,判断涉诉侵权软件的目标代码与权利人之目标代码是否一致,亦可以使用操作硬件设备的方式予以判断。
要点十六:判断某些代码是否具有秘密性,可以从以下几个方面思考,一是判断该代码是否可以直接从客户端、浏览器中能获得,例如部分软件、浏览器端通常由CSS、JavaScript、html来实现的,这些软件的部分源代码是可以被用户获取的。二是判断该代码是否可以通过反编译的方式来获得。软件设计者没有对目标程序使用混淆技术,或者没有对该目标代码进行加密,假定业内同行使用某些高级语言编写的软件,就能够通过反编译的方式反向获得可读性强、相似性高的源代码,一般来说,这些代码也是不能主张为商业秘密。三是判断这些代码是否为开源代码。四是判断该代码是否为第三方提供的源代码。五是判断该代码是否为自动生成的代码。自动生成的源代码指的是程序员采用一些辅助的软件工具得到的源代码,而非直接编写形成的源代码,对于自动生成的代码也不应认定其具有秘密性。