DSP技術(shù)在PC加密卡中的應(yīng)用
摘要:隨著網(wǎng)絡(luò)的發(fā)展,相關(guān)的安全與保密已成為人們越來越關(guān)注的話題,針對市場需求與目前軟件和硬件實現(xiàn)網(wǎng)絡(luò)與信息安全的區(qū)別,為了使PC加密卡達到低成本、高效率的目的,設(shè)計了一種采用DSP技術(shù)的PC加密卡,通過對該卡原理上的分析,提出了一種運用TMS320C54x系列DSP芯片與PCI9054接口芯片共同實現(xiàn)網(wǎng)絡(luò)加密卡的設(shè)計方案。
關(guān)鍵詞:網(wǎng)絡(luò)安全;加密算法;DSP;PCI總線
0 引言
隨著Internet/Intranet的迅速發(fā)展和普及,網(wǎng)絡(luò)帶來的直接和潛在的危險也在逐步增強,就如何確保網(wǎng)絡(luò)信息的安全已成為人們越來越關(guān)注的焦點,個人和企業(yè)對業(yè)務(wù)的安全需求日益迫切,首當其沖的是軍隊信息在網(wǎng)絡(luò)上的失泄密問題已造成的嚴重后果將直接關(guān)系到國家的安全與穩(wěn)定。所以對各種安全防護措施與保密技術(shù)的要求越來越高,而密碼技術(shù)作為一項有效解決網(wǎng)絡(luò)安全問題的手段得到了越來越廣泛的應(yīng)用。如果網(wǎng)絡(luò)上傳輸?shù)男畔⒑拖到y(tǒng)信息能夠以加密的方式處理,將在很大程度上提高網(wǎng)絡(luò)和信息的安全。然而,由于個人或一般辦公室使用的都是低成本的PC電腦很難配備價格高昂的加密機,使用安全軟件來實現(xiàn)加密和解密,雖然價格實惠,但對系統(tǒng)性能有極大的影響,也容易被黑客通過技術(shù)手段突破,此外,在安全程度與強度上也足與專門設(shè)計的硬件加密能力不能相比擬的。所以廣大的網(wǎng)民尤其是經(jīng)常處理涉密事件的單位與個人急需一種低成本、高性能的加密和解密的方案。在本文中,基于TI公司研發(fā)的高性能DSP如果應(yīng)用在PC加密卡中,不失為一種有效的保密方法。
作為一種有效的網(wǎng)絡(luò)安全解決方案,加密卡應(yīng)當具有的功能如下:
(1)使用密碼算法對數(shù)據(jù)進行加密和解密,密碼算法應(yīng)當多種多樣以便更換、定期升級解決硬件難以變動的缺點,減少用戶投資。
(2)應(yīng)保護存儲證書、密鑰以及重要的數(shù)據(jù),主密鑰及重要的密鑰應(yīng)受到額外的保護,這種保護強度應(yīng)超過其他通常的軟件。
(3)與主機、外圍設(shè)備和系統(tǒng)軟件有一個良好的接口,使用戶還有研發(fā)升級軟件的空間。
這些功能決定了PC加密卡的設(shè)計和目標的基本結(jié)構(gòu)。
1 PC加密卡的基本結(jié)構(gòu)
本文介紹的PC加密卡主要由DSP芯片、計算機總線接口(PCI)、板上的FLASH ROM、隨機數(shù)生成模塊和外部設(shè)備接口等組成。TI全新DSP TM S320C6x系列功能強,速度非???,但價格過高,不適合應(yīng)用于一般的加密和解密。中等性能的TMS320C54x系列,成本低,產(chǎn)品成熟,是一個更好的選擇。在本文中的PC加密卡以TMS320C54x DSP為主CPU來實現(xiàn)加密算法的運算,很大程度上減輕了計算機CPU的計算負擔,提高整體運算速度。又因為系列DSP產(chǎn)品具有HPI接口,因此可以很容易地實現(xiàn)DSP與PCI總線之問的連接。所以該加密卡就需要在PCI總線平臺上開發(fā)實現(xiàn)。
為了減少產(chǎn)品的開發(fā)時間和成本,以及獲得更好的數(shù)據(jù)傳輸性能,通常使用通用PCI接口芯片??紤]到TMS320C54x 3.3 V低電壓的運行環(huán)境與未來DSP的發(fā)展方向,PLX公司的PCI9054芯片是最好的選擇。其兩者的外圍信號都是3.3 V電壓。
另外采用FLASH ROM作為外部儲存介質(zhì),存儲所有的加密算法、主控程序和密鑰管理程序,構(gòu)成與DSP之間的密碼算法運算和重要數(shù)據(jù)的存儲平臺。具體使用AMD公司512 KB的29LV040,選擇此規(guī)格的原因:第一符合3.3 V的運行環(huán)境;第二除了存儲程序外,依據(jù)容量還可存放數(shù)千個1 024 b的公鑰或密鑰,滿足了更多通信系統(tǒng)安全的需要。圖1是加密卡的基本框圖。
2 PC加密卡的設(shè)計
雖然現(xiàn)在PC機的CPU運行速度越來越快,但加密和解密是一個極為復雜的過程,需要大量的科學計算霸占CPU的時間,這樣會使CPU運行負荷,從而導致計算機系統(tǒng)的性能下降,其他方面工作的處理能力也會變得極為緩慢。而PC加密卡是一種專為加密和解密設(shè)計的硬件,配備專業(yè)的DSP信號處理芯片來專一地進行加解密的科學計算,分擔了CPU的處理運算強度,提高了加解密的速度和PC的性能。C54x系列的DSP芯片目前擁有主頻高達500 MHz或以上超快速度,計算能力也可以實現(xiàn)200 MIPS的水平,并且有望進一步提高,使用C54x系列產(chǎn)品的另一個優(yōu)勢是它們采用同一套指令集,這就意味著有很好的軟件兼容性,無需反復更新。
加密卡能夠成功實現(xiàn)就依賴與上述各模塊之間的協(xié)調(diào)工作。當系統(tǒng)啟動時,DSP與FLASH ROM之間構(gòu)成密碼算法運算和重要數(shù)據(jù)存儲的平臺,DSP從FLASH ROM中調(diào)入預先設(shè)定好的加密算法和主控程序,并接收主機送來的指令和數(shù)據(jù),由主控程序調(diào)入相應(yīng)的加密算法程序,對數(shù)據(jù)進行加密或解密處理后,最終的數(shù)據(jù)由主機通過PCI接口芯片讀出。
3 加密卡的功能描述
本PC加密卡所實現(xiàn)的主要功能有:
數(shù)據(jù)加密解密功能 這是PC加密卡所具有的最基本的功能。加密卡目前封裝了DES,AES等對稱加密算法,RSA等非對稱公鑰算法,以及MD5等Hash算法。DES是使用最廣泛的密鑰系統(tǒng),特別是用在保護金融數(shù)據(jù)的安全中,該加密算法具有應(yīng)用廣、速度快的優(yōu)點。AES作為新一代的數(shù)據(jù)加密標準,匯聚了強安全性、高性能、高效率、易用和靈活等優(yōu)點,具有良好的應(yīng)用前景。而MD5作為Hash算法,特點在于它是一種單向算法,用戶可以通過Hash算法對目標信息生成一段特定長度的惟一的Hash值,卻不能通過這個Hash值重新獲得目標信。因此Hash算法常用在不可還原的密碼存儲、信息完整性校驗等。
數(shù)字簽名與認證功能 主要利用RSA算法模塊來實現(xiàn)。它是第一個既能用于數(shù)據(jù)加密也能用于數(shù)字簽名的算法,易于理解和操作,也很流行。RSA是目前最有影響力的公鑰加密算法,能夠抵抗到目前為止已知的所有密碼攻擊,已被ISO推薦為公鑰數(shù)據(jù)加密標準。經(jīng)歷了各種攻擊,至今未被完全攻破。該算法特別適合在商業(yè)和金融業(yè)中的應(yīng)用,為滿足多方面的要求,在卡中實現(xiàn)了簽名和認證功能。
密鑰管理功能 密鑰是加密與解密的核心,密鑰的產(chǎn)生、保存、分配、修改與刪除必須有一個完善的管理體系。而加密卡中的隨機數(shù)生成模塊便是完成這項任務(wù)的關(guān)鍵。該模塊可以利用物理噪聲源產(chǎn)生一個真正的隨機數(shù),這就保證了一切密鑰都是在加密卡內(nèi)部完成的,并且都是通過加密卡加密后才與外部進行交換。外界軟件和系統(tǒng)只能得到其中的公鑰,而無法得到私鑰的任何信息,保證密鑰的安全。
評論