《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 業(yè)界動(dòng)態(tài) > 基于PCI總線加密卡硬件設(shè)計(jì)

基于PCI總線加密卡硬件設(shè)計(jì)

2008-09-28
作者:劉建中 李清寶

??? 摘? 要: 介紹基于PCI總線加密卡的硬件組成部分。該加密卡汲取了現(xiàn)代先進(jìn)的加密思想,實(shí)現(xiàn)了高強(qiáng)度加密功能。?

??? 關(guān)鍵詞: 加密卡? PCI總線? PCI9052? ISP? 單片機(jī)?

?

??? 加密是對(duì)軟件進(jìn)行保護(hù)的一種有效手段。從加密技術(shù)的發(fā)展歷程及發(fā)展趨勢(shì)來(lái)看,加密可大體劃分為軟加密和硬加密兩種。硬加密的典型產(chǎn)品是使用并口的軟件狗,它的缺點(diǎn)是端口地址固定,容易被邏輯分析儀或仿真軟件跟蹤,并且還占用了有限的并口資源。筆者設(shè)計(jì)的基于PCI總線的加密卡具有以下幾個(gè)優(yōu)點(diǎn):第一,PCI總線是當(dāng)今計(jì)算機(jī)使用的主流標(biāo)準(zhǔn)總線,具有豐富的硬件資源,因此不易受資源環(huán)境限制;第二,PCI設(shè)備配置空間采用自動(dòng)配置方式,反跟蹤能力強(qiáng);第三,在PCI擴(kuò)展卡上易于實(shí)現(xiàn)先進(jìn)的加密算法。?

1 總體設(shè)計(jì)方案?

??? 基于PCI總線的加密卡插在計(jì)算機(jī)的PCI總線插槽上(5V 32Bit連接器),主處理器通過(guò)與加密卡通信,獲取密鑰及其它數(shù)據(jù)。加密卡的工作過(guò)程和工作原理是:系統(tǒng)動(dòng)態(tài)分配給加密卡4字節(jié)I/O" title="I/O">I/O空間,被加密軟件" title="加密軟件">加密軟件通過(guò)驅(qū)動(dòng)程序訪問(wèn)該I/O空間;加密卡收到訪問(wèn)命令后,通過(guò)PCI專(zhuān)用接口芯片" title="接口芯片">接口芯片,把PCI總線訪問(wèn)時(shí)序轉(zhuǎn)化為本地總線訪問(wèn)時(shí)序;本地總線信號(hào)經(jīng)過(guò)轉(zhuǎn)換處理后,與單片機(jī)相連,按約定的通信協(xié)議與單片機(jī)通信。上述過(guò)程實(shí)現(xiàn)了主處理器對(duì)加密卡的訪問(wèn)操作。?

??? 下面以主處理器對(duì)加密卡進(jìn)行寫(xiě)操作為例,闡述具體的實(shí)現(xiàn)方法。加密卡采用PLX公司的PCI9052作為PCI總線周期與本地總線周期進(jìn)行轉(zhuǎn)換的接口芯片。PCI9052作為PCI總線從設(shè)備,又充當(dāng)了本地總線主設(shè)備,對(duì)其配置可通過(guò)EEPROM 93LC46B實(shí)現(xiàn)。主處理器對(duì)加密卡進(jìn)行寫(xiě)操作,PCI9052把PCI總線時(shí)序轉(zhuǎn)化為8位本地?cái)?shù)據(jù)總線寫(xiě)操作。這8位本地?cái)?shù)據(jù)總線通過(guò)Lattice公司的ispLSI2064與單片機(jī)AT89C51的P0口相連,2064完成PCI9052本地總線與AT89C51之間的數(shù)據(jù)傳輸、握手信號(hào)轉(zhuǎn)換控制等功能。2064對(duì)8位本地?cái)?shù)據(jù)總線寫(xiě)操作進(jìn)行處理,產(chǎn)生中斷信號(hào)。該中斷信號(hào)與AT89C51的INT0#相連,使AT89C51產(chǎn)生中斷。AT89C51產(chǎn)生中斷后,檢測(cè)與其P2口相連的本地讀寫(xiě)信號(hào)WR#、RD#、LW/R#。當(dāng)WR#為低電平、LW/R#為高電平時(shí),AT89C51判斷目前的操作是否為寫(xiě)操作。確認(rèn)是寫(xiě)操作后,AT89C51把P0口上的8位數(shù)據(jù)取下來(lái),然后用RDY51#(經(jīng)2064轉(zhuǎn)換后)通知PCI9052的LRDYi#,表明自己已經(jīng)把當(dāng)前的8位數(shù)據(jù)取走,可以繼續(xù)下面的工作。PCI9052收到LRDYi#有效后,結(jié)束當(dāng)前的8位數(shù)據(jù)寫(xiě)操作。PCI總線的一次32位數(shù)據(jù)寫(xiě)操作,PCI9052本地總線需要四次8位數(shù)據(jù)寫(xiě)操作,通過(guò)字節(jié)使能LBE1#、LBE0#區(qū)分當(dāng)前的8位數(shù)據(jù)是第幾個(gè)字節(jié)有效。?

