IP Library Granted Patent US 11,637,708
Granted Patent B2
US 11,637,708 · App. 17/320,220 · Granted Apr 25, 2023

Method for creating a hierarchical threshold signature digital asset wallet

Inventor: Chiu Hung Hung (Hong Kong, HK)
H04L9/3247H04L9/007H04L9/008H04L9/085H04L9/0825H04L9/0861H04L2209/56
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,637,708
App. No.
17/320,220
Granted
Apr 25, 2023
Kind
B2
Abstract

A method for creating a hierarchical threshold signature digital asset wallet using a hierarchical distributed key generator (DKG) and a signature protocol includes steps of generating a public key by users and the digital asset wallet service platform, securing and controlling a portion of shares, sending a transaction signing request, validating the transaction signing request, creating a signature of the signed transaction, and uploading the signed transaction to the corresponding digital asset blockchain network and monitoring the execution of the signed transaction.

Claims (46)

1. A method for creating a hierarchical threshold digital asset wallet using a hierarchical distributed key generator (DKG) and a signature protocol, the method comprising:

generating a public key by a user on a user device ( 102 ) and a digital asset wallet service platform ( 101 ) using a hierarchical threshold key generation protocol ( 400 );

securing and controlling a portion of shares by the user and the digital asset wallet service platform ( 101 ) in one or more of m disjoint subsets for generating of a signature of a signed digital asset transaction;

sending a transaction signing request by the user through a wallet service API ( 201 ) to the digital asset wallet service platform ( 101 ) for transferring digital assets outside the hierarchical threshold digital asset wallet;

validating the transaction signing request by determining whether the transaction signing request adheres to a predefined access policy;

facilitating the user device ( 102 ) and the digital asset wallet service platform ( 101 ) on a successful validation to jointly run a hierarchical threshold signature protocol ( 500 );

creating a signature of a signed transaction using the hierarchical threshold signature protocol ( 500 ); and

uploading the signed transaction to a corresponding digital asset blockchain network and monitoring execution of the signed transaction;

wherein the method allows a plurality of users to jointly generate the public key using the hierarchical threshold key generation protocol ( 400 ) comprising steps of:

broadcasting the public key (E i ) for a homomorphic encryption by the user (P i ) and wherein P i =P i ∈U);

constructing two random polynomial values (f_i and f_i′) and broadcasting (C_ij);

computing the shares (sh i-j and sh′ i-j ) corresponding to each user (P i ∈U) and sending the shares (sh i-j and sh′ i-j ) through a secure channel;

checking the shares (sh i-j and sh′ i-j ) for consistency by verifying for i=1, . . . , n (i≠j);

computing (x i ) by each user (P i ∈U) by adding a received private share and x i =Σ j sh j→i ;

broadcasting a broadcast value (A il ) by each user (P i ∈U) for added private shares;

checking the broadcast value (A il ) by each user (P i ∈U) to verify (G shi→j ) value;

associating a RSA modulus (Ni=piqi) with the public key (Ei); and

setting the public key to y=Π i y i by each user (P i ∈U);

wherein each user (P i ∈U) proves in a Zero-knowledge that user knows x i using a Schonorr's protocol and p i q i using a proof of knowledge of integer factorization.

2. The method as claimed in claim 1 , wherein the hierarchical threshold key generation protocol ( 400 ) is configured to provide a signing power to a n multiple shares.

3. The method as claimed in claim 2 , wherein a set of the n multiple shares is partitioned into m disjoint subsets of shares (U1, U2, . . . , Um).

4. The method as claimed in claim 1 , wherein users in a same subset have equal authority level.

5. The method as claimed in claim 1 , wherein an authorized subset is defined by an increasing sequence of threshold parameters t 0 <t 1 < . . . <t m .

6. A method for creating a hierarchical threshold digital asset wallet using a hierarchical distributed key generator (DKG) and a signature protocol, the method comprising:

generating a public key by a user on a user device ( 102 ) and a digital asset wallet service platform ( 101 ) using a hierarchical threshold key generation protocol ( 400 );

securing and controlling a portion of shares by the user and the digital asset wallet service platform ( 101 ) in one or more of m disjoint subsets for generating of a signature of a signed digital asset transaction;

sending a transaction signing request by the user through a wallet service API ( 201 ) to the digital asset wallet service platform ( 101 ) for transferring digital assets outside the hierarchical threshold digital asset wallet;

validating the transaction signing request by determining whether the transaction signing request adheres to a predefined access policy;

facilitating the user device ( 102 ) and the digital asset wallet service platform ( 101 ) on a successful validation to jointly run a hierarchical threshold signature protocol ( 500 );

creating a signature of a signed transaction using the hierarchical threshold signature protocol ( 500 ); and

uploading the signed transaction to a corresponding digital asset blockchain network and monitoring execution of the signed transaction, wherein the method further allows plurality of users to create a joint threshold digital signature using the signature protocol, wherein the method comprising:

selecting a set of users (S⊆[1 . . . n]) by user (P i ∈U) to participate in the signature protocol;

computing [C i ,D i ] by selecting random values (k i ,γ i ) by each user (P i ∈U), and [C i ,D i ]=Com(g γ i );

broadcasting C i ;

running two multiplicative-to-additive (MtA) share conversion sub-protocol by a pair of user (P i ,P j );

broadcasting δ i by every pair of the user (P i ∈U) and broadcasting δ;

broadcasting D i by each user (P i ∈U);

computing s i =mk i +rσ i by each user (P i ∈U);

selecting random values l i ,ρ i by each user (P i ∈U) and compute [Ĉ i ,{circumflex over (D)} i ];

broadcasts Ĉ i and {circumflex over (D)} i by each user (P i ∈U);

computing U i =V ρ i and T i =Δ ρ i by each user (P i ∈U) and commits [{tilde over (C)} i ,{tilde over (D)} i ]=Com(U i ,T i ) and broadcast {tilde over (C)} i ;

broadcasting {tilde over (D)} i by each user (P i ∈U) to decommit to and broadcasting s i and computing s by each user (P i ∈U);

wherein when (r,s) is a valid signature then the user (P i ∈U) accepts and ends the signature protocol.

7. The method as claimed in claim 6 , wherein the signature protocol runs on an input m and an output of the hierarchical threshold key generation protocol ( 400 ).

8. The method as claimed in claim 7 , wherein the signature protocol is a conjunctive hierarchical threshold signature protocol ( 500 ).

9. The method as claimed in claim 1 , wherein the public key is shared using a verifiable hierarchical threshold secret sharing protocol (VHTSS).

Continuity (2)
Provisional Application 63025147 · May 14, 2020
Related Publication 20210359863A1 · Nov 18, 2021
Cited By (5)
US 12,476,826 US 12,494,922 US 12,542,658 US 12,647,282 US 12,712,713