US 12,256,027 B2
Systems and methods for performing two-tiered multi-party computation signing procedures to perform blockchain operations
Luis Ocegueda, San Mateo, CA (US); Cassandra Alexandria Heart, Wichita, KS (US); Anika Raghuvanshi, San Francisco, CA (US); Adam C. Everspaugh, Evanston, IL (US); Jonathan Ariel Bergknoff, Richardson, TX (US); Michael Lodder, Lehi, UT (US); Paras Shah, Sunnyvale, CA (US); and Xiang Li, Kirkland, WA (US)
Assigned to Coinbase, Inc., Oakland, CA (US)
Filed by Coinbase, Inc., Oakland, CA (US)
Filed on Jun. 24, 2022, as Appl. No. 17/849,570.
Prior Publication US 2023/0421396 A1, Dec. 28, 2023
Int. Cl. H04L 9/00 (2022.01); H04L 9/08 (2006.01); H04L 9/32 (2006.01)
CPC H04L 9/50 (2022.05) [H04L 9/3247 (2013.01); H04L 9/085 (2013.01); H04L 9/3297 (2013.01); H04L 2209/46 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A system for performing a two-tiered multi-party computation (MPC) for authorizing use of cryptography-based digital repositories in order to perform blockchain operations in decentralized applications, the system comprising:
a cryptography-based, storage application for a first user account, wherein the cryptography-based, storage application corresponds to a plurality of partial private keys;
a plurality of user devices, wherein each of the plurality of user devices corresponds to one of the plurality of partial private keys; and
a remote coordination server comprising an application programming interface (API) configured to perform operations comprising:
receiving, from a first user device, a first user request to perform a blockchain operation for a first cohort for the first user account, wherein the first cohort includes user devices authorized to contribute to a first tier of a digital signing ceremony featuring a MPC signing procedure for conducting blockchain operations corresponding to the cryptography-based, storage application for the first user account;
coordinating the first tier of the digital signing ceremony in an asynchronous manner by:
transmitting, at a first time, a first request for a first communication to the first user device of the plurality of user devices;
receiving, at a second time, the first communication from the first user device; and
determining whether a difference between the first time and the second time does not exceed a first time threshold, wherein the first time threshold corresponds to an asynchronous time period;
in response to determining that the difference between the first time and the second time does not exceed the first time threshold, coordinating a second tier of the digital signing ceremony in an synchronous manner by:
transmitting, at a third time, a third request for a third communication to a second user device of the plurality of user devices;
receiving, at a fourth time, the third communication from the second user device; and
determining whether a difference between the third time and the fourth time does not exceed a second time threshold, wherein the second time threshold corresponds to a synchronous time period; and
in response to determining that the difference between the third time and the fourth time does not exceed the second time threshold, performing the blockchain operation.