[發明專利]一種在操作系統中進行密碼運算的方法和系統有效
| 申請號: | 201811525467.2 | 申請日: | 2018-12-13 |
| 公開(公告)號: | CN109522736B | 公開(公告)日: | 2021-12-10 |
| 發明(設計)人: | 林璟鏘;蔡權偉;荊繼武;李文強;李從午;王建民;王瓊霄 | 申請(專利權)人: | 中國科學院信息工程研究所 |
| 主分類號: | G06F21/60 | 分類號: | G06F21/60;G06F21/71;G06F12/02;H04L9/06 |
| 代理公司: | 北京君尚知識產權代理有限公司 11200 | 代理人: | 邱曉鋒 |
| 地址: | 100093 *** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 操作系統 進行 密碼 運算 方法 系統 | ||
本發明公開一種在操作系統中進行密碼運算的方法和系統。本方法在操作系統初始化可信環境下生成保護密鑰,將保護密鑰存儲在操作系統保留的特權寄存器中。用戶密鑰可由用戶輸入的數據或密碼運算內核模塊的內部隨機數生成,生成后由保護密鑰加密后導出。系統向用戶提供密碼運算內核模塊,當用戶需要使用用戶密鑰進行密碼運算時,用戶態調用程序向密碼運算內核模塊發起請求,提供計算源數據以及密文的用戶密鑰,保護密鑰在密碼運算內核模塊中對用戶密鑰進行解密,然后使用用戶密鑰完成用戶請求的密碼運算。本發明可防御用戶態的各種攻擊程序實施的內存信息泄漏攻擊,保護密鑰以及用戶密鑰可抵抗Meltdown和Spectre攻擊。
技術領域
本發明屬于計算機技術、信息安全技術領域,具體涉及一種在操作系統中進行密碼運算的方法和系統。
背景技術
密碼技術常用來保護應用系統中的敏感數據,網上交易、電子郵件以及遠程登錄等服務的安全性都依賴密碼技術的保護,一旦密碼運算過程中敏感信息的安全性得不到保障,攻擊者就可以解密網絡上傳輸的信息,甚至冒充原用戶的身份進行詐騙等犯罪行為,用戶將遭受極大的損失。因此,保護密碼運算中敏感數據非常重要。
近年來與密碼技術相關的攻擊越來越多,攻擊的手法也越來越新奇,從軟件層到硬件層,攻擊手段層出不窮,攻擊方法防不勝防。
攻擊者可以利用密碼軟件自身的安全漏洞來實施內存信息泄漏攻擊,以OpenSSLHeartbleed為例,它是軟件層面上近年來著名的密碼軟件引擎的安全漏洞。其原理是OpenSSL軟件代碼在處理Heartbeat消息時,沒有檢查所接收Heartbeat消息的非法輸入,然后在回復Heartbeat響應時就會從內存空間中復制隨機地址的、最長可達64K字節的數據,其中就會有密鑰數據。引起OpenSSL Heartbleed漏洞的軟件代碼并不是實現密碼運算的代碼,而是TLS協議處理的代碼,但是OpenSSL將所有功能都實現在同一進程空間中,所以,有漏洞的TLS協議處理代碼也可以順利地訪問到密鑰數據。此外,密碼軟件系統的安全漏洞是普遍存在的,難以通過消除某一種特定的安全漏洞來徹底消除隱患。如果提出一種在安全漏洞存在的情況下仍然能夠保證密碼運算中敏感數據不受內存信息泄漏攻擊威脅的方法和系統,就能極大地提高密碼軟件系統的安全性。
除了應用系統本身的安全漏洞,Meltdown和Spectre是近期曝出的CPU微架構的漏洞,它們同樣對密碼運算中的敏感數據安全造成威脅。
Meltdown漏洞是CPU硬件的安全問題,在各種CPU中廣泛存在,其基本原理如下。攻擊者進程在自己的代碼中包含訪問非法內存地址的攻擊代碼,由于CPU的亂序執行,該攻擊代碼會先被CPU執行、影響Cache狀態,且Cache狀態與被非法訪問的、被攻擊內存地址中的敏感信息直接相關;然后CPU進行權限檢查、發現內存越界訪問后放棄執行結果。但是,CPU放棄執行結果的時候,Cache狀態沒有變化,攻擊者就可以進一步利用Cache-based側信道讀取該敏感信息。
Spectre漏洞源自于CPU硬件的分支預測,同樣也影響到大量的CPU。在CPU中的不同任務共用分支預測器,攻擊者進程執行大量代碼來使得分支預測器進入自己預期的狀態。然后,CPU時間片切換到被攻擊進程,被攻擊進程會按照分支預測器的狀態繼續執行,訪問被攻擊進程中的敏感數據、影響Cache狀態;然后CPU進行預測檢查、發現預測錯誤后放棄執行結果。同樣,CPU放棄執行結果的時候,Cache狀態沒有變化,攻擊者就可以進一步利用Cache-based側信道讀取該敏感信息。
現有方案對Meltdown攻擊的防御方式主要是在操作系統維護兩個頁表,一個頁表給用戶程序使用,一個給操作系統內核使用,并且確保用戶程序所使用的頁表不會映射高優先級的頁面,即不會映射操作系統內核的頁面。兩個頁表的切換,會引起TLB刷新,進而降低內存的訪問速度。如果某些應用場景需要大量的內核和用戶空間切換(兩個頁表之間的切換),會造成較高的性能開銷,目前該方案的平均性能開銷大約是20%。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國科學院信息工程研究所,未經中國科學院信息工程研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201811525467.2/2.html,轉載請聲明來源鉆瓜專利網。





