算法:涉嫌侵犯商业秘密?谈谈计算机算法下的商业秘密问题
作者:何国铭律师 (专于商标犯罪与商业秘密犯罪案件控告及辩护)
132 2944
8174
算法是运算法则的简称,脱胎于数学领域的算术,在计算机领域得到了发展。计算机算法指的是使用计算机解决某类问题的精确、有效的方法,以一步接一步的方式来详细描述计算机如何将输入转化为所要求的输出的过程。在算法设计完成后,工程师可以编写不同的程序来执行算法。一个完整的算法系统功能实现主要依靠三个部分,分别是作为基础的数据库、作为中台的算法以及系统端口。在这三部分内容中,算法主要负责搭建能够实现功能的框架,起着实现功能的核心作用。
通过互联网查询知识,网站有搜索算法。浏览资讯,有推荐算法。驾车导航,根据用户需求,软件会使用各种算法,智能配对最优路线。当前,计算机算法的应用越来越广泛,技术机算法的发展让我们步入更便捷的智能社会,而哪些运行时间更短、运行内存更少的算法能在商业竞争中技高一筹,获得竞争优势。因此,如何编写出更优质的算法,成了科技企业的核心竞争力。司法实践中,常见抄袭、窃取、不正当获取他人算法的行为,对于此类问题,我们如何以法律的视角展开分析呢?
一是算法能不能以商业秘密来保护?以往,与著作权相比,以商业秘密的方式对算法保护常被争议,“算法黑箱”、“算法歧视”、算法杀熟及“算法茧房”等负面词汇不绝于耳,不少人将商业秘密视为实现算法正义的障碍及算法霸权的“保护伞”。原因是算法得以运行的前提是对用户信息的收集、整理与输出,涉及到公民隐私权与用户数据安全的问题,个人信息保护要求算法公开,而商业秘密要求算法具有秘密性,公开与秘密性是相互矛盾的,故认为将算法以商业秘密的方式来保护是不合理的。为此,在相当长的时间里,学界围绕着如何对算法进行规制展开热烈的讨论,力求在保证算法适当透明的情况下,完善算法的商业秘密保护,衡平算法透明背后的社会公共利益与商业秘密背后的制度性利益(竞争秩序和激励创新)。
在2020年8月,最高人民法院发布《关于审理侵犯商业秘密民事案件适用法律若干问题的规定》(以下简称“《规定》”),明确规定了将算法纳入商业秘密保护的客体范畴。由此,算法能以技术秘密的形式获得法律保护。在实务操作中,深圳市智某信息技术有限公司与光某蜗牛(深圳)智能有限公司侵犯商业秘密纠纷案被称为我国首起关于算法的商业秘密侵权案件。在豆某飞与高途乐公司侵害技术秘密纠纷案中,豆某飞原为高途乐公司的图像质量工程师,离职五天后在网站公开披露了该公司核心技术“图像瑕疵检测算法”,对此法院明确认为该“相机质量瑕疵检测方法构成商业秘密”。因此,在实践中,司法机关也肯定了算法能作为商业秘密。然而,我们在办理算法类商业秘密案件时,仍然需要审查算法的合法性。算法属于技术,技术本身可中立,但技术对应的软件及程序带有非法性,假定某个算法的设计之目的是出于非法目的,或实现算法目的之手段是非法的,那么该算法技术就没有合法性,自然是不能以商业秘密的方式获得法律保护。此时,我们能以算法非法性为由进行无罪辩护。
当然,若要将某项算法认定为商业秘密,其亦需满足商业秘密的三个特性,首先,在秘密性上,权利人有相关证据能够证明该算法具有非公知性,系不为公众所知悉的,系不容易所获取的,该算法并非公开的,并非同行都普遍知晓的公知算法,并非在公开的渠道能够轻而易举能够获知。其次,在价值性上,该算法在行业发展中能够让企业拥有竞争优势,能够带来经济利益。最后,在保密措施上,权利企业需要提供其对算法采取了相应的保密措施,例如,与员工签订保密合同,签订竞业限制协议,对程序代码设置秘钥,限制登陆权限与查阅权限,在内部培训或开会中强调对算法的保密义务,在文档打上保密等水印,严禁拍照、截图、录音,严禁将工作电脑中的资料传送到其他储存器上、不能连接外网等等。
二是如何对算法进行同一性鉴定?在算法类商业秘密案件中,需要对算法进行司法鉴定,其中包括非公知性鉴定与同一性鉴定。在同一性鉴定上,算法是一种思路,可以通过不同的方式进行表达,如自然语言、流程图、N-S 图,伪代码等,计算机程序仅是其中常见的表达方式。因此,在判断侵权上,办案人员常以权利人与被告人所使用的源代码为检材进行鉴定。然而,这种比对方式实际就演变成为作为商业秘密所保护的客体是软件源代码,而非算法了。要知,源代码仅系算法的一种载体,并非算法本身。程序员为了实现某一算法,其在编写程序时可以使用各种程序设计语言,但算法本身是独立于任何程序设计语言的,换言之,同一算法是可以用不同的程序设计语言来实现的,多个程序可能最终所表达的是同一种算法。因此,源代码仅是算法的载体,不同程序设计语言实现的同一算法将表现为不同的源代码。实践中,部分企业在获得他人的源代码后,经过反推出权利企业的算法,然后,通过编写其他程序来表达这种算法。因此,假如我们只以源代码为鉴定对象,则很难鉴定两者具有同一性,而事实上,不同的源代码背后所表达的算法是一样的。为此,有专业人士呼吁对算法商业秘密的鉴定延及至算法思维。
与著作权相比,将保护范围延及至思维是算法以商业秘密保护的优势之一。计算机软件作为著作权的保护对象,其权利客体是程序的代码以及其所代表的陈述。我国《计算机软件保护条例》第六条亦明确规定,对软件著作权的保护不延及开发软件所用的思想、处理过程、操作方法或数学概念。与之相对,相关法律规定已修改了对商业秘密“实用性”的构成要件,不再要求商业秘密体现出实体有形性,算法的核心思想以商业秘密的方式获得保护已不存在适法的障碍。算法的核心思想是算法存续的关键,对算法核心思想的判断是否具有同一性是辨析他人是否侵权的关键。那么,什么是算法的核心思想呢?例如该算法是怎样被设计出来解决问题的,各个步骤是怎样被安排的,部分与部分之间是怎样架构的,框架是怎么安排的以及算法的设计方案是如何形成的等等。因此,权利人在向鉴定机构提交材料鉴定时,不仅需要提供源代码,还要详述算法设计的具体内容,才能将保护的权益扩大至算法核心思想。鉴于算法技术的专业性,在质证过程中,辩护律师可以申请算法架构工程师、高级工程师作为专家辅佐人出庭协助完成质证。
三是反向工程抗辩是否具有合理性?相比于其他商业秘密案件,在涉算法的案件中,被告人要以反向工程进行抗辩也是异常困难。反向工程的一大前提是被告人合法获取到了权利人的终端产品,然后通过拆卸、测绘等,从逆向的方式反推出权利人的核心技术。在涉算法的案件中,由于算法并非有形的终端产品,除非被告人能够获得权利人的源代码,才能反推出权利人的算法核心思维,否则是无法通过反向工程推出算法。然而,几乎所有的权利人都会对源代码采取一定的保密措施,以合法正当的方式获取源代码,后进行反向工程,这个说法很难成立。
四是如何计算损失金额?在商业秘密刑事案件中,损失金额的计算需要根据被告人不同的侵权行为模式而适用不同的计算公式,对非法获取型的,以合理许可费计算;对公开披露型的,以商业秘密的商业价值来计算,主要是研发成本;对非法使用型的,以被害人因侵权而造成的损失,或者以被告人的违法所得来计算。实践中,遇到最多的是非法使用型的情形,在计算损失时通常以被害人减少的产品销量乘以每件产品的合理利润来计算,或以被告人销售量乘以每件侵权产品的利润来计算。与其他的商业秘密案件所不同,算法所对应的产品并非有形的实体物件,算法被侵犯后,不存在被害人因此在销量上减少销售了多少个产品,取而代之的是流量与客流量的减少。在互联网时代,算法与流量关系密切,许多算法设计之初衷即是为了增加某软件某平台的流量,故在计算算法侵权所导致的损失金额时,可以考虑流量的减少,以及基于流量减少的代言费、广告费、带货费等收入。而客户量减少的损失,则可以通过参考平台系统以往的数据,根据每个客户能带来的盈利收入乘以流失的客户总量来计算损失。
结语:在数字经济时代,算法作为人工智能与计算机技术深度融合的产物,所起到的作用越来越重要,甚至影响到部分创新型企业的存亡。目前,商业秘密纠纷成为对算法侵权最常见的处理方式,鉴于算法自身的特性与其他商业秘密有所不同,这要求我们在办案过程中多了解算法,多考虑其特殊性,根据情况不同而采用不同的处理方式。