999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

.NET平臺軟件知識產權司法鑒定中的跨語言鑒定方法研究

2017-03-03 03:29:34劉玉琴雷孝平
中國司法鑒定 2017年1期
關鍵詞:計算機軟件語言

劉玉琴,桂 婕,雷孝平

(1.北京印刷學院 綠色印刷包裝產業技術研究院,北京102600;2.工業和信息化部軟件與集成電路促進中心知識產權司法鑒定所,北京100038;3.中國科學技術信息研究所,北京100038)

鑒定科學ResearchPaper

.NET平臺軟件知識產權司法鑒定中的跨語言鑒定方法研究

劉玉琴1,2,桂 婕3,雷孝平3

(1.北京印刷學院 綠色印刷包裝產業技術研究院,北京102600;2.工業和信息化部軟件與集成電路促進中心知識產權司法鑒定所,北京100038;3.中國科學技術信息研究所,北京100038)

目的 為明確微軟.NET Framework跨語言編程平臺下不同計算機編程語言設計的軟件之間是否可以進行相似性鑒定以及具體的鑒定方案。方法 分析了.NET Framework平臺下各種編程語言的編譯運行機制,應用代碼轉換工具對C#.NET和VB.NET源代碼進行自動轉換驗證。結果 結果顯示在無任何人工干預條件下,可實現同一軟件源代碼在不同編程語言間自由的、自動的轉換。結論 .NET Framework平臺下跨語言的源代碼相似性鑒定、編譯為中間語言的目標代碼相似性鑒定以及加密或混淆技術處理過的目標代碼相似性鑒定是必要和可行的。

.NET平臺;跨語言鑒定;知識產權司法鑒定

隨著微軟公司跨語言平臺.NET Framework(.NET框架)技術的日趨成熟,采用.NET平臺下的C#.NET、VB.NET、C++.NET、J#.NET、F#.NET等計算機編程語言進行設計開發的軟件產品大量涌現,隨之引起的軟件知識產權糾紛逐漸增多。由于.NET平臺的跨語言、跨平臺特性使得相關糾紛的司法鑒定工作遇到了一些新的技術問題。其中最為關鍵的問題之一是. NET平臺下不同語言之間是否可以進行相似性鑒定,以及具體的鑒定方法等。

為明確.NET平臺下不同語言之間是否可以進行相似性鑒定以及具體的鑒定方案。本文通過對.NET平臺運行機制的分析,以實例來探究確認.NET平臺下不同語言的軟件之間進行相似性鑒定的必要性,并提出相應的鑒定方案。

1 軟件知識產權司法鑒定學術研究回顧

我國學者對于軟件知識產權司法鑒定的學術研究主要集中在兩方面:一是軟件知識產權司法鑒定的相關概念、原則、方法等理論層面的探討。例如,1998年,韓小燕[1]對軟件知識產權侵權現象進行分類總結。2005年,馮金成[2]從計算機司法鑒定角度闡述計算機犯罪的定義與司法鑒定內容。2005年,羅蘇平[3]探討軟件源程序在知識產權司法鑒定中的重要意義。2008年,李維[4]提出軟件著作權的鑒定原則和方法。二是集中在針對軟件產品同一性或相似性鑒定技術層面的研究。例如,2005年,陳雪[5]通過對一起經最高人民法院民事庭指令再審的軟件侵權糾紛案進行述評,認為軟件相似性鑒定應根據實際情況,采用最有效的鑒定方法,而不應只限于在編碼層進行鑒定。2007年,趙丙秀等[6]研究利用軟件流程比對、功能點比對、界面比對、文件比對和安裝過程比對,對提供二進制代碼的計算機軟件產品進行鑒定的方法。2008年,張益成[7]從鑒定實踐中總結軟件產品的鑒定技術和方法,重點介紹了EXE、OCX、DLL、LIB、FBL文件的同一性鑒定。2013年,陳小靜等[8]結合計算機軟件技術信息的特殊性,以目標代碼、源代碼探討計算機軟件技術秘密鑒定和相似性鑒定方法。2013年,劉惠萍等[9]結合具體案例,從技術角度研究Microsoft PowerPoint演示文稿的同一性鑒定方法。

