This is just factually incorrect. One of the main weaknesses of every Shamir's secret sharing scheme is that they all have a single point of failure - the device which creates the shares in the first place and the device on which the shares are brought back together in order to recover the original secret. This is one of the biggest disadvantages of SSS over multi-sig, which (when used properly) truly has no single point of failure.
It means no single point of failure in private key storage. The only point of failure comes when the user is actually transacting with the X1 Vault and the card. Even in that case, the private key only exists in the temporary memory during transaction signing and the private key as a whole never touches the permanent storage. Also in most multisig wallet cases, if a single user is operating it, whether we like it or not, the user is using 2 wallets at the same time at the same place which defeats the purpose of multisig. And again, we are trying to build the best possible wallet for securing a single seed. You are free to use Cypherock X1 as part of a multisig wallet setup as well. Rather than comparing us with multisig wallets, a fair comparison is actually other hardware wallets.
How? Let's say I am an average user, lose my vault, and you have gone out of business so I cannot purchase another vault. How do I recover my seed phrase from two or more cards? Bear in mind I am an average user who is unable to manually extract data from NFC cards, unable to clone and compile github repos, and so on. How do I recover my coins?
We are building an open source Android and IOS apps that will do this. Here is a
sample prototype for the same. Regardless, if you have the X1 Vault, you can always view the seed phrase with the help of another card. Also, we have answered this question on our FAQ page -
https://cypherock.com/faqYou or an attacker doesn't need to be able to compromise the cards. I have to use the device to recreate my seed phrase in order to sign transactions. Compromising the device is sufficient to compromise my wallets.
Never did we say that this was enough. Compromising the device to steal the assets is not enough since the user will still need to use the cards along with the device atleast once. The PIN protection on the card is separately enforced on the card itself and the card have end-to-end encrypted session-based communication with the device. Which means, it also authenticates the device during communication.
By no means this is perfect but we think it adds a barrier against an insider attack. Additionally, we are open source and the firmware builds have been verified by Wallet Scrutiny -
https://walletscrutiny.com/hardware/cypherockx1/
If only 2 cards can access my coins then I need to protect the cards too, so if I lose 2 cards that means I lose my coins, and if I need X1 Vault with one of the cards then there is a central point of failure which is X1 Vault.
There is a PIN protection on card also individually if set which protects against cases of collusion. You can lose upto 3 hardware components and still be fine since you can recover the assets from device + card or 2 cards. So no, you don't lose your coins if you lose 2 cards. Answering along the similar lines as I answered before, the only point of failure comes when you are actually transacting with the X1 Vault and the card. Even in that case, the private key only exists in the temporary memory during transaction signing and the private key as a whole never touches the permanent storage.
If you are comparing to multisig, in most multisig wallet cases, if a single user is operating it, whether we like it or not, the user is using 2 wallets at the same time at the same place which defeats the purpose of multisig. And again, we are trying to build the best possible wallet for securing a single seed. You are free to use Cypherock X1 as part of a multisig wallet setup as well.
In addition, NFC is a short-range wireless connectivity which adds more problems because of wireless connection.
There is encrypted NFC communication session established between the device and the cards before any sensitive message is exchanged. Not sure what the concerns are then. Also, I personally don't get the point of rallying against wireless connectivity. A hardware wallet is built keeping a threat model in mind. Atleast for Cypherock X1, we assume your PC and its communication medium with the wallet both are compromised and still the hacker should not be able to compromise the assets until you physically authorize a particular transaction.
Can I extract wallet seed from the X1 Vault?
No. The wallet seed is never permanently stored on the X1 Vault.
Does this mean that it is similar to Ledger Recovery but is non-KYC? I advise any HW service to stay away from the complications of inheritance or the possibility of the user recovering his seed because it means that a third party will keep part of encrypted seed, which contradicts all the concept of hardware wallets.
No. The seed will NEVER leave the secure hardware environment in our case ever. More on this soon when we release the specs on the same.
Agreed, despite the fact that basic procedure for SSSS is well-defined, AFAIK, there is no standard for its algo/protocol. Consequently, implementation can vary across different systems, potentially leading inconsistencies. That is why any specific device-based or software wallet employing SSSS presents a single point of failure resulted from lack of standardization.
I agree, this is definitely one of the things we realize the industry needs badly. Our implementation is open source and we hope it gets adopted and standardized further. When we started building Cypherock X1, we looked into Trezor's implementation of Shamir backups but concluded that any implementation that is going to scale, needs to be BIP39 compatible to be adopted. Hence we had to develop our own implementation.
Though I don't think the lack of standardization is going to result in single point of failure. The code is always open source and BIP39 compatibility makes your seed interoperable with other wallets.
Regardless, you can always pair it with Multisig to standardize your key custody if that helps.
[moderator's note: consecutive posts merged]