日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

[国密算法]一文了解国密算法

發(fā)布時(shí)間:2023/12/10 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [国密算法]一文了解国密算法 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

國(guó)密算法

          • 概述
          • 1 SM1對(duì)稱密碼
          • 2 SM2橢圓曲線公鑰密碼算法
          • 3 SM3雜湊算法
          • 4 SM4對(duì)稱算法
          • 5 SM7對(duì)稱密碼
          • 6 SM9標(biāo)識(shí)密碼算法
          • 7 ZUC祖沖之算法
          • 總結(jié)

算法名稱算法類別應(yīng)用領(lǐng)域特點(diǎn)
SM1對(duì)稱密碼算法芯片分組長(zhǎng)度、密鑰長(zhǎng)度均為 128 比特
SM2公鑰密碼算法加密ECC橢圓曲線密碼機(jī)制256位 相比RSA,處理速度快,消耗更少
SM3Hash函數(shù)算法完整性安全性及效率與SHA-256相當(dāng) 壓縮函數(shù)更復(fù)雜
SM4對(duì)稱密碼算法無(wú)線局域網(wǎng)產(chǎn)品分組長(zhǎng)度、密鑰長(zhǎng)度均為 128 比特 計(jì)算輪數(shù)多
SM7對(duì)稱密碼算法非接觸式IC卡分組長(zhǎng)度、密鑰長(zhǎng)度均為 128 比特
SM9標(biāo)識(shí)密碼算法(IBE)端對(duì)端離線安全通訊加密強(qiáng)度等同于3072位密鑰的RSA加密算法
ZUC序列密碼算法移動(dòng)通信4G網(wǎng)絡(luò)流密碼
概述

眾所周知,為了保障商用密碼的安全性,國(guó)家商用密碼管理辦公室制定了一系列密碼標(biāo)準(zhǔn),包括SM1(SCB2)、SM2、SM3、SM4、SM7、SM9、祖沖之密碼算法(ZUC)那等等。
在金融領(lǐng)域目前主要使用公開(kāi)的SM2、SM3、SM4三種商用密碼算法,分別為非對(duì)稱加密算法、哈希算法和對(duì)稱加密算法。

其中SM1、SM4、SM7、祖沖之密碼(ZUC)是對(duì)稱算法;SM2、SM9是非對(duì)稱算法;SM3是哈希算法。目前,這些算法已廣泛應(yīng)用于各個(gè)領(lǐng)域中,期待有一天會(huì)有采用國(guó)密算法的區(qū)塊鏈應(yīng)用出現(xiàn)。

SM2,3,9已被納入國(guó)際標(biāo)準(zhǔn)

其中SM1、SM7算法不公開(kāi),調(diào)用該算法時(shí),需要通過(guò)加密芯片的接口進(jìn)行調(diào)用;比較少人了解這些算法,在這里對(duì)這些國(guó)密算法做簡(jiǎn)單的科普

1 SM1對(duì)稱密碼

SM1 算法是分組密碼算法,分組長(zhǎng)度為128位,密鑰長(zhǎng)度都為 128 比特,算法安全保密強(qiáng)度及相關(guān)軟硬件實(shí)現(xiàn)性能與 AES 相當(dāng),算法不公開(kāi),僅以IP核的形式存在于芯片中。

采用該算法已經(jīng)研制了系列芯片、智能IC卡、智能密碼鑰匙、加密卡、加密機(jī)等安全產(chǎn)品,廣泛應(yīng)用于電子政務(wù)、電子商務(wù)及國(guó)民經(jīng)濟(jì)的各個(gè)應(yīng)用領(lǐng)域(包括國(guó)家政務(wù)通、警務(wù)通等重要領(lǐng)域)。

2 SM2橢圓曲線公鑰密碼算法

SM2算法就是ECC橢圓曲線密碼機(jī)制,但在簽名、密鑰交換方面不同于ECDSA、ECDH等國(guó)際標(biāo)準(zhǔn),而是采取了更為安全的機(jī)制。另外,SM2推薦了一條256位的曲線作為標(biāo)準(zhǔn)曲線。
SM2標(biāo)準(zhǔn)包括總則,數(shù)字簽名算法,密鑰交換協(xié)議,公鑰加密算法四個(gè)部分,并在每個(gè)部分的附錄詳細(xì)說(shuō)明了實(shí)現(xiàn)的相關(guān)細(xì)節(jié)及示例。
SM2性能更優(yōu)更安全:密碼復(fù)雜度高、處理速度快、機(jī)器性能消耗更小