就目前的研究來說,對于.NET Framework平臺下的軟件知識產權司法鑒定,并沒有針對性的展開。

2 .NET平臺軟件跨語言鑒定的背景

以主張著作權為由的軟件相似性鑒定的法律依據主要是我國的《著作權法》和《計算機軟件保護條例》。《計算機軟件保護條例》第二條、第三條給出了計算機軟件的相關定義:“計算機軟件,是指計算機程序及其有關文檔。計算機程序,是指為了得到某種結果而可以由計算機等具有信息處理能力的裝置執行的代碼化指令序列,或者可以被自動轉換成代碼化指令序列的符號化指令序列或者符號化語句序列。同一計算機程序的源程序和目標程序為同一作品。文檔,是指用來描述程序的內容、組成、設計、功能規格、開發情況、測試結果及使用方法的文字資料和圖表等,如程序設計說明書、流程圖、用戶手冊等”?!队嬎銠C軟件保護條例》第七條明確了軟件著作權保護的客體:“本條例對軟件著作權的保護不延及開發軟件所用的思想、處理過程、操作方法或者數學概念等。”

因此,以往基于計算機軟件著作權保護的軟件知識產權司法鑒定實踐中,對于由不同語言設計開發的軟件,一般不對其進行相似性比對。比如,司法鑒定實踐中很少從著作權的角度對分別由編程語言C++和JAVA設計的軟件進行相似性鑒定。然而,在微軟公司跨語言平臺.NET出現后,這種情況產生了一些變化。由于.NET的跨平臺、跨語言特性,同一個基于.NET平臺進行設計開發的軟件可以使用兩種以上的編程語言進行開發,甚至可以借助一些轉換工具將一種語言的代碼轉換為另外一種語言,且這種轉換可以自動完成。因此,在基于.NET平臺進行設計開發的軟件知識產權糾紛案例中,經常遇到被控侵權方提交鑒定的軟件源代碼與控告方提交的軟件源代碼所使用的計算機編程語言不同,但都是基于.NET平臺下的編程語言,而且雙方的軟件的目標代碼相同或相似程度較高。被控侵權方力圖通過軟件源代碼的編程語言不同,主張兩款軟件不同,以此逃避侵權責任。但這并不符合“同一計算機程序的源程序和目標程序為同一作品”的規定。這為軟件知識產權司法鑒定技術、鑒定方法提出了新的挑戰。以下分別從.NET的運行機制和代碼實例來說明這種情況下進行相似性鑒定的必要性。

3 .NET平臺軟件跨語言鑒定的必要性分析

3.1 .NET平臺下各種語言的編譯運行機制

.NET Framework是微軟公司2002年推出的一種跨語言平臺,它是以公共語言運行庫(Common Language Runtime,CLR)為核心前提的。.NET平臺下各種語言的執行需要經過兩個編譯過程(圖1)。

第一個編譯過程是把源代碼編譯為微軟中間語言IL,第二個編譯過程是CLR把IL編譯為平臺專用的代碼。其中微軟中間語言是一種低級語言,使用數字代碼,而不是文本代碼,語法很簡單,可快速地轉換為本地機器碼,具有平臺無關性、提高性能和語言的互操作性等優點。

圖1 .NET的運行機制示意圖

通過上面編譯運行機制的分析可以看出,.NET平臺下各種編程語言設計的軟件產品,最終執行的都是微軟中間語言構成的代碼,從而為不同語言設計的軟件產品進行相似性鑒定提供了技術上的理論依據。

3.2 不同語言軟件間的自動轉化實例