??? 加密卡硬件總體設(shè)計(jì)方案如圖1所示。?

?

?

2 硬件各組成部分說(shuō)明?

2.1? PCI9052部分?

??? PCI9052是PCI總線專(zhuān)用接口芯片,采用CMOS工藝,160引腳PQFP封裝,符合PCI總線標(biāo)準(zhǔn)2.1版。其總線接口信號(hào)與PCI總線信號(hào)位置對(duì)應(yīng),因此可直接相連,易于PCB實(shí)現(xiàn)。PCI9052的最大數(shù)據(jù)傳輸速率可達(dá)132MB/s;本地時(shí)鐘最高可至40MHz,且無(wú)需與PCI時(shí)鐘同步;可通過(guò)兩個(gè)本地中斷輸入或軟件設(shè)置產(chǎn)生PCI中斷。它支持三種本地總線工作模式,實(shí)際設(shè)計(jì)采用地址和數(shù)據(jù)線非復(fù)用、8位本地?cái)?shù)據(jù)總線、非ISA模式。?

??? PCI9052內(nèi)部有一個(gè)64字節(jié)PCI配置空間,一個(gè)84字節(jié)本地配置寄存器組。對(duì)PCI9052的配置可由主機(jī)或符合3線協(xié)議的串行EEPROM完成(注:ISA模式必須由串行EEPROM完成配置)。實(shí)際設(shè)計(jì)采用Microchip公司的93LC46B存放配置信息。系統(tǒng)初始化時(shí),自動(dòng)將配置信息裝入PCI9052,約需780μs。如果EEPROM不存在或檢測(cè)到空設(shè)備,則PCI9052設(shè)置為默認(rèn)值。?

??? 在設(shè)計(jì)中,EEPROM用到的配置項(xiàng)目有:設(shè)備ID:9050;廠商ID:10B5;分類(lèi)代碼:0780;子系統(tǒng)ID:9050;子系統(tǒng)廠商ID:10B5;支持INTA#中斷,PCI 3C:0100;分配4字節(jié)本地I/O空間:(例LAS0RR)0FFFFFFD;其它本地地址空間未使用:00000000;4字節(jié)本地I/O空間基地址(模4對(duì)齊):(LAS0BA)01200001(僅為示例);4字節(jié)本地I/O空間描述符:(LAS0BRD)00000022(非猝發(fā)、LRDYi#輸入使能、BTERM#輸入不使能、不預(yù)取、各內(nèi)部等待狀態(tài)數(shù)均為0、8位本地?cái)?shù)據(jù)總線寬度、小Endian模式);中斷控制/狀態(tài),Local 4C:00000143(LINTi1使能、LINTi1邊沿觸發(fā)中斷選擇使能、LINTi2不使能、PCI中斷使能、非軟件中斷、ISA接口模式不使能);User I/O、從設(shè)備應(yīng)答、串行EEPROM、初始化控制,Local 50:00024492。有兩點(diǎn)要注意:一是設(shè)計(jì)中采用PLX公司推薦使用的串行EEPROM 93LC46B按字(16 bit)為單位組織;二是EEPROM開(kāi)發(fā)器" title="開(kāi)發(fā)器">開(kāi)發(fā)器編輯輸入與手工書(shū)寫(xiě)的順序?qū)?yīng)關(guān)系,以廠商ID:10B5為例,在開(kāi)發(fā)器編輯輸入的是b510,而不是10B5。?

