System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請屬于數據加密,具體涉及一種交易簽名方法、裝置、計算機可讀介質以及電子設備。
技術介紹
1、mpc錢包(mpc?wallet)是一種基于多方計算(multi-party?computation,mpc)協議的加密貨幣錢包。mpc錢包通過將私鑰分散存儲在多個設備上,并使用mpc協議進行安全計算,以保護私鑰的安全性。mpc協議允許多個參與者共同生成密鑰,而無需將完整的私鑰暴露給任何單個參與者。這種分散存儲和計算的方式,使得即使某些設備被攻擊或被泄露,私鑰仍然能夠保持安全。因此,mpc錢包提供了更高的安全性和防護措施,以保護用戶的加密貨幣資產。
2、當前mpc錢包架構下,在安全性設計層面,需要引入復雜的零知識證明來驗證交易安全性,以此避免多個參與方之間作惡從而出現的密鑰泄露問題,從而交易簽名需基于零知識證明所需參數來進行計算,然而這種簽名方式需要參與方之間進行多輪交互,計算復雜度較高,計算效率較低。
3、需要說明的是,在上述
技術介紹
部分公開的信息僅用于加強對本申請的背景的理解,因此可以包括不構成對本領域普通技術人員已知的現有技術的信息。
技術實現思路
1、本申請的目的在于提供一種交易簽名方法、裝置、計算機可讀介質以及電子設備,以降低交易簽名的計算復雜度,提高簽名效率。
2、本申請的其他特性和優點將通過下面的詳細描述變得顯然,或部分地通過本申請的實踐而習得。
3、根據本申請實施例的一個方面,提供一種交易簽名方法,應用于交易參與方,所述方法
4、根據橢圓曲線公開參數對隨機生成的預設長度的簽名混淆分片進行橢圓曲線點乘計算,得到混淆公開憑證,并對所有交易參與方的混淆公開憑證進行匯總,得到混淆憑證;
5、根據所述混淆憑證、交易信息和所述橢圓曲線公開參數生成所述交易信息的左簽名;
6、基于各個分片參數及其對應的混淆因子生成各個分片參數對應的分片左參數,并根據各個分片參數對應的分片左參數和各個分片參數在其他交易參與方對應的混淆因子之和,得到各個分片參數對應的臨時因子;所述各個分片參數為隨機生成的、長度為所述預設長度的參數,所述混淆因子為隨機生成的、長度為所述預設長度的數據;
7、獲取隨機生成的混淆參數組,所述混淆參數組包含的混淆參數數量與所述各個分片參數的總數相同,所述混淆參數組包含的混淆參數的長度為所述預設長度;
8、根據各個分片參數對應的臨時因子、所述混淆參數組和所述左簽名生成所述交易信息的右簽名;
9、對所述左簽名和所述右簽名進行組合,得到所述交易信息的簽名數據,所述簽名數據用于對所述交易信息進行驗證。
10、根據本申請實施例的一個方面,提供一種交易簽名裝置,包括:
11、混淆憑證計算模塊,用于根據橢圓曲線公開參數對隨機生成的預設長度的簽名混淆分片進行橢圓曲線點乘計算,得到混淆公開憑證,并對所有交易參與方的混淆公開憑證進行匯總,得到混淆憑證;
12、左簽名生成模塊,用于根據所述混淆憑證、交易信息和所述橢圓曲線公開參數生成所述交易信息的左簽名;
13、臨時因子計算模塊,用于基于各個分片參數及其對應的混淆因子生成各個分片參數對應的分片左參數,并根據各個分片參數對應的分片左參數和各個分片參數在其他交易參與方對應的混淆因子之和,得到各個分片參數對應的臨時因子;所述各個分片參數為隨機生成的、長度為所述預設長度的參數,所述混淆因子為隨機生成的、長度為所述預設長度的數據;
14、混淆參數獲取模塊,用于獲取隨機生成的混淆參數組,所述混淆參數組包含的混淆參數數量與所述各個分片參數的總數相同,所述混淆參數組包含的混淆參數的長度為所述預設長度;
15、右簽名生成模塊,用于根據各個分片參數對應的臨時因子、所述混淆參數組和所述左簽名生成所述交易信息的右簽名;
16、簽名組合模塊,用于對所述左簽名和所述右簽名進行組合,得到所述交易信息的簽名數據,所述簽名數據用于對所述交易信息進行驗證。
17、根據本申請實施例的一個方面,提供一種計算機可讀介質,其上存儲有計算機程序,該計算機程序被處理器執行時實現如以上技術方案中的交易簽名方法。
18、根據本申請實施例的一個方面,提供一種電子設備,該電子設備包括:處理器;以及存儲器,用于存儲所述處理器的可執行指令;其中,所述處理器執行所述可執行指令使得所述電子設備執行如以上技術方案中的交易簽名方法。
19、根據本申請實施例的一個方面,提供一種計算機程序產品或計算機程序,該計算機程序產品或計算機程序包括計算機指令,該計算機指令存儲在計算機可讀存儲介質中。計算機設備的處理器從計算機可讀存儲介質讀取該計算機指令,處理器執行該計算機指令,使得該計算機設備執行如以上技術方案中的交易簽名方法。
20、在本申請實施例提供的技術方案中,交易參與方首先根據橢圓曲線公開參數對隨機生成的預設長度的簽名混淆分片進行橢圓曲線點乘計算,得到混淆公開憑證,并對所有交易參與方的混淆公開憑證進行匯總,得到混淆憑證;然后根據混淆憑證、交易信息和橢圓曲線公開參數生成交易信息的左簽名;接下來,交易參與方基于各個分片參數及其對應的混淆因子生成各個分片參數對應的分片左參數,并根據各個分片參數對應的分片左參數和各個分片參數在其他交易參與方對應的混淆因子之和,得到各個分片參數對應的臨時因子;各個分片參數為隨機生成的、長度為預設長度的參數,混淆因子為隨機生成的、長度為預設長度的數據;隨后,交易參與方獲取隨機生成的混淆參數組,混淆參數組包含的混淆參數數量與各個分片參數的總數相同,混淆參數組包含的混淆參數的長度為預設長度;進而根據各個分片參數對應的臨時因子、混淆參數組和左簽名生成交易信息的右簽名;最后,交易參與方對左簽名和右簽名進行組合,得到交易信息的簽名數據。可見,整個交易簽名過程多使用隨機生成的預設長度的數據進行計算,無需引入復雜的零知識證明參數計算,從而降低了交易參與方所需傳輸的數據量,也降低了交易簽名的計算復雜度,提高了簽名效率。
21、應當理解的是,以上的一般描述和后文的細節描述僅是示例性和解釋性的,并不能限制本申請。
本文檔來自技高網...【技術保護點】
1.一種交易簽名方法,其特征在于,應用于交易參與方,所述方法包括:
2.根據權利要求1所述的交易簽名方法,其特征在于,根據所述混淆憑證、交易信息和所述橢圓曲線公開參數生成所述交易信息的左簽名,包括:
3.根據權利要求2所述的交易簽名方法,其特征在于,基于密碼雜湊算法對所述橢圓曲線公開參數進行計算,得到簽名憑證因子,包括:
4.根據權利要求1所述的交易簽名方法,其特征在于,所述各個分片參數包括:簽名一次一密分片、私鑰分片和簽名混淆分片;基于各個分片參數及其對應的混淆因子生成各個分片參數對應的分片左參數,包括:
5.根據權利要求4所述的交易簽名方法,其特征在于,根據各個分片參數對應的分片左參數和各個分片參數在其他交易參與方對應的混淆因子之和,得到各個分片參數對應的臨時因子,包括:
6.根據權利要求1所述的交易簽名方法,其特征在于,獲取隨機生成的混淆參數組,包括:
7.根據權利要求1所述的交易簽名方法,其特征在于,根據各個分片參數對應的臨時因子、所述混淆參數組和所述左簽名生成所述交易信息的右簽名,包括:
9.根據權利要求6所述的交易簽名方法,其特征在于,所述各個分片參數對應的臨時因子包括簽名一次一密臨時因子、私鑰分片臨時因子和簽名混淆分片臨時因子;所述混淆參數組包括右簽名右參數混淆第一因子第一部分、右簽名右參數混淆第二因子第一部分和右簽名右參數混淆第三因子的第一部分;
10.根據權利要求6所述的交易簽名方法,其特征在于,對所述右簽名左因子和所述右簽名右因子進行匯總,得到所述交易信息的右簽名,包括:
...【技術特征摘要】
1.一種交易簽名方法,其特征在于,應用于交易參與方,所述方法包括:
2.根據權利要求1所述的交易簽名方法,其特征在于,根據所述混淆憑證、交易信息和所述橢圓曲線公開參數生成所述交易信息的左簽名,包括:
3.根據權利要求2所述的交易簽名方法,其特征在于,基于密碼雜湊算法對所述橢圓曲線公開參數進行計算,得到簽名憑證因子,包括:
4.根據權利要求1所述的交易簽名方法,其特征在于,所述各個分片參數包括:簽名一次一密分片、私鑰分片和簽名混淆分片;基于各個分片參數及其對應的混淆因子生成各個分片參數對應的分片左參數,包括:
5.根據權利要求4所述的交易簽名方法,其特征在于,根據各個分片參數對應的分片左參數和各個分片參數在其他交易參與方對應的混淆因子之和,得到各個分片參數對應的臨時因子,包括:
6.根據權利要求1所述的交易簽名方法,其特征在于,獲取隨機生成的混淆參數組,包括:
...【專利技術屬性】
技術研發人員:李昊軒,王章,白興強,賀雙洪,李輝忠,張開翔,姚輝亞,
申請(專利權)人:深圳前海微眾銀行股份有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。