Bxpana pfp
Bxpana
@bxpana
This Week I Learned (TWIL): Signature Standards in Ethereum and Diamond Proxies Letโ€™s dive into two critical EIPs: EIP-191 and EIP-712. They play a key role in making Ethereum signatures more secure, readable, and versatile. ๐Ÿ‘‡
1 reply
0 recast
4 reactions

Bxpana pfp
Bxpana
@bxpana
Why do we need these standards? โœ… Human-readable messages: EIP-712 shows structured, user-friendly signing prompts. โœ… Security: EIP-712 prevents replay attacks. โœ… Sponsored transactions: EIP-191 enables sending transactions on behalf of users.
1 reply
0 recast
1 reaction

Bxpana pfp
Bxpana
@bxpana
EIP-191: Basic Structure ๐Ÿ“œ Format: 0x19<1 byte version><version specific data><data to sign> Examples of <1 byte version>: ๐Ÿ”น 0x00: Data with a validator ๐Ÿ”น 0x01: Structured data (EIP-712-compatible) ๐Ÿ”น 0x45: Personal_sign
1 reply
0 recast
2 reactions

Bxpana pfp
Bxpana
@bxpana
EIP-712: Structured Data Signing EIP-712 improves traditional message signing by: ๐Ÿ–ผ๏ธ Adding structure for easier message readability. ๐Ÿ›ก๏ธ Defining fields explicitly to prevent signing unintended data. Letโ€™s break it down! ๐Ÿ‘‡
1 reply
0 recast
2 reactions

Bxpana pfp
Bxpana
@bxpana
Key Components of EIP-712 1๏ธโƒฃ Domain Separator: It encodes metadata like app name, version, chain ID, and contract address. It ensures the signature is valid only within its intended domain.
1 reply
0 recast
2 reactions

Bxpana pfp
Bxpana
@bxpana
2๏ธโƒฃ Hashing the Message: EIP-712 hashes the structured message to ensure integrity and prevent tampering.
1 reply
0 recast
0 reaction

Bxpana pfp
Bxpana
@bxpana
Finally, combine everything: The signature includes: 0x19 0x01 <domainSeparator> <hashStruct(message)> This ensures: ๐Ÿ”’ Security ๐Ÿ” Transparency for users EIP-712 = Better UX + Stronger Security ๐Ÿš€
1 reply
0 recast
0 reaction

Bxpana pfp
Bxpana
@bxpana
Diamond Proxy Architecture Another gem from this week: Diamonds! ๐Ÿ’Ž They enable modular, upgradeable contracts via EIP-2535. Think of it as: ๐Ÿจ A hotel where: โ€ข Front desk = Diamond proxy โ€ข Services = Facets โ€ข Shared resources = Shared storage
1 reply
0 recast
0 reaction