ERC-7730: How to implement clear signing
This implementation is currently for EVM chains only. Stay tuned for other protocols.
The clear signing standard relies on a registry of smart contract metadata files. These files describe the operations and fields of the smart contract. This page outlines the process for adding your metadata to the registry.
Adding to the registry
- Fork the official registry
- Add a metadata file
- Preview your changes
- Submit a pull request (PR)
- Get approval and merge
Fork the registry
The official registry is a public repo at https://github.com/LedgerHQ/clear-signing-erc7730-registry
Add a metadata file
Describe your smart contract data following the ERC-7730 standard:
-
See examples in /registry
-
See JSON schema and file spec in /specs/erc7730-v1.schema.json and /specs/erc-7730.md
Preview your changes
Run the web app locally to preview your changes.
See the README in the repo for details: https://github.com/LedgerHQ/clear-signing-erc7730-registry/tree/master/developer-preview#readme
Submit a pull Request
The PR requirements are in the README of the registry.
Automated checks will run and give you feedback on your metadata file.
Approvers on the repo will also review and comment to help your PR through.
Once approved and merged the metadata will join the registry 🎉
Seeing clear signed operations on Ledger devices
Changes to the registry will be picked up by Ledger’s generic parser and ultimately, be made available to Ledger devices.
The preview tool allows you to see how the data will be displayed on Ledger Flex and Ledger Stax.
If you would like add to the preview modes get in touch – open a PR or create an issue on the repo
Clear signing on other wallets and devices
At Ledger we are keen for the community to contribute to the registry and for all wallet manufacturers and developers to use the standard. We believe that this will help to improve the security of the ecosystem for everyone and make it easier for more people to use smart contracts.
Special cases
- For EIP-712 messages follow this documentation
- For for ERC-721, ERC-1155 and ERC-20 follow this documentation
- If applicable, add your token in Ledger Live.
- Some special cases may require the development of an Ethereum plugin. The Ledger team will guide you through this process if required.
Wallets
All you have to do is use the latest version of the LedgerJS Ethereum transport library. It has been updated for the new standard. For more information on how to use the LedgerJS libraries read this documentation.
Watch the “Request for Comment Session”
To get an insight about our process and plan for the future of clear signing, we recommend you watching the “Request for Comment Session”. You can read the slides.
What’s next?
- Publication of an open source JSON edition tool to write the json description and display the information that the user will see on their devices,
- Decentralization of the peer review process,
- Generalization of the JSON standard to the Web3 ecosystem,
- Extension of this process to other protocols.
Stay tuned for further updates and evolutions on this topic as we continue to improve and expand our security measures, ensuring the highest protection for our users.
Want to know more? Join the conversation on the Ethereum Magicians Forum.