SM2算法主要考慮素域Fp和F2m上的橢圓曲線,分別介紹了這兩類域的表示,運(yùn)算,以及域上的橢圓曲線的點(diǎn)的表示,運(yùn)算和多倍點(diǎn)計(jì)算算法。然后介紹了編程語(yǔ)言中的數(shù)據(jù)轉(zhuǎn)換,包括整數(shù)和字節(jié)串,字節(jié)串和比特串,域元素和比特串,域元素和整數(shù),點(diǎn)和字節(jié)串之間的數(shù)據(jù)轉(zhuǎn)換規(guī)則。

詳細(xì)說(shuō)明了有限域上橢圓曲線的參數(shù)生成以及驗(yàn)證,橢圓曲線的參數(shù)包括有限域的選取,橢圓曲線方程參數(shù),橢圓曲線群基點(diǎn)的選取等,并給出了選取的標(biāo)準(zhǔn)以便于驗(yàn)證。最后給橢圓曲線上密鑰對(duì)的生成以及公鑰的驗(yàn)證,用戶的密鑰對(duì)為(s,sP),其中s為用戶的私鑰,sP為用戶的公鑰,由于離散對(duì)數(shù)問(wèn)題從sP難以得到s,并針對(duì)素域和二元擴(kuò)域給出了密鑰對(duì)生成細(xì)節(jié)和驗(yàn)證方式。總則中的知識(shí)也適用于SM9算法。

在總則的基礎(chǔ)上給出了數(shù)字簽名算法(包括數(shù)字簽名生成算法和驗(yàn)證算法),密鑰交換協(xié)議以及公鑰加密算法(包括加密算法和解密算法),并在每個(gè)部分給出了算法描述,算法流程和相關(guān)示例。
數(shù)字簽名算法,密鑰交換協(xié)議以及公鑰加密算法都使用了國(guó)家密管理局批準(zhǔn)的SM3密碼雜湊算法和隨機(jī)數(shù)發(fā)生器。數(shù)字簽名算法,密鑰交換協(xié)議以及公鑰加密算法根據(jù)總則來(lái)選取有限域和橢圓曲線,并生成密鑰對(duì)。
SM2算法在很多方面都優(yōu)于RSA算法(RSA發(fā)展得早應(yīng)用普遍,SM2領(lǐng)先也很自然),與RSA安全性對(duì)比如下圖

3 SM3雜湊算法

SM3安全性高:壓縮函數(shù)更復(fù)雜

Hash函數(shù)的性質(zhì)

  • 抗第一原像(單向性):對(duì)于給定的hash值h,要找到M使得H(M)=h在計(jì)算上是不可行的
  • 抗第二原像(抗弱碰撞性):對(duì)于給定的消息M1,要發(fā)現(xiàn)另一個(gè)消息M2,滿足H(M1)=H(M2)在計(jì)算上是不可行的
  • 抗強(qiáng)碰撞性:找任意一對(duì)不同消息M1、M2,使H(M1)=H(M2)在計(jì)算上是不可行的

SM3****密碼雜湊(哈希、散列)算法給出了雜湊函數(shù)算法的計(jì)算方法和計(jì)算步驟,并給出了運(yùn)算示例。此算法適用于商用密碼應(yīng)用中的數(shù)字簽名和驗(yàn)證,消息認(rèn)證碼的生成與驗(yàn)證以及隨機(jī)數(shù)的生成,可滿足多種密碼應(yīng)用的安全需求。在SM2,SM9標(biāo)準(zhǔn)中使用。

此算法對(duì)輸入長(zhǎng)度小于2的64次方的比特消息,經(jīng)過(guò)填充和迭代壓縮,生成長(zhǎng)度為256比特的雜湊值, 安全性及效率與SHA-256相當(dāng)。其中使用了異或,模,模加,移位,與,或,非運(yùn)算,由填充,迭代過(guò)程,消息擴(kuò)展和壓縮函數(shù)所構(gòu)成。具體算法及運(yùn)算示例見(jiàn)SM3標(biāo)準(zhǔn)。

4 SM4對(duì)稱算法

SM4更安全:計(jì)算輪數(shù)多、增加非線性變化

此算法是一個(gè)分組算法,用于無(wú)線局域網(wǎng)產(chǎn)品。該算法的分組長(zhǎng)度為128比特,密鑰長(zhǎng)度為128比特。加密算法與密鑰擴(kuò)展算法都采用32輪非線性迭代結(jié)構(gòu)。解密算法與加密算法的結(jié)構(gòu)相同,只是輪密鑰的使用順序相反,解密輪密鑰是加密輪密鑰的逆序。

