[發明專利]p元域SM2橢圓曲線密鑰協商系統有效
| 申請號: | 201110107526.6 | 申請日: | 2011-04-27 |
| 公開(公告)號: | CN102761411A | 公開(公告)日: | 2012-10-31 |
| 發明(設計)人: | 徐樹民;屈善新;劉振;王紹麟;田心;劉建巍 | 申請(專利權)人: | 航天信息股份有限公司 |
| 主分類號: | H04L9/30 | 分類號: | H04L9/30;H04L9/08 |
| 代理公司: | 北京科龍寰宇知識產權代理有限責任公司 11139 | 代理人: | 孫皓晨 |
| 地址: | 100195 *** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | sm2 橢圓 曲線 密鑰 協商 系統 | ||
1.一種p元域SM2橢圓曲線密鑰協商系統,所述橢圓曲線具有基G和余因子h,G的階為n;發起方雜湊值和響應方雜湊值分別為ZA和ZB;發起方公鑰和發起方私鑰分別為PA和dA,響應方公鑰和響應方私鑰分別為PB和dB;發起方和響應方約定的會話密鑰的長度為klen;其特征在于,該系統包括:發起方子系統和響應方子系統;所述發起方子系統包括:發起方控制中心、發起方隨機數生成模塊、發起方倍點運算模塊、發起方點加模塊、發起方密鑰派生模塊;所述響應方子系統包括:響應方控制中心、響應方隨機數生成模塊、響應方倍點運算模塊、響應方點加模塊、響應方密鑰派生模塊;其中,
所述發起方控制中心用于,將rA和G作為一組倍點運算數據發送到所述發起方倍點運算模塊;將RA發送到所述響應方控制中心;根據x10=2w+[x1&(2w-1)]和x20=2w+[x2&(2w-1)]分別計算得到x10和x20;計算x10和rA的標量乘積x10·rA,根據tA=(dA+x10·rA)modn計算得到tA;判斷RB是否為所述橢圓曲線上的點;將x20和RB作為一組倍點運算數據發送到所述發起方倍點運算模塊;計算h和tA的標量乘積h·tA;將PB和[x20]RB作為一組點加運算數據發送到所述發起方點加模塊;將h·tA和(PB+[x20]RB)作為一組倍點運算數據發送到所述發起方倍點運算模塊;判斷U是否為無窮遠點;將xU、yU、ZA和ZB拼接成的比特串Z發送到所述發起方密鑰派生模塊;將發起方密鑰派生模塊返回的比特串KA作為發起方會話密鑰輸出;在判斷出RB不為所述橢圓曲線上的點、U為無窮遠點的情況之一時,輸出協商失敗的消息;
所述發起方隨機數生成模塊用于,將生成的1與(n-1)之間的隨機數rA發送到所述發起方控制中心;
所述發起方倍點運算模塊用于,對G進行rA倍點運算,得到坐標為(x1,y1)的點RA,并將RA發送到所述發起方控制中心;對RB進行x20倍點運算,將得到的[x20]RB發送到所述發起方控制中心;對(PB+[x20]RB)進行h·tA倍點運算,將得到的點U發送到所述發起方控制中心,所述點U的坐標為(xU,yU);
所述發起方點加模塊用于,對PB和[x20]RB進行點加運算,將生成的(PB+[x20]RB)發送到所述發起方控制中心;
所述發起方密鑰派生模塊用于,對比特串Z進行密鑰派生運算,將得到的長度為klen的比特串KA發送到所述發起方控制中心;
所述響應方控制中心用于,將rB和G作為一組倍點運算數據發送到所述響應方倍點運算模塊;根據x10=2w+[x1&(2w-1)]和x20=2w+[x2&(2w-1)]分別計算得到x10和x20;計算x20和rB的標量乘積x20·rB,根據tB=(dB+x20·rB)modn計算tB;判斷RA是否為所述橢圓曲線上的點;將x10和RA作為一組倍點運算數據發送到所述響應方倍點運算模塊;計算h和tB的標量乘積h·tB;將PA和[x10]RA作為一組點加運算數據發送到所述響應方點加模塊;將h·tB和(PA+[x10]RA)作為一組倍點運算數據發送到所述響應方倍點運算模塊;判斷V是否為無窮遠點;將xV、yV、ZA和ZB拼接成的比特串Z’發送到所述響應方密鑰派生模塊;將響應方密鑰派生模塊返回的比特串KB作為響應方會話密鑰輸出;將RB發送到所述發起方控制中心;在判斷出RA不為所述橢圓曲線上的點、V為無窮遠點的情況之一時,輸出協商失敗的消息;
所述響應方隨機數生成模塊用于,將生成的1與(n-1)之間的隨機數rB發送到所述響應方控制中心;
所述響應方倍點運算模塊用于,對G進行rB倍點運算,得到坐標為(x2,y2)的點RB,并將RB發送到所述響應方控制中心;對RA進行x10倍點運算,將得到的[x10]RA發送到所述響應方控制中心;對(PA+[x10]RA)進行h·tB倍點運算,將得到的點V發送到所述響應方控制中心,所述點V的坐標為(xV,yV);
所述響應方點加模塊用于,對PA和[x10]RA進行點加運算,將生成的(PA+[x10]RA)發送到所述響應方控制中心;
所述響應方密鑰派生模塊用于,對比特串Z’進行密鑰派生運算,將得到的長度為klen的比特串KB發送到所述響應方控制中心;
其中,w為參數,&為按比特邏輯與運算符,mod為求模運算符。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于航天信息股份有限公司,未經航天信息股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110107526.6/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:儲熱燃燒式發動機
- 下一篇:一種制取高純乙醇的方法





