中华人民共和国最高人民法院
民 事 判 决 书
(2021)最高法知民终2298号
上诉人(原审原告):深圳花儿绽放网络科技股份有限公司。住所地:广东省深圳市龙华新区大浪街道厦门大学龙华产学研基地1010室。
法定代表人:罗帆,该公司董事长。
委托诉讼代理人:李德成,北京金诚同达律师事务所律师。
委托诉讼代理人:白露,北京金诚同达(深圳)律师事务所律师。
上诉人(原审被告):浙江盘兴数智科技股份有限公司(原浙江盘兴信息技术有限公司)。住所地:浙江省杭州市拱墅区祥园路45号3幢6层。
法定代表人:王益华,该公司总经理。
委托诉讼代理人:尹智强,北京观韬中茂律师事务所律师。
上诉人(原审被告):浙江盘石信息技术股份有限公司。住所地:浙江省杭州市拱墅区祥园路45号3幢。
法定代表人:田宁,该公司董事长。
委托诉讼代理人:徐忠萍,男,该公司员工。
委托诉讼代理人:尹智强,北京观韬中茂律师事务所律师。
上诉人深圳花儿绽放网络科技股份有限公司(以下简称花儿绽放公司)因与上诉人浙江盘兴数智科技股份有限公司(以下简称盘兴公司)、上诉人浙江盘石信息技术股份有限公司(以下简称盘石公司)侵害技术秘密纠纷一案,不服广东省深圳市中级人民法院于2021年6月9日作出的(2019)粤03民初4519号民事判决,向本院提起上诉。本院于2021年11月29日立案后,依法组成合议庭,并于2022年1月12日不公开开庭审理本案,于2022年7月11日询问当事人,上诉人花儿绽放公司委托诉讼代理人李德成、白露,上诉人盘兴公司委托诉讼代理人尹智强,上诉人盘石公司委托诉讼代理人徐忠萍、尹智强到庭参加诉讼。本案现已审理终结。
花儿绽放公司上诉请求:改判支持花儿绽放公司的全部诉讼请求。事实和理由:(一)原审判决未认定被诉侵权行为公开披露并导致花儿绽放公司的技术秘密为公众所知悉,属于事实认定错误。(二)因公开披露导致技术秘密为公众所知悉,花儿绽放公司主张根据技术秘密的商业价值确定损害赔偿数额基础的诉请,依法应当予以支持。(三)本案应适用惩罚性赔偿,用户“luxin212121”公开披露有客多小程序源代码(以下简称涉案源代码)的主观恶意是显而易见的,该用户是盘兴公司的员工,花儿绽放公司主张盘兴公司承担赔偿责任的依据是双方签订的《花儿绽放源代码使用许可合同》(以下简称涉案合同)的约定及《中华人民共和国反不正当竞争法》(以下简称反不正当竞争法)第三十二条之规定。涉案源代码自2018年12月31日被首次公开披露至Github禁用链接之日长达7个多月,期间涉案源代码不断被Github共享平台多个注册会员复制,并供平台注册会员随时下载至本地使用,给花儿绽放公司造成了重大损失,属于情节严重之情形。(四)原审判决遗漏花儿绽放公司提交的合理维权费用证据,花儿绽放公司在原审庭审中将合理费用从76.916万元变更为95万元,故将第1项诉讼请求由盘兴公司、盘石公司连带赔偿花儿绽放公司经济损失及维权合理费用共计5076.916万元变更为5095万元,而原审判决未就该诉讼请求进行变更;原审判决漏审花儿绽放公司提交的评估鉴定费用。
盘兴公司、盘石公司共同上诉请求:1.撤销原审判决第一项;2.改判驳回花儿绽放公司的全部诉讼请求。事实和理由:(一)花儿绽放公司主张的有客多源代码文件不构成商业秘密。1.花儿绽放公司委托国家工业信息安全发展研究中心司法鉴定所出具的国工信安司鉴所[2019]知鉴字第30号司法鉴定意见书(以下简称第30号鉴定意见书)不具有客观性,鉴定结论不应采信,该次委托由花儿绽放公司自行委托;鉴定机构在进行检索时,应当检索花儿绽放公司主张的20个技术点是否已经公开,而非检索965个源代码是否公开;该鉴定机构检索过程亦有重大瑕疵。盘兴公司、盘石公司二审委托北京京州知识产权服务中心有限公司作出的北京京州(2021)知鉴字第040号鉴定意见书(以下简称第040号鉴定意见书)的鉴定结论显示,在公开的代码文件中可以检索到7个与花儿绽放公司主张的涉案源代码相同的代码,可以证明第30号鉴定意见书检索范围和检索方法存在明显错误。同时,根据盘兴公司提交的证据可见,在2018年10月18日前,在开源领域已经存在多种与花儿绽放公司有客多软件功能相同的软件,作为功能相同的软件其使用的代码文件功能也一定相同,故涉案源代码文件并非“不为公众所知悉”。2.花儿绽放公司未采取相应的保密措施,其提交的证据仅表明其曾经采取了授权办公人员访问的措施,但没有授权办公场所访问及授权办公设备访问两级保护机制,故无法避免涉案源代码在非办公场所及非办公设备上泄漏。涉案源代码文件存储于阿里云服务器,阿里云属于设置公司外部的公共可访问资源,花儿公司未进行IP限制,也未进行设备限制,造成任何人均可以通过账户密码在公司外任意场所任意设备随时访问。3.涉案源代码文件不具有商业价值,已有多个在先公开的开源项目的功能、技术与涉案源代码相同。(二)即使花儿绽放公司主张的技术信息构成商业秘密,盘兴公司也不构成侵权。1.花儿绽放公司的技术人员完全掌握嵌入了盘兴公司信息的源代码,存在花儿绽放公司技术人员披露源代码的可能;盘兴公司主观上没有泄露文件包的主观目的;盘兴公司制定了更为严格的保密措施,客观上花儿绽放公司技术人员泄露代码的可能性大于盘兴公司员工,且Github共享平台上公开文件包中有1006个文件与花儿绽放公司交付文件包中文件不同。2.即使盘兴公司技术人员泄露了涉案源代码,员工的行为并不直接代表公司的行为,花儿绽放公司引用涉案合同中约定的员工违反保密义务则公司承担连带责任的条款,主张盘兴公司承担连带责任,明显混淆了合同纠纷与侵权纠纷。(三)原审判赔金额过高,根据2017年修订的反不正当竞争法,适用法定赔偿的上限为300万元;参照涉案源代码的许可使用费,盘兴公司最多应按照永久授权的许可费20万元向花儿绽放公司支付赔偿金;涉案源代码商业价值、创新程度低,连城资产评估有限公司于2021年1月20日出具的连资评鉴字(2021)01506号价值评估鉴定报告(以下简称价值评估鉴定)评估方式有误,导致评估价值过高;盘兴公司主观并无过错,且涉案源代码已被删除,并未造成严重后果,适用法定赔偿亦不应按照最高额判赔。(四)盘兴公司的股东已经在2021年3月25日发生变更,盘石公司不再是盘兴公司的股东,在盘石公司作为盘兴公司股东期间,两者财务独立、业务独立,且盘石公司作为股份有限公司,根据股份有限公司的财务制度进行规范与公开,完全没有任何财务混同或者不清楚的问题,原审判决盘石公司承担连带责任没有事实及法律依据。
花儿绽放公司向原审法院提起诉讼,原审法院于2019年10月10日立案受理,花儿绽放公司起诉请求:1.盘兴公司、盘石公司连带赔偿花儿绽放公司经济损失及维权合理费用共计5076.916万元。2.盘兴公司、盘石公司在《法制日报》刊登声明消除影响。3.诉讼费由盘兴公司、盘石公司承担。事实和理由:(一)花儿绽放公司主张的技术秘密范围及保密措施。花儿绽放公司主张的技术秘密为有客多软件中20个技术点对应的965个源代码文件。花儿绽放公司针对涉案源代码采取了保密措施,至侵权行为发生时,有客多软件已经受到客户的广泛好评并给花儿绽放公司带来可观的经济利益。(二)盘兴公司、盘石公司接触与非法披露花儿绽放公司技术秘密的行为。2018年10月18日,花儿绽放公司与盘兴公司签署了涉案合同。2018年10月24日,花儿绽放公司按照许可合同约定向盘兴公司交付了加密的有客多小程序源代码(以下简称交付代码)及相关文件。有客多软件源代码于2018年12月31日被用户“luxin212121”发布到Github公共存储库,后被Github平台多个用户(以下简称分支用户)复制到其公共存储库。经比对披露代码与交付代码,发现披露代码中增加了多个指向盘兴公司、盘石公司的信息,故花儿绽放公司有充分的理由怀疑盘兴公司、盘石公司及其员工非法披露了花儿绽放公司的技术秘密,因此应承担连带侵权责任。(三)花儿绽放公司在软件BeyondCompare中导入花儿绽放公司主张构成技术秘密的涉案源代码和公开披露的源代码,结果显示965个不为公众所知悉的源代码技术秘密文件均包含在披露的源代码中。(四)盘兴公司、盘石公司恶意公开披露花儿绽放公司技术秘密的行为导致涉案源代码为公众知悉,给花儿绽放公司带来的经济损失达1000万元。花儿绽放公司主张盘兴公司、盘石公司连带赔偿花儿绽放公司经济损失为5000万元,合理费用76.916万元。盘兴公司、盘石公司的侵权行为在市场上造成了非常恶劣的影响,严重侵犯了花儿绽放公司的合法权益,贬损了有客多软件商品及服务的声誉,应当在《法制日报》上刊登声明,及时有效地消除影响。(五)盘石公司是唯一股东,对盘兴公司的债务应当承担连带责任。盘石公司自盘兴公司设立之日起至本起诉状具状之日止,一直是盘兴公司的唯一股东,盘石公司应对盘兴公司的债务承担连带责任。
盘兴公司、盘石公司原审共同辩称:(一)花儿绽放公司指控盘兴公司侵害了其技术秘密所依据的事实是交付代码于2018年12月30日被用户“luxin212121”发布到Github公共存储库,后被Github平台多个用户复制到公共存储库,但现无任何证据证明用户“luxin212121”为盘兴公司的员工。(二)从花儿绽放公司提供的证据来看,至少有数个用户从名为“luxin212121”的用户处下载了花儿绽放公司所指控的被披露的源代码,但花儿绽放公司未能提供证据证明用户“luxin212121”所披露的源代码来源于盘兴公司,而不是来源于其他的用户。(三)根据花儿绽放公司的起诉状,花儿绽放公司只是怀疑盘兴公司披露了花儿绽放公司的技术秘密,而其怀疑所基于的理由仅是花儿绽放公司指控的被披露的源代码中含有盘兴公司、盘石公司的相关信息,但这些信息都是公开的信息,任何一家企业或个人,包括花儿绽放公司都可以从多个渠道获取到,并嵌入到花儿绽放公司所指控的源代码中。仅凭该事实,并不能排除存在其他可能性,不能达到花儿绽放公司的证明目的。(四)从花儿绽放公司提供的证据来看,仅在2018年及2019年1-6月,花儿绽放公司至少与逾千家企业就涉案软件签订使用许可合同,根据花儿绽放公司自述的使用许可类型,其中包含了大量的源代码使用许可行为,意味着诸多被许可单位收到花儿绽放公司发送的源代码,该些单位也完全可以在自己收到的源代码中嵌入盘兴公司、盘石公司的相关信息。(五)花儿绽放公司在本案中单方就被披露的源代码不为公众所知悉及相关研发费用所作的司法鉴定及财务审计结论,对盘兴公司、盘石公司没有约束力。(六)退一步说,根据双方所签订的涉案合同第十条违约责任第2款约定,即使法院认为盘兴公司违反合同约定的义务,但花儿绽放公司未提供任何证据证明盘兴公司获得了经济利益,根据合同约定,花儿绽放公司最多也只能按合同总金额的30%要求盘兴公司承担赔偿责任。(七)根据花儿绽放公司提供的证据以及陈述可见,被披露的源代码于2018年12月31日上传至Github。2019年4月19日,花儿绽放公司发现源代码被披露。同年5月9日,花儿绽放公司进行证据固定,发现有6名用户复制了该代码。2019年6月27日,花儿绽放公司委托国家工业信息安全发展研究中心司法鉴定所对该源代码是否为公众所知悉进行司法鉴定,司法鉴定人员通过网络搜索等方式进行检索,均未检索到该源代码,由此可见,花儿绽放公司所谓的被披露的源代码并未遭到泄露。关于花儿绽放公司针对盘石公司的请求,其在诉讼请求中要求盘石公司、盘兴公司连带承担赔偿责任,认为二公司有共同侵权行为,但依据仅为盘石公司是盘兴公司唯一股东,而非共同侵权行为。
原审法院经审理查明以下事实:
(一)花儿绽放公司所称技术秘密的情况
1.非公知性的情况
国家版权局于2018年4月25日颁发的著作权登记证书(软著登字第2612234号)记载:软件名称为花儿绽放有客多软件【简称:有客多】V1.0,著作权人为花儿绽放公司,开发完成及首次发表日期均为2018年1月31日,权利取得方式为原始取得。
国家版权局于2018年11月29日颁发的著作权登记证书(软著登字第3288565号)记载:软件名称为花儿绽放有客多软件【简称:有客多】V2.0,著作权人为花儿绽放公司,开发完成及首次发表日期均为2018年8月27日,权利取得方式为原始取得。
第30号鉴定意见书记载:1.委托人为花儿绽放公司,委托事项为花儿绽放公司的有客多软件部分源代码在2018年12月31日前是否为公众所知悉,受理日期为2019年6月27日。2.鉴定材料包括①源代码光盘,一式一份,内含源代码压缩包“gongzhi.zip”和“shal.txt”,经查验gongzhi.zip的SHAI校验值与shal.txt中记载的一致。②《有客多软件技术点说明》,一式一份,共28页。依据《有客多软件技术点说明》可知,有客多软件是一款微信小程序开发工具,提供小程序行业解决方案让用户快速拥有自己的微信行业小程序。软件采用java语言,基于SpringMVC+Mybatis架构开发,软件是通过打包编译生成war包部署在阿里云平台提供服务。整个软件从业务架构上分为三层,包括业务前台、服务中台和底层架构。其中业务前台包含建站业务、电商业务、餐饮业务、名片业务、多门店业务、分销业务、互动业务、知识付费业务、社区服务等模块;服务中台包含商品SKU服务、订单服务、会员及优惠券服务、积分服务、奖品服务、活动服务、微信接口服务、短信服务、多媒体服务、资讯论坛服务、资源调度服务等模块;底层架构包含分布式部署架构、缓存架构、数据存储架构、日志整体架构、消息队列架构等。花儿绽放公司主张的20个技术点对应的979个源代码文件,涵盖了实现上述业务前台和服务中台的全部功能模块的部分源代码。3.检索结果。2019年6月28日至7月22日,鉴定组依据《有客多软件技术点说明》,针对有客多软件中的20个技术点对应的979个源代码文件,在谷歌、百度2个知名搜索网站,Github、searchcode2个软件源代码共享网站进行了搜索,检索到与上述有客多软件中14个源代码文件内容相近似的内容,未检索到与其他源代码文件内容相近似的内容。4.鉴定意见。有客多软件中20个技术点对应的965个源代码文件在2018年12月31日之前不为公众所知悉。
2.保密措施的情况
花儿绽放公司提交的《物理保密措施截屏及说明》显示代码管理采用VPN统一安全授权,SVN账号密码加密授权,账号密码每人唯一。正常登录VPN后,方能使用SVN账号密码登录。
花儿绽放公司主张与员工签订有《员工保密信息和职务发明转让协议》,向法院提交了其中一份协议予以证明。该份协议的原件显示有员工姓名(花儿绽放公司为保护技术人员的个人信息不被泄露,在复印件中遮盖了员工的签名),签订时间为2013年7月12日。该协议中记载“保密信息”是指公司透露给员工的,或员工从公司处以书面、口头、画图、观察零部件或设备等方式间接或直接地获得任何公司的专有信息、技术数据、商业秘密或技术诀窍,包括但不限于研发计划、软件、程序。
花儿绽放公司(甲方)与盘兴公司(乙方)于2018年10月18日签订涉案合同。该合同记载:1.第二条(使用许可授权及限制)第1款规定“经友好协商,甲方同意授予、乙方同意接受对有客多小程序源码的非专有,不可转让的使用许可”。2.第三条(保密条款)第1款规定“保密信息”是指有客多小程序源码、本合同及所有附件和补充文件,以及其他由甲方、乙方各自专有的、且提供给对方的并明确标有“保密”字样的信息。第2款规定“双方同意严格按照本合同的规定使用对方的保密信息,未经对方的事先书面许可,不得向第三方,或允许第三方直接或间接地透露保密信息。双方同意:i.对保密信息保密,并采取所有必要的预防措施(包括但不限于双方采取的用于保护自身保密信息的措施)防止未经授权的使用及透露保密信息。ii.不得向第三方提供保密信息或由保密信息衍生的信息。除了本合同确定的使用范围外,不得在其他任何时候使用保密信息”。第4款规定“本合同约定的双方所承担的保密义务不因合同的变更、终止而终止,如双方没有对保密期限加以规定,则直至保密信息在本行业中成为公知信息后,本合同约定的保密义务才予以解除”。第4款规定“甲乙双方同意,以适当方式告知并要求各自能接触到保密信息的员工遵守本条约定,若某员工违反本条约定,应承担连带责任”。3.第六条第4款规定“甲方负责人到达乙方办公场所后,向乙方出示包含授权软件源码的加密U盘交付物,甲方负责人将加密U盘交付物及密码交给乙方负责人,甲方负责人在乙方办公场所现场协助乙方搭建授权软件本地开发环境,乙方应及时查收,核对无误后,应向甲方出具书面查收证明”。4.第七条第3款规定“未经甲方事先书面许可,乙方不得实施以下行为:(1)将有客多小程序源码向第三方提供、泄露、销售、转租、转借、转让或提供分许可、转许可或以其他形式供他人利用。(2)除以备份目的以外,不得制作、指使第三方制作或许可第三方制作有客多小程序源码的复制品”。
3.商业价值的情况
花儿绽放公司与盘兴公司签订的涉案合同第六条约定,盘兴公司使用有客多小程序源码的许可费为15万元,发布时间为2018年10月8日的平台源码。许可使用期限为合同签订日起20个自然年度。
(二)被诉侵权行为的情况
2018年10月24日,花儿绽放公司将装有涉案源代码包的加密U盘交付给盘兴公司的负责人员戴正旺,并将U盘密码以微信方式发送给了戴正旺。盘兴公司于2018年10月26日出具的《有客多源代码使用许可项目(软件)签收表》记载:兹收到花儿绽放公司与盘兴公司签订的合同(合同编号:HEZF-QD-201810161215)内所授权的有客多小程序软件;软件版本号为V2018102201;备注“以上软件清单中所包含的内容已包含在签收人所签收的保密U盘中”。
深圳市版权协会出具的电子证据固化报告(2019深版协电证固字第F0774号)记载,2019年5月9日,根据花儿绽放公司的申请,在连接互联网的办公电脑上做清洁处理后,进入工业和信息化部,点击公共查询显示:panshi101.com域名的权利人为盘兴公司。深圳市版权协会出具的电子证据固化报告(2019)深版协电证固字第F0848号)记载,2019年5月21日,根据花儿绽放公司的申请,在连接互联网的办公电脑上做清洁处理后,进入工业和信息化部,点击公共查询显示:网站名称“盘石科技”、网址×××.com、www.mhw001.com的权利人为盘石公司。
深圳市版权协会出具的电子证据固化报告(2019深版协电证固字第F0772号)记载,2019年5月9日,根据花儿绽放公司的申请,在办公电脑上做清洁处理后进行如下操作:打开GoogleChrome浏览器,输入网址×××.com;点击“signin”,输入用户名salaciouswolf@gmail.com及密码,点击“signin”;在输入框中输入“youkeduo”进行搜索;点击搜索结果“luxin212121/java-saas”后进入相关页面并下载该用户披露的有客多源代码。相关页面的截图显示,Github网站上名称为“luxin212121”的用户,在2018年12月31日将有客多源代码对外披露。前述披露的有客多源代码中指向盘兴公司、盘石公司的信息主要有:1.多处含有盘兴公司的域名panshi101.com。2.多处含有盘石公司的域名adyun.com。3.将交付代码中的平台注释和系统平台名称由“有客多小程序”修改为“盘石微店”。4.将交付代码中的“微俱聚logo”修改为“盘石微店logo”。5.将交付代码中的客服电话400-××××-925修改为盘石公司客服电话400××××-1110。6.披露代码中增加了盘石公司版权信息(copyright?2018盘石科技.Allrightsreserved)。7.“luxin212121”在Github网站的另一个存储库(laravel-mhwww)发布了含有盘石公司内部研发管理系统的链接:http://122.224.234.181:3729/zentao/doc-view-33.html,http://122.224.234.181:3729/zentao/doc-view-34.html,http://122.224.234.181:3729/zentao/doc-view-35.html。8.在披露的有客多源代码文件中,修改了交付代码中第三方平台的配置参数(该参数为发起微信功能所需密钥,由用户在微信第三方平台私密获取)及目标数据库的访问地址data.db.url参数(该参数为数据库存储路径,修改后的参数显示为在阿里云购买的rds数据库链接地址)。9.截至2019年5月6日,Github网站上共有Zyq11223、baiyexingzhe、eavenliu、newbigtech、salaciouswolf、Laotian8076等6位用户复制了“luxin212121”披露的有客多源代码。
深圳市版权协会出具的电子证据固化报告(2019深版协电证固字第F0847号)记载,2019年5月21日,根据花儿绽放公司的申请,在办公电脑上做清洁处理后进行如下操作:打开GoogleChrome浏览器,输入网址×××.com;点击“signin”,输入用户名salaciouswolf@gmail.com及密码登录,相关内容的截图显示,用户“luxin212121”在Github网站的其他三个存储库(php-saas、laravel-mhwww、mhwsource)发布的内容中指向盘石公司的信息主要有:1.盘石公司的域名adyun.com、盘石微店签名、盘石公司的版权信息(copyright?2004-2019浙江盘石信息技术股份有限公司.Allrightsreserved)。2.盘石公司的介绍链接、帮助支持链接、联系我们链接。3.盘石公司的办公地址:杭州拱墅区××路××号××大厦。4.盘石公司的域名mhw001.com和adyun.com、盘石官网链接、盘石网盟链接、盘石大学链接。5.盘石公司支付宝收款账户信息:zjpszp99bill@adpanshi.com。
深圳市版权协会出具的电子证据固化报告(2019深版协电证固字第F1148号)记载,2019年7月17日,根据花儿绽放公司的申请,在办公电脑上做清洁处理后输入网址×××.com;使用账号salaciouswolf@gmail.com及密码登录,进入相关页面显示,截至2019年6月27日,Github网站上新增6名用户复制了“luxin212121”披露的有客多源代码。该6名用户为ggjucheng、yangxu1225、bleehome、sunlc1986、kentZhong31、cherish9950。
花儿绽放公司于2019年6月20日向Github网站发出律师函,要求对方尽快删除用户“luxin212121”发布的侵权存储库的分支存储库(原始侵权存储库已删除)并提供用户“luxin212121”的联系信息。Github网站于2019年7月9日的回复显示,相关内容已删除,由于没有相关的法律文件,不能共享关于其他用户的存储库的任何附加。花儿绽放公司确认有客多源代码已被Github网站删除。此外,花儿绽放公司于2019年9月5日向盘兴公司、盘石公司分别发出律师函,要求盘兴公司、盘石公司尽快沟通消除影响及赔偿损失事宜。
深圳市版权协会出具的电子证据固化报告(2019深版协电证固字第F2052号)记载,2019年11月27日,根据花儿绽放公司的申请,在办公电脑上做清洁处理后设置新的VPN连接,输入ip地址:112.74.112.108,使用账号yuanxunxi和密码登录到VPN网络环境,使用SVN客户端软件从SVN服务器中下载对应版本的文件代码内容。花儿绽放公司主张从前述SVN服务器(花儿绽放公司用于存放各版本软件源代码的服务器)下载的有客多源代码版本与交付给盘兴公司的有客多源代码所涉技术秘点相同。对此,花儿绽放公司将前述下载的源代码版本与“luxin212121”在Github网站上披露的有客多源代码,通过软件比对工具BeyondCompare进行比对后显示,二者含有965个相同文件和列表。
2021年4月6日,盘兴公司在原审庭审后向原审法院出具的书面意见中确认:花儿绽放公司交付给盘兴公司的源代码包中具有花儿绽放公司主张的965个不为公众所知悉的源代码文件。
盘石公司成立于2004年11月25日,盘兴公司成立于2017年4月26日。盘石公司是盘兴公司的唯一股东。花儿绽放公司原审庭审时明确:本案中不主张盘兴公司、盘石公司承担共同侵权责任。盘石公司是盘兴公司的唯一股东,盘石公司不能证明盘兴公司的财产独立于自己的财产时,盘石公司依法应对盘兴公司的债务承担连带责任。
(三)花儿绽放公司主张侵权受损的情况
花儿绽放公司提交的研发资料及内部微信记录显示,花儿绽放公司于2017年10月13日开始小程序市场的产品研发,2017年12月1日将研发的小程序命名为有客多。
深圳永信瑞和会计师事务所于2019年6月27日出具的审计报告记载:依据花儿绽放公司所作的2018年1月1日至2018年10月31日研究开发费用结构明细表、研究开发费用结构明细表附注。2018年1月1日至2018年10月31日研究开发项目投入金额为8422304.54元,其中“花儿绽放有客多软件”项目投入金额为3595635.74元(其中V1.0版本的研发投入为737657.68元,V2.0版本的研发投入为2857978.06元)。
花儿绽放公司2018年年度报告摘要记载:1.平台业务方面,微俱聚平台、有娱平台整体注册用户保持稳定增长,付费用户转化率有所提升。2018年度公司上线了有客多微信小程序,为企业客户快速搭建微信小程序提供便捷工具。平台上线一年,凭借微信小程序需求的高速增长,以及公司积累的全国经销网络,平台注册用户及付费用户均大幅增长(注册用户38万、付费用户0.4万),为公司贡献了较大一部分业绩增长份额。2.2018年微信小程序开发的需求增长迅速,公司成为市场第一批提供微信小程序开发的第三方服务商,并凭借多年积累的客户资源迅速占领市场,取得了明显的领先优势。花儿绽放公司2019年半年度报告摘要记载:1.平台业务方面,微俱聚平台、有娱平台整体注册用户保持稳定增长,付费用户转化率保持稳定。尽管受宏观经济及移动互联网营销阵地变化的影响,微俱聚平台的新增注册用户数量逐渐放缓,但存量用户的体量庞大,续费用户仍然稳定转化,而有娱平台及有客多平台的注册用户及付费用户数(注册用户42.7万、付费用户0.49万)则实现稳定增长。
花儿绽放公司提交的有客多产品收款统计表显示:1.2017年有客多产品总收入为516700元。2.2018年有客多产品总收入为11408532元。3.2019年1-6月有客多产品总收入为3475966.74元,2019年7-12月有客多产品总收入为1832003元。4.2020年1-10月有客多产品总收入为1083598元。
连城资产评估有限公司出具的价值评估鉴定记载:1.资产评估报告名称为花儿绽放公司拥有的“有客多软件20个技术点对应的技术信息(965个源代码文件包含的源代码)”商业秘密价值评估鉴定项目。2.本次评估基准日为2018年12月31日。3.花儿绽放公司拥有的“有客多软件20个技术点对应的技术信息(965个源代码文件包含的源代码)”商业秘密价值在评估基准日的评估鉴定值为1012万元。
花儿绽放公司针对有客多源代码被披露的情况,为避免系统安全漏洞而组织技术人员开展反漏洞工作、对代码作了部分加密改造,并与绿盟公司沟通反漏洞方案。
花儿绽放公司主张的维权费用包括:1.律师费50万元,花儿绽放公司提交了《委托代理合同》《委托代理合同之补充协议》及律师费发票。根据《委托代理合同》第六条的约定,花儿绽放公司同意按照最终收到赔偿金的50%向广东卓效律师事务所支付律师费。《委托代理合同之补充协议》将原合同第六条修改为:本协议签订之日起将已预付的50万元律师费转为基础律师费。花儿绽放公司另按照最终收到赔偿金的25%扣减50万元后向广东卓效律师事务所支付奖励律师费。2.司法鉴定费25万元,花儿绽放公司提交了鉴定费发票。3.电子证据固化费用共计15760元,花儿绽放公司提交了电子证据固化服务费发票4张。4.有客多研发审计费5000元,花儿绽放公司提交了审计合同及发票。5.翻译费1500元及发票。6.评估师及律师差旅费13143元,花儿绽放公司提交了相关机票、住宿费发票。
(四)盘兴公司、盘石公司抗辩的情况
(2020)浙杭西证民字第3100号记载:1.2020年4月16日,花儿绽放公司销售人员张楚发送给盘兴公司的邮件附件中,有客多小程序价格表中独立部署为10万元/永久、源码部署为20万元/永久。2.2020年4月21日,董金明以广西花儿绽放文化传媒有限公司的名义发送给盘兴公司的邮件附件中,有客多小程序价格表中独立部署为10万元/永久、源码部署为20万元/永久。3.搜索微擎、小猪、凡科等网站,显示可提供微信小程序产品的开发及相关服务。
(2020)浙杭西证民字第3099号记载:2018年10月22日,盘兴公司将“有客多部署项目准备资料清单”与“有客多部署图文材料”通过微信、邮件发送给花儿绽放公司的技术人员。
(2020)浙杭西证民字第3650号记载:2018年10月17日,盘兴公司向花儿绽放公司提供了微信开放平台的登录用户名及密码。
(2020)浙杭西证民字第3651号记载:2018年10月16日,花儿绽放公司通过邮件向盘兴公司发送“名片部署准备资料清单”和“名片部署项目准备资料说明”。
(2020)浙杭西证民字第5394号记载:通过互联网公开渠道可以查询到盘兴公司的字号、logo、客服电话、域名、地址、邮箱等信息。
(五)其他情况
盘兴公司、盘石公司在原审庭审结束后,更换了诉讼代理人,并补充提交了如下几方面的证据:1.主张盘石公司设置有保密机制的证据,包括代码库管理制度、IT安全运维管理系统截图、员工保密协议。2.主张与有客多功能相似的软件产品在市场上大量存在。①在Github网站上可以搜索到大量有关小程序的开源项目。②与有客多功能类似的建站abc于2016年8月上市,基础版免费。③微信小商店2020年上市,免费提供一键式搭建小程序电商,提供开放接口和二次开发能力。3.主张涉案源代码极有可能被非授权代理商泄露。广西花儿绽放文化传媒有限公司在其官网上显示其为花儿绽放公司的广西分公司。花儿绽放公司认为前述证据系在举证期限之后提交,无法定理由,不予质证。针对盘兴公司、盘石公司提交的前述网页截图打印件,原审法院登录互联网相关网页作了核对,二者内容相符。
花儿绽放公司主张适用惩罚性赔偿,以连城资产评估有限公司对涉案技术秘密作出的评估值1012万元为基数,再乘以倍数4.94得出赔偿金额。
原审法院认为,本案争议焦点为:(一)花儿绽放公司主张的技术信息是否构成商业秘密;(二)花儿绽放公司指控盘兴公司、盘石公司侵权是否成立;(三)若构成侵权,盘兴公司、盘石公司如何承担民事责任。
针对焦点一,本案被诉侵权行为发生的时间为2018年12月31日,持续至2019年7月初,故本案应适用2019年4月23日施行的反不正当竞争法。该法第九条规定,商业秘密应符合秘密性、价值性和保密性的要求。秘密性指商业秘密所处的状态应当是不为公众所知悉。花儿绽放公司在本案中主张的技术秘密为有客多软件中20个技术点对应的965个源代码文件。第30号鉴定意见书认为,上述技术秘密具有非公知性。盘兴公司、盘石公司对鉴定机构未在Github网站上检索到被披露的有客多源代码提出了质疑。经查,鉴定机构的检索时间为2019年6月28日至7月22日,而Github网站在7月9日前已删除了被披露的有客多源代码。鉴定机构实施检索时并非必然以Github网站为首选,后期在Github网站上未检索到已被删除的源代码亦符合实际情况。盘兴公司、盘石公司称Github网站上关于小程序的开源项目众多,但并无相反证据推翻该鉴定意见,应认定涉案965个源代码文件不为公众所知悉。关于价值性和保密性,花儿绽放公司提交了有客多软件使用许可合同及相关许可费的证据,显示涉案软件能给花儿绽放公司带来经济利益。此外,花儿绽放公司提交的证据显示,其对有客多软件源代码的管理采用VPN统一安全授权、SVN账号密码加密授权,花儿绽放公司与员工签订有保密协议;花儿绽放公司与盘兴公司签订的涉案合同中,约定了具体的保密条款且以加密载体交付。前述措施表明花儿绽放公司针对的保密客体是具体明确的,该措施在正常情况下能够防止涉密信息被泄露,符合保密性要求。综上,花儿绽放公司主张的涉案965个源代码文件构成技术秘密。
针对焦点二,现有证据显示,用户“luxin212121”在Github网站上披露的有客多软件源代码中涵盖了涉案技术秘密。经查证,其一,盘兴公司通过与花儿绽放公司签订涉案合同,获取了有客多软件的源代码。其二,虽无法获悉用户“luxin212121”的具体身份信息,但其披露的有客多软件源代码中,众多信息均指向盘兴公司与盘石公司。这些信息包括盘兴公司、盘石公司的版权信息、域名、客服电话、logo以及平台注释、系统平台名称、默认签名等内容。其三,需特别关注的是,披露的有客多软件源代码修改了原来的第三方平台的配置参数(该参数为发起微信功能所需密钥,由用户在微信第三方平台私密获取)及目标数据库的访问地址data.db.url参数(该参数为数据库存储路径,修改后的参数显示为在阿里云购买的rds数据库链接地址)。对前述参数的修改及修改后的信息属于企业的机密,不为外人所知。其四,用户“luxin212121”还在Github网站的其他三个存储库(php-saas、laravel-mhwww、mhwsource)发布源代码,其中亦含有大量指向盘石公司的信息,包括盘石公司的版权信息、域名、介绍链接、帮助支持链接、联系我们链接、地址、官网链接、盘石网盟链接、盘石大学链接、支付宝收款账户等。前述部分信息虽可通过互联网获知,但部分是外人难以知晓或不会关注的信息。用户“luxin212121”在Github网站的不同存储库、不同源代码中汇集了盘兴公司、盘石公司如此丰富、完整的企业信息,除了盘兴公司或其知情的员工外,他人均难以做到。盘兴公司对此未有合理解释,抗辩亦缺乏理据。花儿绽放公司与盘兴公司在涉案合同中明确约定,若盘兴公司的员工违反保密义务,盘兴公司应承担连带责任。综上,盘兴公司应对侵权行为承担法律责任。
针对焦点三,盘兴公司构成侵权,花儿绽放公司有权向其主张赔偿损失。关于消除影响的诉讼请求,原审法院认为,侵权行为系对商业秘密的披露,未有证据证明侵权行为给花儿绽放公司造成了必须消除的不良影响,故该项诉请原审法院不予支持。花儿绽放公司主张适用惩罚性赔偿,根据反不正当竞争法第十七条的规定,经营者恶意实施侵犯商业秘密行为,情节严重的,可以在一倍以上五倍以下确定赔偿金额。现有证据不能证明盘兴公司对涉案源代码的披露具有恶意,故不应适用惩罚性赔偿。
关于研发费用和反漏洞的损失。鉴于研发费用的审计报告是花儿绽放公司单方委托,且审计报告作出的依据仅系花儿绽放公司所作的2018年1月1日至2018年10月31日研究开发费用结构明细表、研究开发费用结构明细表附注,并未审查付款凭证、工资支付凭证等原始材料,故其客观性存疑。涉案源代码已被披露,花儿绽放公司采取反漏洞的补救工作具有必要性,但具体损失未有证据证明。上述两项损失的情况,原审法院在裁判时予以酌情考虑。
花儿绽放公司列举了2018年至2020年涉案软件销售收入下滑的情况,主张系侵权行为造成的损失。原审法院认为,花儿绽放公司提交的2019年半年报显示有客多产品的注册用户及付费用户数实现稳定增长。花儿绽放公司提交的销售单据系其单方统计,即便客观真实,考虑到互联网产品更新换代的频率及生命周期的情况,其他商家包括微信平台亦推出免费的小程序服务,花儿绽放公司涉案产品的市场份额必然会随着市场竞争环境的改变而变化。综上,花儿绽放公司主张的该项损失金额原审法院不予支持,但在裁判时予以酌情考虑。
关于维权费用的问题。花儿绽放公司主张的维权费用包括律师费、鉴定费、电子证据固化费、审计费、翻译费、差旅费等,前述事项已实际发生并有相关票据佐证,相关金额亦在合理范围之内,原审法院对前述费用予以支持。
综上,根据本案在案证据,难以确定花儿绽放公司因盘兴公司、盘石公司侵权而遭受的实际经济损失数额,也难以确定盘兴公司因侵权所获经济利益数额,故应当适用法定赔偿原则,依法确定赔偿额。原审法院根据涉案产品的研发与销售情况、花儿绽放公司年度报告、侵权行为的性质、侵权情节、主观过错、侵权持续的时间、反漏洞费用以及花儿绽放公司为制止侵权行为所支付的合理费用等因素,酌情确定盘兴公司承担的赔偿数额为500万元。盘石公司是盘兴公司的唯一股东,其未能证明盘兴公司的财产独立于盘石公司的财产。根据《中华人民共和国公司法》第六十三条的规定,盘石公司应当对盘兴公司的前述债务承担连带责任。
原审法院判决:一、浙江盘兴信息技术有限公司应在判决生效之日起十日内赔偿深圳花儿绽放网络科技股份有限公司经济损失及合理维权费用共计500万元,浙江盘石信息技术股份有限公司对前述赔偿金额承担连带责任;二、驳回深圳花儿绽放网络科技股份有限公司的其他诉讼请求。如果未按判决指定的期间履行给付金钱义务,应当依照《中华人民共和国民事诉讼法》(2017年修正)第二百五十三条之规定,加倍支付迟延履行期间的债务利息。本案受理费295645.8元,由花儿绽放公司负担245645.8元,由盘兴公司、盘石公司共同负担50000元。
本院二审期间,花儿绽放公司为证明其主张,向本院提交了1份证据:关于价值评估报告使用期限延续的说明,拟证明涉案价值评估报告依据的各类数据无变化,报告结论的有效期延续一年。
盘兴公司、盘石公司的质证意见为:对该份证据真实性、合法性、关联性、证明目的均不认可,根据《中华人民共和国资产评估法》,价值评估报告最多只能有一年的有效期,不可再延长;且该报告出具程序不合法。
本院的认证意见为:该份证据由作出价值评估报告的机构出具,对其真实性予以确认,对其能否实现证明目的将结合其他在案证据予以论述。
盘兴公司、盘石公司为证明其主张,向本院提交了6份证据:证据1为第040号鉴定意见书,拟证明涉案965个源代码文件并非“不为公众所知悉”,第30号鉴定意见书检索范围和检索方法存在明显错误。证据2为北京鼎承知识产权代理有限公司出具的《代码比对成果报告》,拟证明Github共享平台上的公开文件包与花儿绽放公司交付给盘兴公司的文件包有差异,其中仅在交付包中体现但没有在公开文件包中体现的文件数为331个,两个文件包均包含但内容有差异的文件数为117个,仅在公开文件包中体现但没有在交付文件包中体现的文件数为1006个;代码相同还应包括代码功能实质相同。证据3为北京市东方公证处(2022)京东方内民证内字第00487号公证书,证据4为北京京州(2021)知鉴字第041号鉴定意见书,拟共同证明花儿绽放公司主张的涉案965个源代码文件不具有价值。证据5为鉴定费等发票,拟证明盘兴公司、盘石公司为本案支付的鉴定费用等共计36.58万元。证据6为小程序行业现状,拟证明涉案技术秘密不具有价值性。
花儿绽放公司的质证意见为:证据1-6均为盘兴公司、盘石公司故意逾期提交的证据,对证据1真实性、合法性认可,对关联性不认可,3个有关变量命名的文件整体有特定性,不为公众所知悉;其他4个文件仅是部分代码被公开,但未被整体公开。对证据2真实性、合法性认可,对关联性不认可,原审中盘兴公司、盘石公司认可披露的源代码文件包括涉案965个源代码文件,且花儿绽放公司原审提交的证据亦可以证明该事实;盘兴公司、盘石公司收到花儿绽放公司交付的源代码文件后,对其进行了适应性修改,所以会导致公开文件包数与交付文件包数不同。对证据3、4真实性、合法性认可,对关联性不认可,其他软件可以实现涉案965个源代码文件的功能并不能证明涉案965个源代码文件不具有价值性。对证据5真实性、合法性、关联性认可,对证明目的不认可。对证据6真实性、合法性认可,对关联性、证明目的不认可,无法证明涉案965个源代码文件不具有价值性。
本院的认证意见为:盘兴公司、盘石公司提交证据1-5确已超出二审举证期,但鉴于该些证据与本案待证事实有密切关联,本院对证据1-5真实性予以确认,对该些证据的证明力,将在裁判理由部分予以论述。证据6中其他企业市值下跌情况与本案无关,且不能用于证明在被诉侵权行为发生时的行业状况,有客多软件于2021年9月不再进行功能更新的信息也不能用于证明有客多软件在被诉侵权行为发生时的商业价值不高,故对证据6不予采信。
本院经审理查明,原审查明的事实基本属实,本院予以确认。
本院另查明:二审庭审中,花儿绽放公司明确其向客户交付软件源代码的情况比较少,提供给客户的源代码大部分相同,但针对不同客户有些许不同设置;原审之后涉案软件基本没有销售。花儿绽放公司认可盘兴公司、盘石公司披露涉案源代码无恶意,也无获利;主张涉案源代码由盘兴公司、盘石公司员工披露,但认为员工行为应由盘兴公司、盘石公司承担责任。
盘兴公司、盘石公司在二审期间,单方委托北京京州知识产权服务中心有限公司作出第040号鉴定意见书,其鉴定结论为:“GoodsBuyDetail.java”“Area.java”“CusmallStatisticsInfo.java”3个文件中的代码由且仅由成员变量定义及成员变量对应的geter、seter等方法组成,其中成员变量属于常见命名,该种定义成员变量并生成geXXX、setXXX等方法的形式是Java编程语言推荐的标准写法,属于所属领域的行业惯例;“AppletWxPayController.java”“AppletKoulingRedpackMobileController.java”“EmailServiceImpl.java”“HttpUtils.java”4个文件中的部分代码在2018年10月18日之前已被开源软件库公开。
价值评估鉴定中评估测算过程表记载:2019年、2020年销售收入均为3422.56万元,研发费用均为635.58万元,净利润均为1804.22万元;2021年销售收入为2566.92万元,研发费用为476.68万元,净利润为1347.91万元;2022年、2023年销售收入均为513.38万元,研发费用均为95.34万元,净利润均为252.77万元;2024年销售收入为308.03万元,研发费用为57.2万元,净利润为78.22万元。
2021年8月6日,浙江盘兴信息技术有限公司变更企业名称为浙江盘兴数智科技股份有限公司,即盘兴公司。
本院认为:涉案源代码于2018年12月31日在Github网站上被公开披露,披露行为一经实施,即造成源代码信息被公开的后果,故本案被诉侵权行为发生的时间为2018年12月31日,此后该源代码在Github网站上持续被披露,直至2019年7月9日才被删除,仅是在Github网站上被披露状态的持续,并不是侵权行为的持续,源代码在网站上被删除也不意味着已经被公开的源代码能回溯到不公开的保密状态。因此,原审法院以被诉侵权行为持续至2019年7月初,认为本案应适用2019年修正的反不正当竞争法的法律适用有误,本院予以纠正。本案应当适用侵权行为发生时的法律,也即2017年修订的反不正当竞争法。
根据各方的诉辩意见,本案的争议焦点问题是:(一)花儿绽放公司主张的商业秘密是否成立;(二)盘兴公司是否构成侵权;(三)侵权责任应当如何承担;(四)盘石公司是否应承担连带责任。
(一)花儿绽放公司主张的商业秘密是否成立
反不正当竞争法第九条第三款规定,本法所称的商业秘密,是指不为公众所知悉、具有商业价值并经权利人采取相应保密措施的技术信息和经营信息。本案中花儿绽放公司主张的涉案965个源代码文件构成技术秘密,其主张的20个技术点是对源代码功能进行的概括,仅为了便于鉴定机构理解源代码的逻辑,故本案实际应判定花儿绽放公司主张的涉案965个源代码是否构成技术秘密。
1.关于花儿绽放公司主张的涉案965个源代码文件是否“不为公众所知悉”。《最高人民法院关于审理侵犯商业秘密民事案件适用法律若干问题的规定》第三条规定,权利人请求保护的信息在被诉侵权行为发生时不为所属领域的相关人员普遍知悉和容易获得的,人民法院应当认定为反不正当竞争法第九条第四款所称的不为公众所知悉。本案中,花儿绽放公司提交了第30号鉴定意见书以证明涉案965个源代码文件“不为公众所知悉”。盘兴公司、盘石公司认为第30号鉴定意见书检索范围、检索方法有重大瑕疵,第040号鉴定意见书的鉴定结论显示其中3个源代码文件属于行业惯例、在公开的代码文件中可以检索到4个与花儿绽放公司主张的涉案源代码部分相同的代码,且在2018年10月18日前,已经在开源领域存在多种与花儿绽放公司有客多软件功能相同的软件,因此第30号鉴定意见书的鉴定结论不应采信,并申请法院组织对涉案源代码是否“不为公众所知悉”进行重新鉴定。
对此本院认为,首先,《最高人民法院关于民事诉讼证据的若干规定》(2019修正)第四十条第一款规定,当事人申请重新鉴定,存在下列情形之一的,人民法院应当准许:(一)鉴定人不具备相应资格的;(二)鉴定程序严重违法的;(三)鉴定意见明显依据不足的;(四)鉴定意见不能作为证据使用的其他情形。第30号鉴定意见书从涉案源代码文件中提取了类名、方法名、变量名、表达式等作为关键词在百度、谷歌两个知名搜索网站及Github、searchcode两个软件源代码共享网站进行检索,其检索范围为知名、主流的搜索引擎及软件源代码共享网站,是所属软件领域的相关公众最常使用、访问的网站,故第30号鉴定意见书的检索方法、检索范围并无明显不当,且盘兴公司、盘石公司在二审期间,已经单方委托了鉴定机构对涉案技术信息是否具有非公知性进行了鉴定,故对其所提由法院组织重新鉴定的申请,本院不予支持。
其次,根据盘兴公司、盘石公司二审期间委托鉴定的第040号鉴定意见书的鉴定结论,“GoodsBuyDetail.java”“Area.java”“CusmallStatisticsInfo.java”3个文件中的代码由且仅由成员变量定义及成员变量对应的geter、seter等方法组成,其中成员变量属于常见命名,该种定义成员变量并生成geXXX、setXXX等方法的形式是Java编程语言推荐的标准写法,属于所述领域的行业惯例。花儿绽放公司针对第040号鉴定意见的上述结论,未合理说明该些变量命名方式及对应生成方法的独特性,故本院采信第040号鉴定意见的上述意见,认定“GoodsBuyDetail.java”“Area.java”“CusmallStatisticsInfo.java”3个文件中的代码“为公众所知悉”。第040号鉴定意见书还认为,“AppletWxPayController.java”“AppletKoulingRedpackMobileController.java”“EmailServiceImpl.java”“HttpUtils.java”4个文件中的部分代码在2018年10月18日之前已被开源软件库公开,但均仅涉及该些文件中的部分代码片段,无法证明该些文件中的源代码整体已被公开,且代码中涉及程序的组织结构、调用关系、执行逻辑等,应将一个源代码文件作为一个整体对待,不应将一个完整代码进行部分切分而判断是否“为公众所知悉”。故本院对第040号鉴定意见书中关于4个文件中的部分代码已被公开的鉴定结论不予采信。
最后,软件源代码涉及到特定的变量名、类名及方法的定义、程序的组织结构、调用关系、执行逻辑等,还包括在特定位置对方法、语句和变量的注释文字等,软件源代码也体现了软件开发人员的代码风格、特定字词的独特表达,故即使为开发相同功能的软件,不同开发者可以设计不同的源代码进行表达,盘兴公司、盘石公司有关软件功能相同推论出代码相同的主张没有事实依据,本院不予支持。
综合上述情况,鉴于第040号鉴定意见书亦认为涉案其他源代码“不为公众所知悉”,结合双方各自单独委托的第30号鉴定意见书和第040号鉴定意见书的意见,在盘兴公司、盘石公司未能再提出其他相反证据的情况下,本院认定,本案中花儿绽放公司主张的涉案962个源代码文件“不为公众所知悉”。
2.关于花儿绽放公司对主张的涉案962个源代码文件是否采取了相应保密措施。《最高人民法院关于审理侵犯商业秘密民事案件适用法律若干问题的规定》第五条规定,权利人为防止商业秘密泄露,在被诉侵权行为发生以前所采取的合理保密措施,人民法院应当认定为反不正当竞争法第九条第四款所称的相应保密措施。人民法院应当根据商业秘密及其载体的性质、商业秘密的商业价值、保密措施的可识别程度、保密措施与商业秘密的对应程度以及权利人的保密意愿等因素,认定权利人是否采取了相应保密措施。现有证据表明,花儿绽放公司对内与员工签订了保密协议,约定了员工的保密义务,同时对有客多软件源代码的管理采用VPN统一安全授权、SVN账号密码加密授权,账号密码每人唯一,正常登录VPN后,方能使用SVN账号密码登录;对外,花儿绽放公司与盘兴公司签订的涉案合同中约定了对包含授权软件源码的U盘进行加密及双方对对方标有“保密”字样的信息进行保密的义务,并在交付给盘兴公司有客多小程序源代码时,使用了加密U盘,故应当认定,花儿绽放公司已对涉案软件源代码采取了合理保密措施。盘兴公司、盘石公司主张根据花儿绽放公司提交的计算机软件著作权登记证,可证明软件发表就已经公开全部技术秘密,但计算机软件著作权登记证登记的客体是软件,计算机软件著作权登记时所登记的源代码并非全部源代码,并不会导致花儿绽放公司本案中所主张的相关技术信息被公开。盘兴公司、盘石公司另主张花儿绽放公司将涉案软件源代码存储于阿里云服务器,但并未进行IP及设备限制,其保密措施不到位;但登录阿里云服务器需要账号密码,将涉案软件源代码存储于阿里云服务器,并不意味着该源代码处于社会公众可任意获得的状态。故盘兴公司、盘石公司关于涉案技术信息未采取合理保密措施的主张不能成立,本院不予支持。
3.关于花儿绽放公司主张的涉案962个源代码文件是否具有商业价值。《最高人民法院关于审理侵犯商业秘密民事案件适用法律若干问题的规定》第七条第一款规定,权利人请求保护的信息因不为公众所知悉而具有现实的或者潜在的商业价值的,人民法院经审查可以认定为反不正当竞争法第九条第四款所称的具有商业价值。技术秘密具有价值和使用价值,且用于生产、经营中能给权利人带来经济利益,它既包括现实的经济利益,也包括潜在的竞争优势。本案中有客多软件为花儿绽放公司开发完成,并为花儿绽放公司吸引了相当数量的客户、带来了现实的经济利益,盘兴公司也实际向花儿绽放公司支付了软件许可使用费,故涉案软件源代码显然具有商业价值。
综上所述,花儿绽放公司在本案中主张的涉案软件源代码不为公众所知悉、具有商业价值并采取了相应保密措施,构成技术秘密。
(二)盘兴公司是否构成侵权
反不正当竞争法第九条第一款第三项规定,经营者不得实施下列侵犯商业秘密的行为:(三)违反约定或者违反权利人有关保守商业秘密的要求,披露、使用或者允许他人使用其所掌握的商业秘密。
本案中盘兴公司主张涉案源代码并非盘兴公司员工披露,理由为第30号鉴定意见书中载明的技术点与涉案合同中载明的技术点不同,可见被泄露的源代码文件与交付给盘兴公司的源代码文件不同,同时《代码比对成果报告》中也显示花儿绽放公司交付的文件与被泄露的源代码文件不同;即使是盘兴公司员工行为,盘兴公司也不应承担相应的侵权责任。
对此本院认为,首先,盘兴公司、盘石公司提交的《代码比对成果报告》虽载明Github共享平台上的公开文件包与花儿绽放公司交付给盘兴公司的文件包有差异,但花儿绽放公司在本案中并未主张交付给盘兴公司的所有源代码文件均构成技术秘密,仅主张其中的部分源代码文件构成技术秘密,盘兴公司在原审庭审后向法院出具的书面意见中确认,花儿绽放公司交付给盘兴公司的源代码包中具有花儿绽放公司主张的965个不为公众所知悉的源代码文件,二审中盘兴公司、盘石公司推翻其在原审期间的陈述且并未提交足以证明其主张的证据。
其次,基于前述,花儿绽放公司主张的20个技术点是对源代码功能的概括,仅为了便于鉴定机构对源代码的理解,故仅凭第30号鉴定意见书中载明的技术点与涉案合同中载明的技术点不同,亦不能推翻盘兴公司此前的陈述。
再次,Github共享平台上披露的有客多软件源代码修改了原来的第三方平台的配置参数(该参数为发起微信功能所需密钥,由用户在微信第三方平台私密获取)、目标数据库的访问地址data.db.url参数(该参数为数据库存储路径,修改后的参数显示为在阿里云购买的rds数据库链接地址)及目标redis缓存的访问地址data.db.url参数(该参数为redis缓存储路径,为在阿里云购买的rds的redis缓存连接地址),对该些参数的修改及修改后的信息不为外人所知,同时Github共享平台上披露的源代码中将花儿绽放公司交付代码中的平台注释和系统平台名称由“有客多小程序”修改为“盘石微店”,将交付代码中的“默认签名”修改为“浙江盘兴”,将交付代码中的“微俱聚logo”修改为“盘石微店logo”,且披露的代码中增加了“盘石科技”的版权信息,亦有盘石公司内部研发管理系统链接、域名、官网链接、办公地址、支付宝收款账户信息等,将交付代码中的客服电话400-××××-925修改为盘石官网客服电话400××××-1110。盘兴公司辩称花儿绽放公司一直掌控涉案源代码文件,盘兴公司在部署和更新涉案软件过程中向花儿绽放公司提供了小程序账号、密码、相应参数,微信开放平台账号、密码,小程序支付账号、密码,及盘石公司域名、盘石公司logo、web服务器IP等信息,不能排除涉案软件源代码系由花儿绽放公司披露于Github共享平台。对此本院认为,涉案软件源代码系花儿绽放公司开发,公司实际经营活动中也主要通过软件对外授权获取许可费而获利,花儿绽放公司及其员工缺乏披露该软件以丧失经营获利机会的动机。尤其是,Github共享平台上披露的有客多软件源代码不仅包含大量诸如盘石公司域名、官网链接、办公地址、客服电话等外部人员可获知的信息,还包含了前述仅由盘兴公司自身掌控的参数信息,盘兴公司未能就此作出合理解释。而盘石公司作为盘兴公司的唯一股东,有通过盘兴公司实际接触涉案源代码的可能。故结合本案现有证据,根据优势证据规则和日常生活经验法则,本院确认系由盘兴公司或盘石公司的员工实际披露了涉案软件源代码。盘兴公司、盘石公司有关涉案软件源代码由花儿绽放公司员工或其他被许可使用有客多软件的公司的员工披露的主张,并无任何事实依据,也不符合常理,本院不予支持。
最后,盘兴公司在与花儿绽放公司签订的涉案合同中,明确约定了保密条款,盘兴公司负有保密义务,理应采取相应足够的保密措施。即便涉案软件源代码系盘兴公司员工违背盘兴公司意愿而对外披露,因盘兴公司未采取相应足够的保密措施,亦应对披露涉案技术秘密的行为造成的侵权结果承担责任。
进一步而言,花儿绽放公司既可以依据双方涉案合同的约定,向盘兴公司主张违约责任,也可选择依据侵权责任的相关法律规定,要求盘兴公司承担侵害技术秘密的侵权责任,盘兴公司有关花儿绽放公司混淆合同纠纷与侵权纠纷的主张不能成立,本院亦不予支持。
(三)侵权责任应当如何承担
反不正当竞争法第十七条第一款规定,经营者违反本法规定,给他人造成损害的,应当依法承担民事责任。第三款规定,因不正当竞争行为受到损害的经营者的赔偿数额,按照其因被侵权所受到的实际损失确定;实际损失难以计算的,按照侵权人因侵权所获得的利益确定。赔偿数额还应当包括经营者为制止侵权行为所支付的合理开支。第四款规定,经营者违反本法第六条、第九条规定,权利人因被侵权所受到的实际损失、侵权人因侵权所获得的利益难以确定的,由人民法院根据侵权行为的情节判决给予权利人三百万元以下的赔偿。
本案中,花儿绽放公司诉请盘兴公司、盘石公司承担消除影响和赔偿损失的侵权责任。关于消除影响,因未有证据证明披露涉案技术秘密的侵权行为给花儿绽放公司造成了必须消除的不良影响,故对该项诉请本院不予支持。盘兴公司披露涉案技术秘密的行为,必然给花儿绽放公司造成损害,故应当承担赔偿损失的责任。
关于赔偿金额,花儿绽放公司主张根据价值评估鉴定,涉案源代码的商业价值在2018年12月31日为1012万元,主张以涉案源代码的商业价值为基础认定花儿绽放公司损失数额,并主张本案应适用惩罚性赔偿,以涉案技术秘密的商业价值1012万元为惩罚性赔偿的损失基数,乘以4.94倍数计算最终的赔偿金额。
对此本院认为,因本案被诉侵权行为发生于2017年反不正当竞争法施行期间,2017年反不正当竞争法未规定惩罚性赔偿,故本案不适用惩罚性赔偿。
《最高人民法院关于审理侵犯商业秘密民事案件适用法律若干问题的规定》第十九条规定,因侵权行为导致商业秘密为公众所知悉的,人民法院依法确定赔偿数额时,可以考虑商业秘密的商业价值。人民法院认定前款所称的商业价值,应当考虑研究开发成本、实施该项商业秘密的收益、可得利益、可保持竞争优势的时间等因素。本案中因涉案技术秘密已在Github网站上被公开,故可以涉案技术秘密的商业价值作为花儿绽放公司损失赔偿的依据。但经审查,基于以下理由,本院对花儿绽放公司单方委托评估机构所作的评估结论不予认可:第一,价值评估鉴定记载,2019年-2024年涉案技术秘密分成率均为23.77%,并未有因涉案技术秘密价值衰减导致分成率逐步降低,理由是涉案有客多软件已为成熟产品,软件代码后续更新迭代仅是常规升级维护,并已在费用部分进行了相应调整;同时该价值评估鉴定中记载,有客多软件V1.0的开发期间为2017年10月16日-2018年1月31日,在此基础上,有客多软件V2.0于2018年8月27日完成开发;涉案技术秘密2019年、2020年研发费用均为635.58万元,2021年研发费用为476.68万元。而根据花儿绽放公司原审提交的深圳永信瑞和会计师事务所出具的《审计报告》,涉案有客多软件2018年1月1日至2018年10月31日项目投入金额为3595635.74元(其中V1.0版本的研发投入为737657.68元,V2.0版本的研发投入为2857978.06元);据前所述,花儿绽放公司主张涉案有客多软件在2018年技术业已成熟、2018年以后仅是对技术的常规更新迭代,根据常理推知,基于对技术的常规更新迭代需要的研发费用一般不应高于软件完成开发所需的研发费用,但涉案价值评估鉴定中2019年-2021年研发费用均远高于2018年的研发费用,明显不合常理;同时还需考虑到本案中花儿绽放公司主张构成技术秘密的仅为有客多软件中部分代码,故针对涉案技术秘密的研发费用显然应低于整个有客多软件的研发费用。第二,涉案有客多软件主要是为企业客户快速搭建微信小程序提供便捷工具,其价值随用户对微信小程序的开发需求而波动,但互联网新技术、新应用的需求均有其爆发期、衰减期,且根据盘兴公司、盘石公司提交的证据可见,在2018年前后均有多家公司从事微信小程序的研发业务,且微信平台于2020年提供官方的微信小程序开发渠道,必然会对第三方微信小程序开发业务产生巨大影响,涉案价值评估鉴定中2020年预估销售收入与2019年预估销售收入相同,有违市场规律。综上,价值评估鉴定多项数据难以令人信服,不应采信;花儿绽放公司主张以价值评估鉴定认定的商业价值作为赔偿依据的主张,本院不予支持。
鉴定机构经评估作出的商业价值鉴定仅是确定知识产权商业价值的一种方式。在本案经审查不宜直接依据价值评估鉴定意见认定涉案技术秘密商业价值的情况下,依据本案现有证据情况,可以综合考虑涉案技术秘密的研究开发成本、实施该项技术秘密的收益、可得利益、可保持竞争优势的时间等因素酌情确定涉案技术秘密的商业价值,进而作为确定赔偿数额的依据之一。
如前已述,本案中,花儿绽放公司开发涉案软件的研发费用至少包括2017年至2018年的研发费用,依据审计报告,仅2018年1月至10月末的研发费用为近360万元。花儿绽放公司以对外许可使用方式获取涉案软件的经营利润,涉案软件在2017年的销售收入为51万余元,2018年的销售收入为1140万余元,上述销售收入的增长状况与涉案软件于2017年开始研发、2018年1月完成V1.0版本研发、2018年8月完成V2.0版本研发的过程相契合。涉案软件部分源代码在Github网站上被披露后,2019年涉案软件销售收入下滑为530万余元,其中不排除有商业运营以及技术更迭、同类竞争等因素带来的影响,但软件源代码的公开披露客观上势必会导致该软件商业价值的贬损,给权利人造成较为严重的损失。同时,在市场上存在多个同类软件,尤其是2020年微信平台提供官方微信小程序开发渠道后,涉案软件保持竞争优势的时间以及可期待的许可收益难以避免会受到一定影响。综合上述因素,本院认定涉案技术秘密的商业价值应高于2017年反不正当竞争法规定的法定赔偿额最高限300万元,故对本案不宜适用法定赔偿方式确定赔偿数额,而应综合案件具体情况予以裁量。
关于本案合理开支。经审查,花儿绽放公司在原审庭审中变更诉讼请求,将合理开支由76万余元变更为95万元,其中律师费50万元,其他合理支出40万元,其增加的合理开支为评估鉴定费用15万,原审判决未列明花儿绽放公司修改后的诉讼请求,确有不当。本院综合考虑本案的具体情节、花儿绽放公司的维权难度以及对其诉讼请求的支持比例等因素,酌情予以支持。
对于具体赔偿金额和合理开支数额的确定,综合考虑本案的被诉侵权行为的性质、情节,涉案技术秘密的商业价值、花儿绽放公司的维权合理开支等因素,本院认为原审判决适用法定赔偿方式酌定盘兴公司赔偿经济损失及合理费用共计500万元,适用法律虽确有错误,但判赔金额较为合理,可予维持。本院进一步分别酌定盘兴公司应承担的赔偿责任为赔偿经济损失450万元、合理开支50万元。
(四)盘石公司是否应承担连带责任
《中华人民共和国公司法》(2018年修正)第六十三条规定,一人有限责任公司的股东不能证明公司财产独立于股东自己的财产的,应当对公司债务承担连带责任。
本案中被诉侵权行为发生时,盘石公司仍是盘兴公司的唯一股东,但盘石公司未提交二者财务独立的证据,不能证明盘兴公司的财产独立于自己的财产,依法应对盘兴公司的债务承担连带责任。
综上所述,花儿绽放公司的上诉请求不能成立,应予驳回;盘兴公司、盘石公司的上诉请求不能成立,应予驳回。原审判决认定事实清楚,判决结论应予维持。依照《中华人民共和国民事诉讼法》第一百七十七条第一款第一项之规定,判决如下:
驳回上诉,维持原判。
深圳花儿绽放网络科技股份有限公司二审缴纳的案件受理费271550元,由其自行负担;浙江盘兴信息技术有限公司、浙江盘石信息技术股份有限公司二审缴纳的案件受理费46800元,由其共同负担。
本判决为终审判决。
审 判 长 魏 磊
审 判 员 周 平
审 判 员 李 艳
二〇二二年十一月十五日
法官助理 游美玲
书 记 员 刘志岩