《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 通過USBN9603/P89C51平臺實現USB接口硬件加密
通過USBN9603/P89C51平臺實現USB接口硬件加密
畢進軍 于志平 李 倫
摘要: 利用USB接口技術,結合PC機的結構特點,為基于PC平臺的數據加密系統提出了一種使用USB連接的解決方案。并指出了該方案現存的一些缺陷及改進方法,以備今后系統的升級。
關鍵詞: PowerPC USB 數據加密
Abstract:
Key words :

  摘  要: 利用USB接口技術,結合PC機的結構特點,為基于PC平臺的數據加密系統提出了一種使用USB連接的解決方案。并指出了該方案現存的一些缺陷及改進方法,以備今后系統的升級。

  關鍵詞: USB  數據加密

 

  在目前的計算機環境中,利用一些運行在計算機內部的加密協議進行數據傳輸是較安全的。但是一旦微機連接到Internet上,在系統安全環節上就會形成一個脆弱的鏈接。在網絡上傳輸未加密的信息,極有可能讓黑客獲得如用戶密碼和帳號這樣的敏感信息?,F有的軟件加密方法遠遠不能滿足目前的需要。加密專用硬件設備是目前國際上首選的替代軟件加密的產品。使用加密硬件,就必須考慮計算機接口的問題。計算機的接口有許多種,如傳統的串口和并口。串口的數據傳輸率在115K~230Kbps,一般用來連接鼠標和外置Modem。并口的數據傳輸率比串口快8倍,標準并口的數據傳輸率約為1Mbps,一般用來連接打印機、掃描儀等。早期的軟件狗類加密硬件基本上都使用并口,不但極易與打印機沖突,而且容易被破解。要想設計出更可靠更完善的加密硬件,必須采用新的計算機接口。

  由于USB的諸多優點,市場上已經出現了很多USB的加密產品,如帶加密功能的USB閃存、USB加密卡等。但這些產品多是簡單的使用軟件進行加密,而沒有結合FPGA技術形成完整的數據加密系統。為此,我們選擇了開發USB接口加密系統。本文將詳細闡述USB在數據加密系統中的應用。

1 系統的總體設計方案

  整體硬件結構如圖1所示。下面概要介紹本系統的三大部分。

 

1.1 USB接口子系統設計

  對于實現較復雜的加密方法,外置的MPU處理起來更方便,故本系統的USB接口電路采用微處理器加USB專用接口芯片來實現。USB專用接口芯片是美國國家半導體公司提供的樣片USBN9603。微處理芯片采用飛利浦公司的可基于系統編程的單片機P89C51RD2,它負責控制USBN9603芯片的狀態和讀寫USB節點的數據,以及負責控制外部存儲器及其他功能設備。P89C51有3個加密位,用來保護固化的單片機軟件不可讀,從而保證系統不被仿制。本系統還使用了ATMEL公司的24C64作為存儲芯片。24C64芯片包含有8KB可讀寫的Flash存儲器,在掉電時可以保存軟件開發商設置的初始口令以及用于存放關鍵數據及配置參數等信息,可以用于從硬件上對抗共享器共享,可以更加安全穩定地實現軟件試用期和使用次數控制等功能。