??? PCI9052本地信號(hào)的含義是:LAD[7..0]:本地8位數(shù)據(jù)總線;WR#:寫(xiě)有效;RD#:讀有效;LW/R#:數(shù)據(jù)傳輸方向,高電平為寫(xiě)操作,低電平為讀操作;LBE1#和LBE0#:字節(jié)使能,表明當(dāng)前LAD[7..0]上的數(shù)據(jù)是第幾個(gè)字節(jié)(0到3);BLAST#:PCI9052寫(xiě)數(shù)據(jù)準(zhǔn)備好或讀數(shù)據(jù)已取走;LRDYi#:外部設(shè)備(此設(shè)計(jì)指單片機(jī))已把PCI9052寫(xiě)操作數(shù)據(jù)取走或讀操作數(shù)據(jù)準(zhǔn)備好;LINTi1:外部設(shè)備通過(guò)LINTi1向主機(jī)發(fā)送INTA#中斷,當(dāng)單片機(jī)驗(yàn)證密鑰正確,向主處理器發(fā)送請(qǐng)求,表明可以開(kāi)始從中讀取相關(guān)數(shù)據(jù)。?

??? 需注意的是,PCI9052在使用時(shí),某些引腳要加阻值為1kΩ~10kΩ的下拉或上拉電阻" title="上拉電阻">上拉電阻。因此在實(shí)現(xiàn)時(shí),給MODE、LHOLD、LINTi1引腳加下拉電阻,CHRDY、EEDO、LRDYi#引腳加上拉電阻。?

??? 以主處理器向單片機(jī)寫(xiě)數(shù)據(jù)為例,圖2給出了PCI9052的本地寫(xiě)時(shí)序。?

?

?

2.2 ispLSI2064部分?

??? 為降低數(shù)據(jù)被解析的風(fēng)險(xiǎn),應(yīng)盡量減少使用分離元件。因此在設(shè)計(jì)中選用了Lattice公司的CPLD ispLSI2064。該芯片采用EECMOS技術(shù),100引腳TQFP封裝,擁有2000個(gè)PLD門(mén),64個(gè)I/O引腳另加4個(gè)專(zhuān)用輸入,64個(gè)寄存器,3個(gè)全局時(shí)鐘,TTL兼容的輸入輸出信號(hào)。2064具有在系統(tǒng)可編程ISP(In-System Programmable)功能,可方便實(shí)現(xiàn)硬件重構(gòu),易于升級(jí),降低了設(shè)計(jì)風(fēng)險(xiǎn),并且安全性能高。PCI9052與單片機(jī)之間的8位數(shù)據(jù)線進(jìn)行雙向數(shù)據(jù)傳輸,不能簡(jiǎn)單地直接相連,需要進(jìn)行傳輸方向控制和數(shù)據(jù)隔離。故用2064作為PCI9052本地信號(hào)與單片機(jī)信號(hào)進(jìn)行信號(hào)傳遞的接口,圖3給出了8位數(shù)據(jù)信號(hào)雙向傳輸?shù)脑韴D。2064的開(kāi)發(fā)軟件ispDesignExpert 8.2版支持VHDL、Verilog HDL、Abel等語(yǔ)言及原理圖輸入,且通過(guò)專(zhuān)用下載電纜可把最終生成的JEDEC文件寫(xiě)入2064,實(shí)現(xiàn)編程。在設(shè)計(jì)時(shí)采用了原理圖輸入的方法。?

?

?

??? 原理圖中用到的BI18的功能描述為:當(dāng)OE=1時(shí),XB為輸出,A為輸入,即XB=A;當(dāng)OE=0時(shí),XB為輸入,Z為輸出,即Z=XB。FD28的功能描述為:8位D觸發(fā)器(帶異步清除)。結(jié)合PCI9052本地讀寫(xiě)時(shí)序,可以分析得出,在進(jìn)行讀寫(xiě)操作時(shí),圖3實(shí)現(xiàn)了LAD[7..0]與D[7..0]之間正常的數(shù)據(jù)傳輸;在非讀寫(xiě)時(shí),雙方數(shù)據(jù)處于正常隔離狀態(tài)。?

2.3 單片機(jī)AT89C51部分?

??? 單片機(jī)采用ATMEL公司的AT89C51。這是一個(gè)8位微處理器,采用CMOS工藝,40引腳DIP封裝。它含有4K字節(jié)Flash和128字節(jié)RAM,且自身具有加密保護(hù)功能。單片機(jī)不進(jìn)行外部存儲(chǔ)器和RAM的擴(kuò)展,程序存儲(chǔ)和運(yùn)行均在片內(nèi)完成,有效地保證了加密強(qiáng)度。?