.NET平臺下不僅同一個軟件可以由多種語言混合編寫[10],而且利用一些第三方軟件廠商的工具,如Developer Fusion[11]、Coder Converter[12]可以實現同一軟件在不同語言間自由的、自動的切換。以下源代碼函數分別由C#.NET和VB.NET編寫(圖2)。直觀上看,兩個代碼的表現形式差別較大,但本質上,第二段代碼是由Coder Converter在第一段代碼的基礎上自動轉化過來的,沒有進行任何人工干預。兩個代碼均實現與數據庫連接進行數據查詢的功能。

圖2 源代碼函數

這兩段代碼在計算機編譯執行過程中,首先轉化為相同的微軟中間語言代碼(圖3)。

圖3 中間語言代碼

同時,以上這段中間語言代碼可以由轉換工具轉換為上面兩段代碼中的任意一種形式。

通過這個轉換實例可以看出,對于.NET平臺軟件知識產權司法鑒定,如果認為兩款軟件是由不同語言編寫而拒絕進行相似性鑒定的依據顯然是不科學的。

4 .NET平臺軟件跨語言鑒定的方法

4.1 跨語言的源代碼相似性鑒定

基于.NET平臺下各種語言編譯運行機制的分析,對.NET平臺下跨語言的源代碼相似性鑒定,可以按照如下三個步驟進行:

(1)利用第三方的轉換工具把不同語言的代碼轉化為同一語言。

(2)找出鑒定雙方代碼的對應關系,利用Beyond Compare對轉化后的代碼進行統計,統計雙方代碼中相同、不同和獨有的代碼行數,以代碼的表現形式來判斷相似性。

(3)如果第(2)步中發現雙方的代碼表現形式差異較大,還要人工的按照文件、類、函數去進一步解讀代碼,從代碼的含義來判斷相似性。

4.2 編譯為中間語言的目標代碼相似性鑒定

在沒有原始源代碼的情況,可以采用三種方式對編譯為中間語言的目標代碼進行相似性鑒定。

(1)查看編譯后的代碼文件的二進制格式或十六進制格式,利用Beyond Compare統計雙方代碼中相同、不同和獨有的字節數,以二進制或十六進制的表現形式來判斷相似性。

(2)利用第三方工具,如.NET Reflector[13],直接查看雙方中間代碼,然后利用Beyond Compare統計雙方代碼中相同、不同和獨有的代碼行數,以中間語言代碼的表現形式來判斷相似性。

(3)如應用第(1)(2)種方法發現雙方的代碼表現形式差異較大,還要繼續采用第三方的工具,如. NET Reflector,將中間語言的目標碼反編譯成同一種語言的源代碼,從代碼的含義來判斷相似性。由于中間語言非機器碼,反編譯的準確率高。

5.3 加密或混淆技術處理過的目標代碼相似性鑒定

由于編譯為中間代碼的目標代碼容易進行反編譯,很多軟件產品在發布的時候,進行了加密或混淆處理,以防止程序被反編譯。.NET平臺下的典型加密工具有Remotesoft Protector、Maxtocode、CliProtector、Reactor等。這種情況下很難對其目標代碼的相似性做出肯定或否定的判斷。但在加密或混淆的過程中,仍會保留一些加密前的痕跡。比如,文件名稱、類名稱、函數名稱、GUID(全局唯一標識符,Globally U-nique Identifier)等。在鑒定實踐中,要根據其采用的加密或混淆技術做具體分析,從細微處尋找進行深入鑒定的依據,以使鑒定雙方提供更加直接、更容易進行鑒定的材料。

例如,采用Reactor加密過的.NET目標代碼,某些情況下通過反編譯工具.NET Reflector反編譯后,雖然不能得到全部的源代碼,但是能夠體現代碼組織結構的類文件名稱,部分函數名稱是可以獲得的。特別是目標代碼文件的GUID加密前后保持不變。如果被比對雙方的代碼文件名稱、類文件名稱、函數名稱相同,即便無法獲取每個函數具體的源代碼,也可以說明雙方軟件代碼在組織結構安排上相同,在實際開發中這種可能性非常小,據此可以促使鑒定雙方提供未經加密過的原始源代碼或目標代碼。

