US 11,695,553 B2
Generation of a multi-user contextual portfolio of private keys and use of such a portfolio
Christine Hennebert, Grenoble (FR); and Florian Barrois, Grenoble (FR)
Assigned to COMMISSARIAT A L'ENERGIE ATOMIQUE ET AUX ENERGIES ALTERNATIVES, Paris (FR)
Filed by COMMISSARIAT A L'ENERGIE ATOMIQUE ET AUX ENERGIES ALTERNATIVES, Paris (FR)
Filed on Sep. 8, 2020, as Appl. No. 17/14,860.
Claims priority of application No. 19 09897 (FR), filed on Sep. 9, 2019.
Prior Publication US 2021/0075603 A1, Mar. 11, 2021
Int. Cl. H04L 9/08 (2006.01); H04L 9/06 (2006.01); G06Q 20/38 (2012.01); G06Q 20/36 (2012.01)
CPC H04L 9/0861 (2013.01) [G06Q 20/3825 (2013.01); G06Q 20/3829 (2013.01); H04L 9/0618 (2013.01); H04L 9/0825 (2013.01); H04L 9/0894 (2013.01); G06Q 20/363 (2013.01); G06Q 20/3674 (2013.01)] 18 Claims
OG exemplary drawing
 
1. A method of generating a hierarchical deterministic keys portfolio containing private keys according to a tree structure to sign transactions sent to a blockchain, said method comprising:
creating, during an initialization phase, an administrator account;
protecting, during the initialization phase, access to the administrator account by an administrator authentication element;
generating, during the initialization phase, a master private key (km) by hashing a random seed, the master private key being stored in a secure memory area of a mobile device;
creating, during a parameter setting phase, a plurality of usage context identifiers from the administrator account, each usage context identifier pointing to an address in the secure memory area in which conditions for use of a private key in said context are stored;
creating, during the parameter setting phase, a plurality of user accounts from the administrator account, each user account being associated with a private key in the tree structure, each user account being identified by an identifier and access to each user account being protected by a user authentication element, the private key of a corresponding user being obtained from the master private key, the usage context identifier to which the user account is attached, and an identifier of the user;
hashing the identifier and using the hashed identifier to deduce at least one index; and
using the at least one index to generate the private key of the user.