Please describe your proposed solution.
Problem:
Storing HD wallet seed phrases is stressful. Current methods, including paper and offline storage, have risks of misplacement and hacking, leading to significant cryptocurrency losses.
Solution:
Our solution is a user-friendly decentralized seed phrase manager for Cardano. It encrypts seed phrases using On-Chain Encrypted Storage, enhancing security and convenience. By distributing seed phrases on the blockchain, the solution mitigates the risks associated with centralized storage, making it challenging for a single entity to compromise multiple seed phrases.
How it Works:
- The user submits 23/24 seed words, keeping 1 hidden for extra security.
- Index of the hidden word and passphrase are provided.
- Personal info (hashed) is added for UTXO identification.
- Dapp encrypts 23 words and indexes using AES encryption with the passphrase, storing it on-chain.
- Personal info is hashed and parameterized for script address.
Implementation:
- Parameterized smart contract on Cardano Blockchain using Plutus/Plutarch.
- On-chain logic mainly for storage, with an option to withdraw min ADA if needed.
- Off-chain code using Lucid for AES encryption and UTXO locking.
Recovery:
Users can recover their seed phrase by providing passphrase and personal info in the exact order. The Dapp decrypts and provides the 23 words + index, ensuring a safe recovery mechanism.
Importance Of This Solution:
- Offers a recovery mechanism for lost seed phrases.
- Simplifies information storage for recovery, encouraging users to define passphrases and personal info rather than storing their seed phases directly on their computer, on a piece of paper, or using some other insecure/expensive storage mechanism.
- Enhances security by allowing multiple storage locations without compromising funds.
Target Audience:
All self-custody crypto users, including those from other chains. Encourages central exchanges to provide enhanced security features for self-custody wallets.
Impact Measurement:
Evaluate impact through community adoption, user feedback, and the increasing number of users utilizing the solution.
Prototype Access:
Access the prototype on GitHub, which includes a Next.js application with TypeScript and lucid-cardano for off-chain. Plutarch code is available separately. Blockfrost API keys and Nami wallet are required for connection.
Off-Chain Lucid Code:
<https://github.com/rchak007/decentralSeedRecover/blob/main/pages/offChain.tsx>
On-Chain plutarch Code:
<https://github.com/rchak007/decentralSeedRecover/blob/main/pages/onChain.hs>
Please see the Pilot Test with Cardano PreProd section here:
<https://github.com/rchak007/decentralSeedRecover> for testing simple GUI and the test results.