GUID是一個16字節的整數,其生成過程中用到了計算機的以太網卡地址、納秒級時間、芯片標示碼等信息。如果兩個目標代碼文件的GUID相同,無論其是否經過加密處理,都意味著這兩個目標代碼對應的源代碼存在一定的關聯性。這是因為GUID是在源代碼設計開發時生成的,無論是不同機器還是同一機器上重復的機率非常小[14]。因此,如果兩個目標代碼文件的GUID相同,說明雙方源代碼具有共同的原始來源。

5 結論

隨著.NET平臺的不斷發展與日趨成熟,其影響和使用范圍越來越廣泛,.NET平臺間的跨語言轉換日趨普遍,甚至出現了.NET平臺語言向RUBBY、PYTHON、DELPHI等非.NET平臺語言進行轉換的需求和工具。這種情況下,要求計算機軟件的司法鑒定方法要與時俱進,適應新技術的發展需求,更加謹慎細致地對待跨語言的軟件知識產權司法鑒定問題。

[1]韓小燕.軟件侵權現象及其司法鑒定淺析[J].軟件世界,1998,(10):77.

[2]馮金成.論計算機司法鑒定[J].政法學刊,2005,22(6):102-104.

[3]羅蘇平.對軟件侵權鑒定中的源程序作用的認識[J].廣東交通職業技術學院學報,2005,4(1):55-57.

[4]李維.淺析計算機軟件著作權技術鑒定[J].科技與法律,2008,(6):61-64.

[5]陳雪.軟件作品的著作權司法鑒定——以“公安基層管理系統”著作權糾紛案為例[J].華南師范大學學報(社會科學版),2005,(3):24-30.

[6]趙丙秀,王堅.軟件知識產權鑒定方法的初步研究與探索[J].計算機時代,2007,(4):4-7.

[7]張益成.計算機軟件產品的司法鑒定技術[J].2008,(7):16-18. [8]陳小靜,黃少暉,梁永宏.淺析計算機軟件技術信息的商業秘密鑒定[J].中國發明與專利,2013,(8):31-33.

[9]劉惠萍,羅文華.從知識產權侵害案件看Microsoft Power-Point演示文稿鑒定實踐[J].中國司法鑒定,2013,(3):62-65.

[10][美]Simon Robinson,Christian Nage.C#高級編程[M].李銘,譯.北京:清華大學出版社,2005:2-7.

[11]Developer Fusion[EB/OL].(2008-10-13)[2014-12-15]. http://www.developerfusion.com/tools/convert/csharp-to-vb/

[12]Code Converter[EB/OL].(2014-01-01)[2014-12-15].http:// www.codechanger.com/.

[13].NET Reflector[EB/OL].(1999-01-01)[2014-12-15].http:// www.reflector.net/.

[14]Guid Structure[EB/OL].(2012-08-15)[2014-12-15].https:// msdn.microsoft.com/en-us/library/system.guid.aspx.

(本文編輯:盧啟萌)

Cross Language Examination Method for.NET Framework Software in Intellectual Property Forensics

LIU Yu-qin1,2,GUI Jie3,LEI Xiao-ping3
(1.Academic of Printing and Packaging Industrial Technology,Beijing Institute of Graphic Communication, Beijing 102600,China;2.Intellectual Property Expertise Center of Judicature,Ministry of Industry and Information Technology Software and Integrated CircuitPromotionCenter,Beijing 100038,China;3.Institute of Scientific and Technical Information of China,Beijing 100038,China)

Objective To clarify whether it is feasible to identify similarities between different programming languages within the.NET framework.Method The operation mechanism of the.NET framework was analysed;an example was given to explore and confirm the necessity of similarity identification between different languages within the.NET framework. Results The same software source code could be converted freely and automatically between different programming languages without any human intervention.Conclusion Similarity identification of cross-language source code,target language compiled to intermediate language and object-code which is processed by encryption or obfuscation technology are necessary and feasible within the.NET framework.