1.2 軟件子系統設計

  根據USB系統的組成,可以將軟件分成二大部分:主機端軟件和設備端軟件。主機端軟件由設備驅動程序和應用程序組成。開發設備驅動程序有專門的開發工具包,在編寫軟件驅動程序時用到的主要工具有Windows98 DDK、DriverWorks和VC++6.0。Windows一般提供鼠標、鍵盤等HID設備完整的主機端驅動程序,但對于大部分用戶自己設計的硬件設備,需要在通用的底層驅動程序的基礎上開發相應的客戶驅動程序。USB主機端軟件開發的主要任務就是調用USB驅動程序接口、編寫設備驅動程序和用戶接口的應用程序軟件,并在軟件中加入反破解措施。

  在各種反破解措施中,跟蹤分析方法的威力最為強大,具體的跟蹤分析方法有靜態分析和動態跟蹤破解法等。

  (1)靜態分析方法。用反編譯工具軟件對受保護軟件進行逆向分析,以求找出訪問外部加密硬件的代碼并進行相應的修改。本文介紹的USB加密系統中采用了API函數調用與SHELL外殼加密相結合的技術,可以有效地對抗靜態分析方法。即使使用脫殼工具軟件后,外殼被破壞,內部的加密函數的調用仍然能保證保護的有效性。

  (2)動態跟蹤破解法。要求使用者具有豐富的破解經驗。它使用調試分析工具軟件,跟蹤控制受保護軟件的整個運行過程,找出它與加密接口間交互部分的判斷代碼并進行修改,使其跳過對加密硬件的檢測或使檢測結果無效。對付這種破解方法,本方案使用了數據交換隨機噪聲技術和迷宮技術,即在程序入口和出口之間包含大量無效判斷跳轉進行干擾,動態改變執行次序,提升抗跟蹤能力。另外,USB加密系統內部設有時間閘,各種操作必須在規定的時間內完成。正常操作用時很短,而跟蹤過程用時較長,超過規定時間將返回錯誤結果。

1.3 加密子系統設計

  加密子系統的設計采用單片機加FPGA(Field Programmable Gate Array)模式,既可方便地用單片機完成對USB口的操作,又能利用FPGA速度快和保密性強等特點實現復雜的加密算法。

  在加密系統的設計與實現中,主要是根據芯片的容量大小,選擇一種合適的加解密算法,將其在FPGA芯片中實現,同時處理好與單片機的外部接口問題。根據FPGA的特性,在以后的使用中可以隨著加密算法的進一步發展,采用動態可重構技術,將新的加密算法重新配置在硬件中,實現新的加密技術,故此加密裝置有很高的靈活性。本系統開發的EDA工具軟件采用XILINX公司的XILINX軟件包FOUNDATION4.1集成環境,硬件采用XILINX公司的SPARTAN系列FPGA芯片。

2  USB接口電路的開發

2.1 USB接口電路

  電路設計采用模塊化的設計方法。本系統在電路一級有3個模塊:USB接口模塊、I2C總線模塊和加密模塊。這樣不但可以提高開發效率,而且非常有利于系統的擴展和升級。本文重點介紹了3個模塊的設計方法及電路的連接。在系統中,使用ATMEL的24C64作為存儲芯片,采用P89C51RD2單片機的P1口模擬I2C總線來實現MCU與24C64的連接。系統USB接口平臺的硬件電路設計框圖如圖2所示。

 

2.2 P89C51單片機與USBN9603的硬件連接設計

  對USBN9603芯片的控制是通過向它的寄存器讀寫數據來實現的。它的每個寄存器都有相應的地址映射,其地址范圍從0x00~0x3F,對應58個寄存器(有6個地址保留)。USBN9603芯片相對于P89C51單片機來說更像是一片外部存儲器,當USBN9603被片選后,讀寫某個寄存器的地址,就可以被訪問。P89C51單片機的P0口可以作為一個地址/數據復用的總線口,而USBN9603芯片的總線連接方式是可設定的。USBN9603的并行連接有2種工作模式:復用模式與非復用模式。本接口電路中只用到復用模式與P89C51單片機進行接口。在這種模式下,MODE0接高電平,MODE1接低電平。MPU可以直接訪問寄存器DATAIN、DATAOUT和ADDR。圖3是USBN9603復用模式讀寫時序圖。根據圖3就可以將USBN9603的8位地址/數據總線直接與P89C51單片機的P0口相連及各自的“讀寫”引腳分別相連。如圖4所示。

 

 

  在標準訪問模方式下,USBN9603的序列是首先將地址寫入ADDRESS寄存器,然后再讀取DATAOUT的數據或者寫入DATAIN數據。

