[發明專利]一種抗密鑰加載模板攻擊的防護方法有效
| 申請號: | 201410427432.0 | 申請日: | 2014-08-27 |
| 公開(公告)號: | CN104410491A | 公開(公告)日: | 2015-03-11 |
| 發明(設計)人: | 陳波濤;王喆;王飛宇;王赟 | 申請(專利權)人: | 北京中電華大電子設計有限責任公司 |
| 主分類號: | H04L9/32 | 分類號: | H04L9/32;H04L9/06 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 100102 北京市朝陽*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 密鑰 加載 模板 攻擊 防護 方法 | ||
技術領域
本發明提出涉及一種抗密鑰加載模板攻擊的防護方法,適用于安全芯片設計領域。
背景技術
自從Paul?Kocher開創性地提出功耗攻擊以來,側信道攻擊作為一種實用的攻擊方法,對相當多的密碼設備表現出了極高的攻擊效率。許多側信道攻擊方法被相繼提出,包括簡單功耗攻擊(SPA)、簡單電磁攻擊(EMA)等。功耗和電磁信息中泄露的密鑰信息相對于噪聲比較微弱,這時可以利用DPA在內的統計技術實施攻擊,于是出現了差分功耗攻擊(DPA)、差分電磁攻擊(DEMA)等。DPA的統計分析依賴于對同一密鑰、不同操作數據的大量功耗曲線樣本進行。然而諸多研究表明,由于DPA等側信道攻擊方法沒有充分利用每個樣本里面所包含的全部有用信息,從而需要采集大量樣本。如果攻擊者只需要采集較少的功耗曲線樣本就能展開有效攻擊,必然能提高攻擊效率,模板攻擊正是這樣一種側信道攻擊方法。
模板攻擊方法最早由Rohatgi等人在2002年的密碼硬件與嵌入式系統國際會議(Cryptographic?Hardware?and?Embedded?Systems.CHES2002)上提出。模板攻擊的關鍵是攻擊者能夠利用與被攻擊密碼設備相同的實驗設備進行編程和實驗,從而構建出相關側信道信號的模板信息,如果定義在功耗上即是特定操作和特定密鑰的在特定時間點的均值功耗以及精確的多元噪聲模型。完成模板構建后,攻擊者利用構建的模板用假設檢驗和最大似然估計等方法對實際的功耗曲線進行匹配,匹配度最高的即是正確的密鑰。從信息論的角度,模板攻擊是曲線樣本數量有限情況下最強有力的攻擊方式。
在模板攻擊技術成熟之前,主流的側信道攻擊主要是SPA/DPA/CPA,這些攻擊主要針對密鑰運算過程展開。針對這些攻擊采用的常用的防護手段如掩碼等,只解決密碼運算過程中的側信道安全,并沒有解決密碼運算之外的密鑰加載過程安全。模板攻擊技術不單單能夠針對密碼運算過程,包括對密碼運算之前的密鑰加載也能進行攻擊。智能卡等安全芯片的密鑰加載是指CPU從存儲器中將密鑰讀取到芯片內部的安全算法模塊或安全算法協處理器的密鑰寄存器中,然后可以啟動安全算法運算。針對這個密鑰加載過程的模板攻擊就是利用了不同密鑰數據從存儲器讀出或寫入到安全算法內部寄存器的功耗差異構建模板,然后利用此模板對實際芯片密鑰加載過程的功耗曲線進行匹配,有可能直接獲取實際芯片的密鑰信息,或獲取密鑰的漢明重量信息,以降低窮盡搜索難度從而獲取密鑰。
發明內容
在智能卡等安全芯片內部的安全算法模塊中,密鑰的位數往往超過CPU的數據位寬,因此從存儲器往安全算法協處理器加載密鑰通常需要多次加載。例如,如果某安全算法協處理器的密鑰是1024位,而該CPU的數據位寬是32位,則該CPU需要執行32次數據搬運操作才能將密鑰完整地加載到密鑰算法模塊的寄存器中。攻擊者進行模板構建時,必須要清楚地知道當前是加載的哪一段密鑰,利用實際功耗曲線進行模板匹配時,也必須用對應功耗曲線與對應模板進行匹配。如果在密鑰加載時破壞密鑰加載的固定順序,攻擊者在構建模板時就無法知曉當前是在構建哪段密鑰加載的模板,利用實際功耗曲線進行匹配時,也無從知曉當前采用的密鑰加載功耗曲線應該與哪個已構建模板在進行匹配。在這種條件下,必然大大增加匹配出正確的密鑰的難度。
本發明公開的一種抵抗對密鑰加載進行模板攻擊的防護方法,當芯片從存儲器或其它寄存器往密碼算法模塊或密碼算法協處理器加載密鑰時,將需要加載的密鑰分為N段,芯片分M次將密鑰取出按照隨機的順序寫入到密碼算法模塊或密碼算法協處理器中,M≥N。當M=N時,芯片每次按照隨機的順序加載密鑰的一個段;當M>N時,芯片隨機加載N段密鑰的過程中,隨機從存儲器中讀出M-N個無效段,加載到芯片內部的不影響運算結果的其他非密鑰寄存器中。
打亂分段密鑰加載順序可以但不限于采用從芯片內部獲取隨機數,根據隨機數的值決定當前加載順序。
對密鑰分段加載可以但不限于將密鑰按照CPU位寬進行分段,例如32位CPU可以將128位密鑰分為4段進行加載。也可以將128位密鑰分為更多的子段進行加載,例如分8段,每段16位。劃分的段數越多,模板的構建和匹配就越困難,安全性越高。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京中電華大電子設計有限責任公司,未經北京中電華大電子設計有限責任公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410427432.0/2.html,轉載請聲明來源鉆瓜專利網。





