基于FPGA專用板和MEMS強鏈實現(xiàn)SATA硬盤身份認證系統(tǒng)的設計_第1頁
基于FPGA專用板和MEMS強鏈實現(xiàn)SATA硬盤身份認證系統(tǒng)的設計_第2頁
基于FPGA專用板和MEMS強鏈實現(xiàn)SATA硬盤身份認證系統(tǒng)的設計_第3頁
基于FPGA專用板和MEMS強鏈實現(xiàn)SATA硬盤身份認證系統(tǒng)的設計_第4頁
基于FPGA專用板和MEMS強鏈實現(xiàn)SATA硬盤身份認證系統(tǒng)的設計_第5頁
全文預覽已結(jié)束

付費下載

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

基于FPGA專用板和MEMS強鏈實現(xiàn)SATA硬盤身份認證系統(tǒng)的設計信息安全對于企業(yè)、政府、國防等部門有著極其重要的意義。一般現(xiàn)有的認證方法都通過存儲介質(zhì)保存密碼,使用比較器比對輸入密碼正確與否,此方法保密性差,易于破解。本文通過特有的MEMS強鏈和百萬門級的FPGA來對SATA硬盤進行身份認證。實現(xiàn)物理加密。密碼轉(zhuǎn)換為相應的密鑰并以機械結(jié)構(gòu)的形式成為MEMS強鏈的核心部位,即根據(jù)齒輪組的運行完成對密碼的比較,來完成對口令的驗證,利用PCI9054芯片快速完成對口令和MEMS返回值的傳輸.根據(jù)密碼所形成的控制流由FPGA對MEMS強鏈進行控制。整個系統(tǒng)快速、簡潔、安全性高。1系統(tǒng)的總體構(gòu)成該系統(tǒng)由主機、物理認證的FPGA專用板和MEMS強鏈組成,其中主機里面裝有連接和掃面模塊和用于存儲重要數(shù)據(jù)的SATA硬盤;物理認證FPGA專業(yè)板包括:PCI控制器、FPGA、SATA硬盤、EEPROMPCI配置芯片、MEMS控制模塊、密碼處理模塊和MEMS密碼鎖驅(qū)動電路等構(gòu)成。圖1描述了整個系統(tǒng)的硬件布局。圖1系統(tǒng)結(jié)構(gòu)框架圖本文使用MEMS密碼鎖特有的機械結(jié)構(gòu)產(chǎn)生相應的反饋信號,用此反饋信號參與物理認證系統(tǒng)。計算機中裝有兩塊硬盤,一塊硬盤直接與主板IDE口相連。其中裝有操作系統(tǒng),數(shù)據(jù)是普通數(shù)據(jù),進入不需要物理認證,可以直接讀取。另一塊是SATA硬盤,它通過連接和控制模塊與主板SATA接口相連,開機后,由于與硬盤相連的數(shù)據(jù)線是斷開狀態(tài),則該硬盤不可見。此硬盤需通過MEMS密碼鎖認證,若認證通過,產(chǎn)生一個反饋信號,此反饋信號由物理認證的FPGA專用板通過PCI控制器傳給主機,主機來對反饋值進行判斷,若密碼正確,主機開啟連接和掃描硬件模塊,把與SATA硬盤相連的數(shù)據(jù)線接上,同時進行掃描硬件改動,這樣SATA硬盤就被系統(tǒng)識別。主窗口顯示從鍵盤輸入密碼,然后主機通過插在PCI插槽上的PCI控制器,PCI控制器主要是由PLX公司的PCI9054芯片構(gòu)成,它和FPGA都受板上50MHz系統(tǒng)時鐘的控制。通過PCI控制器把密碼傳輸?shù)紽PGA內(nèi)部的PCI本地控制器,由PCI本地控制器將密碼傳給FPGA,由FPGA根據(jù)得到的密碼來驅(qū)動MEMS驅(qū)動電路,MEMS驅(qū)動電路驅(qū)動MEMS強鏈根據(jù)輸入的密碼來運行,如果密碼正確,也就是驅(qū)動電路的指令與MEMS強鏈內(nèi)部結(jié)構(gòu)固化的密碼一樣,密碼鎖就能正確走完,然后返回Ox000000FF(十進制的255);如果密碼錯誤,MEMS強鏈被卡死,并返回0。同時PCI本地控制器將返回值再通過PCI9054傳送回主機,并在主窗口上顯示。如果返回信號是0x000000FF的話,啟動聯(lián)接控制程序,實現(xiàn)掃描資源管理器,接通SATA硬盤,正常傳輸數(shù)據(jù)。2MEMS強鏈與其相關(guān)的控制模塊MEMS強鏈的棘爪能卡住棘輪,從而能精確定位到固定的位置,棘爪裝有電磁驅(qū)動型電機,使其具有誤碼鑒別與自復位功能,因而可用于信息安全,實現(xiàn)密碼鎖的功能。鑒碼機構(gòu)由兩組電磁型微步進電機驅(qū)動反十涉齒輪集A和B,反干涉碼輪集中機械周化了密碼。反干涉齒輪集在正確解碼時,碼齒之間互相沒有接觸;當出現(xiàn)錯碼時,碼齒相互干涉,反干涉齒輪集卡死。使用光電耦合機構(gòu),在正確接收到24位密碼時光電能量耦合,系統(tǒng)開啟。圖2是MSMS強鏈結(jié)構(gòu)圖。圖2MEMS強鏈組織結(jié)構(gòu)圖MEMS密碼鎖控制模塊以PCI協(xié)議通訊方式與FPGA和MEMS密碼鎖驅(qū)動電路進行通訊,它是用VerilogHDL語占寫的控制FPGA運行的指令模塊,它存儲在EPCS1中,系統(tǒng)上電后開始工作。EEPROMPCI配置芯片通過內(nèi)部的PCI驅(qū)動程序正確驅(qū)動PCI控制器.完成主機與PCI控制器控制信號、地址線和數(shù)據(jù)線的配置,使PCI控制器正常工作,PCI控制器把PCI總線上的指令轉(zhuǎn)化為PCI局部總線端指令,由局部總線指令控制I/O擴展芯片,I/O擴展芯片根據(jù)局部總線指令輸出控制字到MEMS密碼鎖驅(qū)動電路驅(qū)動MEMS密碼鎖解碼,解碼的同時MEMS密碼鎖反饋信號,密碼處理模塊讀取MEMS密碼鎖發(fā)來的反饋信號,判斷正確碼或是錯誤碼的來臨,若取得32位正確碼,發(fā)送反饋信號到FPGA,F(xiàn)PGA把獲得的反饋值經(jīng)PCI控制器傳給主機,主機啟動聯(lián)接和掃描硬件模塊,SATA硬盤被系統(tǒng)識別。3PCI控制器PCI控制器主要由PCI9054芯片和EEPROMPCI芯片組成。它支持主模式、從模式、DMA傳輸方式。本文利用PCI9054在C模式下傳輸32位的密碼和32位返回值。工作時間的寫入時序圖如圖3。本地總線周期可是是single周期或突發(fā)周期,BLAST#信號被用于決定是一個single周期被執(zhí)行還是一個突發(fā)周期被執(zhí)行。本地總線Initiator(本地總線訪問內(nèi)存和I/O)訪問PCI9054必須是對32位non-pipelined總線才可以。其中,LA是地址總線;LD是數(shù)據(jù)總線;LBE是字節(jié)使能信號。圖3PCIInitiator狀態(tài)下寫時序圖BLAST#、READY#、ADS#和FPGA相連。只有在ADS信號在高電平,BLAST在低電平,LWR為高電平。LA[31:2]為高時,表明PCI9054開始一個有效的寫數(shù)據(jù)周期,同時,F(xiàn)PGA使寫標志有效,并把數(shù)據(jù)放到本地總線上,此時本地總線上才接收到由外部總線上寫入的數(shù)據(jù)。只有在ADS信號為高,BLAST為低,LWR信號為低,同時LA[3l:2]接受到地址時,表明PCI9054開始一個有效的讀數(shù)據(jù)周期,同時,下位機的FPGA使讀使能有效,并把返回值放到本地總線上,LD[3l:0]才能接收到數(shù)據(jù)。EEPROMPCI配置芯片與PCI控制器直接相連。通過存儲在配置芯片內(nèi)部的PCI驅(qū)動程序正確驅(qū)動PCI控制器,完成主機與PCI控制器控制信號、地址線和數(shù)據(jù)線的配置,使PCI控制器正常工作。4AlteraCycloneFPGACyclone系列現(xiàn)場可編程門陣列是基于1.5V,O.13μm.全銅互聯(lián)SRAMT藝,最高內(nèi)嵌20,060個邏輯單元、最大288KbitsRAM。內(nèi)置鎖相環(huán)和一個專用雙倍速率(DDR)界面支持用以雙倍速率同步動態(tài)隨機存儲器(DDRSDRAM)和快速循環(huán)動態(tài)隨機存儲器(FCRAM,Cyclone可以提供低功耗的數(shù)據(jù)鏈路解決方案。cvclone支持多種標準的I/O(輸入輸出),支持ASSP和ASIC設備。支持多種IP核。5SATA硬盤SATA,是由Intel、IBM、Dell、APT、Maxtor和Seagate公司共同提出的硬盤接口規(guī)范。SATA規(guī)范將硬盤的外部傳輸速率理論值提高到了150MB/s。SATA的優(yōu)勢是支持熱插拔,傳輸速度快,執(zhí)行效率高等。熱插拔是最希望看到的功能,但是現(xiàn)在的SATA硬盤的熱插拔并不是想象中的把硬盤在開機的狀態(tài)下接入主機,就能正常的傳輸數(shù)據(jù),而是需要啟動資源管理器,進行“掃描檢測硬件改動”的操作后才能正常識別硬盤盤符。根據(jù)這個情況,本文設計了“連接與掃描硬件改動模塊”代替手動的“掃描檢測硬件改動”操作。該硬盤有數(shù)據(jù)線和電源線,在開始的時候,只接通電源線,用軟件來控制數(shù)據(jù)線是否連接,當物理認證通過后,主機啟動連接和掃面硬件模塊,連接上數(shù)據(jù)線。然后使主機自動枚舉檢測所有的硬件,看是否有新硬件安裝,有就使其正常聯(lián)接使用。若密碼錯誤,主機不啟動該模塊,繼續(xù)保持數(shù)據(jù)線斷開,SATA硬盤還是不可見。6軟件實現(xiàn)軟件有兩部分,首先是上位機控制部分,該部分是用VC++寫的上位機窗口對話框和聯(lián)接控制程序;下位機控制部分主要是本地PCI控制程序、FPGA驅(qū)動程序以及MEMS強鏈控制程序,該部分是用verilogHDL編寫,調(diào)試成功之后燒寫在與FPGA相連的只讀存儲器EPCS1里面。上位機和下位機的控制程序通過PCI9054有機的聯(lián)接在一起。首先用戶點擊主窗口的用戶對話框,在上面的編輯框內(nèi)輸入密碼,點擊“確認”按鈕,主機將數(shù)據(jù)放在總線上,同時FPGA內(nèi)部的本地總線控制器不斷的檢測ADS信號,BLAST信號,LWR讀寫信號信號,和LA[3l:2]地址總線信號,當他們滿足寫有效時,表明FPGA可以接收數(shù)據(jù),于是數(shù)據(jù)通過本地總線將密碼數(shù)據(jù)傳到FPCA內(nèi)部指定的寄存器里面,同時由MEMS控制模塊根據(jù)所得的密碼來控制MEMS強鏈,若密碼與MEMS強鏈內(nèi)部結(jié)構(gòu)密碼一致,MEMS強鏈走完全程,F(xiàn)PGA返回八位1(即十進制的255),接著啟動連接和掃描硬件程序掃描硬件,SATA硬盤就被系統(tǒng)識別,所加密硬盤的盤符在我的電腦中顯現(xiàn)。如果密碼錯誤的話,MEMS強鏈被卡死,返回0。為了增加可視化.本地總線控制器當檢驗到ADS信號,BLAST信號,LWR信號.和LA[3l:2]讀有效時將返回值返回到主窗口的“返回值”編輯框中。當輸入正確的密碼,這里我們設置的正確密碼是12345678,上位機先把密碼傳如到下位機存儲起來,時序圖見圖4,ld數(shù)據(jù)總線上的數(shù)據(jù)是12345678,當密碼與固化的密碼比較以后,正確的話返回255,如圖5所示。圖4寫入正確密碼仿真時序圖圖5正確密碼返回值的仿真時序圖7結(jié)束語該系統(tǒng)已經(jīng)初步實現(xiàn)了主機、硬盤、FPGA之間的控制信號、應答信號、讀寫信號,及這些信號協(xié)調(diào)工作完成

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論