Announcing Signing Typed Data for EtherKit
Last month Vault was excited to release EtherKit, our Swift-based library for interacting with the Ethereum network inside native mobile applications. Today we’re happy to announce the latest addition to EtherKit, support for the new signing standard EIP-712, or signing for typed data messages.
As the distributed application ecosystem continues to grow, the need for off-chain message signing becomes more and more important in order to make complex off-chain functionality possible. The current mechanisms for signing elaborate message structures present the user with an indecipherable hex string with little context about what items make up that data. This is a usability nightmare with the user having to put significant trust into what they are blindly signing.
The new standard in EIP-712 defines a method for encoding structure along with data allowing the message the user is signing to be displayed in a human readable format for verification making trust possible and allowing the user to actually understand whats going on when they interact with a dapp.
This means the difference between a user having to sign:
0x7b2266726f6d223a7b226e616d65223a22436f77222c2277616c6c6574223a22307843443261336439463933384531334344393437456330354162433746453733344466384444383236227d2c22746f223a7b226e616d65223a22426f62222c2277616c6c6574223a22307862426242424242626242424262626242626242626262624242624262626262426242626242426242227d2c22636f6e74656e7473223a2248656c6c6f2c20426f6221227d
and:
Mail:
from: Person
name: Cow
wallet: 0xCD2a3d9F938E13CD947Ec05AbC7FE734Df8DD826
to: Person
name: Bob
wallet: 0xbBbBBBBbbBBBbbbBbbBbbbbBBbBbbbbBbBbbBBbB
contents: Hello, Bob!
The addition of typed data signing in EtherKit now makes it possible for mobile developers to quickly and easily add support for this new standard to their native applications. The hope is providing this functionality to the world will help spur adoption for this signing mechanism across distributed applications and make building usable dapps easier for everyone.
Please check out EtherKit on GitHub, and keep an eye on this space for updates about our long-term plans for the project!
Interested in helping out with EtherKit, or becoming part of the Vault team? We’re hiring!