Implement EIP-7730 Today
The recent $1.5 billion Bybit hack has exposed a critical vulnerability in the Web3 ecosystem that the community has largely overlooked for years.
While Bybit’s compromised supply chain and failure to verify signatures on a separate device were the immediate causes, this incident highlights broader security challenges affecting all wallet users, not just major exchanges.
As industry professionals, we must ask, do typical users have enough information to safely validate their transactions?
The uncomfortable truth is no. The current expectation that users should cross-check signatures across multiple devices is unrealistic for mainstream adoption.
Few, if any, users routinely verify calldata using multiple verification methods before signing transactions.
We previously explored these wallet UX limitations in our custodial stablecoin rekt test, where we highlighted how unrealistic current verification expectations are for typical users.
In this post, we’ll demonstrate how dapp developers can help protect their users from blind signing issues using EIP-7730, which enables hardware wallets to decode transactions and allows users to understand what they are really signing.
Why Blind Signing Creates an Impossible Security Burden
Consider the security steps users need to follow for each transaction:
While theoretically secure, this multi-device verification process creates insurmountable friction for average users,
Security cannot come at the expense of usability if we expect dapps to achieve mainstream adoption.
The Core Issue Lies in Blind Signatures
Asking users to sign data they cannot meaningfully interpret is a core issue.
This happens because wallets lack the protocol-specific knowledge needed to decode transaction data into human-readable formats.
Each DeFi protocol has its own unique smart contract interfaces and parameter structures, but wallets cannot understand what these technical parameters actually mean without explicit instructions for interpretation.
The Problem of Interpreting Technical Data
Would you sign a legal contract without reading its contents?
Yet in Web3, users regularly sign cryptographic hashes that appear as unintelligible strings:
Users resort to this because they often have no alternative when interacting with certain protocols.
The Need for Human-Readable Information
Most wallet implementations offer raw signing as a supposedly better option,
where you sign non-decoded format information.
Without These Details, Users are Essentially Blind Signing Data They Cannot Meaningfully Validate
No other solution can provide security without adding significant usability friction, such as cross-checking signatures across multiple devices.
A Step Forward with EIP-712
EIP-712 was introduced specifically to address the blind signing problem by providing a standardized way for applications to present structured, human-readable data to users before signing,
This standard works by defining a structured data format that wallets can interpret and display,
allowing users to see organized fields like token amounts, recipient addresses, and operation types instead of raw cryptographic data.
EIP-712 Limitations
The Bybit hack clearly demonstrates these limitations.
Despite supporting EIP-712,
the transaction data remained too complex for human verification.
Subtle Changes in Operation Type and Destination Address Allowed Attackers to Execute Malicious Code
The compromised information they signed:
How Hardware Wallets Provide an Incomplete Solution
Laptops, phones, and computers can all be compromised.
Hardware wallets are more secure since they are designed only to sign transactions and keep secret keys secure,
They have the least chance of being compromised.
But They Don’t Have the Ability to Decode Anything Other Than the Simplest Transactions
This is because they lack the semantic information required to decode what will happen when a specific contract function is called.
For example, calling the transferFrom function on a normal ERC-20 may have a different result than calling transferFrom on a contract that implements fee-on-transfer.
A New Step Forward with EIP-7730
EIP-7730 represents a critical initiative to eliminate blind signing by enabling true “clear signing” with minimal protocol implementation burden,
This approach drastically increases the efficacy of transaction verification.
Enabling True Clear Signing with Minimal Protocol Implementation Burden
Since the hardware device can directly parse the content of each message with explicit instructions on what to display and how,
users can see human-readable information instead of cryptographic gibberish.
The Path Forward for EIP-7730 and Beyond
Imagine seeing this technical data:
Swap 0.5 ETH for minimum 800 USDC (1% slippage protection) - Valid until May 8, 2024 at 8:30 AM |
---|
This improvement in clarity enables truly informed consent by translating technical parameters into concepts users actually understand.
A Simple and Accessible Implementation Process
Rather than developing complex hardware wallet integrations,
protocols need only provide a JSON file to whitelist their contract on device registries,
This standardized approach dramatically reduces the technical barriers that have prevented widespread adoption of secure signing practices.
The Path Forward
To demonstrate how straightforward EIP-7730 implementation can be, let’s walk through creating a JSON manifest for a basic token swap function.
Consider this Solidity function from Uniswap V3:
In this case, we’ll add the JSON to the official repository and implement it in the following steps:
Steps Involved
- Create a JSON manifest for your token swap function.
- Submit the JSON file to the device registry.
The entire implementation process involves creating this JSON file and submitting it to the registry,
No complex integrations, no custom hardware wallet development, just a straightforward manifest that makes your protocol’s transactions human-readable.
Conclusion
The path to eliminating blind signatures in your protocol is now straightforward and accessible.
As a dapp developer, you can dramatically improve your users’ security and experience in just a few hours of implementation work,
That’s all! You’ve changed your users’ experience by eliminating the anxiety and fear that comes with blind signing,
Transforming their Web3 experience from one of uncertainty to genuine confidence.
What’s Next?
EIP-7730 significantly improves transaction security by eliminating blind signatures,
The most direct attack vector for hackers remains exploiting vulnerabilities in smart contracts themselves.
Even with perfect transaction transparency, users can still lose funds if the underlying protocol contains security flaws.
Audit Your Smart Contract Security Posture
If you’re unsure about your smart contract security posture,
Trail of Bits can help.
Our team has audited hundreds of DeFi protocols and can identify vulnerabilities before they’re exploited in production,
Contact us to learn how we can help build security into your protocol, alongside implementing EIP-7730 for comprehensive user protection.