本發(fā)明總體涉及數(shù)據(jù)和基于計(jì)算機(jī)的資源的安全性。更具體而言,本發(fā)明涉及密碼術(shù),并且還涉及橢圓曲線密碼術(shù)、橢圓曲線數(shù)字簽名算法(ecdsa)以及閾值密碼術(shù)。本發(fā)明可以具有廣泛的適用性。在一個(gè)實(shí)施例中,本發(fā)明可以被描述為提供閾值數(shù)字簽名方案。
背景技術(shù):
1、在本文檔中,我們使用“區(qū)塊鏈”一詞來包括所有形式的基于計(jì)算機(jī)的電子分布式分類賬(ledger)。這些分類賬包括基于共識的區(qū)塊鏈和交易鏈技術(shù)、許可和非許可的分類賬、共享分類賬,及其變型。應(yīng)當(dāng)注意,本發(fā)明不限于與特定區(qū)塊鏈一起使用,且替代的區(qū)塊鏈實(shí)現(xiàn)方式和協(xié)議也落入本發(fā)明的范圍內(nèi)。
2、區(qū)塊鏈?zhǔn)且环N點(diǎn)對點(diǎn)(peer-to-peer)的電子分類賬,其實(shí)現(xiàn)為基于計(jì)算機(jī)的非集中化系統(tǒng),所述系統(tǒng)由區(qū)塊組成,而區(qū)塊又由交易(transaction)組成。每個(gè)交易是一種數(shù)據(jù)結(jié)構(gòu),所述數(shù)據(jù)結(jié)構(gòu)對區(qū)塊鏈系統(tǒng)參與者之間的數(shù)字資產(chǎn)的控制權(quán)的轉(zhuǎn)移進(jìn)行編碼,并且包括至少一個(gè)輸入和至少一個(gè)輸出。每個(gè)區(qū)塊都包含前一個(gè)區(qū)塊的散列,因此區(qū)塊被鏈接在一起,以創(chuàng)建自區(qū)塊鏈創(chuàng)建以來寫入?yún)^(qū)塊鏈的所有交易的永久性的不可更改的記錄。
3、與分布式或集中化系統(tǒng)不同,非集中化系統(tǒng)具有以下優(yōu)勢:不存在單點(diǎn)故障(single?point?of?failure)。因此,它們提供了更高級別的安全性和彈性。通過使用橢圓曲線密碼術(shù)和ecdsa之類的已知密碼技術(shù)來進(jìn)一步增強(qiáng)安全性。
4、由于需要多于一方的簽名來提供對數(shù)字資產(chǎn)的訪問權(quán),因此,多重簽名系統(tǒng)通常用于區(qū)塊鏈中,以增強(qiáng)安全性。
5、ecdsa閾值簽名方案可以取代“多重簽名”系統(tǒng),以用于確保錢包的安全,并提供更高的安全性和隱私性以及更少的交易(因此,費(fèi)用更低)。s.goldfeder、r.gennaro、h.kalodner、j.bonneau、j.a.kroll、e.w.felten及a.narayanan的通過新的dsa/ecdsa閾值簽名方案確保錢包的安全(2015年)及r.gennaro等人的閾值最優(yōu)dsa/ecdsa簽名以及對錢包安全性的應(yīng)用(2016年),關(guān)于應(yīng)用密碼術(shù)和網(wǎng)絡(luò)安全的國際會議acns2016:應(yīng)用密碼術(shù)和網(wǎng)絡(luò)安全第156-174頁,提供了閾值最優(yōu)ecdsa簽名方案的變型,使得n個(gè)密鑰份額(share)持有者中的任何t+1可協(xié)作,以交互式地產(chǎn)生完整簽名,其中,1<t≤n。
6、然而,這些方案至少受到兩個(gè)限制。首先,它們?nèi)Q于新的密碼術(shù)和相關(guān)假設(shè),例如,尚未經(jīng)受時(shí)間測試的完全同態(tài)的加密方案。其次,由于它們的復(fù)雜性以及涉及零知識證明-例如,在單獨(dú)寫入、生成及驗(yàn)證零知識證明時(shí),每個(gè)參與者花費(fèi)大約10秒的時(shí)間-它們的計(jì)算量大,且因此是緩慢的。因此,不應(yīng)信任這些系統(tǒng)能夠確保大筆存款的安全,并且不適用于某些需要快速簽名的應(yīng)用(例如,交換操作)。
7、例如,這些方案不能用在基于高頻支付通道的系統(tǒng)中,例如,如j?poon;t?dryja;閃電網(wǎng)絡(luò):可擴(kuò)展的鏈外即時(shí)支付(2016年)中所公開的。
8、存在用于生成ecdsa閾值簽名的更快、更簡單且更安全的方案,但是有一些限制。具體而言,排除了t和n的某些組合,包括“2/3(2of?3)”方案之類的普遍選擇。此外,在這些方案中,與通過部分簽名的組合生成簽名所需相比,可以用更少的密鑰份額來重構(gòu)私鑰。因此,需要對采用“2/3”多重簽名技術(shù)的交換所采用的安全錢包服務(wù)系統(tǒng)進(jìn)行改良。
9、雙向支付通道,例如,j?poon;t?dryja;閃電網(wǎng)絡(luò):可擴(kuò)展的鏈外即時(shí)支付(2016年)中所述的雙向支付通道可以準(zhǔn)許在大大降低客戶必須在交換中的信任的同時(shí)進(jìn)行資產(chǎn)貿(mào)易。在傳統(tǒng)模型中,客戶可以在交換時(shí)持有,例如,法定貨幣的存款??蛻舯仨毿湃嗡鼋粨Q,以保存準(zhǔn)確的記錄。換句話說,盡管法定貨幣的存款可以通過采用托管服務(wù)(在一定程度上)進(jìn)行保護(hù)以防偷竊,但是如果交換被破壞且貿(mào)易記錄丟失或更改,則客戶仍然可能會丟失其存款。
10、雙向支付通道具有多個(gè)其他缺點(diǎn)。考慮雙向支付通道的標(biāo)準(zhǔn)實(shí)現(xiàn)方式。愛麗絲和鮑勃想在彼此之間來回發(fā)送加密令牌(token)。他們每個(gè)人都使用約定數(shù)量的令牌為“2/2”多重簽名提供資金,然后通過交換承諾交易來發(fā)送令牌(更新通道)以及有效地使通道的先前狀態(tài)失效的“值”。如果要由一方廣播過期的承諾交易,則另一方可以通過含有適當(dāng)?shù)摹爸怠钡摹斑`約賠償交易(breach?remedy?transaction)”做出響應(yīng),從而借此索取通道中的全部余額。
11、當(dāng)愛麗絲或鮑勃想對通道進(jìn)行結(jié)算時(shí),他們各自可同意簽署根據(jù)最新的通道狀態(tài)分配余額的交易(所謂的“軟解析(soft?resolution)”)。以此方式,只要雙方合作,就不必廣播承諾交易。
12、然而,如j?poon;t?dryja;閃電網(wǎng)絡(luò):可擴(kuò)展的鏈外即時(shí)支付(2016年)中所述的支付通道由于存在所謂的“故障模式”而具有一個(gè)主要的未解決漏洞,其可在使得大量通道打開的一方在很長一段時(shí)間內(nèi)無響應(yīng)的情況下出現(xiàn)。這可能會導(dǎo)致與之連接的其他各方廣播承諾交易,且如果各方數(shù)量較大,則區(qū)塊鏈網(wǎng)絡(luò)可能會變得不堪重負(fù)。這種情況對支付通道而言尤其危險(xiǎn),因?yàn)閻阂夥娇赡軙L試通過廣播過期的承諾交易以希望與之連接的一方將無法以違約賠償交易及時(shí)響應(yīng)來竊取資金。j?poon;t?dryja;閃電網(wǎng)絡(luò):可擴(kuò)展的鏈外即時(shí)支付(2016年)中描述的配置的另一個(gè)限制為以下另一復(fù)雜情況:其需要隔離見證(segregated?witness)(以避免雙方中有一方在為通道提供資金后不愿意或無法提供第一個(gè)承諾交易的可能性)。
13、交換安全(exchange?security)的最新技術(shù)
14、當(dāng)前,許多交換平臺通常通過第三方服務(wù)基于腳本的多重簽名功能性采用安全錢包系統(tǒng)。這些系統(tǒng)將客戶或交換方資金置于可以使用2/3多重簽名腳本(即通過提供與3個(gè)公鑰中的任意2個(gè)對應(yīng)的有效簽名)進(jìn)行贖回的輸出下。三個(gè)對應(yīng)的私鑰將分配給所述交換方、客戶及受信任的第三方/托管方。然后,可以通過以下任一方式授權(quán)資金的移動(通過已簽名的有效交易):i)客戶和交換方,或者ii)交換方和第三方(在客戶不合作或丟失密鑰的情況下)。第三方服務(wù)將通過來自交換方的經(jīng)過驗(yàn)證的api請求來執(zhí)行簽名操作。
15、除了第三方本身及其應(yīng)用程序編程接口(api)的安全性操作和策略外,此托管系統(tǒng)還具有幾個(gè)主要缺點(diǎn)。首先,使用2/3multisig(多重簽名)輸出會損害客戶和交換方的隱私。2/3multisig(多重簽名)交易輸出的數(shù)量僅占輸出總數(shù)的一小部分,因此,匿名性的降低使區(qū)塊鏈的觀察者更容易識別與第三方和交換錢包相關(guān)聯(lián)的資金。此外,使用2/3multisig(多重簽名)輸出還會揭示區(qū)塊鏈上的內(nèi)部交換操作。外部觀察者可以基于腳本中的位置來確定三個(gè)密鑰中的哪一個(gè)已經(jīng)用于授權(quán)特定交易。例如,在2016年發(fā)生的6000萬美元的bitfinex黑客攻擊中,區(qū)塊鏈觀察者能夠確定密鑰1和3被用來竊取資金。此外,使用2/3multisig(多重簽名)會導(dǎo)致更大的交易規(guī)模,因此需要更大的交易費(fèi)用才能在區(qū)塊鏈上可靠且快速地進(jìn)行確認(rèn)。此外,由于2/3multisig(多重簽名)腳本被視為“非標(biāo)準(zhǔn)”腳本,因此必須將其實(shí)現(xiàn)為向腳本的哈希支付(p2sh)格式的贖回腳本。由于p2sh交易輸出類型可能遭受碰撞攻擊(或所謂的“生日攻擊”),因此其安全性基本上不如標(biāo)準(zhǔn)的向公鑰的哈希支付(p2pkh)輸出。p2sh輸出具有160位的安全性,這意味著僅提供80位的安全性就可以防止碰撞攻擊。目前,此等級的安全性在計(jì)算上無法攻擊,但可能無法無限期地維持此狀況。在p2pkh輸出(僅使用單個(gè)公鑰)上不可能發(fā)生碰撞攻擊,因此,保持160位的安全性(在預(yù)圖像(pre-image))攻擊的情況下)。
16、閾值簽名方案
17、閾值簽名協(xié)議使一組參與方(或節(jié)點(diǎn))能夠在不在任一時(shí)刻重構(gòu)私鑰或者任何參與者都不知道有關(guān)任何其他方的密鑰份額的任何信息的情況下使用n個(gè)密鑰份額的閾值m來共同地簽署交易。使用這種方案可以防止在需要多個(gè)單獨(dú)方來授權(quán)交易的系統(tǒng)中出現(xiàn)單點(diǎn)故障。
18、閾值簽名方案可以與無交易商(dealer-free或dealer-less)協(xié)議組合,以建立秘密份額,其中任何一方都不知道共享秘密(私鑰)(實(shí)際上,其無需在任一時(shí)刻顯式地存在于內(nèi)存中)。然而,所述組可以確定橢圓曲線公鑰(對應(yīng)于尚不知道但暗含的共享秘密密鑰)。這意味著可以完全不信任的方式將輸出置于共享組公鑰(和對應(yīng)地址)的控制之下,并且只有當(dāng)閾值的各方協(xié)作時(shí)才能生成交易上的簽名,而無需任何個(gè)別方得知私鑰。
19、橢圓曲線數(shù)字簽名算法(ecdsa)的數(shù)學(xué)形式的性質(zhì)意味著為這種類型的簽名構(gòu)造安全的閾值方案并非易事。具體而言,已證實(shí),不可能創(chuàng)建高效且安全的閾值最優(yōu)方案-其中生成有效簽名所需的密鑰份額的數(shù)量與重構(gòu)完整私鑰所需的份額的數(shù)量相同。s.goldfeder、r.gennaro、h.kalodner、j.bonneau、j.a.kroll、e.w.felten和a.narayanan的通過新的dsa/ecdsa閾值簽名方案的安全錢包(2015年)中描述了構(gòu)造閾值最優(yōu)ecdsa方案的第一種方法,但此方案具有明顯的缺點(diǎn)。首先,它的效率非常低:簽名生成既需要調(diào)用paillier(帕耶)(加法同態(tài))加密,又需要創(chuàng)建和驗(yàn)證一系列零知識證明:對于僅2/2簽名,其需要進(jìn)行6輪通信,且計(jì)算時(shí)間約為10秒(每一方)。其次,私鑰是以乘法方式共享的:這意味著僅n/n(n-of-n)密鑰共享有可能實(shí)現(xiàn)m/n(m-of-n)方案,其中m<n需要每一方都需要持有多個(gè)密鑰份額(每一方均需要nm個(gè)密鑰份額)的組合密鑰共享結(jié)構(gòu)。此外,與在多項(xiàng)式(polynomial)上共享密鑰(如在shamir(沙米爾)的秘密共享方案中)相比,在沒有受信任的交易商的情況下以乘法方式共享私鑰要復(fù)雜得多且計(jì)算量大。
20、近年來,以下各者已提出了一種具有改良效率(但仍然相對較慢)的閾值最優(yōu)ecdsa方案:r.gennaro等人,閾值最優(yōu)dsa/ecdsa簽名及其在錢包安全性中的應(yīng)用(2016年),關(guān)于應(yīng)用密碼術(shù)和網(wǎng)絡(luò)安全的國際會議acns2016:應(yīng)用密碼術(shù)和網(wǎng)絡(luò)安全,第156-174頁和boneh、dan、rosario?gennaro及steven?goldfeder,“使用等級1同態(tài)加密來改良閾值dsa簽名以實(shí)現(xiàn)錢包安全性”,其采用了完全同態(tài)的加密系統(tǒng)。此密碼原語具有較高的復(fù)雜性,并且依賴于相對未經(jīng)測試的假設(shè)。還應(yīng)注意,例如,如bogos、sonia、john?gaspoz及serge?vaudenay的“對同態(tài)加密方案的密碼分析”,arcticcrypt?2016,第epfl-conf-220692.2016號以及hu、yupu及fenghe?wang的“對完全同態(tài)加密方案的攻擊”,國際密碼學(xué)協(xié)會密碼學(xué)電子資料庫2012(2012):561中所述,其他最新的完全同態(tài)加密方案也已成功地進(jìn)行了密碼分析并被有效地破解。
技術(shù)實(shí)現(xiàn)思路
1、本發(fā)明的優(yōu)選實(shí)施例試圖克服已知方案的上述缺點(diǎn)中的一個(gè)或多個(gè)。
2、本發(fā)明提供了一些方法和系統(tǒng)。
3、可以提供一種轉(zhuǎn)移對數(shù)字資產(chǎn)的訪問權(quán)的方法,所述方法包括:
4、由多個(gè)第二參與者中的每個(gè)參與者從第一參與者接收第一區(qū)塊鏈交易,其中所述第一參與者具有密碼系統(tǒng)的第一私鑰-公鑰對中的第一私鑰,并且每個(gè)所述參與者具有所述密碼系統(tǒng)的第二私鑰-公鑰對中的第二私鑰的相應(yīng)的份額,其中,所述第一區(qū)塊鏈交易是用所述第一私鑰簽名的;
5、由多個(gè)所述第二參與者驗(yàn)證所述第一區(qū)塊鏈交易已用所述第一私鑰簽名;
6、將所述第二私鑰的相應(yīng)的所述份額應(yīng)用于所述第一區(qū)塊鏈交易,以生成第一秘密值的相應(yīng)的份額,其中所述第一秘密值是用所述第二私鑰簽名的第二區(qū)塊鏈交易,其中所述第一秘密值對于所述第一秘密值的第一閾值數(shù)量的所述份額是可訪問的,而對于小于所述第一秘密值的所述第一閾值數(shù)量的份額是不可訪問的;以及
7、將來自所述第一參與者和多個(gè)所述第二參與者的所述第一秘密值的至少所述第一閾值數(shù)量的所述份額組合在一起,以生成所述第一秘密值。
8、通過將第二私鑰的相應(yīng)的份額應(yīng)用于所述第一區(qū)塊鏈交易,以生成用所述第二私鑰簽名的第二區(qū)塊鏈交易的相應(yīng)的份額,其中,所述已簽名的第二區(qū)塊鏈交易對于所述第一秘密值的第一閾值數(shù)量的份額是可訪問的,而對于小于所述第一閾值數(shù)量的份額是不可訪問的,并且將來自所述第一參與者和多個(gè)第二參與者的所述第一秘密值的至少所述第一閾值數(shù)量的份額組合在一起,以生成已簽名的第二區(qū)塊鏈交易,這提供了以下優(yōu)勢:如果所述第二參與者之一不活動或不合作,則能夠?qū)灰走M(jìn)行簽名,從而改良了系統(tǒng)的安全性和可靠性。而且,通過響應(yīng)于來自所述第一參與者接收到所述第一區(qū)塊鏈交易而生成所述第一秘密值的份額,這提供了另一個(gè)優(yōu)勢:使得所述第一秘密值的份額能夠自動生成,從而生成所述第一秘密值的至少三個(gè)份額,由此能夠模擬2/3(2of?3)簽名方案。
9、多個(gè)所述第二參與者中的每一者可以具有所述密碼系統(tǒng)的相應(yīng)私鑰。
10、這提供以下優(yōu)勢:能夠借助于與私鑰相對應(yīng)的公鑰來驗(yàn)證利用私鑰進(jìn)行的簽名,從而增強(qiáng)了系統(tǒng)的安全性。
11、所述方法可以進(jìn)一步包括在所述第一參與者和至少一個(gè)所述第二參與者之間對具有所述第一參與者所擁有的所述第二私鑰的一所述份額進(jìn)行分配份額。
12、這提供以下優(yōu)勢:進(jìn)一步增強(qiáng)了安全性。
13、所述方法可以進(jìn)一步包括在一所述第二參與者變得無響應(yīng)的情況下,將對所述數(shù)字資產(chǎn)的訪問權(quán)轉(zhuǎn)移到所述密碼系統(tǒng)的第三私鑰。
14、所述數(shù)字資產(chǎn)在預(yù)定時(shí)間內(nèi)可保持在所述第三私鑰的控制下。
15、所述方法可以進(jìn)一步包括在多個(gè)所述參與者之間分配所述第二私鑰的所述份額。
16、可以提供一種轉(zhuǎn)移對數(shù)字資產(chǎn)的訪問權(quán)的方法,所述方法包括:
17、將第一區(qū)塊鏈交易從第一參與者發(fā)送給多個(gè)第二參與者,其中所述第一參與者具有密碼系統(tǒng)的第一私鑰-公鑰對中的第一私鑰,并且每個(gè)所述參與者具有所述密碼系統(tǒng)的第二私鑰-公鑰對中的第二私鑰的相應(yīng)的份額,其中,所述第一區(qū)塊鏈交易是用所述第一私鑰簽名的;
18、從多個(gè)所述第二參與者接收第一秘密值的相應(yīng)的份額,其中所述第一秘密值是用所述第二私鑰簽名的第二區(qū)塊鏈交易,其中所述第一秘密值對于所述第一秘密值的第一閾值數(shù)量的所述份額是可訪問的,而對于小于所述第一秘密值的所述第一閾值數(shù)量的份額是不可訪問的,其中在通過對應(yīng)的所述第二參與者驗(yàn)證所述第一區(qū)塊鏈交易已經(jīng)用所述第一私鑰簽名之后,將所述第二私鑰的每個(gè)所述份額應(yīng)用于所述第二區(qū)塊鏈交易;以及
19、將來自所述第一參與者和多個(gè)所述第二參與者的所述第一秘密值的至少所述第一閾值數(shù)量的所述份額組合在一起,以生成所述第一秘密值。
20、可以提供一種對消息進(jìn)行數(shù)字簽名的方法,所述方法包括:
21、在多個(gè)參與者之間分配第一秘密值的第一份額,其中所述第一秘密值是密碼系統(tǒng)的公鑰-私鑰對中的私鑰,所述私鑰可借助于第一閾值數(shù)量的所述第一份額來訪問,而對于小于所述第一閾值數(shù)量的所述第一份額是不可訪問的;
22、在所述多個(gè)參與者之間分配第二秘密值的第二份額,其中所述第二秘密值是用于生成數(shù)字簽名的臨時(shí)密鑰,其中所述臨時(shí)密鑰可借助于所述第一閾值數(shù)量的所述第二份額來訪問,而對于小于所述第一閾值數(shù)量的所述第二份額是不可訪問的;以及
23、在所述多個(gè)參與者之間分配第三秘密值的第三份額,其中每個(gè)所述第三份額適于應(yīng)用于消息,以生成第四秘密值的相應(yīng)的第四份額,其中所述第四秘密值是用所述私鑰并使用所述臨時(shí)密鑰簽名的消息,并且其中所述第四秘密值可借助于第二閾值數(shù)量的所述第四份額來訪問,而對于小于所述第二閾值數(shù)量的所述第四份額是不可訪問的。
24、通過在所述多個(gè)參與者之間分配第三秘密值的第三份額,其中每個(gè)第三份額適于應(yīng)用于消息,以生成第四秘密值的相應(yīng)第四份額,所述信息是用所述私鑰和臨時(shí)密鑰簽名的,其中所述第四秘密值可借助于第二閾值數(shù)量的第四份額來訪問,而對于小于所述第二閾值數(shù)量的第四份額是不可訪問的,這提供了以下優(yōu)勢:使大部分?jǐn)?shù)字簽名份額能夠預(yù)先生成,并且在需要快速簽名時(shí)應(yīng)用于消息。這又使得交易能夠進(jìn)行快速非交互式簽名,且因此適合在交換中使用。
25、分配給每個(gè)所述參與者的份額對于每個(gè)其他所述參與者可以是不可訪問的。
26、將所述份額分配給每個(gè)所述參與者的步驟可以包括為所述參與者或每個(gè)所述參與者提供相應(yīng)的加密通信通道。
27、可以借助于相應(yīng)的shamir(沙米爾)秘密共享方案來創(chuàng)建第一和/或第二份額。
28、多個(gè)所述第一和/或第二份額可以是第一多項(xiàng)式函數(shù)的相應(yīng)值,并且可以通過從所述第一閾值數(shù)量的所述份額推導(dǎo)出所述多項(xiàng)式函數(shù)來確定對應(yīng)的秘密值。
29、可以借助于聯(lián)合隨機(jī)秘密共享(jrss)在多個(gè)所述參與者之間共享至少一個(gè)所述第一和/或第二秘密值。
30、共享至少一個(gè)所述第三秘密值可以包括共享由聯(lián)合零秘密共享(jzss)生成的掩蓋(masking)份額。
31、所述密碼系統(tǒng)可以是橢圓曲線密碼系統(tǒng),其中每個(gè)所述公鑰-私鑰對中的所述公鑰通過將橢圓曲線生成點(diǎn)乘以所述私鑰而與對應(yīng)的私鑰相關(guān)。
32、可以提供一種執(zhí)行區(qū)塊鏈交易的簽名的方法,所述方法在包括第一節(jié)點(diǎn)、第二節(jié)點(diǎn)、第三節(jié)點(diǎn)和第四節(jié)點(diǎn)的網(wǎng)絡(luò)中實(shí)施,每個(gè)節(jié)點(diǎn)具有密碼系統(tǒng)中的相應(yīng)的公鑰-私鑰對,并且所述第三節(jié)點(diǎn)與其他三個(gè)節(jié)點(diǎn)是實(shí)體分離的,所述方法包括以下步驟:
33、分布式地(distributively)生成第一閾值私鑰中的多個(gè)第一份額,以使每個(gè)節(jié)點(diǎn)持有相應(yīng)的份額;
34、創(chuàng)建第一交易;以及,
35、使用所述份額,生成所述第一交易上的簽名,具體包括:
36、在所述第二節(jié)點(diǎn),使用其相應(yīng)的私鑰和所述第一交易來生成第二簽名,并將其發(fā)送至所述第一節(jié)點(diǎn)和所述第三節(jié)點(diǎn);
37、在所述第一節(jié)點(diǎn):
38、驗(yàn)證所述第二簽名,以及,
39、響應(yīng)于成功的驗(yàn)證,使用其相應(yīng)的第一份額來生成所述第一交易上的第一部分簽名,使用其相應(yīng)的私鑰和所述第一交易來生成第一簽名,使用其相應(yīng)的私鑰和所述第一部分簽名來生成第三簽名,并將所述第一部分簽名、所述第一簽名和所述第三簽名發(fā)送至所述第二節(jié)點(diǎn);
40、在所述第三節(jié)點(diǎn):
41、驗(yàn)證所述第二簽名,以及,
42、響應(yīng)于成功的驗(yàn)證,使用其相應(yīng)的第一份額來生成所述第一交易上的第三部分簽名,并將其發(fā)送至所述第二節(jié)點(diǎn);以及,
43、在所述第二節(jié)點(diǎn),響應(yīng)于從所述第一節(jié)點(diǎn)接受到所述簽名:
44、驗(yàn)證所述第一簽名和所述第三簽名,以及,
45、響應(yīng)于成功的驗(yàn)證,使用其相應(yīng)的第一份額來生成所述第一交易上的第二部分簽名,并且組合所述第一部分簽名、所述第二部分簽名和所述第三部分簽名,以生成所述第一交易上的簽名。
46、可選地,所述第二簽名是部分盲簽名,以使所述第一交易中包含的某些信息沒有提供給所述第三節(jié)點(diǎn)。
47、可選地,所述方法包括以下的進(jìn)一步步驟:識別尚未從所述第一節(jié)點(diǎn)接收到簽名的第一條件。
48、可選地,所述方法包括以下的進(jìn)一步步驟:在所述第二節(jié)點(diǎn)處:使用與所述第一閾值私鑰相關(guān)聯(lián)的第一閾值公鑰來驗(yàn)證在所述第一交易上生成的所述簽名,以及,響應(yīng)于失敗的驗(yàn)證,識別所述第一部分簽名可能無效的第二條件。
49、可選地,所述方法包括以下的進(jìn)一步步驟:響應(yīng)于識別出所述第一條件或第二條件兩者中的一個(gè),進(jìn)行以下步驟:在所述第四節(jié)點(diǎn),使用其相應(yīng)的第一份額來生成所述第一交易的第四部分簽名,并將其發(fā)送至所述第二節(jié)點(diǎn);以及,在所述第二節(jié)點(diǎn),使用其相應(yīng)的份額來生成所述第一交易的第二部分簽名,并組合所述第二部分簽名、所述第三部分簽名和所述第四部分簽名,以生成所述第一交易上的簽名。
50、可選地,所述方法還包括以下步驟:分布式地生成第二閾值私鑰中的多個(gè)第二份額,以使每個(gè)節(jié)點(diǎn)持有相應(yīng)的第二份額,其中與所述第二閾值私鑰相關(guān)聯(lián)的第二閾值公鑰是持有賬戶的地址;創(chuàng)建用于將資金轉(zhuǎn)移至所述持有賬戶的第二交易;在所述第二、第三和第四節(jié)點(diǎn),使用相應(yīng)的第二份額來生成所述第二交易上的部分簽名;以及,組合所述部分簽名以生成所述第二交易上的簽名。
51、可選地,所述方法還包括以下步驟:在所述第一節(jié)點(diǎn)和所述第二節(jié)點(diǎn)之間、所述第一節(jié)點(diǎn)和所述第三節(jié)點(diǎn)之間、所述第二節(jié)點(diǎn)和所述第三節(jié)點(diǎn)之間、以及所述第二節(jié)點(diǎn)和第四節(jié)點(diǎn)之間創(chuàng)建安全通信通道。
52、可選地,借助于相應(yīng)的沙米爾秘密共享方案來創(chuàng)建所述第一份額。
53、可選地,多個(gè)所述第一份額是第一多項(xiàng)式函數(shù)的相應(yīng)值,并且可以通過從第一閾值數(shù)量的所述份額推導(dǎo)出所述多項(xiàng)式函數(shù)來確定所述第一閾值私鑰。
54、可選地,借助于聯(lián)合隨機(jī)秘密共享(jrss)在多個(gè)所述節(jié)點(diǎn)之間共享所述第一閾值私鑰。
55、可選地,所述密碼系統(tǒng)是橢圓曲線密碼系統(tǒng),其中每個(gè)所述公鑰-私鑰對中的所述公鑰通過將橢圓曲線生成點(diǎn)乘以所述私鑰而與對應(yīng)的私鑰相關(guān)。
56、根據(jù)本發(fā)明的另一方面,提供了一種用于執(zhí)行上文所定義的方法的計(jì)算機(jī)實(shí)現(xiàn)的系統(tǒng)。