US10903991B1 — Systems and methods for generating signatures (Part 2 of 2)

Bitcoin Research — Law, Regulation, Markets & Origins (2026)

Patents

2

2020-08-03

Document text

Research, not advice. Part of the Bitcoin research archive (October 2026). Claims labelled unverified, contested or fringe are reported, not endorsed; statuses of bills and rules are as of the date checked. Government, court and patent records are public domain; the research notes are CC BY 4.0.

private key, and                       decrypting and validating the encrypted message signing
  generating each encrypted message signing key share by              key share for the participant system ,
    encrypting each message signing key share to a differ-         generating a nonce seed , and
    ent participant, wherein encrypting a key share to a           generating a nonce by using the nonce seed and the
    participant comprises encrypting the key share by using 50        validated and
    at least the participant's encryption public key and the       decrypted message signing key share for the participant
    participant's authentication public key.                          system ; and
   3. The method of claim 2 ,                                    securely providing the encrypted additional signing data
   further comprising: selecting a participant group ,           shares to the message signing system ;
  wherein generating each encrypted message signing key 55 with the message signing system , in response to receiving
       share comprises encrypting each message signing key            encrypted additional signing data shares from a thresh
       share to a different participant included in the selected      old number of participant systems : in a subsequent
       participant group .                                            broadcast round, securely providing to each of the
   4. The method of claim 3 , wherein the message signing             plurality of participant systems the message , the
system initiates the first broadcast round in response to 60          encrypted message signing key share encrypted to the
receiving a message signing request that identifies the mes-          participant of the participant system , and each
sage .                                                                encrypted additional signing data share encrypted to the
   5. The method of claim 4 , further comprising: with the            participant;
message signing system , receiving from at least a threshold       with each participant system for a second set of the
number of participants of the participant group, updated 65           message signing participants:
versions of the encrypted additional signing data shares that generating a partial signature by using the message , the
have been generated by a proactive secret sharing process . encrypted message signing key share encrypted to the par
                                                   US 10,903,991 B1
                             31                                                                 32
ticipant, and each encrypted additional signing data share              15. The method of claim 14 , further comprising : with the
encrypted to the participant, and                                    secure key generation system : for each participant,
securely providing the partial signature to the message                 generating a shared symmetric key by using:
signing system ; and                                                 a private authentication key of the secure key generation
   with the message signing system , in response to receiving 5 system ,
      partial signatures from the threshold number of partici the participant's encryption public key,
     pant systems, generating a full signature for the mes a private ephemeral encryption key of the secure key gen
      sage by aggregating the received partial signatures.           eration system, and
   13. The method of claim 12 ,                                      the participant's authentication public key ; and
   further comprising:                                            10
                                                                        encrypting the participant's message signing key share
   with the secure key generation system , securely providing              with the generated shared symmetric key .
      a key share secret sharing proof to the message signing
      system ; and                                                      16. The method of claim 15 , further comprising: with at
   with the message signing system , in the first broadcast least a threshold number of participants , updating the
     round, securely providing to each of a plurality of 15 proactiveencrypted secret
                                                                                  additional signing data shares by performing a
                                                                                        sharing process.
      participant systems the key share secret sharing proof,
   wherein decrypting and validating the encrypted message              17. The method of claim 15 ,
      signing key share for a participant system of the first set       further comprising: with each participant system in the
      of message signing participants comprises:                           first broadcast round :
      decrypting the encrypted message signing key share by 20 generating the shared symmetric key by using :
         using at least the associated participant's encryption a public authentication key of the secure key generation
         private key and the associated participant's authen- system ,
         tication private key, and                                   the encryption private key of the participant of the partici
      validating the decrypted message signing key share by pant system ,
         using the key share secret sharing proof;                25 a public ephemeral encryption key of the secure key gen
   wherein generating encrypted additional signing data eration system , and
      shares with a participant system of the first set of the authentication private key of the participant,
      message signing participants further comprises:
splitting the additional signing data into a plurality of wherein               the participant system uses the generated shared
                                                                     symmetric key to decrypt the message signing key share of
additional  signing
secret sharing proofdata  shares
                     for the      and generating
                             additional data ; and a signing 30 the participant associated with the participant system
generating each encrypted additional signing data share by       further comprising: with each participant system in the
                                                                    first broadcast round :
encrypting each additional signing data share to a different generating
participant, wherein encrypting an additional signing data                  a shared symmetric key between the participant
share to a participant comprises encrypting the additional 35 of the participant system and each other participant,
signing data share by using at least the participant's encryp wherein the shared symmetric key between the participant
tion public key and the participant's authentication public and another participant is generated by using:
key,                                                          the private authentication key of the participant,
wherein the participant system provides the signing secret the other participant's encryption public key,
sharing proof to the message signing system .              40 a private ephemeral encryption key of the participant, and
  14. The method of claim 13 ,
  further comprising: with the message signing system , in the    other participant's authentication public key ; and
     the subsequent broadcast round , securely providing to ing data the
                                                              wherein      participant system encrypts the additional sign
     each of the plurality of participant systems the key sponding sharedtosymmetric
                                                                        share     another participant by using the corre
     share secret sharing proof, and each signing secret 45 further comprising with akey       ;
                                                                                             participant system in the sub
     sharing proof,                                                 sequent broadcast round :
  wherein generating a partial signature with a participant generating    the shared symmetric key for an encrypted addi
     system in the subsequent broadcast round comprises:
  decrypting the encrypted message signing key share by tional signing data share by using :
     using at least the participant's encryption private key 50 a public authentication key of the sending participant that
     and the participant's authentication private key;              provided the encrypted additional signing data share to
  validating the decrypted message signing key share by             the message signing system ,
     using the key share secret sharing proof;                   the participant's encryption private key,
  for each encrypted additional signing data share, decrypt-     a public ephemeral encryption key of the sending partici
     ing the encrypted additional signing data share by using 55    pant, and
    at least the participant's encryption private key and the   the participant's authentication private key; and
    participant's authentication private key, and validating therein  the participant system in the subsequent broadcast
    the additional signing data share by using the signing round decrypts     the encrypted additional signing data share
    secret sharing proof;                                     with the generated  shared symmetric key.
  generating the partial signature by using the message and 60 18. The method of
    the validated and decrypted message signing key share, randomly generated. claim 12 , wherein the nonce seed is
    and each validated and decrypted additional signing
     data share .