999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于兆芯CPU的國密算法硬件加速及應用研究

2019-09-30 01:16:49薛剛汝
網絡空間安全 2019年4期

薛剛汝

摘要:伴隨著云計算、大數據等新技術應用的飛速發展,信息安全問題也愈發凸顯。密碼學算法是應對信息安全問題的核心技術和基礎支撐。針對我國的商用密碼算法,實現了一套基于CPU的硬件加速指令(GMI)。文章圍繞著GMI的特點、應用加以闡述,希望能夠開發一套靈活高效的密碼應用解決方案。

關鍵詞:信息安全;國密算法;硬件加速;GMI

中圖分類號:TP309????????? 文獻標識碼:A

1 引言

隨著互聯網、物聯網的快速發展,網絡和信息安全事件頻頻發生,因此信息安全越來越受到世界各國以及各個行業的廣泛重視。特別是在云計算、大數據等新技術應用快速崛起的時代,通過數據挖掘技術往往可以從海量數據中獲取關鍵信息,這對企業和個人的信息安全都產生了嚴重威脅。

密碼學算法是信息安全的核心技術和基礎支撐,可以說是整個信息安全的靈魂所在。在密碼學領域,國家也在積極發展獨立自主的密碼體系,其中應用范圍最為廣泛的國產商用密碼(簡稱國密算法)就是我國密碼體系中的重要一環。

經過多年的發展,現在支持國密算法的設備,從小到TPM/TCM的密碼芯片,到兼顧成本與性能的加密卡,再到專用的加密服務器,可謂種類繁多。但是,這些設備依然存在著性能欠缺、使用不夠靈活或者成本較高等不足。

為了探索國密算法應用的新途徑,創新應用的新模式,上海兆芯集成電路有限公司(簡稱兆芯)實現了基于CPU的安全、靈活、高效的國密算法加速指令—GMI(Guo Mi Instruction)。本文旨在介紹兆芯GMI指令的模式、特點,并探討一些基于GMI的可能應用場景。

2 GMI 和相關概念

國密算法是指由國家密碼管理局頒布的一系列密碼學算法標準,包括SM1、SM2、SM3、SM4、SM7、SM9以及祖沖之密碼算法(ZUC)等一系列的密碼算法。其中,SM1、SM4、SM7以及ZUC屬于對稱加密算法,SM2、 SM9屬于非對稱密碼算法,而SM3是密碼雜湊算法,即常見的哈希算法。

目前,支持國密算法的TPM/TCM等芯片類設備,往往受限于成本而性能較低;性能較高的加密卡需要高性能的計算機來配合,給用戶帶來了不小的成本壓力。與此同時,經過幾代產品的發展,兆芯CPU的性能有了大幅的提升。為提高密碼學相關應用的性能,充分利用CPU的計算能力,兆芯提出了使用CPU指令來實現國密算法的構想,由此設計實現了GMI。

GMI是依據已經公開的國密算法標準而自主設計實現的一組硬件加速指令集。目前,已經實現了兩條CPU指令,分別用于加速國密算法SM3和SM4。其中,SM3常用于計算消息摘要、驗簽數字簽名、生成與驗證消息認證碼以及產生隨機數,可滿足多種密碼應用的安全需求。SM4是分組密碼算法,適用于對稱加解密等密碼應用場景。根據使用場景的不同,SM4又可以有很多的操作模式,GMI支持常見的ECB、CBC、CTR、OFB、CFB五種模式。

概括來說,得益于CPU的高性能,GMI可以為用戶帶來許多好處。GMI具有三項特性。

易用性。在傳統的國密算法使用方式中,比較常見的就是通過軟件編程的方式來實現相應的密碼算法,通常這都需要進行大量、復雜的編程。以OpenSSL為例,SM3、SM4的代碼量大概在200~300行左右,但是在將這些密碼算法進行硬件指令化后,原本需要使用數百行復雜編碼才可以實現的算法,現在只需要簡單地調用一條硬件指令即可完成相應的操作。這明顯地簡化了操作的復雜度,為用戶帶來了極大的便利性。GMI SM3/4的具體指令代碼如表1所示。

