# 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.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.cypherock.com/design-decisions/private-keys-should-be-near-to-impossible-to-extract.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
