吳國平
律師在處理軟件著作權案件糾紛時,最為常見的問題就是案件舉證責任問題。鑒于軟件著作權糾紛案件的專業性,對于源代碼是否相同的問題,法官會交與專業的鑒定機構來解決。但是,軟件著作權糾紛的復雜性決定了案件舉證責任問題一直是原被告雙方爭議的焦點,司法實踐中也確實出現了許多有爭議的案例,結合具體的案件實際情況詳細說明如下:
案例一:
原告通過網絡搜索在某博客上發現了被告公開自己剛剛開發完畢的軟件界面,于是原告通過公證機關取得了相關的網頁證據,并以此起訴被告,要求其停止侵權;被告答辯稱其公司有自己單獨的網址,公司產品信息也全部是通過公司網址發布,同時,作為專業化的軟件公司,其不可能通過不知名的博客發布自己的信息,即便是存在這樣的現象,也不可能留下錯誤的聯系方式。因此,被告懷疑原告取得的證據是為了惡意訴訟而進行的偽造。
案件二:
原、被告均為數控機床控制系統的供應商,原告認為被告的軟件程序抄襲了其已有的軟件,因此,查封了被告的數控機床及其控制系統,并且請求法院對于涉案軟件進行對比。在被告方沒有提供源代碼的情況下,鑒定機構在根據查封的軟件與原告提供的軟件源代碼進行對比時發現,被告的軟件采取了加密措施。首先必須破解它的加密系統,才能讀取固化其中的軟件代碼。理論上,可以通過芯片解密讀取軟件二進制代碼,再反匯編出軟件源代碼,但是該方式有一定的技術難度,而且即便通過解密獲得二進制代碼,再反匯編出軟件源代碼與被解密的軟件實際源代碼也會有一定差異,且這種差異的范圍難以估計;同時,芯片解密本身的合法性也是一個問題。因此,鑒定機構認為無法出具鑒定結果。
案例三:
原、被告均為網絡游戲的提供商,在案件的審理過程中,受委托的鑒定機構出具報告稱,因被控侵權源程序不是軟件完整的源程序,故無法驗證被控目標程序與被控侵權源程序是否一致,但經過對被控目標程序反編譯后比對,被控目標程序與被控侵權源程序存在一定的關聯性。因被控侵權源程序不是軟件完整的源程序,因此,無法與原被告的軟件源程序進行實質意義的比對,且被控侵權源程序存在的少量源程序在原告提供的源程序中也沒有對應內容。被告以鑒定機構的上述結論為依據,認為原告沒有完成相應的舉證責任。因此,應當駁回原告的訴訟請求。
以上三個案例中,法院支持了案例一中原告提交的網絡博客的證據,盡管該份經過公證的確實疑點重重;在案例二中,一審法院以原告未能完成舉證責任為由,駁回了原告的訴訟請求;在案例三中,法官以被告拒絕提交被控侵權的軟件源代碼為由判決被告敗訴;在很明顯在后兩個案例中審理法官將案件的舉證責任分別判由原告和被告承擔,案例二中法院因無法判定是否侵權而判決被控軟件不侵權,案例三種同樣是因為無法判定侵權,但是法官認為造成無法判定結果的原因是被告拒不提供被控軟件的源代碼,因此判定被控軟件侵權。
嚴格的來講,每一個案件的審理中都會有不同于其他案件的特點,因此不能因為案例二和案例三看似矛盾的判決而斷言某個法官犯了錯誤,筆者僅以此為例來說明軟件著作權案件中舉證責任的復雜性。
舉證責任制度最早產生與古羅馬法時代。古羅馬法上關于舉證責任制度的規定可以概括為五句話:“原告對于其訴,以及其訴請求之權利,須舉證證明之”,“原告不舉證證明,被告即獲勝訴”,“若提出抗辯,則就其抗辯有舉證之必要”,“為主張之人負有證明義務,為否定之人則無之”,“事物之性質上,否定之人無須證明”。可見,羅馬法就舉證責任確認了兩個基本原則,其一為“原告有舉證責任之義務”,它是“無原告就無法官”這一古老法則在證據法上的映現。其二為“為主張之人有證明義務,為否定之人則無之”,即“肯定者應負舉證,否定者不負舉證責任”。當時的證明責任制度已經比較健全,就此,奠定了“誰主張,誰舉證”的證明規則。對后世產生了巨大的影響。
在案例二中,法官認為因為被告的軟件采用了加密措施,致使鑒定機構無法出具鑒定結論,原告對于其主張的事實沒有提供證據證明,因此“原告不舉證證明,被告即獲勝訴”,依據民事訴訟法第六十四條規定,即當事人對自己提出的主張,有責任提供證據,原告對自己提出的被告軟件侵權的主張所依據的事實有責任提供證據加以證明。沒有證據或者證據不足以證明原告的事實主張的,由負有舉證責任的原告承擔不利后果,法官判決原告敗訴是有事實和法律依據的。
在案例三中,法官作出判決的依據則與上述的舉證責任不同。因為在現實中,特別是大規模的環境污染問題以及醫療事故引起的賠償問題等案件中如果仍然沿用舊的舉證責任分配原則,對受害者則顯失公平。因此,根據司法實踐中的新情況,法律同時規定了將舉證責任轉移給被告方承擔的舉證模式,即舉證責任倒置。根據《最高人民法院關于民事訴訟證據的若干規定》第七十五條規定:“有證據證明一方當事人持有證據無正當理由拒不提供,如果對方當事人主張該證據的內容不利于證據持有人,可以推定該主張成立。”在案例三中,被告方無疑是持有被控軟件的源代碼的,但是,被告以軟件源代碼用以鑒定后有可能會泄露商業秘密為由拒絕提供源代碼用于對比,如果被告提供源代碼,則無疑有助于法院查明事實解決糾紛。從原告的角度來講,被告之所以不提供源代碼是因為被告害怕對比,即人們常說的“心中有鬼所以躲躲藏藏”,法官根據案件的具體情況,最終在沒有專業結構鑒定結論的情況下推定被告的軟件抄襲了原告的軟件,某種程度上有其法律依據的。但是,筆者認為法官在分配舉證責任時,由于軟件著作權糾紛的特殊性,應當十分慎重使用舉證責任倒置。軟件著作權糾紛案件中技術的復雜性決定了源代碼必須通過一系列的對比才能夠確定被控軟件源代碼與原告源代碼是否存在相同或者相似,技術處理的不確定性,使得被告保存的源代碼并不會產生十分明確的證明效力。考慮到源代碼所凝聚的知識積累和時間積累在沒有確定是否侵權時,對原告和被告都很關鍵,特別是在部分企業試圖通過訴訟來阻止其他競爭對手進入市場等非正當目的情況下,法官應當根據案件的實際情況慎重地確定舉證責任的分配。
案例一中證據是否應當得到法院的認定與上述的分析有關,軟件著作權糾紛案件立案的標準也一直是實踐中爭議的問題,各地對于原告提交的初步證據是否可以證明存在侵權事實的標準上也各有不同,根據北京市高院《關于審理計算機軟件著作權糾紛案件幾個問題的意見》規定,原告一般應提交如下證據:
(1)侵權的程序、文檔以及與之進行對比的原告的程序、文檔;
(2)被告實施侵權行為的其他證據;
(3)原告的軟件與被告軟件的對比情況。
在案件的審理中,判斷兩個計算機軟件是否實質相似,最主要的是對兩軟件的程序代碼進行比對。在司法實踐中,權利人提起計算機軟件侵權訴訟時,能夠獲得的指控被告侵權的證據,往往是被控侵權軟件的目標程序。因此,首先能夠進行對比的是二者目標程序的同一性。但目標程序同一性判斷只是軟件侵權判斷的基礎,兩軟件的目標程序相同,并不能直接得出兩軟件同一的結論。因為不同的源程序可能實現相同的功能,通過編譯可能得到完全相同的目標程序,所以,在目標程序相同的情況下,還需進一步判斷與目標程序相對應的兩軟件的源程序是否同一。對于立案程序中原告需要提供何種程度的證據才能證明存在侵權事實,以及在案件審理過程中,法院是否在原告完成某種程度的舉證責任之后,才受理對該案委托鑒定的申請等這些舉證責任的問題,在司法實踐中,一直是由法院根據案件的實際情況作出具體的判斷。也正是因為依據往往很難做出明確判斷,經常成為案件雙方爭議的問題。北京市高級人民法院出臺的規定中,對于原告立案時的舉證責任做出了明確的規定,但是,從上述規定中“一般”的特殊限定,依然可以了解到該類案件在執行之中的復雜性。