同時,對GMI指令進行了封裝,提供了適合上層應用開發使用的API和庫,便于需要開發上層應用的用戶使用。

安全性。無論是在運行之前,還是在運行過程中, 軟件最常遇到的攻擊就是被非法篡改。使用軟件編程實現的密碼算法也同樣會受到這類威脅。然而,硬件則不會存在被篡改的風險, 因此在將密碼算法硬件固化后, 也就消除了密碼算法被非法篡改的風險,留給攻擊者的攻擊面也相應減小。在密碼算法實現硬件化后,不僅用于實現算法的代碼量會變少,而且調用、使用密碼算法的代碼量也會隨著減少,這就意味著在程序中引入Bug的幾率也會隨之大大降低。這些都大大增強了用戶程序的健壯性。

高效性。將密碼算法硬件化,省去了大量的軟件調用等系統開銷,可以使密碼算法應用獲得極大的性能提升。在將GMI集成到OpenSSL后,借助于OpenSSL的Speed 測試命令,測試了使用GMI和未使用GMI兩種方式下的國密算法的性能(單線程),對比情況如圖1和圖2所示。

該測試分別對不同長度(16~8192字節)的數據塊,進行了SM3摘要計算和SM4-ECB模式的加密計算。從測試結果的對比可以看出,使用了GMI硬件加速指令后, SM3和SM4的性能較之軟件實現都有了巨大提升,特別是在處理大數據塊時,提升尤其顯著。

3 GMI應用

3.1 SM3的應用

實現了SM3的GMI可用于校驗文件的完整性,確保使用的文件或軟件是沒有被攻擊者篡改過的。現在比較常見的文件校驗算法有奇偶校驗和CRC校驗,但是這兩種校驗都不具有較強的抗數據篡改的能力,對于超過一定位數的篡改就無力校驗了。然而,由于哈希算法的特點,SM3則可以校驗出任意長度的篡改,而且由于其產生的數據摘要長度要更長,因此更難以發生碰撞,也就更加安全。因此,用戶只需要調用GMI的SM3指令計算所用到的文件/軟件的摘要值,與文件自帶的校驗值進行比較,就可以檢驗出文件是否被篡改過,從而保證了所用文件/軟件的完整性。

此外,由于在計算信息摘要時, 用戶所關心的主要是消息的完整性,而不是機密性,因此在使用性能較低的安全芯片或者加密卡時,可以將計算摘要值的工作交給GMI的SM3指令來完成,以獲取更高的系統性能。

3.2 SM4的應用

與其他對稱加解密算法一樣,SM4同樣可以用在靜態數據加密、傳輸數據加密以及應用層的數據加密。

3.2.1 靜態數據加密

全磁盤加密是對靜態數據加密的一個典型應用。顧名思義,全磁盤加密就是對磁盤上的所有數據都進行加密存儲。在存儲著個人隱私或商業機密等敏感信息的計算機設備丟失或者需要維修時,如果使用了全磁盤加密的保護,就可以避免信息泄露的風險。特別是對于企業用戶來說,在設備更新時,如何處理舊硬盤上的敏感數據是一個令人棘手的問題。借助于全磁盤加密,只需要將全磁盤加密的加解密密鑰銷毀,即可達到銷毀舊磁盤上敏感數據的目的。同時,借助于GMI的加速特性,可以讓全磁盤加密具有更高的性能,大大改善了用戶的使用體驗。此外,在安全可靠的要求下,有些行業會對加解密算法有要求,比如要求使用SM4算法來加解密系統中的數據。在這種情況下,就可以使用GMI的SM4指令替代傳統的純軟件實現,不僅能防止算法被篡改,還能提高運算速度,同時還可以滿足政策法規的合規要求, 可謂一舉三得。

3.2.2 傳輸數據加密

另一個對稱加解密的常用領域是對傳輸中的數據加以保護。比如在使用HTTPS訪問網站時,在完成最初的密鑰交換后,客戶與Web Server之間就使用對稱加密算法來保護雙方的數據傳輸。另外,在云計算領域,保存在云環境中的數據或涉及個人隱私,或涉及企業商業機密,用戶對這些數據的機密性格外關心。在這種情況下,就需要在將數據加密后再通過網絡傳輸到云中。這樣,數據不僅可以確保云環境中數據的機密性,還可以確保數據在網絡傳輸過程中的機密性。此時,如果能夠在瀏覽器或者云的客戶端支持GMI SM4硬件加速指令,可以滿足用戶對數據傳輸的安全性要求。