此算法采用非線性迭代結(jié)構(gòu),每次迭代由一個(gè)輪函數(shù)給出,其中輪函數(shù)由一個(gè)非線性變換和線性變換復(fù)合而成,非線性變換由S盒所給出。其中rki為輪密鑰,合成置換T組成輪函數(shù)。輪密鑰的產(chǎn)生與上圖流程類似,由加密密鑰作為輸入生成,輪函數(shù)中的線性變換不同,還有些參數(shù)的區(qū)別。SM4算法的具體描述和示例見(jiàn)SM4標(biāo)準(zhǔn)。

5 SM7對(duì)稱密碼

SM7算法,是一種分組密碼算法,分組長(zhǎng)度為128比特,密鑰長(zhǎng)度為128比特。SM7適用于非接觸式IC卡,應(yīng)用包括身份識(shí)別類應(yīng)用(門禁卡、工作證、參賽證),票務(wù)類應(yīng)用(大型賽事門票、展會(huì)門票),支付與通卡類應(yīng)用(積分消費(fèi)卡、校園一卡通、企業(yè)一卡通等)。

6 SM9標(biāo)識(shí)密碼算法

為了降低公開(kāi)密鑰系統(tǒng)中密鑰和證書管理的復(fù)雜性,以色列科學(xué)家、RSA算法發(fā)明人之一Adi Shamir在1984年提出了標(biāo)識(shí)密碼(Identity-Based Cryptography)的理念。標(biāo)識(shí)密碼將用戶的標(biāo)識(shí)(如郵件地址、手機(jī)號(hào)碼、QQ號(hào)碼等)作為公鑰,省略了交換數(shù)字證書和公鑰過(guò)程,使得安全系統(tǒng)變得易于部署和管理,非常適合端對(duì)端離線安全通訊、云端數(shù)據(jù)加密、基于屬性加密、基于策略加密的各種場(chǎng)合。2008年標(biāo)識(shí)密碼算法正式獲得國(guó)家密碼管理局頒發(fā)的商密算法型號(hào):SM9(商密九號(hào)算法),為我國(guó)標(biāo)識(shí)密碼技術(shù)的應(yīng)用奠定了堅(jiān)實(shí)的基礎(chǔ),加密強(qiáng)度等同于3072位密鑰的RSA加密算法。

SM9算法不需要申請(qǐng)數(shù)字證書,適用于互聯(lián)網(wǎng)應(yīng)用的各種新興應(yīng)用的安全保障。如基于云技術(shù)的密碼服務(wù)、電子郵件安全、智能終端保護(hù)、物聯(lián)網(wǎng)安全、云存儲(chǔ)安全等等。這些安全應(yīng)用可采用手機(jī)號(hào)碼或郵件地址作為公鑰,實(shí)現(xiàn)數(shù)據(jù)加密、身份認(rèn)證、通話加密、通道加密等安全應(yīng)用,并具有使用方便,易于部署的特點(diǎn),從而開(kāi)啟了普及密碼算法的大門。

7 ZUC祖沖之算法

祖沖之序列密碼算法是中國(guó)自主研究的**流密碼算法,**是運(yùn)用于移動(dòng)通信4G網(wǎng)絡(luò)中的國(guó)際標(biāo)準(zhǔn)密碼算法,該算法包括祖沖之算法(ZUC)、加密算法(128-EEA3)和完整性算法(128-EIA3)三個(gè)部分。目前已有對(duì)ZUC算法的優(yōu)化實(shí)現(xiàn),有專門針對(duì)128-EEA3和128-EIA3的硬件實(shí)現(xiàn)與優(yōu)化。

總結(jié)

密碼算法作為國(guó)家戰(zhàn)略資源,比歷史上任何時(shí)候都顯得更為關(guān)鍵。在大數(shù)據(jù)和云計(jì)算的時(shí)代,關(guān)鍵信息往往通過(guò)數(shù)據(jù)挖掘技術(shù)在海量數(shù)據(jù)中獲得,所以每一個(gè)人的信息保護(hù)都非常重要。

轉(zhuǎn)載鏈接:https://m.qukuaiwang.com.cn/news/2271.html

參考鏈接:https://zhuanlan.zhihu.com/p/34618269

總結(jié)

以上是生活随笔為你收集整理的[国密算法]一文了解国密算法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。