??? 單片機(jī)的P0口接圖3的D[7..0],并加10kΩ的上拉排阻。WR#、RD#、W/R#、BE1#、BE0#作為單片機(jī)輸入信號(hào)接P2口。PCI9052寫(xiě)數(shù)據(jù)準(zhǔn)備好或讀數(shù)據(jù)已取走信號(hào)REQ9052#作為單片機(jī)輸入信號(hào)接P3.2(INT0#);寫(xiě)數(shù)據(jù)單片機(jī)已取走或讀數(shù)據(jù)單片機(jī)準(zhǔn)備好信號(hào)RDY51#作為單片機(jī)輸出信號(hào)接P1.0;接P1.1的OVER51#作為單片機(jī)輸出信號(hào),經(jīng)2064接PCI9052的LINTi1,通過(guò)LINTi1向主機(jī)發(fā)送INTA#中斷請(qǐng)求。?

??? 基于PCI總線的加密卡,依照PCI總線標(biāo)準(zhǔn)2.1版,通過(guò)動(dòng)態(tài)分配4字節(jié)I/O空間,實(shí)現(xiàn)主處理器與卡上單片機(jī)之間的握手通信。被加密軟件通過(guò)訪問(wèn)加密卡,獲取軟件正常執(zhí)行的相關(guān)權(quán)限。在加密卡不存在的情況下,被加密軟件因得不到相關(guān)授權(quán)而無(wú)法運(yùn)行,從而實(shí)現(xiàn)了加密功能。在單片機(jī)的存儲(chǔ)器里,除了存放密鑰之外,設(shè)計(jì)者還可以把被加密軟件的部分程序、算法或常數(shù)寫(xiě)入單片機(jī)的存儲(chǔ)器,在加密卡不存在的情況下,被加密軟件的功能是不完整的,從根本上防止了軟件破解。?

參考文獻(xiàn)?

1 李貴山,戚德虎. PCI局部總線開(kāi)發(fā)者指南.西安:西安電子科技大學(xué)出版社,2001?

2 劉篤仁. 用ISP器件設(shè)計(jì)現(xiàn)代電路與系統(tǒng).西安:西安電子科技大學(xué)出版社,2002?

