Private keys should be near to impossible to extract

Cypherock X1 consists of a decoupled architecture. Unlike other wallets, the computation happens on the X1 Vault and the storage as 5 cryptographic parts between the X1 Vault and 4 X1 Cards. The X1 Vault does not store any private keys/seed phrases as a whole permanently. It only stores the wallet names created by the user and an encrypted cryptographic part (without MAC and nonce) of each wallet in its flash memory.

Once a wallet is created (new wallet is generated from X1 or restored from an existing seed phrase) on the X1 Vault, the ENT as mentioned above is sharded, and the shards generated are sent to the X1 Cards. On the reconstruction step from the X1 Cards, the private key generated back from the threshold shards is only stored in the RAM of the X1 Vault till the time the transaction is signed or the user notes down the seed phrase. If the X1 Vault is powered off at this stage, there is no persistence of the private keys since the RAM is a volatile memory. In a static state, the X1 Vault never holds any sensitive information about the whole private keys making it worthless to attack. In the complete lifecycle of the product, never once is the private key stored as a whole in the flash memory of the generic microcontroller which makes extracting the private keys near impossible. Hence Cypherock X1 is resistant to physical attacks which are prevalent in other hardware and software wallets.

Last updated