3.2.3 應用層數據加密

在應用層的數據加密中,數據庫是一個典型的應用場景。眾所周知,常見的數據庫都支持一種稱為透明數據加密(TDE)的安全特性。這種特性可以將數據庫的內容整體加密。其中所用到的三個加密中有兩個屬于對稱加密:服務主密鑰(Service Master Key)和數據加密密鑰(Data Encryption Key)。這些都可以利用到GMI SM4的硬件加密指令。

3.3 結合密鑰保護的GMI應用

在各種GMI的應用里,還有一個影響安全性的重要因素—密鑰本身的安全性。在一些受管制的行業,比如銀行、醫療健康以及電子商務都需要使用行業認可的密鑰管理設備(比如HSM, Hardware Security Module)來保護用戶的密碼、密鑰等敏感信息。

密鑰是保證信息安全的基石,密鑰本身的保密性也必須要受到保護,因此要確保密鑰絕對不能以明文的形式出現在內存中。為了確保GMI所使用的密鑰的安全,在CPU內部實現一段專用空間來存放這些密鑰。這里設計了一些只有CPU才可以訪問的私有MSR用于保存密鑰,并設計了一種新的SM4的調用模式,使得SM4指令可以直接從指定的MSR中找到所需要的Key,而無需再從內存中取回。

盡管CPU內的存儲空間有限,但是利用CPU的私鑰(CPU Private Key,CPK),將一些臨時不用的密鑰使用CPK加密后保存在內存或NVRAM中,下次使用時再通過GMI Driver從內存/NVRAM中取回,既保證了密鑰的安全性,又實現了密鑰存儲空間的擴展性。具體的流程分為幾個步驟。

(1)在應用幾個部署階段

a)?用戶在外部的密鑰服務器上生成并存儲一個對稱加密密鑰( Symmetric Wrapping Key,SWK),使用這個對稱加密密鑰加密用戶的私鑰(Private Key),生成一個WPK(Wrapped Private Key),該WPK跟應用 image存放在一起。

b)?使用密鑰導入協議將SWK從外部的密鑰服務器安全的部署到用戶應用程序將要運行的主機,并使用主機CPU的私鑰(CPK)加密保存在硬盤或者SPI Flash等NVRAM空間。這一步是為了確保操作環境的安全,可以利用兆芯的TCT可信計算技術,并配合內存保護技術DPR(DMA Protected Region,DPR)/PMR(Protected Memory Region,PMR)來對這一部署過程加以保護。

(2)在用戶應用程序啟動時,CPU會根據應用程序的ID從NVRAM空間找到對應的經CPK加密過的SWK—CPK(SWK),并加載到CPU的Key MSR中,在調用SM3指令驗證其完整性后,再使用CPK將其解密,得到SWK,同樣保存在Key MSR中。此時,應用程序會收到與該Key MSR對應的動態Handle。

(3)在應用程序運行時,應用程序會使用該Handle以及用戶的WPK作為參數調用GMI Driver。通過這兩個參數就可以得到對應的SWK,進而調用GMI的SM4指令就可以對WPK解密,從而得到用戶的私鑰以繼續完成相關的操作。最后,在調用結束后CPU會自動清除相關的Key MSR,以清除用戶私鑰, 防止私鑰泄露。

4 未來工作

未來還會繼續豐富GMI的指令集,比如實現對SM2/SM9等國密算法的支持。同時,也會不斷完善現有的GMI指令,比如完善SM4對GCM/XTS等模式的支持,使其具有更高的性能,適應更廣泛的應用領域。另外,為了方便用戶使用,將GMI逐步適配諸如OpenSSL的主流密碼應用平臺,積極推廣國密算法的應用。

5 結束語

