Please describe your proposed solution
<u>Unlocking the Potential of Cardano’s Data Storage and Management: A Discovery Approach</u>
The goal of this project is to analyze, identify, and document optimal mechanisms and strategies that leverage Cardano's UTxO datum structure and transaction metadata for data management and storage.
The "Decentralized Seed Phrase Storage and Management" solution serves as a prime use case for research, analysis, and evaluation due to its sensitivity and security requirements.
The rationale is that if these mechanisms can securely store and manage private and sensitive data like seed phrases, they can be effectively applied to any other type of data.
Discovering Ideal Core Data Processing Strategies:
We will strategically explore the fundamental building blocks of data management, exploring data encoding mechanisms, compression algorithms and cryptography, and other core techniques, to fully assess and push the boundaries of what is possible with data storage and management on the Cardano blockchain.
Problem Statement: Why On-chain Tokenization?
Current data storage solutions across various industries, including medicine, science, and entertainment, face significant challenges in security, cost, and scalability, limiting their effectiveness in a decentralized world. Specifically, the management of sensitive information like seed phrases suffers from risks such as data theft and single points of failure. These issues hinder broader blockchain adoption in practical, everyday applications.
Solution Statement:
This project harnesses the power of tokenized data management using UTxO datum structures and transaction metadata to fabricate a secure, user-friendly and fully decentralized Seed Phrase Recovery Manager for Cardano.
In the this project would serve as a proof-of-concept to illustrate how data can be securely encrypted, stored, managed and retrieved on-chain. By distributing seed phrases through a decentralized storage mechanism, we enhance security and usability, making it nearly impossible for a single entity to compromise the system. This project aims to demonstrate the broader potential of tokenized data storage and management, enabling secure, practical applications across multiple industries while setting a new standard for decentralized data handling.
How it Works:
- The user submits 23 out of 24 seed words, keeping 1 hidden for extra security.
- Index of the hidden word and passphrase are provided.
- The user-provided personal info is hashed and parameterized to create a script address for every user and for UTxO identification.
- Dapp encrypts 23 words and indexes using AES encryption with the passphrase.
- Dapp performs data size management techniques on the encrypted data storing it as UTxO Datum on-chain.
- Other currently undiscovered data security and data management techniques will be analysed and disclosed in proper documentation.
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 phrases by providing a passphrase along with their personal info which was provided at the point of account creation in that exact order. The Dapp decrypts and provides the 23 words + index, ensuring a safe recovery mechanism.
Security Optimization:
A series of tests and benchmarks between security optimisation techniques are currently being analysed and synthesized to attain the ideal and optimum security workflow architecture against all possible attacks without compromising efficiency, ease of use and decentralisation. some of these techniques include; implementing recursive encryption mechanisms, utilizing Transaction Token Patterns such as On-chain Merkle Trees and "linked lists" UTxOs, compression algorithms, encrypted randomly generated keys for data encryption etc.
Importance Of This Solution:
- Documentation about this project would offer in its code base, templated source code as a resource and as information to developers about how the Cardano blockchain can be utilised as a storage mechanism and to manage data for various use cases in a decentralised fashion.
- 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 blockchain networks. Encourages central exchanges to provide enhanced security features for self-custody wallets. Delo
Impact Measurement:
- Source of reference and information for developers to implement specific solution components for various use cases.
- Evaluate impact through community adoption, user feedback, and the increasing number of users utilizing the solution within the blockchain ecosystem at large.
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.