專利名稱:公鑰密碼體制中的外包計算方法、設備和服務器的制作方法
技術領域:
本發明涉及密碼學相關技術領域,特別是涉及公鑰密碼體制中的外包計算方法、設備和服務器。
背景技術:
橢圓曲線密碼體制(ECC)作為一種公鑰密碼體制,其基本原理是在一個預先定義
的橢圓曲線上面執行點乘運算
權利要求
1.一種公鑰密碼體制中的外包計算方法,其特征在于,包括 構造隨機參數W ; 選擇隨機數k ; 將w和k進行線性運算,得到k’ ; 向服務器發送將k’與G進行第一運算的請求,其中G為所述公鑰密碼體制中的生成元; 獲得服務器將k’與G進行第一運算的計算結果Q'; 將w與G進行第一運算,得到w與G進行第一運算的計算結果Qw ; 將Q’和Qw進行第二運算,得到Q’和Qw進行第二運算的計算結果Q,所述第二運算使得所述k與G進行第一運算的計算結果與所述Q相等,所述Q為所述公鑰密碼體制中的外包計算的結果。
2.根據權利要求1所述的公鑰密碼體制中的外包計算方法,其特征在于 所述第一運算為乘法運算,所述Q' = k’G,所述Qw = wG ; 所述第二運算為所述線性運算的逆運算,所述將Q’和Qw進行第二運算為將Q’和Qw進行所述線性運算的逆運算。
3.根據權利要求2所述的公鑰密碼體制中的外包計算方法,其特征在于,所述線性運算為減法運算,所述將w和k進行線性運算具體為k' = k-w; 所述線性運算的逆運算為加法運算,所述將Q’和Qw進行所述線性運算的逆運算具體為Q = Q' +Qw。
4.根據權利要求2所述的公鑰密碼體制中的外包計算方法,其特征在于,所述線性運算為加法運算,所述將w和k進行線性運算具體為k' = k+w; 所述線性運算的逆運算為減法運算,所述將Q’和Qw進行所述線性運算的逆運算具體為Q = Q' _QW。
5.根據權利要求1所述的公鑰密碼體制中的外包計算方法,其特征在于,所述參數w的一部分比特位的比特值為O,另外一部分的比特位的比特值為1,且比特值為I的比特位隨機分布。
6.根據權利要求5所述的公鑰密碼體制中的外包計算方法,其特征在于,所述參數w的構造方法如下 隨機選擇m個整數a e {O, 2,…,n-1}, i = I, 2,…,m,以!Ti作為權值構造一個η比特的參數ν = 。
7.根據權利要求1所述的公鑰密碼體制中的外包計算方法,其特征在于,所述將w與G進行第一運算,得到w與G進行第一運算的計算結果Qw,具體包括 預先計算并存儲包括有多個輔助參數的輔助參數對應列表; 從所述輔助參數對應列表中,選擇所有與參數w中比特值為I的比特位的位置具有對應關系的輔助參數,所述對應關系為輔助參數由Z與G進行第一運算得到,所述r與所述比特位的位置相等; 對所有選擇的輔助參數進行第三運算得到Qw,所述第三運算使得所述w與G進行第一運算的計算結果與所述Qw相等。
8.根據權利要求7所述的公鑰密碼體制中的外包計算方法,其特征在于 所述第一運算為乘法運算,所述第三運算為加法運算; 所述將w與G進行第一運算,得到w與G進行第一運算的計算結果Qw,具體包括 預先計算并存儲包括有多個輔助參數的輔助參數對應列表; 從所述輔助參數對應列表中,選擇所有與參數w中比特值為I的比特位的位置具有對應關系的輔助參數,所述對應關系為輔助參數為2 ,所述r與所述比特位的位置相等;對所有選擇的輔助參數進行加法運算得到Qw。
9.根據權利要求1所述的公鑰密碼體制中的外包計算方法,其特征在于,所述將w和k進行線性運算包括從多個線性運算中隨機選擇一個線性運算作為當前線性運算,將w和k進行所述當前線性運算。
10.根據權利要求1所述的公鑰密碼體制中的外包計算方法,其特征在于 所述構造隨機參數W具體包括 每間隔預設使用次數,重新構造隨機參數w并保存; 所述將w與G進行第一運算,得到w與G進行第一運算的計算結果Qw具體包括 如果重新構造隨機參數《,則將w與G進行第一運算,得到w與G進行第一運算的計算結果Qw并保存。
11.根據權利要求f10任一項所述的公鑰密碼體制中的外包計算方法,其特征在于,所述公鑰密碼體制為橢圓曲線密碼體制。
12.—種公鑰密碼體制中的外包計算設備,其特征在于,包括 參數構造模塊,用于構造隨機參數w ; 隨機數選擇模塊,用于選擇隨機數k ; 線性運算模塊,用于將w和k進行線性運算,得到k’ ; 計算請求發送模塊,用于向服務器發送將k’與G進行第一運算的請求,其中G為所述公鑰密碼體制中的生成元;設備計算結果獲取模塊,用于獲得服務器將k’與G進行第一運算的計算結果Q';參數運算模塊,用于將w與G進行第一運算,得到w與G進行第一運算的計算結果Qw ;設備結果運算模塊,用于將Q’和Qw進行第二運算,得到Q’和%進行第二運算的計算結果Q,所述第二運算使得所述k與G進行第一運算的計算結果與所述Q相等,所述Q為所述公鑰密碼體制中的外包計算的結果。
13.根據權利要求12所述的公鑰密碼體制中的外包計算設備,其特征在于 所述第一運算為乘法運算,所述Q' = k’G,所述Qw = wG ; 所述第二運算為所述線性運算的逆運算,所述設備結果運算模塊,具體用于將9’和Qw進行所述線性運算的逆運算。
14.根據權利要求13所述的公鑰密碼體制中的外包計算設備,其特征在于,所述線性運算為減法運算,所述線性運算模塊,具體用于計算k' = k-w; 所述線性運算的逆運算為加法運算,所述將Q’和Qw進行所述線性運算的逆運算具體為Q = Q' +Qw。
15.根據權利要求13所述的公鑰密碼體制中的外包計算設備,其特征在于,所述線性運算為加法運算,所述將w和k進行線性運算具體為k' = k+w;所述線性運算的逆運算為減法運算,所述將Q’和Qw進行所述線性運算的逆運算具體為Q = Q' -Qw。
16.根據權利要求12所述的公鑰密碼體制中的外包計算方法,其特征在于,所述參數w的一部分比特位的比特值為O,另外一部分的比特位的比特值為1,且比特值為I的比特位隨機分布。
17.根據權利要求16所述的公鑰密碼體制中的外包計算設備,其特征在于,所述參數構造模塊,具體用于 隨機選擇m個整數a e {O, 2,···, n-1}, i = I, 2, ---,m,以!Ti作為權值構造一個η比特的參數
18.根據權利要求12所述的公鑰密碼體制中的外包計算設備,其特征在于,所述參數運算模塊,具體用于 預先計算并存儲包括有多個輔助參數的輔助參數對應列表; 從所述輔助參數對應列表中,選擇所有與參數w中比特值為I的比特位的位置具有對應關系的輔助參數,所述對應關系為輔助參數由Z與G進行第一運算得到,所述r與所述比特位的位置相等; 對所有選擇的輔助參數進行第三運算得到Qw,所述第三運算使得所述w與G進行第一運算的計算結果與所述Qw相等。
19.根據權利要求18所述的公鑰密碼體制中的外包計算設備,其特征在于 所述第一運算為乘法運算,所述第三運算為加法運算; 所述參數運算模塊,具體用于 預先計算并存儲包括有多個輔助參數的輔助參數對應列表; 從所述輔助參數對應列表中,選擇所有與參數w中比特值為I的比特位的位置具有對應關系的輔助參數,所述對應關系為輔助參數為2 ,所述r與所述比特位的位置相等; 對所有選擇的輔助參數進行加法運算得到Qw。
20.根據權利要求12所述的公鑰密碼體制中的外包計算設備,其特征在于,線性運算模塊,具體用于從多個線性運算中隨機選擇一個線性運算作為當前線性運算,將w和k進行所述當前線性運算。
21.根據權利要求12所述的公鑰密碼體制中的外包計算設備,其特征在于 所述參數構造模塊,具體用于 每間隔預設使用次數,重新構造隨機參數w并保存; 所述參數運算模塊,具體用于 如果重新構造隨機參數《,則將w與G進行第一運算,得到k’與G進行第一運算的計算結果Qw并保存。
22.根據權利要求12 21任一項所述的公鑰密碼體制中的外包計算設備,其特征在于,所述公鑰密碼體制為橢圓曲線密碼體制。
23.—種公鑰密碼體制中的外包計算方法,其特征在于,包括 響應設備發送的將k’與G進行第一運算的請求,將k’與G進行第一運算得到計算結果Q’,其中G為所述公鑰密碼體制中的生成元,k’為設備所發送的隨機數,由設備構造隨機參數W和選擇隨機數k,并將W和k進行線性運算所得到; 向設備返回Q’,所述Q’用于設備將Q’和Qw進行第二運算,得到Q’和Qw進行第二運算的計算結果Q,所述第二運算使得所述k與G進行第一運算的計算結果與所述Q相等,所述Qw為設備將w與G進行第一運算得到的計算結果,所述Q為所述公鑰密碼體制中的外包計算的結果。
24.根據權利要求23所述的公鑰密碼體制中的外包計算方法,其特征在于,響應設備發送的將k’與G進行第一運算的請求,將k’與G進行第一運算得到計算結果Q’具體包括 將所述k’展開為多個分段; 向多個運算服務器發送所述分段與G進行第一運算的請求; 從多個運算服務器中獲取所述分段與G進行第一運算的運算結果; 將多個運算結果進行第四運算的計算結果作為Q’,所述第四運算使得所述k’與G進行第一運算的計算結果與所述Q’相等。
25.根據權利要求24所述的公鑰密碼體制中的外包計算方法,其特征在于,所述將所述k’展開為多個分段,具體包括用權T將k’展開為多個分段,其中V為大于或等于O的整數。
26.根據權利要求23所述的公鑰密碼體制中的外包計算方法,其特征在于 所述第一運算為乘法,所述Q' = k’G,所述Qw = wG ; 所述第二運算為所述線性運算的逆運算,所述將Q’和Qw進行第二運算為將Q’和Qw進行所述線性運算的逆運算。
27.根據權利要求24所述的公鑰密碼體制中的外包計算方法,其特征在于 所述第一運算為乘法,所述V =k’G; 所述第四運算為加法,所述將多個運算結果進行第四運算的計算結果作為Q’具體包括 將多個運算結果進行加法運算的計算結果作為Q’。
28.根據權利要求23 27任一項所述的公鑰密碼體制中的外包計算方法,其特征在于,所述公鑰密碼體制為橢圓曲線密碼體制。
29.—種公鑰密碼體制中的外包計算的服務器,其特征在于,包括 服務器運算模塊,響應設備發送的將k’與G進行第一運算的請求,將k’與G進行第一運算得到計算結果Q’,其中G為所述公鑰密碼體制中的生成元,k’為設備所發送的隨機數,由設備構造隨機參數w和選擇隨機數k,并將w和k進行線性運算所得到; 結果發送模塊,用于向設備返回Q’,所述Q’用于設備將QlPQw進行第二運算,得到Q’和Qw進行第二運算的計算結果Q,所述第二運算使得所述k與G進行第一運算的計算結果與所述Q相等,所述Qw為設備將w與G進行第一運算得到的計算結果,所述Q為所述公鑰密碼體制中的外包計算的結果。
30.根據權利要求29所述的公鑰密碼體制中的外包計算的服務器,其特征在于,所述分發模塊包括 分段子模塊,用于將所述k’展開為多個分段; 分發子模塊,向多個運算服務器發送所述分段與G進行第一運算的請求;服務器計算結果獲取子模塊,從多個運算服務器中獲取所述分段與G進行第一運算的運算結果; 服務器合并結果子模塊,將多個運算結果進行第四運算的計算結果作為Q’,所述第四運算使得所述k’與G進行第一運算的計算結果與所述Q’相等。
31.根據權利要求30所述的公鑰密碼體制中的外包計算的服務器,其特征在于,分段子模塊,具體用于用權T將k’展開為多個分段,其中V為大于或等于O的整數。
32.根據權利要求29所述的公鑰密碼體制中的外包計算的服務器,其特征在于 所述第一運算為乘法,所述V =k/ G,所述Qw = wG; 所述第二運算為所述線性運算的逆運算,所述將Q’和Qw進行第二運算為將Q’和Qw進行所述線性運算的逆運算。
33.根據權利要求30所述的公鑰密碼體制中的外包計算的服務器,其特征在于 所述第一運算為乘法,所述V =k’G; 所述第四運算為加法,所述服務器合并結果子模塊,具體用于將多個運算結果進行加法運算的計算結果作為Q’。
34.根據權利要求29 33任一項所述的公鑰密碼體制中的外包計算的服務器,其特征在于,所述公鑰密碼體制為橢圓曲線密碼體制。
全文摘要
本發明涉及密碼學相關技術領域,特別是涉及公鑰密碼體制中的外包計算方法、設備和服務器。所述外包計算方法,包括構造隨機參數w;選擇隨機數k;將w和k進行線性運算,得到k’;向服務器發送將k’與G進行第一運算的請求,其中G為所述公鑰密碼體制中的生成元;獲得服務器將k’與G進行第一運算的計算結果Q′;將w與G進行第一運算,得到w與G進行第一運算的計算結果Qw;將Q’和Qw進行第二運算,得到Q’和Qw進行第二運算的計算結果Q。本發明在滿足數字簽名安全性的條件下,實現了以外包計算的方式將公鑰密碼體制中的復雜運算安全交付給云計算服務提供商。
文檔編號H04L9/30GK103067165SQ20131001824
公開日2013年4月24日 申請日期2013年1月17日 優先權日2013年1月17日
發明者張永強, 劉, 梁文暉 申請人:廣東數字證書認證中心有限公司