Please describe your proposed solution
The proposed solution is actually an extension of the Summon Snapshot Voting system - which is the prototype for this solution. In Summon Snapshot Voting a user is asked to choose from a pre-defined selection of choices (i.e. Yes, No, or Abstain) and then sign a message with the value choice to cryptographically prove their selection. However, the poll manager can also make the poll more complicated by default - such as during the NFTxLV vote for Best Artist in the Gallery where several dozen names could be chosen. Interested people can investigate this prototype technology on the Summon Platform at <https://smmn.app>
We have already done special customizations of the tool by allowing users to enter their own text (i.e numbers) such as the time we asked for values and thresholds to be proposed for the CIP-1694 Initial Governance Settings Survey. Once this special survey was completed we uploaded the results to IPFS and then enshrined the URL on the Cardano blockchain. We will take this prototype to the next level by creating a system that automates posting the user-created message to IPFS and the Cardano Blockchain.
Message Creation and Signing:
- Any ADA holder can initiate an announcement. This inclusivity ensures that the system is democratized and accessible to all within the community.
- The user types their message into a text entry box on the dApp interface. This text entry box is the primary user interface for inputting the content of the announcement.
Cryptographic Hashing:
- Upon entering the message, the user signs it using their Cardano private key. This step is crucial as it binds the identity of the sender to the message, ensuring that the message authenticity and sender can be verified.
- Signing the message generates a cryptographic hash of the text. This hash acts as a digital fingerprint of the message, unique to its content. Any alteration of the message would result in a different hash, thereby alerting to tampering or alterations.
Blockchain Transaction:
- The message hash is then embedded into a Cardano blockchain transaction. This transaction records the hash on a decentralized and immutable ledger, providing a time-stamped, secure record of the message’s creation.
IPFS Posting:
- Alongside the blockchain transaction, the full message text, its corresponding hash, and the transaction ID from the blockchain are posted on IPFS. IPFS is chosen for its decentralized nature, which aligns with the ethos of blockchain technology, providing resilience against censorship and server failures.
- IPFS stores the data in a distributed manner across various nodes, ensuring the data remains accessible and permanent.
Message Display through dApps:
- A custom decentralized application (dApp) is used to display the IPFS file. This dApp can be hosted on the Summon Platform or any other platform that supports decentralized applications.
- The dApp fetches and renders the message text, hash, and transaction ID directly from IPFS, ensuring that anyone accessing the message can view its contents and verify its authenticity independently.
Advantages of the Solution:
- Security and Transparency: The use of cryptographic signing and blockchain ensures that each message is securely recorded and transparently verifiable.
- Decentralization: By utilizing IPFS and the Cardano blockchain, the system remains decentralized, reducing reliance on any single point of failure.
- Accessibility: Any ADA holder can make announcements, making the system inclusive and community-focused.
- Verification: The combination of IPFS and blockchain transaction IDs allows for robust verification processes, where users can independently verify the authenticity and integrity of each message.
This solution thus provides a comprehensive, secure, and decentralized platform for the Cardano community to share and verify announcements, enhancing trust and engagement within the ecosystem.