專利名稱:數(shù)據(jù)安全保護終端的制作方法
數(shù)據(jù)安全保護終端技術領域
本發(fā)明屬于云計算技術領域,具體涉及公共云計算環(huán)境中,數(shù)據(jù)安全保護系統(tǒng)。
背景技術:
早在1983年,sunMicrosystems就提出了“網(wǎng)絡即計算機”的概念。受益分布式計算和互聯(lián)網(wǎng)的發(fā)展,人們逐漸開始關注互聯(lián)網(wǎng)閑置的存儲和計算能力,希望通過建立一個具有無限延展能力的資源池,為人們提供一個內(nèi)容更豐富,速度更快的超級計算機,這就是我們一直在討論的云。從硬件角度,云是一個多對一的概念,整個互聯(lián)網(wǎng)的資源被整合起來用于滿足個人和企業(yè)的需求,云對個人終端要求更低,可以有效地降低個人及企業(yè)的IT支出;從服務角度,云是一個一對多的概念,一個應用被分拆至多個服務器并行運算,網(wǎng)絡的無線延展性讓這種運算能力充滿吸引力。
云安全包括首先,用戶數(shù)據(jù)的私密性,保護用戶數(shù)據(jù)不被竊?。黄浯?,保護程序不被篡改,按照用戶的意圖正確執(zhí)行;第三,云架構的穩(wěn)定性,保證服務質(zhì)量。但是,由于數(shù)據(jù)的存儲和執(zhí)行不在本地進行,云平臺下的安全問題變得更加復雜。如果假設通過網(wǎng)絡傳輸數(shù)據(jù)的過程是安全的,云計算與個人電腦最大的區(qū)別就在服務終端,即需要保護客戶數(shù)據(jù)在服務終端的安全。
本發(fā)明提出了一種數(shù)據(jù)安全保護系統(tǒng),保護服務終端中的數(shù)據(jù)安全。發(fā)明內(nèi)容
本發(fā)明提供一種數(shù)據(jù)安全保護終端,包括數(shù)據(jù)私密性保護和完整性保護;其中數(shù)據(jù)私密性保護模塊采用AES算 法對片外數(shù)據(jù)和程序提供私密性保護;數(shù)據(jù)完整性保護模塊通過引入加密摘要保護數(shù)據(jù)的完整性。對分組明文進行特殊處理,并對加密過程進行充分優(yōu)化。采用MlSR產(chǎn)生摘要,通過AES加密摘要。采用本安全終端,可以大大降低緩存中數(shù)據(jù)的缺失率。
圖1為安全終端私密性保護硬件框圖。
圖2為安全終端完整性保護硬件框圖。
具體實施方式
終端常常需要面對多種安全挑戰(zhàn)。第一類攻擊假設攻擊者不能直接接觸到終端, 他們可以在終端上運行惡意代碼,通過改變程序的執(zhí)行順序,使得攻擊程序獲得系統(tǒng)權限或者其他進程的訪問權限,竊取數(shù)據(jù)甚至破壞程序的正常進行。其中常常被提及的一類攻擊稱為buffer overflow.由于各個進程以及操作系統(tǒng)共享數(shù)據(jù)棧,它們在地址上不實施隔離,buffer overflow通過訪問其他進程或操作系統(tǒng)的數(shù)據(jù)棧,并用惡意程序的地址替代其它進程的返回地址。從而改變受害程序的執(zhí)行順序。第二類攻擊方式稱作格式化字符竄攻擊。攻擊者將精心設計的字符串作為輸入交由標準輸出函數(shù)(如PrintfO)進行解析處理,就可以泄露甚至修改任何地址空間的數(shù)據(jù),達到影響程序執(zhí)行的目的。
如果控制了服務終端,攻擊者可以調(diào)用一切資源對來自客戶的數(shù)據(jù)和應用進行破壞,攻擊者甚至可以發(fā)起攻擊控制操作系統(tǒng),使用系統(tǒng)權限更改數(shù)據(jù),改變軟件執(zhí)行進程。 普遍認為惡意終端發(fā)起的攻擊不可能完全防御,但通過提供更強的安全機制,有可能大大增加攻擊的代價,保護數(shù)據(jù)安全。
本發(fā)明提出了一種安全終端。采用AES算法對片外數(shù)據(jù)和程序提供私密性保護, 并通過弓I入加密摘要保護數(shù)據(jù)的完整性。
如圖1所示,如果發(fā)生1-Cache讀缺失,1-Cache會通過連續(xù)的讀操作從片外存儲器讀取一個由AES加密過的數(shù)據(jù)塊,加密數(shù)據(jù)通過總線到達1-Cache之前,首先通過AES加解密模塊進行解密,AES密鑰由密鑰寄存器堆提供,可以通過安全指令進行修改。數(shù)據(jù)的讀操作過程完全類似,寫操作過程對于不同的寫策略操作過程有一些不同。如果采用直寫策略,寫命中情況下,更新D-Cache數(shù)據(jù)的同時,對數(shù)據(jù)進行加密,更新外圍存儲器;當發(fā)生寫缺失時,不能立即更新外圍存儲器,需要先將數(shù)據(jù)讀入緩存,修改后,重新加密后寫回外部存儲器。采用回寫策略,寫入D — Cache的數(shù)據(jù)并不需要馬上更新外圍存儲器,只有修改過的數(shù)據(jù)被替換出緩存時,才需要更新外部存儲器,引起一次數(shù)據(jù)加密操作。
假設1-Cache 和 D — Cache 得缺失率分別為 imiss-rate% 和 dmiss_rate%, load 和 store 指令出現(xiàn)的概率為1/3,在原有的系統(tǒng)中,所有缺失引起的性能損失為Cpenelty,引入私密性保護,假設每次缺失都會弓I入一次AES操作,且一次AES加密/解密需要CAE個時鐘周期, 則引入數(shù)據(jù)私密性保護。
假設缺失引起的性能損失為100個時鐘周期。一方面,系統(tǒng)的性能損失隨著Caes的降低線性降低;另一方面,性能損失隨緩存缺失率的降低而降低,但幅度越來越小。
數(shù)據(jù)私密性保護模式可以保護關鍵數(shù)據(jù)和重要算法不被攻擊者理解,卻不能防御攻擊者篡改代碼和數(shù)據(jù)。通過軟件方法實現(xiàn)的數(shù)據(jù)完整性保護主要包括文件修改跟蹤、 Hash摘要和數(shù)字簽名等方法。其中,文件修改跟蹤通過檢查文件的時間信息和修改信息,確認文件是否被非法修改,目前已有一些攻擊方法,通過修改文件的時間信息,隱藏文件的修改記錄,非法篡改程序,這一類方法存在明顯的安全漏洞。后兩種方法雖然可以提供良好的安全性,但頻繁的調(diào)用軟件進行完整性驗證會嚴重影響系統(tǒng)性能。以AES為例,通過對分組明文進行特殊處理,并對加密過程進行充分優(yōu)化,仍需要超過170個時鐘周期完成一次AES 加密操作。摘要算法和公鑰加密算法的吞吐率甚至更低。
本發(fā)明提供一種實現(xiàn)安全算法的系統(tǒng),如圖2所示,為安全終端完整性驗證硬件框圖,采用MlSR產(chǎn)生摘要,通過AES加密摘要,對指令提供數(shù)據(jù)完整保護。在發(fā)生讀缺失時,首先讀取摘要,在加密摘要的同時讀取指令,可以大大降低系統(tǒng)性能損失。對Basic Block(不包括跳轉(zhuǎn)指令的一系列連續(xù)指令)中最后一個數(shù)據(jù)塊提供完整性驗證能顯著降低完整性驗證的次數(shù),提高系統(tǒng)性能。增加了摘要緩存,通過硬件方法實現(xiàn)的安全機制對系統(tǒng)性能的影響可以進一步被降低。根據(jù)摘要與數(shù)據(jù)是否分開存儲,可以將完整性驗證分為摘要嵌入和摘要獨立兩種類型。采用摘要嵌入式的完整性保護方法,程序與摘要存儲在連續(xù)的地址空間,不嚴格區(qū)分程序和摘要的物理地址。程序執(zhí)行過程中,使用MMU管理地址, 區(qū)分數(shù)據(jù)與摘要。本發(fā)明采用數(shù)據(jù)摘要獨立的實現(xiàn)方法,僅通過硬件上的簡單映射,方便的實現(xiàn)數(shù)據(jù)和摘要的對應。同時,采用不同的地址存放數(shù)據(jù)和摘要,數(shù)據(jù)管理更清晰,更容易維護數(shù)據(jù)安全。
當發(fā)生數(shù)據(jù)缺失時,并不馬上訪問外存取數(shù)據(jù)??刂茊卧紫炔樵儽辉L問數(shù)據(jù)的摘要是否在摘要緩存(HashCache)中,如果摘要已經(jīng)在緩存中,則指令/數(shù)據(jù)緩存訪問外部存儲器取數(shù)據(jù),數(shù)據(jù)取回后使用摘要運算單元計算摘要;如果摘要緩存缺失,摘要緩存訪問外部存儲器,讀取摘要,使用解密單元解密摘要的同時,數(shù)據(jù)/指令緩存申請總線讀取數(shù)據(jù)。數(shù)據(jù)/指令返回后流水線繼續(xù)工作的同時,采用摘要計算模塊計算數(shù)據(jù)/指令塊的摘要。比較摘要計算模塊和加解密模塊送出的摘要,如果相同,說明數(shù)據(jù)/指令和摘要沒有被篡改,如果結果不同,產(chǎn)生異常,由操作系統(tǒng)內(nèi)核處理異常。
假設引入摘要Cache,當指令Cache發(fā)生讀缺失時,指令Cache會通過總線從外部存儲器讀取數(shù)據(jù)塊,摘要Cache同時從外部存儲器讀取摘要。如果指令替換出Cache,假設指令Cache和摘要Cache大小相同,且使用相同的替換算法,與指令對應的摘要會同時替換出摘要Cache,下一次訪問該指令仍需要驗證摘并沒有帶來性能的提高。因此,采用的摘要 Cache大小僅為128比特,只儲最新被使用到的摘要,同時,由于128_bit摘要對應4個數(shù)據(jù)塊,可有效減少摘要訪問次數(shù),改善系統(tǒng)性能。
本發(fā)明提供一種私密性保護、完整性保護模式,大大增加攻擊的代價,保護數(shù)據(jù)安全。
權利要求
1.一種數(shù)據(jù)安全保護終端,包括數(shù)據(jù)私密性保護模塊和完整性保護模塊,其特征在于, 數(shù)據(jù)私密性保護模塊采用AES算法對片外數(shù)據(jù)和程序提供私密性保護。
2.如權利要求1所述的數(shù)據(jù)安全保護終端,數(shù)據(jù)完整性保護模塊通過引入加密摘要保護數(shù)據(jù)的完整性。
3.如權利要求2所述的數(shù)據(jù)安全保護終端,對分組明文進行特殊處理,并對加密過程進行充分優(yōu)化。
4.如權利要求3所述的數(shù)據(jù)安全保護終端,采用MlSR產(chǎn)生摘要,通過AES加密摘要。
全文摘要
本發(fā)明提供一種數(shù)據(jù)安全保護終端,包括數(shù)據(jù)私密性保護和完整性保護;其中數(shù)據(jù)私密性保護模塊采用AES算法對片外數(shù)據(jù)和程序提供私密性保護;數(shù)據(jù)完整性保護模塊通過引入加密摘要保護數(shù)據(jù)的完整性。采用本發(fā)明的安全終端,可以大大降低緩存中數(shù)據(jù)的缺失率。
文檔編號H04L9/32GK103001772SQ201210490020
公開日2013年3月27日 申請日期2012年11月27日 優(yōu)先權日2012年11月27日
發(fā)明者宗競 申請人:江蘇樂買到網(wǎng)絡科技有限公司