3 設備驅動程序的編制

  驅動程序的基本功能就是建立應用程序與USB接口之間的數據通信。Windows 98和Windows 2000操作系統為USB總線提供了全面的支持,并且用WDM(Windows Device Mode)設備驅動程序模型代替了VxD設備驅動程序。WDM模型主要采用分層的方法,模仿面向對象的技術。先進行邏輯上的“分層”,然后將標準的實現和低層細節“封裝”起來,形成“基類”。客戶程序通過“繼承”的方式來擴展“基類”的功能,完成所需要的實現。WDM支持USBl.l協議,并為用戶開發自己的用戶驅動程序提供USB驅動程序接口USBDI。USB用戶驅動程序通過USBDI訪問USB設備類驅動程序。USB外設不占用端口或中斷等硬件資源,所有低層I/O都由USB設備類驅動程序處理??蛻趄寗映绦蛑魂P心數據傳輸類型、傳輸時序、傳輸管道以及如何處理數據等主要操作。USBDI就是為實現這一點而設計的軟件接口。

  如圖5所示,Windows對構成一個USB主機的不同軟件部分進行了十分清楚的劃分。其中USB客戶軟件僅僅包含了用來控制不同USB外設的設備驅動程序。USB設備驅動程序會通過Windows所定義的一個軟件接口來同根集線器驅動程序進行通信。而USB根集線器驅動程序則要通過USBDI來實現同通用串行總線驅動程序(USBD)的通信。然后,USBD會選擇2種主控制器驅動程序之一來同其下方的主控制器進行通信。最后,主控制器驅動程序會直接實現對USB物理總線的訪問。

 

 

  在圖5中,主控制器驅動程序處于USBD的下方,而根集線器卻位于USBD上方。在一個支持USB系統的主機中,都會有一個根集線器來提供2個USB端口。一個USB系統中的所有USB設備,包括USB功能設備和USB集線器都必須以直接接入或星型接入方式接入一個USB根集線器。在Windows環境中,所有的客戶驅動程序都可以通過指向一個根集線器驅動程序的接口來和所有接入的USB設備進行通信。另外一種方法就是通過USBDI而直接同USBD進行交互。

4  測  試

  下面以前文介紹的整個USB接口平臺為基礎,給出USB加密系統原型版在Windows98操作系統中的測試。

測試分2步進行,首先對USB接口平臺單獨測試,然后對整體測試。

  測試的主機平臺為方正“文祥600”計算機,操作系統的版本為Windows98第二版。首先確保硬件設備連接到PC的USB接口上,并且操作系統為Windows98,按照提示正確安裝驅動程序。當本設備接口連入PC機后,操作系統的系統USB總線驅動程序立刻檢測到有新的USB設備加入。在與USB設備的0節點進行通信獲得設備的基本信息后,操作系統將彈出窗口要求安裝驅動程序。在驅動程序正確安裝完成以后,在計算機的“系統屬性”中就可以看到結果,此時表示USB加密系統已經被正確安裝。下面用DriverStudio自動生成的DOS界面的應用程序進行測試。

  當應用程序找到設備后,就可以執行讀、寫2種操作。首先執行寫功能:寫入6個字符,應用程序提示寫入設備成功;然后執行讀功能:將寫功能寫入的6個字符讀出,應用程序提示從設備讀出了6個字符,并且讀出的字符與寫入的一致,這說明了USB接口部分讀、寫功能正常。

  接下來是對系統進行總體測試。打開以DOS應用程序為基礎重新編制的Windows應用程序,程序界面如圖6所示。左邊設備信息報告欄第1行顯示的“查找設備成功”,表示設備可以正常使用了。在“寫數據”窗口中,可以寫下任何文本內容,在測試中我們寫下了“加密技術——讓世界更安全!”的字樣。然后點“寫入設備”按鈕,數據就被寫到USB加密板中,左側信息窗口出現對映的信息;再點擊“讀取數據”按鈕,在“讀數據”窗口中,顯示了由USB加密系統返回的密文,同樣左側信息窗口也出現對映的信息,這樣就完成了加密過程。

 

  對信息進行解密的操作過程與加密的過程相同。首先將密文復制到寫數據窗口中,點擊“寫入設備”按鈕,再點擊“讀取數據”按鈕,就可以看到明文“加密技術——讓世界更安全!”出現在讀數據窗口中(圖略)?!?/p>

  以上過程證明了整個系統工作正常,可以完成向設備寫入明文數據,USB設備接收到數據后再傳遞給加密接口進行加密,形成密文,再傳送到USB設備,然后把數據讀取出來。解密功能也正常,解密后的明文與原始明文一致。

  USB是一種全新的通用串行總線接口,是非常復雜的系統,但了解這樣一個系統,有助于了解當今接口體系結構的設計思想,對于理解其他的接口體系結構很有好處。

 