.NET platform;cross language examination;forensic expertise of intellectual property

DF794;D923.4

A

10.3969/j.issn.1671-2072.2017.01.007

1671-2072-(2017)01-0056-04

2016-02-01

劉玉琴(1979—),男,高級工程師,博士,主要從事數據挖掘、信息可視化、軟件知識產權研究。

E-mail:liuyuqin2004@126.com。

猜你喜歡
計算機軟件語言
語言是刀
文苑(2020年4期)2020-05-30 12:35:30
基于C語言的計算機軟件編程
電子制作(2018年16期)2018-09-26 03:27:08
讓語言描寫搖曳多姿
淺談不同編程語言對計算機軟件開發的影響
電子制作(2018年1期)2018-04-04 01:48:36
計算機軟件數據庫設計應用探析
電子制作(2017年14期)2017-12-18 07:08:03
多向度交往對語言磨蝕的補正之道
淺談基于C語言的計算機軟件程序設計
電子制作(2017年24期)2017-02-02 07:14:40
累積動態分析下的同聲傳譯語言壓縮
我有我語言
神州修車救援APP取得計算機軟件著作權
主站蜘蛛池模板: 国产成人精品视频一区二区电影| 免费激情网址| 国产免费久久精品44| 成年人视频一区二区| 精品亚洲国产成人AV| 国产亚洲男人的天堂在线观看| 欧美不卡视频在线| 中文字幕在线永久在线视频2020| 国产乱人伦偷精品视频AAA| 亚国产欧美在线人成| 国产女人在线| 国产精品亚洲专区一区| 中文字幕乱码二三区免费| 欧美日韩精品一区二区在线线| 天堂在线视频精品| 9啪在线视频| 天天视频在线91频| 四虎成人免费毛片| 91国内外精品自在线播放| 亚洲男人的天堂视频| 亚洲三级片在线看| 日韩成人在线视频| 九色免费视频| 日韩高清中文字幕| 国产福利在线免费| 久久久久人妻一区精品| 国产精品亚洲а∨天堂免下载| 网久久综合| 欧洲成人免费视频| 99在线视频精品| 亚洲va视频| 日本日韩欧美| 亚洲综合久久成人AV| 国产在线视频欧美亚综合| 亚洲欧美日韩成人在线| 国产精品大尺度尺度视频| 97精品久久久大香线焦| 在线观看无码av五月花| 国产成人a在线观看视频| 女人av社区男人的天堂| 国产丝袜啪啪| 国产福利不卡视频| 蜜臀av性久久久久蜜臀aⅴ麻豆 | 无码精品福利一区二区三区| 在线观看免费黄色网址| 成年免费在线观看| 国产成人1024精品下载| 国产精品亚洲精品爽爽| 亚洲色精品国产一区二区三区| 亚洲日本中文综合在线| 伊人AV天堂| 青青操国产| 精品无码一区二区三区电影| 99尹人香蕉国产免费天天拍| 精品成人一区二区三区电影| 中文字幕有乳无码| 成人午夜亚洲影视在线观看| 日韩av手机在线| 亚洲最大福利网站| 欧美日韩精品一区二区视频| 一边摸一边做爽的视频17国产| 热九九精品| 一级一级一片免费| 国产精品无码在线看| 精品久久香蕉国产线看观看gif | 国产99在线观看| 国产主播在线一区| 91久久天天躁狠狠躁夜夜| 午夜爽爽视频| 国产综合在线观看视频| 狠狠亚洲五月天| 亚洲国产综合自在线另类| 久久6免费视频| 国产高清在线精品一区二区三区| 婷婷综合缴情亚洲五月伊| 免费一级大毛片a一观看不卡| 亚洲第一视频网| 色呦呦手机在线精品| 亚洲日韩Av中文字幕无码| 国产在线视频二区| 男女男免费视频网站国产| 国产欧美成人不卡视频|