System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請涉及分布式簽名,具體而言,涉及一種分布式簽名方法、系統、設備、介質及程序產品。
技術介紹
1、為了提升簽名的可信性和簽名過程的安全性,分布式簽名技術是一種常用的做法。
2、目前,分布式簽名方案還存在一些尚未克服的缺陷,例如,一些分布式簽名方案由于加解密算法或驗證交互過程復雜度高,導致簽名過程效率低下;一些方案通過簡化算法或驗證交互過程來提高簽名效率,但是這樣往往會降低簽名的可信性和安全性,另外還增加了隱私數據遭到泄露的風險。
技術實現思路
1、本申請實施例的目的在于提供一種分布式簽名方法、系統、設備、介質及程序產品,用以提高分布式簽名的效率和安全性。
2、第一方面,本申請實施例提供了一種分布式簽名方法,包括:
3、主簽名方基于預先協商的哈希函數對待傳輸消息生成哈希承諾,結合自身的私鑰以及當前選取的第一隱私信息分別計算對應于各分布式簽名方的密鑰份額,并將所述哈希承諾和所述密鑰份額分別發送至對應的分布式簽名方;
4、各分布式簽名方基于預先選取的橢圓曲線基點計算對應于各自密鑰份額的公鑰,同時基于所述密鑰份額、所述橢圓曲線基點、所述哈希承諾以及當前選取的第二隱私信息生成對應的子簽名,并將所述公鑰和所述子簽名進行廣播;
5、所述主簽名方對各分布式簽名方的子簽名進行驗證,在各子簽名驗證通過后基于所述密鑰份額和各所述子簽名生成完整簽名,并將所述完整簽名以及各分布式簽名方的編號發送至數據接收方;
6、所述數據接收方基于所
7、在本申請實施例中,通過使用安全多方計算、哈希承諾和隨機化函數構建分布式隱私簽名方案,能夠保護數據隱私并增強簽名的隨機性,同時還簡化了簽名驗證過程,從而有效提高了分布式簽名的效率和安全性。
8、在一些可能的實施例中,所述主簽名方對各分布式簽名方的子簽名進行驗證,在各子簽名驗證通過后基于所述密鑰份額和各所述子簽名生成完整簽名,并將所述完整簽名以及各分布式簽名方的編號發送至數據接收方,包括:
9、所述主簽名方基于各密鑰份額對應的公鑰分別對各分布式簽名方進行身份驗證,并對各分布式簽名方的子簽名進行驗證;
10、在所述身份驗證通過且所述子簽名驗證通過的情況下,基于所述密鑰份額和各所述子簽名生成完整簽名,并將所述完整簽名以及各分布式簽名方的編號發送至數據接收方;
11、在所述身份驗證不通過或者所述子簽名驗證不通過的情況下,拒絕采用對應分布式簽名方的子簽名。
12、在本申請實施例中,通過密鑰份額對應的公鑰來對各個分布式簽名方的身份進行驗證,能夠避免簽名方的身份被冒用,進一步提高分布式簽名的安全性。
13、在一些可能的實施例中,所述主簽名方基于預先協商的哈希函數對待傳輸消息生成哈希承諾,結合自身的私鑰以及當前選取的第一隱私信息分別計算對應于各分布式簽名方的密鑰份額,并將所述哈希承諾和所述密鑰份額分別發送至對應的分布式簽名方,包括:
14、主簽名方基于預先協商的哈希函數對待傳輸消息生成哈希承諾;
15、結合自身的私鑰以及預先選取的第一隨機數集合構建多項式函數,并基于所述多項式函數以及當前選取的第二隨機數集合分別計算對應于各分布式簽名方的密鑰份額;
16、將所述哈希承諾和所述密鑰份額分別發送至對應的分布式簽名方。
17、在本申請實施例中,通過構建秘密多項式,分別計算不同簽名方的密鑰份額,從而進一步提高了簽名過程的隨機性,進而提高分布式簽名的安全性。
18、在一些可能的實施例中,所述主簽名方對各分布式簽名方的子簽名進行驗證,還包括:
19、所述主簽名方基于各子簽名以及所述哈希承諾計算各分布式簽名方對應的份額驗證信息,并利用各分布式簽名方對應的份額驗證信息進行插值運算,恢復出驗證多項式函數;
20、基于所述驗證多項式函數與所述多項式函數進行常數項對比,以對各分布式簽名方的子簽名進行驗證。
21、在本申請實施例中,通過恢復計算各子簽名對應的份額驗證信息,并使用插值運算恢復出驗證多項式函數,再基于多項式函數的比較以對各子簽名進行驗證,從而進一步提高分布式簽名的安全性。
22、在一些可能的實施例中,所述基于所述密鑰份額、所述橢圓曲線基點、所述哈希承諾以及當前選取的第二隱私信息生成對應的子簽名,包括:
23、基于所述密鑰份額和所述哈希承諾生成第一子簽名參數,基于所述橢圓曲線基點、所述密鑰份額、所述哈希承諾、當前選取的第二隱私信息以及由所述主簽名方同步的隨機化函數生成第二子簽名參數,基于所述哈希承諾和所述第二子簽名參數生成第三子簽名參數;
24、基于所述第一子簽名參數、所述第二子簽名參數和所述第三子簽名參數進行組合,得到所述分布式簽名方對應的子簽名。
25、在本申請實施例中,通過基于密鑰份額、橢圓曲線基點、哈希承諾以及當前選取的第二隱私信息分別生成子簽名對應的三個簽名參數,從而實現主簽名方對各子簽名的合法性驗證,進一步提高了分布式簽名的安全性。
26、在一些可能的實施例中,所述第一隱私信息和所述第二隱私信息均為采用基于預設素域選取的隨機數。
27、在本申請實施例中,通過基于預設素域選取的隨機數作為第一隱私信息和第二隱私信息,從而提高了隱私信息獲取的統一性,進一步提高了分布式簽名的效率。
28、第二方面,本申請實施例提供了一種分布式簽名系統,包括主簽名方、數據接收方和若干個分布式簽名方,其中:
29、所述主簽名方,用于基于預先協商的哈希函數對待傳輸消息生成哈希承諾,結合自身的私鑰以及當前選取的第一隱私信息分別計算對應于各所述分布式簽名方的密鑰份額,并將所述哈希承諾和所述密鑰份額分別發送至對應的分布式簽名方;
30、所述分布式簽名方,用于基于預先選取的橢圓曲線基點計算對應于各自密鑰份額的公鑰,同時基于所述密鑰份額、所述橢圓曲線基點、所述哈希承諾以及當前選取的第二隱私信息生成對應的子簽名,并將所述公鑰和所述子簽名進行廣播;
31、所述主簽名方,還用于對各分布式簽名方的子簽名進行驗證,在各子簽名驗證通過后基于所述密鑰份額和各所述子簽名生成完整簽名,并將所述完整簽名以及各分布式簽名方的編號發送至數據接收方;
32、所述數據接收方,用于基于所述哈希函數生成對應于所述待傳輸消息的驗證哈希承諾,基于所述驗證哈希承諾和所述公鑰對所述完整簽名進行驗證,并在驗證通過后接收所述待傳輸消息。
33、第三方面,本申請實施例提供了一種電子設備,包括存儲器、處理器以及存儲在所述存儲器上并可在所述處理器上運行的計算機程序,其中,所述處理器執行所述程序時可實現第一方面任一實施例所述的方法。
34、第四方面,本申請實施例提供了一種計本文檔來自技高網...
【技術保護點】
1.一種分布式簽名方法,其特征在于,包括:
2.根據權利要求1所述的分布式簽名方法,其特征在于,所述主簽名方對各分布式簽名方的子簽名進行驗證,在各子簽名驗證通過后基于所述密鑰份額和各所述子簽名生成完整簽名,并將所述完整簽名以及各分布式簽名方的編號發送至數據接收方,包括:
3.根據權利要求1所述的分布式簽名方法,其特征在于,所述主簽名方基于預先協商的哈希函數對待傳輸消息生成哈希承諾,結合自身的私鑰以及當前選取的第一隱私信息分別計算對應于各分布式簽名方的密鑰份額,并將所述哈希承諾和所述密鑰份額分別發送至對應的分布式簽名方,包括:
4.根據權利要求3所述的分布式簽名方法,其特征在于,所述主簽名方對各分布式簽名方的子簽名進行驗證,還包括:
5.根據權利要求1所述的分布式簽名方法,其特征在于,所述基于所述密鑰份額、所述橢圓曲線基點、所述哈希承諾以及當前選取的第二隱私信息生成對應的子簽名,包括:
6.根據權利要求1所述的分布式簽名方法,其特征在于,所述第一隱私信息和所述第二隱私信息均為采用基于預設素域選取的隨機數。
7.
8.一種電子設備,其特征在于,包括存儲器、處理器以及存儲在所述存儲器上并可在所述處理器上運行的計算機程序,其中,所述處理器執行所述程序時可實現權利要求1-6任一所述的分布式簽名方法。
9.一種計算機可讀存儲介質,其特征在于,所述計算機可讀存儲介質上存儲有計算機程序,所述計算機程序被處理器運行時執行如權利要求1-6任一所述的分布式簽名方法。
10.一種計算機程序產品,其特征在于,所述計算機程序產品包括計算機程序,所述計算機程序被處理器執行時實現權利要求1-6任一所述的分布式簽名方法。
...【技術特征摘要】
1.一種分布式簽名方法,其特征在于,包括:
2.根據權利要求1所述的分布式簽名方法,其特征在于,所述主簽名方對各分布式簽名方的子簽名進行驗證,在各子簽名驗證通過后基于所述密鑰份額和各所述子簽名生成完整簽名,并將所述完整簽名以及各分布式簽名方的編號發送至數據接收方,包括:
3.根據權利要求1所述的分布式簽名方法,其特征在于,所述主簽名方基于預先協商的哈希函數對待傳輸消息生成哈希承諾,結合自身的私鑰以及當前選取的第一隱私信息分別計算對應于各分布式簽名方的密鑰份額,并將所述哈希承諾和所述密鑰份額分別發送至對應的分布式簽名方,包括:
4.根據權利要求3所述的分布式簽名方法,其特征在于,所述主簽名方對各分布式簽名方的子簽名進行驗證,還包括:
5.根據權利要求1所述的分布式簽名方法,其特征在于,所述基于所述密鑰份額、所述橢圓曲線基點、所述哈希承諾以及當前選...
【專利技術屬性】
技術研發人員:陳世武,王煒,楊渝,
申請(專利權)人:北京天融信網絡安全技術有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。