999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于國密算法的證書簽名值驗證的分析

2019-05-24 14:11:40華嬌王婭男
電腦知識與技術 2019年4期

華嬌 王婭男

摘要:在國家已經大力推行性能更優(yōu)更安全的SM2公鑰密碼算法的背景下,基于國密算法的證書也將越來越廣泛地被采用,則證書的合法性需要驗證,因此本文主要研究了如何驗證SM2證書的簽名值。通過研究SM2證書的結構,獲取簽名原文數(shù)據(jù)和簽名數(shù)據(jù),使用基于SM3摘要算法的SM2算法實現(xiàn)驗證簽名值。文中選取了示例證書進行驗證,且驗證結果通過。

關鍵詞:國密算法;數(shù)字簽名;根證書;橢圓曲線

中圖分類號:TP393 文獻標識碼:A 文章編號:1009-3044(2019)04-0034-02

1 引言

隨著計算機技術及密碼技術的飛速發(fā)展,1024位RSA算法這一目前常用的算法已經面臨嚴重的安全威脅,因此2010年12月17日國家密碼管理部門經過研究,決定采用SM2橢圓曲線公鑰密碼算法來替換RSA算法。SM2算法相較于RSA算法來說,密碼復雜度更高、處理速度更快、機器性能消耗更小,整體來說性能更優(yōu)更安全。

目前來說,大多數(shù)情況下常使用的X509證書仍是基于RSA算法的,但既然國家已經在大力推行國密算法,未來的各種基于PBOC3.0的IC卡也都是支持國密算法的,那基于國密算法的證書也將越來越廣泛地被采用,因此本文研究一下如何驗證SM2國密證書的合法性。

2 SM2證書介紹

SM2證書與RSA等其他數(shù)字證書相同點有:均使用ASN.1編碼;數(shù)據(jù)格式均使用通用的TLV(Tag Length Value)形式(T為類型標識符,L為長度值標識符,V代表實際數(shù)據(jù)。數(shù)字證書中的所有項都有對應的類型。完整的證書數(shù)據(jù)是一個TLV,而 V由多個TLV組合而成);均包含證書版本、序列號、頒發(fā)者、使用者主體信息、使用者公鑰、有效期、證書擴展項等內容;均以二進制或Base64格式存放。

SM2證書與RSA證書不同的是SM2證書的公鑰算法是使用ECC算法的Oid標識(1.2.840.10045.2.1),公鑰參數(shù)使用SM2國密算法的Oid標識(1.2.156.10197.1.301)。

3 橢圓曲線算法原理

橢圓曲線是指在射影平面上滿足齊次方程Weierstrass方程的所有點的集合,( Weierstrass方程即:Y2Z+a1XYZ+a3YZ2=X3+a2X2Z+a4XZ2+a6Z3),并且橢圓曲線上的每個點都是非奇異(或光滑)的,在數(shù)學中,非奇異或光滑的指曲線上任意一點的偏導數(shù)不能同時都為0。下圖左為一個橢圓曲線的示例;而用于密碼學中的橢圓曲線與一般橢圓曲線不同的是它是離散的點,是不連續(xù)的,因此它需要定義在只由有限個元素組成的有限域上。下圖右為例。

橢圓加密算法是建立在橢圓曲線離散對數(shù)問題這一數(shù)學難題之上的密碼體制。所謂橢圓曲線離散對數(shù)問題即在橢圓曲線上給定兩個點K和G,若使K=kG,求整數(shù)k;這相對于給定橢圓曲線上的一個點G,并選取一個整數(shù)k,求解橢圓曲線上的另一個點K=kG來說是一個難題。在K=kG中,橢圓曲線上的點K為公鑰(這個點在OpenSSL里面是用結構體EC_Point來表示),整數(shù)k(實際上是一個大整數(shù))則為私鑰。

利用橢圓曲線進行加密通信的過程如下圖所示:

1)接收方選取橢圓曲線Ep(a,b)上的一點G作為基點并選擇一個私有密鑰k,生成公開密鑰K=kG,將Ep(a,b)和點K,G一起傳給發(fā)送方。

2)發(fā)送方收到橢圓曲線信息后將待傳輸?shù)拿魑木幋a到曲線上的一點M,產生一個隨機整數(shù)r,計算點C1=M+rK;C2=rG,并將C1、C2傳給接收方。

3)接收方收到信息后計算M=C1-kC2,再解碼M得到的就是明文。

如果有其他用戶看到這個加密通信過程中,那么其他用戶只能看到Ep(a,b)、K、G、C1、C2,而并不能得到明文信息,因為想要通過K、G 求k 或通過C2、G求r 都是相對困難的。

因此橢圓加密算法與一般非對稱密鑰體系的驗簽方法對比除了需要私鑰與公鑰以外,還需要私鑰與公鑰對應的橢圓曲線,因為簽名和驗簽的過程中用到涉及橢圓曲線得多倍點的乘法。所以僅僅知道公鑰和私鑰是不能調用OpenSSL自帶的簽名和驗簽API來實現(xiàn)橢圓加密算法的簽名驗證的,還需要知道對應的橢圓曲線。

4 簽名值驗證