3 PLX Technology,Inc. PCI 9052 Data Book Version 2.0.2001

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)通過(guò)電子郵件或電話(huà)通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話(huà):010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
在线精品视频免费观看| 一级日韩一区在线观看| 欧美性色视频在线| 免费在线观看成人av| 久久久免费精品| 久久久久在线| 久久久精品一区| 久久久久久久久久码影片| 欧美一区二区三区四区在线观看 | 欧美一级理论性理论a| 亚洲一区二区三区精品在线| 在线视频精品一| 一区二区三区视频在线观看| 99热免费精品| 亚洲午夜精品久久| 亚洲欧美成aⅴ人在线观看| 亚洲在线观看免费| 亚洲欧美国产高清| 欧美一区二区三区在| 欧美在线免费视屏| 亚洲国产高潮在线观看| 最新国产成人av网站网址麻豆| 亚洲精品国产欧美| 一本色道**综合亚洲精品蜜桃冫| 亚洲免费av网站| 亚洲一区二区在线视频 | 麻豆国产va免费精品高清在线| 老司机67194精品线观看| 免费视频久久| 欧美美女福利视频| 国产精品xxxxx| 国产日韩综合一区二区性色av| 国产一区日韩欧美| 亚洲国产精品一区制服丝袜 | 国产情人节一区| 国产综合视频在线观看| 在线欧美三区| 艳女tv在线观看国产一区| 亚洲一区二三| 亚洲大胆av| 中文av字幕一区| 欧美一区二区三区四区在线| 久久香蕉国产线看观看av| 欧美激情一区二区久久久| 国产精品国产三级国产a| 国产日韩亚洲欧美精品| 亚洲丶国产丶欧美一区二区三区| 日韩亚洲不卡在线| 性欧美长视频| 亚洲毛片av在线| 午夜一区二区三区在线观看| 久久久免费av| 欧美日韩综合不卡| 国产午夜亚洲精品不卡| 亚洲第一综合天堂另类专| 一区二区黄色| 亚洲电影有码| 亚洲一区亚洲| 六月天综合网| 国产精品成人va在线观看| 激情成人亚洲| 一区二区三区四区五区视频| 久久国产加勒比精品无码| 一片黄亚洲嫩模| 久久精品一区四区| 欧美日韩亚洲激情| 黄色日韩网站| 亚洲视频第一页| 亚洲欧洲在线免费| 欧美一区二区三区视频免费| 欧美激情在线狂野欧美精品| 国产欧美亚洲一区| 亚洲免费电影在线观看| 亚洲第一视频| 午夜亚洲性色视频| 欧美日本国产精品| 国产日韩成人精品| 99精品国产在热久久| 亚洲精品1区| 欧美在线视频观看免费网站| 欧美日本三区| 在线观看日韩欧美| 亚洲欧美日韩另类| 一区二区三区日韩精品| 女同性一区二区三区人了人一| 国产乱肥老妇国产一区二| 亚洲精品字幕| 亚洲黄色天堂| 久久精品一区| 国产欧美一区二区精品性色| aⅴ色国产欧美| 99国产精品久久久| 蜜桃av一区| 韩国成人福利片在线播放| 亚洲影院在线观看| 亚洲性图久久| 欧美日韩成人一区二区| 亚洲第一伊人| 亚洲国产另类久久精品| 久久国产手机看片| 国产精品欧美在线| 一本色道精品久久一区二区三区 | 日韩午夜电影av| 欧美刺激午夜性久久久久久久| 国外成人在线视频| 午夜精品久久久久久久99热浪潮| 亚洲线精品一区二区三区八戒| 欧美久久久久久蜜桃| 91久久精品一区二区别| 亚洲人成久久| 嫩草成人www欧美| 一区二区三区亚洲| 亚洲大片一区二区三区| 久久久久久97三级| 国产亚洲第一区| 午夜一区二区三区在线观看| 欧美一乱一性一交一视频| 国产精品老牛| 亚洲亚洲精品三区日韩精品在线视频| 亚洲一区二区影院| 欧美性猛交xxxx乱大交蜜桃| 日韩亚洲精品视频| 亚洲一区免费看| 国产精品久久9| 亚洲一区二区三区在线看 | 亚洲欧美国产不卡| 香蕉久久国产| 国产欧美精品在线观看| 香港成人在线视频| 久久精品亚洲| 在线播放一区| 亚洲精品中文在线| 欧美日韩国产黄| 一本一本久久a久久精品综合麻豆| 亚洲小说春色综合另类电影| 国产精品久久久久久久9999| 亚洲深夜福利视频| 久久成人亚洲| 狠狠干综合网| 日韩亚洲成人av在线| 欧美三级在线视频| 亚洲一区二区三区国产| 久久国产加勒比精品无码| 狠狠操狠狠色综合网| 亚洲精品日产精品乱码不卡| 欧美日韩国产成人高清视频| 在线视频一区观看| 欧美在线播放高清精品| 韩日成人av| 日韩天堂在线观看| 国产精品免费网站在线观看| 小嫩嫩精品导航| 免费中文字幕日韩欧美| 亚洲精品一区二区三区av| 亚洲女人天堂成人av在线| 国产日本欧美在线观看| 亚洲国产高清高潮精品美女| 欧美日韩高清区| 亚洲欧美日韩在线不卡| 麻豆freexxxx性91精品| 日韩亚洲精品电影| 久久精品中文字幕免费mv| 在线观看日产精品| 亚洲永久在线观看| 一区二区三区在线免费观看| 在线一区二区三区做爰视频网站| 国产精品麻豆欧美日韩ww| 久久精品日产第一区二区三区| 欧美精品偷拍| 亚洲欧美日韩在线观看a三区| 蜜臀91精品一区二区三区| 一区二区激情小说| 久久久久久久高潮| 亚洲麻豆视频| 久久久久.com| 一本色道久久| 老鸭窝亚洲一区二区三区| 亚洲视频视频在线| 男女精品视频| 午夜精品久久久久久| 欧美日韩国产免费观看| 欧美一级视频免费在线观看| 欧美金8天国| 欧美在线免费观看视频| 欧美日韩三级视频| 亚洲风情亚aⅴ在线发布| 欧美视频中文字幕在线| 久久激情视频| 国产精品日韩欧美一区二区三区| 亚洲黄色免费| 国产手机视频一区二区| 一区二区三区四区五区在线| 狠久久av成人天堂| 亚洲欧美中文字幕| 亚洲人午夜精品免费| 噜噜噜噜噜久久久久久91| 亚洲综合精品四区| 欧美视频在线一区| 99精品热视频只有精品10| 韩国欧美国产1区|