[發明專利]一種基于PCI總線的硬件加解密實現方法及硬件加密板卡在審
| 申請號: | 201811274032.5 | 申請日: | 2018-10-30 |
| 公開(公告)號: | CN109460680A | 公開(公告)日: | 2019-03-12 |
| 發明(設計)人: | 李宏耀 | 申請(專利權)人: | 天津津航計算技術研究所 |
| 主分類號: | G06F21/72 | 分類號: | G06F21/72;G06F13/42 |
| 代理公司: | 中國兵器工業集團公司專利中心 11011 | 代理人: | 祁恒 |
| 地址: | 300308 天津*** | 國省代碼: | 天津;12 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 硬件加密 加解密 板卡 加密/解密 信息安全技術 主機系統數據 數據調度 | ||
1.一種基于PCI總線的硬件加密板卡,其特征在于,所述硬件加密板卡包括,NorFlash0、NorFlash1、SDRAM、DSP和FPGA;
所述NorFlash0,用于存儲DSP的運行程序;
所述NorFlash1,用于存儲密文數據;
所述SDRAM,用于將主機傳送來的待加密數據進行緩存;
所述DSP,用于通過PCI總線與主機進行數據交互,調度數據進入FPGA進行加密/解密處理,最后將密文存儲在NorFlash1中;
所述FPGA,用于與DSP進行數據交互,并對輸入的數據進行加密/解密處理;所述FPGA內部功能模塊包括控制寄存器、總線切換控制寄存器、狀態寄存器0、狀態寄存器1、SRAM1、SRAM2、SRAM3、SRAM4、2輸入數據選擇器、2輸出數據選擇器、密碼算法模塊;其中,所述控制寄存器,用于寄存密碼算法模塊的啟動命令和模式命令;所述總線切換控制寄存器,用于寄存控制2輸入數據選擇器和2輸出數據選擇器通道切換的切換命令;所述狀態寄存器0,用于寄存SRAM3的寫滿狀態;所述狀態寄存器1,用于寄存SRAM4的寫滿狀態;所述2輸入數據選擇器,用于在2個64位的輸入數據總線中選擇一個連接到64位的輸出數據總線;所述2輸出數據選擇器,用于在2個64位的輸出數據總線中選擇一個連接到64位的輸入數據總線;所述密碼算法模塊,用于對數據進行加解密處理;所述SRAM1和SRAM2用于寫入待加密數據,所述SRAM3和SRAM4,用于輸出密文數據。
2.如權利要求1所述的硬件加密板卡,其特征在于,所述Nor Flash0的數據總線寬度為16位,容量為1M字節;所述Nor Flash1的數據總線寬度為16位,容量為64M字節;所述SDRAM的數據總線寬度為16位,容量為64M字節。
3.如權利要求1所述的硬件加密板卡,其特征在于,所述硬件加密板卡還包括電平轉換和CPCI連接器;其中,所述電平轉換,用于將CMOS電平的數據總線與TTL電平的數據總線接連到一起,實現一端的CMOS電平的數據信號與另一端的TTL電平的數據信號正常通信;所述CPCI連接器,用于將所述硬件加密板卡與CPCI總線系統互聯。
4.如權利要求1所述的硬件加密板卡,其特征在于,所述密碼算法模塊包括64位數據總線的輸入接口、64位數據總線的輸出接口和控制命令接口;其中,
所述64位數據總線的輸入接口,用于接收輸入數據;
所述64位數據總線的輸出接口,用于輸出處理后的數據;
所述控制命令接口,用于接收啟動/停止、加密/解密的控制命令,控制密碼算法模塊是運行狀態或停止狀態、是加密操作或解密操作。
5.一種基于PCI總線的硬件加解密實現方法,其特征在于,利用上述任一項所述的硬件加密板卡,所述方法包括:
(1)主機傳送數據給硬件加密板卡進行加密處理,包括:
1)硬件加密板卡通過PCI總線接口接收主機傳送來的待加密數據,并緩存入SDRAM;
2)硬件加密板卡的DSP往FPGA的控制寄存器寫入模式命令,使密碼算法模塊工作在加密模式;
3)硬件加密板卡的DSP往FPGA的總線切換控制寄存器寫入命令,使2輸入數據選擇器選擇SRAM1作為輸入,使2輸出數據選擇器選擇SRAM3作為輸出;
4)將緩存在SDRAM中的待加密數據寫入SRAM1;
5)硬件加密板卡的DSP往FPGA的控制寄存器寫入啟動命令,密碼算法模塊啟動工作;
6)將緩存在SDRAM中的剩余的待加密數據寫入SRAM2;
7)等待狀態寄存器0置為寫滿狀態;
8)硬件加密板卡的DSP往FPGA的總線切換控制寄存器寫入命令,使2輸入數據選擇器選擇SRAM2作為輸入,使2輸出數據選擇器選擇SRAM4作為輸出;
9)DSP從SRAM3讀出密文數據,并緩存入SDRAM;
10)將緩存在SDRAM中的剩余的待加密數據寫入SRAM1;
11)等待狀態寄存器1置為寫滿狀態;
12)硬件加密板卡的DSP往FPGA的總線切換控制寄存器寫入命令,使2輸入數據選擇器選擇SRAM1作為輸入,使2輸出數據選擇器選擇SRAM3作為輸出;
13)DSP從SRAM4讀出密文數據,并緩存入SDRAM;
14)若待加密數據未處理完畢,跳轉到第6)步;
15)若待加密數據全部處理完畢,將緩存在SDRAM中的密文數據返回給主機或直接存入NorFlash1;
16)流程結束;
(2)主機傳送數據給硬件加密板卡進行解密處理,包括:
1)硬件加密板卡通過PCI總線接口接收主機傳送來的待解密數據,并緩存入SDRAM;
2)硬件加密板卡的DSP往FPGA的控制寄存器寫入模式命令,使密碼算法模塊工作在解密模式;
3)硬件加密板卡的DSP往FPGA的總線切換控制寄存器寫入命令,使2輸入數據選擇器選擇SRAM1作為輸入,使2輸出數據選擇器選擇SRAM3作為輸出;
4)將緩存在SDRAM中的待解密數據寫入SRAM1;
5)硬件加密板卡的DSP往FPGA的控制寄存器寫入啟動命令,密碼算法模塊啟動工作;
6)將緩存在SDRAM中的剩余的待解密數據寫入SRAM2;
7)等待狀態寄存器0置為寫滿狀態;
8)硬件加密板卡的DSP往FPGA的總線切換控制寄存器寫入命令,使2輸入數據選擇器選擇SRAM2作為輸入,使2輸出數據選擇器選擇SRAM4作為輸出;
9)DSP從SRAM3讀出明文數據,并緩存入SDRAM;
10)將緩存在SDRAM中的剩余的待解密數據寫入SRAM1;
11)等待狀態寄存器1置為寫滿狀態;
12)硬件加密板卡的DSP往FPGA的總線切換控制寄存器寫入命令,使2輸入數據選擇器選擇SRAM1作為輸入,使2輸出數據選擇器選擇SRAM3作為輸出;
13)DSP從SRAM4讀出明文數據,并緩存入SDRAM;
14)若待解密數據未處理完畢,跳轉到第6)步;
15)若待解密數據全部處理完畢,將緩存在SDRAM中的明文數據返回給主機;
16)流程結束;
(3)硬件加密板卡上電后自啟動解密處理,包括:
1)硬件加密板卡上電;
2)硬件加密板卡的DSP從Nor Flash0加載啟動程序,使DSP運行;
3)硬件加密板卡的DSP往FPGA的控制寄存器寫入模式命令,使密碼算法模塊工作在解密模式;
4)硬件加密板卡的DSP往FPGA的總線切換控制寄存器寫入命令,使2輸入數據選擇器選擇SRAM1作為輸入,使2輸出數據選擇器選擇SRAM3作為輸出;
5)DSP將存儲在NorFlash1中的密文數據讀出并寫入SRAM1;
6)硬件加密板卡的DSP往FPGA的控制寄存器寫入啟動命令,密碼算法模塊啟動工作;
7)DSP將存儲在Nor Flash1中的剩余的密文數據讀出并寫入SRAM2;
8)等待狀態寄存器0置為寫滿狀態;
9)硬件加密板卡的DSP往FPGA的總線切換控制寄存器寫入命令,使2輸入數據選擇器選擇SRAM2作為輸入,使2輸出數據選擇器選擇SRAM4作為輸出;
10)DSP從SRAM3讀出明文數據,并緩存入SDRAM;
11)DSP將存儲在Nor Flash1中的剩余的密文數據讀出并寫入SRAM1;
12)等待狀態寄存器1置為寫滿狀態;
13)硬件加密板卡的DSP往FPGA的總線切換控制寄存器寫入命令,使2輸入數據選擇器選擇SRAM1作為輸入,使2輸出數據選擇器選擇SRAM3作為輸出;
14)DSP從SRAM4讀出明文數據,并緩存入SDRAM;
15)若待解密數據未處理完畢,跳轉到第7)步;
16)若待解密數據全部處理完畢,將緩存在SDRAM中的明文數據返回給主機;
17)流程結束。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于天津津航計算技術研究所,未經天津津航計算技術研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811274032.5/1.html,轉載請聲明來源鉆瓜專利網。