驗證證書的合法性主要是解析證書、驗證證書的有效期、驗證頒發(fā)機構根證書、驗證CRL吊銷狀態(tài)以及使用目的等。本文主要研究證書中簽名數(shù)據(jù)的有效性驗證。前面已經了解了SM2證書的結構,那么可以根據(jù)ASN.1語法和對象標識符來獲取相應數(shù)據(jù),證書的第一個數(shù)據(jù)塊是證書的實際內容,即為簽名數(shù)據(jù)原文;第二個數(shù)據(jù)塊是證書使用的簽名算法,SM2證書配套的簽名算法是基于SM3摘要算法的SM2簽名算法,算法Oid標識為1.2.156.10197.1.501;證書的最后一個數(shù)據(jù)塊就是證書的簽名數(shù)據(jù),簽名數(shù)據(jù)由兩個BigInteger大數(shù)組成,再使用Der編碼存放。一般來說,證書的簽名數(shù)據(jù)都是其上級根證書私鑰簽名的,故需要使用上級根證書公鑰進行驗證,而頂級根證書的簽名數(shù)據(jù)是自簽名的,故需要使用自身的證書公鑰進行驗證。

本文選取了樣例證書進行了驗證,首先解析TLV結構獲取證書的簽名原文數(shù)據(jù)和簽名值數(shù)據(jù),其中簽名值數(shù)據(jù)為封裝的ECC簽名數(shù)據(jù)塊,需要解析后取出兩個大整數(shù),即曲線上點的X、Y坐標,如下圖中選中的數(shù)據(jù)即為簽名值數(shù)據(jù):

驗證簽名第一步需要組建數(shù)據(jù)ZA并計算其HASH值A:

ZA=用戶ID的長度+用戶ID+橢圓曲線公鑰密碼算法推薦曲線參數(shù)a+橢圓曲線公鑰密碼算法推薦曲線參數(shù)b+橢圓曲線公鑰密碼算法推薦曲線參數(shù)Gx+橢圓曲線公鑰密碼算法推薦曲線參數(shù)Gy+公鑰X+公鑰Y;

HashA=SM3摘要算法(ZA);

第二步,上面的SM3結果加上證書實際內容數(shù)據(jù)M,再進行SM3計算得到HASH值B:

HashB=SM3摘要算法(HashA + M);

最后使用公鑰驗簽。

其中,曲線參數(shù)使用的國密推薦256位曲線參數(shù),具體值如下:

5 結論

按照上述驗證方法驗證了示例證書的簽名值、上級根證書的簽名值以及頂極根證書的自簽名值,均驗證通過。

正確的驗證SM2證書的合法性有利于國密算法的推廣使用,則在應用中的秘鑰生成速度和加解密速度均能達到更優(yōu)。

參考文獻:

[1] DayThinking. ECC算法原理的認識.https://blog.csdn.net/sszgg2006/article/details/41945163,2014.

[2] jonllen. SM2國密算法證書解析.(1998-08-16).[1998-10-04].http://www.cajcd.edu.cn/pub/wml.txt/980810-2.html,

[3] 方娜. 基于橢圓曲線的電子簽章系統(tǒng)的研究與應用[D]. 貴州大學, 2007.

【通聯(lián)編輯:唐一東】

主站蜘蛛池模板: 久久亚洲精少妇毛片午夜无码 | a级毛片毛片免费观看久潮| 四虎免费视频网站| 国产成熟女人性满足视频| 激情综合网址| 九色91在线视频| 欧美一区二区啪啪| 四虎免费视频网站| 婷婷六月综合网| 全部免费毛片免费播放| 日韩国产亚洲一区二区在线观看| 欧美另类视频一区二区三区| 国产在线自揄拍揄视频网站| 国产成人永久免费视频| 久久国产免费观看| 国产精品久久自在自线观看| 澳门av无码| 国产高清免费午夜在线视频| 亚洲精品久综合蜜| 久久人人97超碰人人澡爱香蕉| 狠狠做深爱婷婷综合一区| 乱系列中文字幕在线视频| 狠狠色婷婷丁香综合久久韩国 | 国产va在线观看免费| 亚洲高清国产拍精品26u| 老司国产精品视频91| 911亚洲精品| 九九热视频精品在线| 国产欧美精品一区aⅴ影院| 99精品视频九九精品| 免费一级α片在线观看| 国产精品白浆在线播放| 久久熟女AV| 免费看美女自慰的网站| 丁香婷婷激情网| 日韩不卡高清视频| 欧美性猛交xxxx乱大交极品| 免费在线a视频| 丝袜美女被出水视频一区| 亚洲精品制服丝袜二区| 9啪在线视频| 国产一二三区在线| 欧美日韩91| 激情综合网激情综合| 日本免费福利视频| 亚洲中久无码永久在线观看软件| 欧美亚洲国产日韩电影在线| 亚洲男人的天堂视频| 一级毛片不卡片免费观看| 国产精品亚欧美一区二区| 亚洲av日韩综合一区尤物| 亚洲无码视频一区二区三区| 国产一区亚洲一区| 国产伦精品一区二区三区视频优播| 自拍偷拍欧美| 国产精品制服| 中文字幕在线看| 国产va在线观看| 免费无码又爽又黄又刺激网站| 91年精品国产福利线观看久久| 看国产一级毛片| 无套av在线| 亚洲中文字幕97久久精品少妇| 五月婷婷综合色| 久996视频精品免费观看| 真实国产乱子伦高清| 深爱婷婷激情网| 亚洲美女一区二区三区| 99re在线免费视频| 色呦呦手机在线精品| 亚洲综合香蕉| 毛片在线播放网址| 色婷婷在线影院| 红杏AV在线无码| 国产高清在线丝袜精品一区| 88av在线| 亚洲无码高清免费视频亚洲| 五月天综合网亚洲综合天堂网| 国产免费福利网站| 久久中文无码精品| 久久久久中文字幕精品视频| 四虎永久在线视频|