專利名稱:一種安全算法保護(hù)方法
技術(shù)領(lǐng)域:
本發(fā)明主要應(yīng)用于PKI智能卡、USB Key等信息安全領(lǐng)域。
背景技術(shù):
隨著信息科技的發(fā)展,信息安全保護(hù)變得日益重要,安全性需求滲透到電子系統(tǒng)設(shè)計(jì)的 各個(gè)環(huán)節(jié)。由于通過軟件/固件設(shè)計(jì)已經(jīng)很難保證全面的系統(tǒng)安全性,這就需要借助硬件來獲 得更有效的安全體系。
目前,在安全算法地保護(hù)主要存在以下幾個(gè)方面的技術(shù)問題需要解決
1. 安全傳輸在將密鑰或明文下載到芯片的傳輸過程中,存在信息泄漏或監(jiān)聽的隱患。
目前流行的軟件攻擊就是使用微處理器的通用通訊接口,尋求安全協(xié)議、加密算法 以及它們物理實(shí)現(xiàn)的弱點(diǎn)。
2. 安全執(zhí)行安全執(zhí)行包括保證執(zhí)行的完整性和保證代碼和數(shù)據(jù)的保密性。多種類型 的威脅會有損系統(tǒng)的完整性或保密性。例如,通過邏輯分析器來觀察處理器與存儲 器之間的通信量?;蛘呃酶`聽技術(shù),采用高時(shí)域精度的方法,分析電源接口在微 處理器正常工作過程中產(chǎn)生的各種電磁輻射的模擬特征。
發(fā)明內(nèi)容
本發(fā)明的目的在于解決上述的兩個(gè)問題,提供一種軟件技術(shù)與硬件設(shè)計(jì)相結(jié)合的方法。 在實(shí)現(xiàn)加密功能的基礎(chǔ)上,增加物理保護(hù)措施,保護(hù)信息在存儲和傳輸過程中免受惡意的篡 改或泄漏,使得系統(tǒng)更加安全可靠。
為了實(shí)現(xiàn)上述目的,采用了以下的技術(shù)方案在傳輸過程中,將要下載的安全數(shù)據(jù)通過 軟件進(jìn)行加密后傳輸?shù)叫酒亩丝?,保證數(shù)據(jù)在芯片外的環(huán)境中不會被監(jiān)測到真實(shí)的信息。 數(shù)據(jù)在芯片內(nèi)部先進(jìn)行解密,然后將解密后的信息通過加擾寫入到物理存儲空間,保證了外 界對存儲器進(jìn)行攻擊時(shí)的安全。在執(zhí)行過程中,用戶只能對安全區(qū)中的數(shù)據(jù)進(jìn)行調(diào)用,沒有 讀和寫的權(quán)限。
本文提到的安全算法保護(hù)方法有以下幾個(gè)特點(diǎn)
1. 安全算法下載到芯片存儲器過程的安全保護(hù)。由于下載的算法是經(jīng)過加密的,通過 外部10接口傳輸?shù)臄?shù)據(jù)雖然能夠被惡意監(jiān)聽,但即使獲得也是無意義的,這就保證 了安全算法數(shù)據(jù)傳輸過程的安全性。
2. 安全算法存儲的安全保護(hù)。下載程序把安全算法寫入存儲器的時(shí)候,是經(jīng)過加擾處
理的,即使通過外部物理探測能夠獲取存儲器內(nèi)容,也是無效的,因?yàn)橹苯幼x出的 數(shù)據(jù)并不是真實(shí)的安全算法代碼數(shù)據(jù),這就保證了安全算法存儲過程的安全性。 3.安全算法使用過程的安全保護(hù)。在用戶開發(fā)完COS后,需要調(diào)用安全算法,從硬件 上這是允許的,但是安全算法存放區(qū)域是受到讀寫保護(hù)的,因此普通用戶是無法獲 得安全算法真實(shí)內(nèi)容的。這就保證了用戶可以通過軟件程序使用安全算法,但無法 通過軟件程序讀出其內(nèi)容。
圖l系統(tǒng)功能流程圖
具體實(shí)施例方式
結(jié)合附圖,對本發(fā)明進(jìn)一步詳細(xì)描述如圖1所示,安全算法保護(hù)主要是從軟件層面和 硬件兩個(gè)角度進(jìn)行。
1. 在算法的下載過程中,通過設(shè)置安全區(qū)窗口寄存器,定義安全區(qū)的起始地址和結(jié)束 地址,以及安全區(qū)保護(hù)屬性,然后加密后的算法庫通過下載程序進(jìn)行下載。芯片接 收到外部密文數(shù)據(jù)后,通過軟件程序進(jìn)行解密獲得真實(shí)安全算法數(shù)據(jù),然后再下載 到內(nèi)部存儲器中,其中存儲器地址是進(jìn)行加擾處理的,即使外部惡意用戶能夠物理 探測獲取程序存儲器內(nèi)容也將是無效的。因此這種方法無論是外部監(jiān)聽還是物理探 測都很難獲得真實(shí)的數(shù)據(jù),除非惡意用戶破解加解密算法和硬件的加擾邏輯。
2. 在用戶需要調(diào)用安全算法的時(shí)候,可以直接根據(jù)算法入口地址進(jìn)行調(diào)用,硬件會根 據(jù)當(dāng)前用戶權(quán)限決定是否能夠訪問這塊安全算法區(qū)域,如果權(quán)限許可則執(zhí)行安全算 法流程,否則會給出異常中斷。如果惡意用戶企圖讀取安全算法,由于這塊安全區(qū) 是受到讀寫保護(hù)的,將對給出異常中斷。例如,在管理員模式,對安全算法區(qū)是具 有讀寫、執(zhí)行權(quán)限的,可以在這種工作模式進(jìn)行安全算法的下載和讀出校驗(yàn);在普 通用戶模式,對安全算法區(qū)僅有執(zhí)行權(quán)限,無讀取權(quán)限,因此無法獲得安全算法的 真實(shí)內(nèi)容,起到保護(hù)作用。
權(quán)利要求
1.一種安全算法保護(hù)方法,其特征在于包括以下步驟將密鑰或明文下載到芯片的傳輸過程;把密鑰或明文寫入存儲器的存儲過程;用戶對密鑰或明文數(shù)據(jù)進(jìn)行調(diào)用的執(zhí)行過程。
2. 根據(jù)權(quán)利要求1所述的一種安全算法保護(hù)方法,其特征在于傳輸過程中通過下載工具, 將要下載的安全算法庫進(jìn)行加密后下載到芯片,下載過程進(jìn)行傳輸?shù)臄?shù)據(jù)為密文,保證 數(shù)據(jù)在傳輸過程中的安全。
3. 根據(jù)權(quán)利要求1所述的一種安全算法保護(hù)方法,其特征在于存儲過程中安全算法庫在下 載時(shí)對數(shù)據(jù)進(jìn)行內(nèi)部解密后,再經(jīng)過地址加擾,最后寫入到物理存儲空間,存放安全算 法的物理存儲空間地址可以通過寄存器進(jìn)行配置,保證數(shù)據(jù)在存儲過程過程中的安全。
4. 根據(jù)權(quán)利要求1所述的一種安全算法保護(hù)方法,其特征在于在執(zhí)行過程中,用戶在調(diào)用 安全區(qū)中的算法庫時(shí),硬件會自動判斷當(dāng)前用戶對算法庫存儲區(qū)的訪問權(quán)限,安全算法 存放區(qū)域是受到讀寫保護(hù)的,只有執(zhí)行權(quán)限,無讀寫權(quán)限,因此通過這種方法可以有效 地保證安全算法在使用過程中的安全性,防止數(shù)據(jù)被惡意讀出泄露。
全文摘要
本發(fā)明公開了一種安全算法保護(hù)的方法,主要應(yīng)用于信息安全領(lǐng)域,如USBKey、PKI智能卡等。通過采用高級的數(shù)據(jù)流加解密和存儲器安全保護(hù)技術(shù),實(shí)現(xiàn)對安全算法從數(shù)據(jù)傳輸?shù)秸{(diào)用執(zhí)行等環(huán)節(jié)的多級保護(hù),從而防止安全算法中知識產(chǎn)權(quán)或者保密數(shù)據(jù)的泄露。
文檔編號G06K19/073GK101364249SQ200710119979
公開日2009年2月11日 申請日期2007年8月6日 優(yōu)先權(quán)日2007年8月6日
發(fā)明者坤 李, 李自然, 娜 盛 申請人:北京中電華大電子設(shè)計(jì)有限責(zé)任公司