US 12,225,127 B2
Address verification, seed splitting and firmware extension for secure cryptocurrency key backup, restore, and transaction signing platform apparatuses, methods and systems
Vladimir Tsitrin, Acton, MA (US); and Gang Cheng, Nashua, NH (US)
Assigned to FMR LLC, Boston, MA (US)
Filed by FMR LLC, Boston, MA (US)
Filed on Apr. 12, 2022, as Appl. No. 17/719,344.
Application 17/719,344 is a continuation in part of application No. 16/421,442, filed on May 23, 2019, granted, now 10,992,469.
Application 16/421,442 is a continuation in part of application No. 15/984,280, filed on May 18, 2018, granted, now 10,778,439.
Application 15/984,280 is a continuation in part of application No. 15/898,224, filed on Feb. 15, 2018, granted, now 10,644,885.
Application 15/898,224 is a continuation in part of application No. 15/486,243, filed on Apr. 12, 2017, granted, now 11,488,147.
Application 15/984,280 is a continuation in part of application No. 15/456,461, filed on Mar. 10, 2017, granted, now 10,461,940.
Application 15/984,280 is a continuation in part of application No. 15/210,813, filed on Jul. 14, 2016, abandoned.
Application 15/898,224 is a continuation in part of application No. 15/210,781, filed on Jul. 14, 2016, abandoned.
Application 15/898,224 is a continuation in part of application No. 15/210,807, filed on Jul. 14, 2016.
Application 15/898,224 is a continuation in part of application No. 15/210,817, filed on Jul. 14, 2016.
Application 15/898,224 is a continuation in part of application No. 15/210,795, filed on Jul. 14, 2016, abandoned.
Application 15/898,224 is a continuation in part of application No. 15/210,821, filed on Jul. 14, 2016, abandoned.
Application 15/898,224 is a continuation in part of application No. 15/209,709, filed on Jul. 13, 2016.
Application 15/898,224 is a continuation in part of application No. 15/209,714, filed on Jul. 13, 2016, granted, now 10,339,523.
Application 15/898,224 is a continuation in part of application No. 15/209,701, filed on Jul. 13, 2016, abandoned.
Application 15/898,224 is a continuation in part of application No. 15/019,926, filed on Feb. 9, 2016, abandoned.
Application 15/898,224 is a continuation in part of application No. 14/963,165, filed on Dec. 8, 2015, granted, now 10,504,179.
Application 15/898,224 is a continuation in part of application No. 14/799,229, filed on Jul. 14, 2015, abandoned.
Application 15/898,224 is a continuation in part of application No. 14/799,242, filed on Jul. 14, 2015, abandoned.
Application 15/898,224 is a continuation in part of application No. 14/799,282, filed on Jul. 14, 2015, abandoned.
Application 15/898,224 is a continuation in part of application No. PCT/US2016/042169, filed on Jul. 13, 2016.
Claims priority of provisional application 62/509,011, filed on May 19, 2017.
Claims priority of provisional application 62/273,450, filed on Dec. 31, 2015.
Claims priority of provisional application 62/273,452, filed on Dec. 31, 2015.
Claims priority of provisional application 62/273,449, filed on Dec. 31, 2015.
Claims priority of provisional application 62/273,447, filed on Dec. 31, 2015.
Claims priority of provisional application 62/273,453, filed on Dec. 31, 2015.
Prior Publication US 2022/0321340 A1, Oct. 6, 2022
Int. Cl. H04L 9/08 (2006.01); G06F 21/60 (2013.01); G06F 21/62 (2013.01); H04L 9/00 (2022.01); H04L 9/32 (2006.01)
CPC H04L 9/0894 (2013.01) [G06F 21/602 (2013.01); G06F 21/6218 (2013.01); H04L 9/0825 (2013.01); H04L 9/0838 (2013.01); H04L 9/3234 (2013.01); H04L 9/50 (2022.05); H04L 2209/56 (2013.01)] 13 Claims
OG exemplary drawing
 
1. A verified address smart contract deploying apparatus, comprising:
at least one memory;
a component collection stored in the at least one memory;
at least one processor disposed in communication with the at least one memory, the at least one processor executing processor-executable instructions from the component collection, the component collection storage structured with processor-executable instructions, comprising:
obtain, via the at least one processor, a contract deployment request message datastructure by a hardware security module (HSM) from a transaction signing server (TSS), in which the contract deployment request message datastructure is structured to specify a set of owner datastructures, a deployment factory address, and contract code for a smart contract;
determine, via the at least one processor, by the HSM, owner key identification parameters associated with an owner datastructure in the set of owner datastructures, in which the owner key identification parameters are structured to specify a keyset identifier and a keychain path;
determine, via the at least one processor, by the HSM, an owner public key associated with the owner datastructure using the owner key identification parameters;
generate, via the at least one processor, by the HSM, an owner address associated with the owner datastructure using the owner public key;
generate, via the at least one processor, by the HSM, a salt value for the smart contract;
calculate, via the at least one processor, by the HSM, a contract address for the smart contract as a function of the deployment factory address, the salt value, the contract code, and the owner address;
determine, via the at least one processor, by the HSM, an owner private key associated with the owner datastructure using the owner key identification parameters, in which the owner private key corresponds to the owner public key;
sign, via at least one processor, by the HSM, the contract address for the smart contract using the owner private key to generate a contract deployment signature; and
provide, via at least one processor, by the HSM, a contract deployment data datastructure to the TSS, in which the contract deployment data datastructure is structured to specify the salt value, and the contract deployment signature.