參考文獻

1  Compaq,Hewlett-Packard,Intel et al.Universal Bus Specification Revision 2.0.2000

2  Axelson J著,陳逸譯.USB大全.北京:中國電力出版社,2001

3  張念淮,江浩.USB總線接口開發指南.北京:國防工業出版社,2001

4  Anderson D著,精英科技譯.USB系統體系.北京:中國電力出版社,2001

5  Cant C著,孫義譯.Windows WDM設備驅動程序開發指南.北京:機械工業出版社,2001

6  武安河,周利莉.Windows設備驅動程序(VxD和WDM)開發實務.北京:電子工業出版社,2001

此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          亚洲综合精品一区二区| 国产在线精品成人一区二区三区| 国产亚洲成年网址在线观看| 在线精品视频免费观看| 亚洲小说春色综合另类电影| 国产精品久久久久久久久久直播| 亚洲第一网站免费视频| 母乳一区在线观看| 欧美日韩不卡在线| 国产有码在线一区二区视频| 久久人人97超碰国产公开结果| 久久久噜噜噜久久中文字幕色伊伊| 国产一区在线视频| 欧美高清在线视频观看不卡| 91久久线看在观草草青青| 亚洲欧美日韩中文播放| 亚洲视频一区在线| 亚洲一区二区三区在线视频| 欧美日本一道本在线视频| 久久久久欧美| 久久久久看片| 亚洲黄色成人久久久| 欧美一区综合| 亚洲欧美成人综合| 精品动漫一区二区| 制服诱惑一区二区| 激情综合色综合久久| 欧美日韩综合在线免费观看| 午夜精品99久久免费| 亚洲无线视频| 久久精品视频99| 亚洲高清视频的网址| 亚洲欧美日韩另类| 久久女同精品一区二区| 国产精品99免视看9| 欧美日本韩国一区| 欧美日韩国产不卡在线看| 欧美一区视频在线| 一区二区久久久久久| 日韩视频在线观看| 国产专区欧美精品| 久久综合综合久久综合| 亚洲在线黄色| 亚洲精品欧美极品| 国产色产综合色产在线视频| 亚洲一区二区三区成人在线视频精品| 国产精品久久影院| 欧美在线视频全部完| 欧美深夜福利| 午夜国产不卡在线观看视频| 国产日韩精品入口| 久久综合久色欧美综合狠狠| 午夜精品亚洲一区二区三区嫩草| 国产一区三区三区| 国产日韩欧美麻豆| 最新日韩欧美| 国户精品久久久久久久久久久不卡| 亚洲香蕉伊综合在人在线视看| 国产精品亚洲综合| 午夜视黄欧洲亚洲| 亚洲精品资源| 欧美一级夜夜爽| 久久综合国产精品台湾中文娱乐网| 欧美日韩综合久久| 欧美成人一品| 黑人中文字幕一区二区三区| 国内成人精品2018免费看| 国内精品免费午夜毛片| 亚洲精品乱码久久久久久久久| 欧美在线www| 欧美一区日本一区韩国一区| 久久综合给合| 中文国产成人精品久久一| 国产一区二区三区免费观看| 欧美日韩一区在线观看视频| 亚洲国产人成综合网站| 一本久道久久综合狠狠爱| 欧美激情亚洲综合一区| 一区二区在线观看视频在线观看| 国产精品成人久久久久| 国产精品亚洲片夜色在线| 久久精品国产免费观看| 美女福利精品视频| 午夜视频在线观看一区二区| 欧美精品成人一区二区在线观看| 国产精品美腿一区在线看| 久久精品国产99精品国产亚洲性色| 欧美区日韩区| 精品av久久久久电影| 国产乱码精品一区二区三区不卡| 国模叶桐国产精品一区| 亚洲欧美日韩电影| 中日韩男男gay无套| 国产精品久久九九| 精品不卡一区二区三区| 免费成人性网站| 午夜一级在线看亚洲| 欧美成人午夜77777| 国产亚洲精品久久久久婷婷瑜伽| 国内精品久久久久影院色| 欧美α欧美αv大片| 欧美国产视频一区二区| 亚洲午夜在线观看视频在线| 亚洲午夜国产成人av电影男同| 老司机免费视频一区二区三区| 欧美激情麻豆| 狠狠干综合网| 在线观看国产精品淫| 国产精品啊啊啊| 久久久久久久网| 国内成+人亚洲+欧美+综合在线| 国产精品久久久久免费a∨| 国产一区视频在线看| 一区二区福利| 野花国产精品入口| 国产精品v欧美精品v日本精品动漫| 亚洲一区二区三区在线视频| 亚洲一级电影| 亚洲国语精品自产拍在线观看| 国产欧美视频一区二区三区| 欧美一区二粉嫩精品国产一线天| 欧美午夜精品久久久久久孕妇| 国产一区免费视频| 亚洲国内精品| 一区二区三区四区国产| 亚洲第一网站| 欧美sm视频| 欧美精品一区二区久久婷婷| 黄页网站一区| 欧美性大战久久久久久久蜜臀| 亚洲一区二区三区视频| 亚洲三级影院| 国内精品久久久久影院薰衣草| 欧美成人综合在线| 免费91麻豆精品国产自产在线观看| 亚洲韩国青草视频| 国产精品久久久久aaaa樱花| 亚洲欧美大片| 欧美日韩黄视频| 国产在线精品自拍| 99精品久久久| 国产视频久久久久久久| 国产有码一区二区| 欧美aⅴ一区二区三区视频| 一区二区三区不卡视频在线观看| 欧美日韩一区二区视频在线观看| 毛片一区二区| 免费看的黄色欧美网站| 国产精品久久国产精品99gif| 久久久亚洲午夜电影| 在线观看一区二区精品视频| 亚洲欧美综合精品久久成人| 欧美va亚洲va国产综合| 亚洲老司机av| 有坂深雪在线一区| 欧美专区日韩视频| 99精品视频免费全部在线| 久久久国产成人精品| 午夜亚洲福利在线老司机| 欧美日本中文字幕| 欧美日韩视频一区二区三区| 欧美国产日本高清在线| 欧美在线观看网址综合| 欧美久久久久久蜜桃| 狠狠色综合色综合网络| 一本色道精品久久一区二区三区| 亚洲国产日韩在线| 噜噜噜久久亚洲精品国产品小说| 欧美精品日韩精品| 亚洲精选久久| 国产视频久久久久| 欧美福利视频网站| 欧美视频一区二区在线观看| 在线观看成人av| 久久精品国产免费观看| 欧美精品一二三| 国产精品视频yy9299一区| 性欧美1819sex性高清| 久久精品一区二区| 国产亚洲精品高潮| 国产午夜精品久久久久久免费视| 亚洲日本欧美天堂| 国产精品入口尤物| 欧美日韩精品免费观看视频完整| 久久综合网络一区二区| 国产精品视频最多的网站| 在线播放一区| 国产视频精品网| 国产精品久久久久一区二区三区| 国产精品免费视频xxxx| 国产一区日韩二区欧美三区| 精品成人免费| 国产精品99久久久久久久久久久久| 久久精品一区二区三区四区| 91久久精品日日躁夜夜躁欧美| 久久久噜噜噜久久中文字幕色伊伊| 免费在线亚洲欧美| 久久国产欧美日韩精品| 国产精品xvideos88| 欧美激情第3页| 国产精品xvideos88| 亚洲日本精品国产第一区| 欧美私人网站| 欧美精品一区在线观看| 久久精品国产成人| 亚洲香蕉成视频在线观看| 性欧美办公室18xxxxhd| 日韩手机在线导航| 欧美一区二区在线看| 亚洲国产欧美日韩另类综合| 久久精品女人的天堂av| 久久国产88| 欧美精品久久一区二区| 国产精品福利在线观看网址| 欧美日韩成人综合在线一区二区| 日韩视频在线免费| 夜夜精品视频一区二区| 欧美午夜视频一区二区| 国产区在线观看成人精品| 亚洲精品久久久久久一区二区| 亚洲主播在线| 好看不卡的中文字幕| 欧美精品99| 精品粉嫩aⅴ一区二区三区四区| 欧美刺激性大交免费视频| 99re66热这里只有精品4| 亚洲另类视频| 午夜在线观看免费一区| 亚洲欧美日本日韩| 美女主播精品视频一二三四| 国产综合色在线| 久久精品一本久久99精品| 欧美日韩专区在线| 在线视频一区观看| 欧美国产先锋| 国产精品日韩| 看欧美日韩国产| 国产丝袜一区二区三区| 欧美午夜精品| 狠狠干狠狠久久| 久热这里只精品99re8久| 欧美日韩精品伦理作品在线免费观看| 韩国v欧美v日本v亚洲v| 国产视频一区在线观看| 欧美亚洲不卡| 久久久噜噜噜久久| 亚洲永久视频| 国产女主播视频一区二区| 国产精品乱人伦一区二区| 狠狠色综合色综合网络| 亚洲精品久久久蜜桃| 激情综合在线| 亚洲在线视频观看| 欧美多人爱爱视频网站| 尤妮丝一区二区裸体视频| 亚洲电影免费在线| 欧美日韩在线精品一区二区三区| 在线综合+亚洲+欧美中文字幕| 国产精品影院在线观看| 欧美性猛交xxxx乱大交蜜桃| 国产精品男gay被猛男狂揉视频| 欧美不卡福利| 欧美日韩亚洲一区二区三区在线观看| 欧美激情一区二区三区高清视频| 国产午夜一区二区三区| 亚洲在线一区| 国产精品毛片| 亚洲天堂成人在线视频| 久久人人爽人人| 国产综合激情| 国产欧美亚洲视频| 最新日韩av| 亚洲成人在线免费| 国产情侣一区| 欧美日韩国产综合在线| 欧美亚洲视频在线看网址| 国产亚洲精品美女| 久久av免费一区| 国产亚洲精品久久飘花| 欧美日韩成人激情| 欧美一级淫片播放口| 欧美国产精品专区| 精品动漫3d一区二区三区| 国产日韩一区二区三区在线播放| 欧美日韩在线一区二区三区| 欧美日韩亚洲免费| 美女尤物久久精品| 欧美激情第六页| 亚洲在线1234| 99视频精品全部免费在线| 亚洲天堂av综合网| 日韩亚洲欧美一区二区三区| 欧美亚洲日本国产| 六十路精品视频| 韩国v欧美v日本v亚洲v| 日韩午夜在线| 欧美日韩一区二区精品| 国产精品麻豆成人av电影艾秋| 国产午夜精品视频| 伊人久久大香线蕉av超碰演员| 亚洲小说欧美另类婷婷| aa级大片欧美三级| 国产日韩欧美综合| 欧美福利在线| 亚洲国产精品精华液网站| 亚洲一区国产精品| 亚洲国产精品美女| 欧美日产国产成人免费图片| 99精品欧美一区二区三区综合在线| 久久偷看各类wc女厕嘘嘘偷窃| 亚洲国产一二三| 性欧美18~19sex高清播放| 国产精品sss| 久久精品久久综合| 亚洲欧美影音先锋| 久久琪琪电影院| 欧美ed2k| 免费亚洲电影| 永久免费毛片在线播放不卡| 午夜精品一区二区三区在线| 一区二区精品在线观看| 欧美色图五月天| 9色国产精品| 99精品久久久| 亚洲天堂网在线观看| 国产精品一香蕉国产线看观看| 国产综合色产在线精品| 欧美成人免费小视频|