本文以信息安全中的關鍵技術——密碼算法的硬件加速實現為主線,介紹了兆芯基于CPU的GMI國密算法硬件加速指令的模式、特點以及應用,并特別描述了一種結合密鑰保護的GMI應用場景,希望能幫助用戶開發出更加靈活高效的安全應用解決方案。最后,介紹了兆芯GMI的未來的工作,希望能夠支持更多的國密算法指令和更豐富的運算模式,為用戶提供更高性能、更高安全性的產品。

參考文獻

[1]?Hari Tadepalli. Intel QuickAssist Technology with Intel Key Protection Technology in Intel Server Platforms Based on Intel Xeon Processor Scalable Family[EB/OL]. https://www.intel.com/content/www/us/en/architecture-and-technology/key-protection-technology-white-paper.html. 2017.

[2]?鄧宇珊.探究云計算之完全問題[J].網絡空間安全, 2018(9):78~81.

[3]?徐樹民,等.國產算法安全芯片與市場應用[J].信息安全與通信保密,2012(2):36~38.

[4]?李芳芳.國產密碼行業應用的初步研究和探索[J].金融科技時,2016(9):28~33.

[5]?蔡成杭.支持國產密碼算法的OpenSSL設計實現及應用[J].信息安全研究,2018(2):115~132.

[6]?王良田.數據存儲及碼流數據傳輸中的國密算法安全應用[J].電子世界,2019(1):161~163

主站蜘蛛池模板: 青青国产成人免费精品视频| 欧美国产在线精品17p| 精品国产免费观看| 91福利片| 亚洲国产天堂久久综合226114| 亚洲一区二区三区在线视频| a亚洲天堂| 亚洲精品免费网站| 亚洲精品中文字幕午夜| 91久久偷偷做嫩草影院精品| 99热国产在线精品99| 色综合天天操| 亚亚洲乱码一二三四区| 国产精品久久久久久久伊一| 日韩精品一区二区三区免费在线观看| 国产综合精品日本亚洲777| 欧美国产日韩一区二区三区精品影视| 手机在线国产精品| 久久精品最新免费国产成人| 亚洲国内精品自在自线官| 欧美国产在线精品17p| 国产91视频免费观看| 在线精品自拍| 不卡网亚洲无码| 国产成人凹凸视频在线| 成年A级毛片| 欧美精品伊人久久| 欧美日韩高清| 精品人妻AV区| 在线无码av一区二区三区| 国产在线观看99| 亚洲成aⅴ人片在线影院八| 伊人色天堂| 欧美日韩精品在线播放| 再看日本中文字幕在线观看| 亚洲精品无码人妻无码| 国产福利微拍精品一区二区| 激情无码字幕综合| 国产v精品成人免费视频71pao | 亚洲欧美日本国产专区一区| 亚洲欧美日韩天堂| 国产微拍一区二区三区四区| 久久精品亚洲中文字幕乱码| 国产第一福利影院| 久久香蕉国产线| av性天堂网| 久久久久无码精品国产免费| 国产91无毒不卡在线观看| 精品一区二区无码av| 制服丝袜亚洲| 五月婷婷综合在线视频| 欧美成人国产| 国产成人精品一区二区秒拍1o| 丰满人妻一区二区三区视频| 久久99久久无码毛片一区二区 | 亚洲综合色婷婷| 国产欧美日韩另类精彩视频| 婷婷综合缴情亚洲五月伊| 国产午夜人做人免费视频中文| 国产成人精品高清在线| 亚洲精品片911| 国产一区二区三区夜色| 爽爽影院十八禁在线观看| 亚洲乱码视频| 草草影院国产第一页| 色天天综合| 久热这里只有精品6| 91精品国产91欠久久久久| 国产人妖视频一区在线观看| 日本不卡在线播放| 欧美一区二区三区国产精品| 欧美另类图片视频无弹跳第一页| 午夜不卡福利| AV不卡无码免费一区二区三区| 亚洲AV无码不卡无码| 91国内外精品自在线播放| 免费国产小视频在线观看| 中国国产高清免费AV片| 色哟哟色院91精品网站| yjizz国产在线视频网| 久久婷婷综合色一区二区| 中文字幕亚洲第一|