此篇是我筆記目錄里的安全保護技術(七),前篇可見:
隱私計算安全保護技術(一):我的隱私計算學習——混淆電路-CSDN博客
隱私計算安全保護技術(二):我的隱私計算學習——秘密共享-CSDN博客
隱私計算安全保護技術(三):我的隱私計算學習——門限簽名-CSDN博客
隱私計算安全保護技術(四):我的隱私計算學習——同態加密-CSDN博客
隱私計算安全保護技術(五):我的隱私計算學習——零知識證明-CSDN博客
隱私計算安全保護技術(六):我的隱私計算學習——差分隱私-CSDN博客
筆記內容來自多本書籍、學術資料、白皮書及ChatGPT等工具,經由自己閱讀后整理而成。
(七)國密SM2和國密SM4算法
為了保障商用密碼的安全性,國家商用密碼管理辦公室制定了一系列密碼標準,除了 SM2,還有SM1(SCB2)、SM3、SM4、SM7、SM9、祖沖之密碼算法(ZUC)等。
-
國密SM2
國密SM2 算法是非對稱加密算法,其加密和解密使用的是兩個不同的密鑰,分別為公開密鑰和私有密鑰。它的安全性依賴于自身較為復雜的算法,而這使得它加解密的速度遠低于對稱加解密。
SM2 算法主要包括 SM2-1 橢圓數字簽名算法、SM2-2 橢圓曲線密鑰交換協議和 SM2-3 橢圓曲線公鑰加密算法,三者分別用于實現數字簽名、密鑰協商和數據加密等功能。國密SM2 算法常用在數字合同的簽名中。為了防止抵賴,現實世界中的合同簽名通常會有簽名蓋章這個流程,簽了名、蓋了章就有了不可抵賴的證據。
-
國密SM4
國密SM4 算法的密鑰足夠長,與高級加密標準(Advanced Encryption Standard,AES)算法具有相同的密鑰長度分組128 bit,且在安全性上高于三重數據加密(Triple Data Encryption,3DES)算法。它的加密算法以 32 bit 為單位,采用非線性迭代結構進行加密運算。
國密SM4 算法是一種對稱加密算法,其加密與解密使用同一個密鑰,但在不同階段對密鑰的使用方式有所不同。在國密SM4 算法中,解密和加密算法的結構相同,但解密算法使用逆序的輪密鑰來進行。例如,加密時密鑰的使用順序為(rk0,rk1,…,rki),但解密時密鑰使用順序變為(rki,…,rk1,rk0)。
國密SM4 算法常用于政府系統的數據傳輸加密,比如當前端向后臺傳參數的時候就可以使用此算法。對參數的數據進行加密,然后后臺對加密的數據進行解密再存儲到數據庫中,從而保證數據傳輸過程中信息不會泄露。
10月份新開了一個GitHub賬號,里面已放了一些密碼學,隱私計算電子書資料了,之后會整理一些我做過的、或是我覺得不錯的論文復現、代碼項目也放上去,歡迎一起交流!Ataraxia-github (Ataraxia-github) / Repositories · GitHub?