當前位置:首頁 > 工業(yè)控制 > 工業(yè)控制
[導讀] 隨著計算機技術的發(fā)展, 計算機軟件作為特殊商品在信息時代越來越重要。但是由于計算機軟件的易拷貝性, 各種軟件盜版、侵權現(xiàn)象不斷發(fā)生, 軟件加密技術應運而生。它分為軟加密和硬加密兩類, 所謂軟加密就是用純軟件的方式, 在程序中使用一些獨特的軟件算法或其它手段來驗證使用者的合法性, 其特點是成本低, 但加密強度不高, 易被破解;硬加密則是采用軟件與硬件配合, 通過硬件來控制軟件運行的加密方法, 如密鑰盤、加密卡、軟件狗等方法, 其加密性能好, 不象軟件那樣有易復制性, 所以從理論上講, 它比軟加密要可靠一些。而綜合分析硬加密的技術指標如可靠性、讀寫速度、破譯程度、占用主機資源等, 軟件狗是一種較好的加密方法。因此, 目前在市場上獲得了廣泛應用。

1  引  言

  隨著計算機技術的發(fā)展, 計算機軟件作為特殊商品在信息時代越來越重要。但是由于計算機軟件的易拷貝性, 各種軟件盜版、侵權現(xiàn)象不斷發(fā)生, 軟件加密技術應運而生。它分為軟加密和硬加密兩類, 所謂軟加密就是用純軟件的方式, 在程序中使用一些獨特的軟件算法或其它手段來驗證使用者的合法性, 其特點是成本低, 但加密強度不高, 易被破解;硬加密則是采用軟件與硬件配合, 通過硬件來控制軟件運行的加密方法, 如密鑰盤、加密卡、軟件狗等方法, 其加密性能好, 不象軟件那樣有易復制性, 所以從理論上講, 它比軟加密要可靠一些。而綜合分析硬加密的技術指標如可靠性、讀寫速度、破譯程度、占用主機資源等, 軟件狗是一種較好的加密方法。因此, 目前在市場上獲得了廣泛應用。

  2  軟件狗的發(fā)展及原理

  軟件狗技術的發(fā)展經(jīng)歷了四次更新?lián)Q代。第一代是存儲器型的加密狗, 工作時插在微機的并行口上, 通過對并行口讀取數(shù)據(jù)來判別軟件狗存在與否、密碼正確與否, 從而決定軟件是否運行。這種軟件狗因為內(nèi)部結構過于簡單, 很容易被人檢測破譯。

  第二代軟件狗采用低功耗邏輯集成電路, 在電路設計上做了一些加密工作, 例如對數(shù)據(jù)位的反相、移位、交叉等, 破譯時比前一種困難, 起到一定的加密功能。第三代軟件狗采用可編程器件, 由于這類器件本身就含有加密保護單元, 很難讀出, 增加了破譯難度[ 3] 。

  但是隨著黑客攻擊手段的提高, 前三代已經(jīng)不能滿足保密要求, 第四代以單片機為核心的軟件狗產(chǎn)生了。它不像以往軟件狗只能輸出固定的密鑰,而是按一定的算法對寫入和讀出的數(shù)據(jù)進行變換,也可以將被保護軟件的重要模塊移植到軟件狗中,使得軟件狗成為被保護軟件不可缺少的一部分。這樣軟件與軟件狗實現(xiàn)了真正的無縫連接, 極大提高了解密的難度, 有效防止了軟件跟蹤和邏輯分析儀的分析以及對程序的破壞性解密, 從而有效保護了軟件不被侵權。

  USB 是在1994 年底由Compaq、IBM、M icrosoft等多家公司聯(lián)合提出的一種新型通用串行接口技術, 它具有真正的即插即用和熱插拔功能, USB 2. 0的高速設備可達480Mb /S的速度, 以其獨有的優(yōu)勢, 如安裝拆卸方便、總線資源豐富、打包方法簡單、設備獨立等逐漸取代了其它單片機加密狗, 基于此,設計了一種基于USB2. 0控制器的軟件狗。

  3 U SB2. 0軟件狗總體體系結構及關鍵技術

  3. 1 USB2. 0軟件狗的工作原理

  傳統(tǒng)意義上的加密就是防止信息泄露, 其基本過程為將消息(明文)經(jīng)過某種算法進行加密, 形成密文, 再經(jīng)過解密將密文轉(zhuǎn)變?yōu)槊魑模?以達到信息不被竊取的目的, 而軟件狗則是加密技術在信息領域中呈現(xiàn)出的一個全新概念。它的作用并不是防止信息泄露, 而是為軟件開發(fā)者提供用戶使用權限認證或運行許可, 與傳統(tǒng)的信息加密概念有著明顯的區(qū)別。因此, 設計過程中加密算法的實現(xiàn)不是研究的主要內(nèi)容, 需要把工作重點放在如何防止調(diào)試工具對軟件狗數(shù)據(jù)傳輸?shù)母櫍?以達到難以破解或者不能破解的目的。

  一般的軟件狗工作原理如圖1所示。

