Remedy Engram
Remedy Engram is designed to securely prove the validity and ownership of your data without revealing the full content. By using zero-knowledge proofs, users can verify specific parts of their data while keeping the rest confidential.
Remedy does not store any of the user-inputted data.
The tool operates in three main steps: Commit, Prove, and Verify.
1. Commit
In the Commit step, the user hashes their information and commits this hash to a preferred blockchain. The process involves connecting a crypto wallet and paying a transaction fee. * Only ASCII characters supported
The system outputs:
-> Poseidon Hash: The system generates a Poseidon hash, which is a zero-knowledge-friendly hash function.
-> Blockchain Transaction Link: This is a unique identifier for the blockchain transaction that contains your committed hash. To view the generated hash, open the Blockchain Explorer link and navigate to the “More details” section of the transaction, then check the “Input data” field. Make sure to view the input as UTF-8.
2. Prove
Next, the user moves to the Prove step to create a proof:
Enter Your Text: Paste the same information used during the Commit step.
Highlight Parts to Reveal: Select the specific sections of the text you want to disclose; Unhighlighted parts will remain hidden during the verification step.
Generate the Proof: The system creates a zk proof verifying that the revealed data matches the originally committed one.
During this process, the system outputs:
-> Proof JSON: Contains the zk proof that confirms the connection between the Poseidon hash and the revealed data.
-> Public JSON: Includes the hash of the original data and the disclosed (highlighted) data in a non-human-readable format.
3. Verify
To verify previously committed data, the user uploads both the Proof JSON and Public JSON in the Verify step:
Verification Process: The system checks the uploaded files and confirms that the revealed data is part of the originally committed information.
During this process, the system outputs:
-> Extracted data from Public JSON: This displays the data highlighted during the “Prove” step, with certain parts concealed for privacy.
-> Extracted Hash: This is the Poseidon hash of the original hashed data used in prove and commit steps. To verify that the hash was recorded in the past, manually compare the JSON’s hash with the “Input data” content of the blockchain transaction. View input as UTF-8. If you don’t have a transaction link, please contact the original hash committer.
What Happens if Verification Fails?
In case verification fails the system will notify you that “The revealed data is not a part of the originally hashed data.” This can happen if the user intentionally edits the data in one or both Public and Proof JSONs.
The verification process may also fail due to an unsupported file format or other technical issues. In such cases, please ensure the file format is correct or contact support at support@r.xyz for assistance.
Last updated