演算法能受到版權保護嗎?

本題已收入知乎圓桌 ? 版權的個人時代,歡迎關注討論。


謝邀。

簡單回答一下:演算法作為一種數學方法,不能直接得到版權法保護,但可以通過一定的表現形式得到保護。

在軟體開發中,使用計算機程序設計語言實現的演算法,其表達形式受到版權保護,可以進行登記。

版權法(即著作權法)的立法遵旨是:不保護思想,而保護表達(即思想表達二分法)。大概意思是,著作權不保護人在文學、藝術和科學等領域的想法,因為想法是虛的;著作權保護這些思想凝結成一定形式擁有獨創性的作品。

根據上述原理,單純的演算法大致可以理解成思想,它必須落實成軟體的形式才能得到保護,即著作權法第三條第(八)點規定的「計算機軟體」。計算機軟體可以通過軟體著作權登記得到重點保護。

軟體著作權登記是指根據國家《著作權法》和《計算機軟體保護條例》、《計算機軟體著作權登記辦法》的規定,由國家主管機關依職權對軟體進行的著作權登記活動。經過登記並獲得《軟體著作權登記證書》的軟體,不僅受到國家著作權法的保護,而且可以享受國家提供的優惠政策。

以下為盛峰律師事務所的解答,供參考:軟體著作權登記常見問題解答
_盛峰律師事務所――著名的大型綜合性律師事務所

軟體著作權可以保護軟體的思想、演算法和技術方案嗎?

答:
軟體著作權保護的範圍是程序及其技術文檔的表達,即保護語句序列或指令序列的表達以及有關軟體的文字說明表達,而不延及開發軟體所用的思想、處理過程、操作方法或者數學概念等。具體來講,軟體著作權只能保護軟體的程序代碼和他的技術文檔等材料,但是不能壟斷軟體設計思路和方法。這也就解釋了微軟的word 軟體和金山公司的Wps軟體的界面和操作方法可以做到如此的相似而不構成侵權。

當然,這並不是說軟體的設計思路和方法就完全不被法律保護。雖然由於著作權法的局限性,軟體的設計思路和方法不受著作權法的保護,但是,我們可以通過將獨創性的方法申請成為專利,並通過專利法對軟體創造性的演算法、流程、思路進行排他性的保護。


正如很多已經回答過此問題的朋友說的那樣:著作權「不保護思想,而保護表達」。著作權保護的客體是「作品」,一種「演算法」,能不能被判別為一種「作品」呢?我舉個例子,比如畫畫,那麼有鉛筆畫、油畫,也分素描啥的等等,「畫法」是一種技術、技巧,版權只保護利用某種畫法創作出來的作品,而無法直接保護這種技術或者技巧。當然,如果對某種畫法進行描述,形成了一部說明性的文字作品,那麼被保護的客體就是這部文字作品,也無法特別對那種技巧本身進行有針對性的保護。我反而建議,無論是畫法還是演算法,通過專利或者商業秘密的方式加以保護,因為版權所保護的,更多是「通過某種演算法完成的作品」~


你自己用程序把演算法封裝起來,然後用加密技術把代碼也加密起來,不就完了么?


演算法當然受到版權保護,問題的關鍵是你打算如何去保護。

要保護一個演算法,很重要的一點就是他人侵權時候你可以證明別人用了你的演算法。本著誰上訴,誰舉證的原則,你如果告別人侵犯你的演算法,那麼你要證明如下幾點:

  • 時間順序:你的演算法比被告的實現發明的早,在你之前沒有同樣的演算法在別的地方被別人以任何論文、講座、私下交流等等形式率先公布;
  • 所有權屬:你仍然持有該演算法的所有權,並為以任何方式放棄對該演算法的所有權,最容易想到的方式通常是演算法專利(但實際上並不可取,後面講到);
  • 實現要點:你的演算法必須有獨一無二的地方,你必須找出證據可以證明被告的演算法也具有這些獨一無二的特徵。

問題在於,對於演算法的侵權舉證非常困難。演算法通常都是以源代碼的形式實現,並且通過編譯為二進位可執行代碼加以隱藏。最容易想到的是通過反編譯被告的程序,來發現侵權行為。且不說難度如何,這種(未必合法的)方式取證在很多時候是不被當地法律認可的。

實際上,防止別人侵權,最好的方式是不公布演算法本身,特別是不為演算法申請專利(因為別人很容易根據描述複製並略加修改你的演算法,然後聲稱是自己的實現)。應該換個思路,保護演算法的介面——輸入和輸出。比如,微軟關於FAT/FAT32/exFAT文件系統,他們並未以專利形式公布如何在內存中高效地緩存文件結構,如何建立磁碟文件同內存文件對應關係,如何在文件內快速跳過扇區讀到相關記錄等等在操作系統中如何組織文件記錄和訪問的演算法。他們巧妙地抓住了一點:保護這些文件系統在磁碟上的組織形式的特徵。這些特徵不僅容易描述,而且別人侵權使用了這些文件系統也非常容易發現。

通常保護一個演算法的做法是:

  • 用專利保護演算法的介面,並儘可能考慮可能的擴展,為未來演算法進化做準備;
  • 將介面以授權許可的方式收費或者免費給合作夥伴使用,擴大產品影響;
  • 也可以將演算法編譯為函數庫/API供第三方使用,推廣產品;
  • 把演算法實現這種knowhow,作為企業內部技術秘密,鎖在保險柜里,只有少數可靠的核心技術人員才知道(因為你先行一步,你的演算法實現可能是效率最高的);

不要試圖用專利保護你無法舉證侵權(或者舉證非常昂貴)的知識產權,你能做到的就是盡量把他們藏好,用專利公布你的演算法是最愚蠢的保護方式,這會讓競爭對手很快學會你。

附錄:wikipedia中關於FAT的法律問題

File Allocation Table

唔,希望對你有所幫助。


只要是能夠用某種方法表現出來或者說有某種載體,軟體的思想、演算法和技術方案等都受著作權法保護。但是,違法的,損害公共利益的不保護。


具體代碼實現可以申請知識產權保護


推薦閱讀:

隨機森林中訓練每一棵樹輸入的m個特徵都是隨機選取的嗎?
如果本科已經能拿到BAT演算法offer,是否還有必要讀研?
有什麼網站介紹數據挖掘演算法的實現過程的?
如何設計權重演算法?
Google 如何管理龐大的搜索結果排序規則集合?

TAG:法律 | 演算法 | 計算機 | IT版權 |