圖1  USB 軟件狗加密保護流程圖

  圖1中列出了6個步驟, 描述了從插入USB軟件狗到完成一次軟件合法性檢驗的全過程。軟件狗對隨機數(shù)的加密在硬件中進行, 其結果返回PC 機并經(jīng)PC 機中軟件的解密算法解密。通過檢驗解密后的數(shù)據(jù)是否和原隨機數(shù)保持一致來鑒別是否插入合法的軟件狗硬件, 從而達到軟件保護的目的。

  不難看出, 步驟3 和4中傳送的隨機數(shù)容易被多次跟蹤分析, 解密者可以根據(jù)得到的這一系列數(shù)據(jù)對, 設計出相關的模擬軟件, 那么就需要在這個隨機數(shù)上進行改進。

  本設計中采用的是將USB 軟件狗的PIN 碼保護和動態(tài)口令相結合的方法。PIN 碼在PC 上輸入,在用戶不取走USB軟件狗時易被解密者捕獲, 從而獲得虛假認證, 可是如果使用了動態(tài)口令, 每次的口令不同, 解密者很難進行破解。動態(tài)口令是一種讓用戶密碼按照時間或者使用次數(shù)不斷變化、每個密碼只能使用一次的技術, 即使解密者獲取了幾個動態(tài)口令, 那么他也無法預知或者推算下一次或者下下次的動態(tài)口令, 無法在使用時間或者使用次數(shù)上形成連續(xù)性。本設計的USB2. 0 軟件狗加密保護流程如圖2所示。

圖2  USB2. 0軟件狗加密保護流程圖。

  3. 2  硬件實現(xiàn)

  本設計中采用Cypress 公司推出的CY7C68013A芯片, 該芯片屬于EZ- USB FX2系列芯片, 是世界上第一個集成USB2. 0 協(xié)議的微處理器, 它支持12Mb / s的全速傳輸和480Mb / s高速傳輸。

  CY7C68013A芯片結構包括增強型8051 處理器、串行接口引擎( SIE )、USB2. 0收發(fā)器、16KB 的RAM、4KB的FIFO 存儲器、數(shù)據(jù)總線、地址總線以及通用可編程接口( GPIF)等, 如圖3所示。

圖3  CY7C68013A 芯片結構圖。

  USB 加密狗一般由USB 控制器、單片機、外接存儲器構成, 而CY7C68013A 將三者集成為一個芯片, 使硬件實現(xiàn)變得非常簡單, 只需配置好外圍電容、電阻即可。芯片提供了0、1、2、4、6、8 幾個端點, 端點0和端點1僅由固件訪問, 由于其余端點都是單向訪問的, 在此使用端點2和端點6, 用于數(shù)據(jù)的發(fā)送和接收。

  該芯片集成的增強型8051比標準8051有更快的執(zhí)行速度以及更大的存儲器空間, 因此, 它可以在較短的時間內(nèi)完成比較復雜的算法, 而且不需另外擴展存儲空間。芯片內(nèi)部還有一個串行接口引擎S IE, 由它來完成大部分USB2. 0協(xié)議的處理工作,這樣大大減輕了固件程序的工作量。

  3. 3  軟件設計

  軟件設計主要包括三部分: 芯片固件程序、設備驅(qū)動程序、PC應用程序。

  Cypress公司的EZ- U SB FX2開發(fā)套件提供了完整的CY7C68013A 驅(qū)動程序源代碼、固件的框架、控制面板程序, 方便用戶開發(fā), 縮短了開發(fā)周期。本設計中的驅(qū)動程序就是對FX2開發(fā)套件中所帶的驅(qū)動程序進行修改而得到的。利用提供的固件框架完成設備的初始化, 使用端點2和端點6的實時傳輸方式, 實時得到動態(tài)產(chǎn)生的PIN 碼。

  在本設計中, PC 應用程序是指與加密狗的接口程序, 選用VC6. 0 為開發(fā)平臺來開發(fā)應用程序, 利用C reateF ile得到USB 句柄, 使用D ev iceIoControl函數(shù)來進行數(shù)據(jù)的接收和發(fā)送, 并編制U SB 軟件狗的主機接口函數(shù), 將接口函數(shù)封裝于usbdog. d ll文件中, 供被保護軟件調(diào)用。

  使用開發(fā)套件中提供的控制面板程序可以調(diào)試程序, 驗證應用程序傳輸數(shù)據(jù)的準確性。

  4  結束語

  USB2. 0軟件狗和其他軟件狗相比有其獨有的優(yōu)越性。首先, USB 憑借其即插即用極大地方便了用戶使用, 免除了開機箱和重啟動的麻煩, 能夠為個人筆記本電腦提供一個具有快速通信能力的數(shù)據(jù)加密設備。第二, USB2. 0的高速數(shù)據(jù)傳輸能力保證了運行過程中的動態(tài)加密, 其特有的打包方法和編碼格式, 增加了加密數(shù)據(jù)在傳輸過程中被截獲及解密的難度。第三, 采用USB 軟件狗的PIN 碼保護和動態(tài)口令相結合的方法, 避免了解密者獲取和推算動態(tài)口令。第四, 本設計中采用Cypress 公司的CY7C68013A 芯片作為主芯片, 使得硬件電路設計簡單, 占用空間小, Cypress公司提供的套件開發(fā)固件程序和驅(qū)動程序, 用VC6. 0 開發(fā)加密的軟件平臺, 極大地縮短了開發(fā)周期。

  作為USB2. 0 技術和軟件狗技術相結合的產(chǎn)物, USB 軟件狗無疑會具有十分強大的生命力。

本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務連續(xù)性,提升韌性,成...

關鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權最終是由生態(tài)的繁榮決定的。

關鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務引領增長 以科技創(chuàng)新為引領,提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術學會聯(lián)合牽頭組建的NVI技術創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術創(chuàng)新聯(lián)...

關鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關鍵字: BSP 信息技術
關閉
關閉