
Mastering Safe Transactions: A Developer's Guide to Signing with EOAs and WAGMI
IntroductionIn the realm of Ethereum, the act of signing transactions is a cornerstone operation. However, when it comes to multi-signature wallets like Gnosis Safe, the process becomes intricate and demands a deeper understanding of various signature types and methods. This article aims to provide an introductory guide on how to sign a Gnosis Safe transaction using an Externally Owned Account (EOA). We'll delve into hashing the transaction via the getTransactionHash method. Adhering to ...

Identity. It's how we scale to millions of Web3 users
Recently I’ve been thinking a lot about what’s required to catalyze Web3 hyper-growth.Where will Web3 products provide 10x value?How do we scale to millions of users and hundreds of thousands of developers?What will be the protocols, systems and networks to ignite massive adoption of decentralized and distributed technologies?We have several interesting verticals: DeFi, DAO, and NFT. But, all lacking the "it" factor for catalyzing hyper-growth. They’re interesting, but standalone they don&apo...

Ethereum in 10 Years: How network states can level up fiat - money by decree.
It's 10 years in the future. Ethereum and Celestia are the dominant L1s. Optimism and Fuel provide on-demand rollups and modular execution environments for 10,000,000 of users.Instead of utilizing banks, most individuals interact with Open Financial protocols for their everyday needs. Fiat, money by decree, is still around but the landscape is shifting.“Fiat money is a type of currency that is not backed by a commodity, such as gold or silver. It is typically designated by the issuing go...
Web3 Hacker | CTO District Labs

Mastering Safe Transactions: A Developer's Guide to Signing with EOAs and WAGMI
IntroductionIn the realm of Ethereum, the act of signing transactions is a cornerstone operation. However, when it comes to multi-signature wallets like Gnosis Safe, the process becomes intricate and demands a deeper understanding of various signature types and methods. This article aims to provide an introductory guide on how to sign a Gnosis Safe transaction using an Externally Owned Account (EOA). We'll delve into hashing the transaction via the getTransactionHash method. Adhering to ...

Identity. It's how we scale to millions of Web3 users
Recently I’ve been thinking a lot about what’s required to catalyze Web3 hyper-growth.Where will Web3 products provide 10x value?How do we scale to millions of users and hundreds of thousands of developers?What will be the protocols, systems and networks to ignite massive adoption of decentralized and distributed technologies?We have several interesting verticals: DeFi, DAO, and NFT. But, all lacking the "it" factor for catalyzing hyper-growth. They’re interesting, but standalone they don&apo...

Ethereum in 10 Years: How network states can level up fiat - money by decree.
It's 10 years in the future. Ethereum and Celestia are the dominant L1s. Optimism and Fuel provide on-demand rollups and modular execution environments for 10,000,000 of users.Instead of utilizing banks, most individuals interact with Open Financial protocols for their everyday needs. Fiat, money by decree, is still around but the landscape is shifting.“Fiat money is a type of currency that is not backed by a commodity, such as gold or silver. It is typically designated by the issuing go...
Web3 Hacker | CTO District Labs

Subscribe to Kames Geraghty

Subscribe to Kames Geraghty
<100 subscribers
<100 subscribers
Share Dialog
Share Dialog


We are thinking about bridges incorrectly.
What we have today will not scale to a future with millions of users.
It’s lacks the elegance to construct complex financial instruments.
Let me explain…
Today we use a Beacon and Receiver model - Chain A sends a message to Chain B. Creating an explicit link between chains. But this is a bridge to nowhere. It lacks the properties required for complex expression of protocols. It works today. But what we have today is primitive. It’s a stone wheel, but what we need is a rocketship.
In the future, when we have Open Finance hyperstructures, it will require relaying messages between 100’s and possibly 1,000’ of rollups and modular execution environments. The Beacon and Receiver model fails us in this Superchain world.
It lacks the elegance required for scale.
I’ve been building applications for awhile now: 15+ years. Witnessing first-hand the evolution the Internet from the perspective of a developer and systems engineer.
One of the the major evolutions was when frontend applications transitioned from two-way data binding to uni-directional state management. Before React became the primary frontend framework we had frameworks like Angular, Ember, Backbone and others.
Why did this shift happen though?
Because a few people noticed two-way data binding was a limiting paradigm. It was difficult to scale. Introduced hard to catch bugs. And lacked elegance. Developers at Facebook, a company focused on Web2 scale, had to go back to the drawing board.
What was once deemed “crazy” is now the dominant paradigm in frontend applications.
Blockchains are much less forgiving than Frontends. The development lifecycle is months and years, compared to days and weeks. An incorrect assumption or single mistake has lasting impact. The margin for error is small.
We don’t have time for mistakes.
We need to engineer elegant systems from day one. Web3 Experience Architects need to start thinking about protocol lifecycles in terms of years and centuries.
Right now the brain is fairly limited. We only have a couple of neurons.
Ethereum L1
Optimism L2
Arbitrum L2
Base (Soon) L2
etc…
Bridging works because the complexity for cross-chain communication is still limited.
Protocols have rudimentary cross-chain communications requirements.
But that is going to change.
We are going to have 100’s and possibly 1,000 of L2 and L3 environments. Open Finance protocols will scale to millions of users. But this future world requires elegant data management systems to enable complex protocol construction.
https://mirror.xyz/kames.eth/8SqDiMe3u71nLF3jv7IsTplJOYU8L4IqYFKDZdfUvsE
Cross-chain data binding using the Beacon and Receiver model doesn’t get us there.
Right now DeFi protocols are fairly simple. That will not always be the case.
IF we have hundreds of L1, L2 and L3 environments this will be due to demand from millions of users.
IF we have millions of user it means we 10X’ed the traditional finance system UX.
IF we 10X TradFi user experience it means we have complex financial instruments.
IF we have complex financial instruments, with millions of users, and hundreds of blockchain execution environments, it means we need to express complex cross-chain protocol interdependencies.
IF we have complex cross-chain protocol interdependencies we need an elegant paradigm to connect protocols that may or may not know about each other.

In the future, Open Finance protocols will have complex inputs. The inputs will be a combination of storage proofs and zk-SNARKS. The same technologies that are planned in Ethereum protocol roadmap.
Whether it’s synthetic derivatives, futures exchanges or virtualized fiat (money by decree of network) we need to scale one-to-many and many-to-one smart contract protocol communication systems.
The Bridge and Relay model fails us.
We can’t require Protocol Alpha on Chain Alice to initialize a relay request to Protocol Beta on Chain Bob, because it may not even know Protocol Beta exists. We need communication to happen using implicit relationships - observability.
Instead of requiring Chain Alice to broadcast a message, we need Chain Bob to observe state changes on Chain A and Protocol Beta react without requiring Chain Alice know anything about Chain Bob.
Let’s start with a basic example. A cross-chain automated market maker.

Why would we want to build a cross-chain automated market maker?
As I discussed in my thought experiment “Ethereum in 10 Years: How network states can level up fiat - money by decree.” two money principles dominate our financial systems.
Hard/Now/Real Money - money to represent the value we have amassed today.
Soft/Future/Synthetic Money - money to represent the value we’re creating tomorrow.
Soft money at its best is futures exchange and at its worst is credit default swaps and collateralized debt obligations that underpinned the 2008 financial crisis.
Arguably these financial instruments allow people, institutions and states to create an efficient marketplace of ideas, resources and investments i.e. capitalism. It’s how we’ve went from trading seashells on the sea shore to quantitive trading at the speed of light.
I love decentralized and distributed systems. But I love capitalism more. It can be ruthlessly efficient. It can drive people to action. It can move humanity forward.
But capitalism has flaws. Flaws from centralization. And not simply “fvck the banks” type of centralization. But flaws that arise from centralization in all systems.
Inability to quickly evolve and adapt.
Distributed and decentralized systems have an opportunity to make capitalism better.
Evolving today’s complex finance instruments underpinning our global markets.
Cross-chain AMMs will replace futures exchanges, collateralized debit obligations swapping, synthetic derivatives and more. But for these complex financial instruments to work at scale, we need elegant blockchain data management systems.
We need implicit observability. Not explicit data binding.
If you believe in a Superchain future you also believe in cross-chain data observability.
https://optimism.mirror.xyz/2jk3D1Y8-hid8YOCUUa6yXmsyzNCYYyFJP0Nhaey9x0
It’s the only way to scale Open Finance hyperstructures to millions of users.
Enough pontificating on the future of blockchains. Let’s get technical.
A One-to-Many and Many-to-One smart contract protocol data management system will happen using storage proofs and succinct messaging via zk-SNARKS.
Storage proofs, for those unfamiliar, is a method for validating state on the blockchain.
https://www.laconic.com/blog/what-is-a-proof
When storage proofs are used in combination with zk-SNARKS magic can happen.
For example the Celo blockchain has Plumo. Allowing users to efficiently validate the state of the blockchain without requiring a full node. Using only a smartphone it’s possible to verify the state of the blockchain without a centralized authority.
It’s an incredible achievement! Even though it was incredibly early.
https://docs.celo.org/protocol/plumo
Plumo is a zk-SNARK based system that allows mobile and resource constrained nodes on the Celo network to sync to the Celo blockchain faster and with less data. It accomplishes this by using zero-knowledge proofs, which allow the quick verification of the chain syncing computation without having to run it locally.
Storage proofs and zk-SNARKS aren’t limited to off-chain light clients.
They can power a cross-chain Proof of Consensus using on-chain light clients.
https://blog.succinct.xyz/post/2022/09/20/proof-of-consensus/
Once an on-chain light client can keep track of block headers of another chain, anyone can supply state proofs to prove any information (balances, storage, transactions, events) about the source chain in the context of the target chain. With this, building a cross-chain application, such as a token bridge becomes simple.
[Using] zero-knowledge proofs to generate a validity proof of the state of a chain according to its consensus protocol. This validity proof can be used to power a [on-chain] gas-efficient light client, which facilitates trust-minimized interoperability.

Succinct has prototyped a Proof of Consensus protocol. Demonstrating how it’s possible to use zk-SNARKS and state proofs for efficient cross-chain communication.

We can take this concept one step further. Remove Bridges/Beacons entirely.
Everything is a beacon signal: balances, storage, transactions, events, etc…
Storage proofs can be generated from any data object.
Why is this important?
To match the sophistication and scale of the traditional finance system we need to design protocols with complex abstractions. Complexity requires expressiveness. Expressive blockchain protocols ultimately require access to all the state and across all time ranges and execution environments - whether broadcast from a beacon or not.
No small achievement.
But it is what’s required if we want a global Open Finance system. A decentralized finance system where can start to view blockchains as neurons in a brain and less as islands connected using rickety bridges.
Where centralized capitalism fails is where decentralized capitalism excels.
Wisdom of the crowds and hyper efficient markets are the big unlock.
It’s the next evolution of finance.
Explicit data binding between chains is an important but simple construct.
Bridges and Beacons serve an important role today. But alone they’re not capable of scaling to meet the demands of Open Finance hyperstructures.
We will always require a Beacon and Receiver model. However future bridges will use a Proof of Consensus protocol… and not multi-sigs using 5/7 signer enforcement 🙈
Implicit data binding will be a new frontier in a world with hundreds of L2 and millions of users. It’s going to be difficult. We’ll need to rethink best practices and patterns.
If we actually want to build a better future, we need a cross-chain data management system capable of meeting global demands of Open Finance; security and scale.
A Chain Reaction protocol.

We are thinking about bridges incorrectly.
What we have today will not scale to a future with millions of users.
It’s lacks the elegance to construct complex financial instruments.
Let me explain…
Today we use a Beacon and Receiver model - Chain A sends a message to Chain B. Creating an explicit link between chains. But this is a bridge to nowhere. It lacks the properties required for complex expression of protocols. It works today. But what we have today is primitive. It’s a stone wheel, but what we need is a rocketship.
In the future, when we have Open Finance hyperstructures, it will require relaying messages between 100’s and possibly 1,000’ of rollups and modular execution environments. The Beacon and Receiver model fails us in this Superchain world.
It lacks the elegance required for scale.
I’ve been building applications for awhile now: 15+ years. Witnessing first-hand the evolution the Internet from the perspective of a developer and systems engineer.
One of the the major evolutions was when frontend applications transitioned from two-way data binding to uni-directional state management. Before React became the primary frontend framework we had frameworks like Angular, Ember, Backbone and others.
Why did this shift happen though?
Because a few people noticed two-way data binding was a limiting paradigm. It was difficult to scale. Introduced hard to catch bugs. And lacked elegance. Developers at Facebook, a company focused on Web2 scale, had to go back to the drawing board.
What was once deemed “crazy” is now the dominant paradigm in frontend applications.
Blockchains are much less forgiving than Frontends. The development lifecycle is months and years, compared to days and weeks. An incorrect assumption or single mistake has lasting impact. The margin for error is small.
We don’t have time for mistakes.
We need to engineer elegant systems from day one. Web3 Experience Architects need to start thinking about protocol lifecycles in terms of years and centuries.
Right now the brain is fairly limited. We only have a couple of neurons.
Ethereum L1
Optimism L2
Arbitrum L2
Base (Soon) L2
etc…
Bridging works because the complexity for cross-chain communication is still limited.
Protocols have rudimentary cross-chain communications requirements.
But that is going to change.
We are going to have 100’s and possibly 1,000 of L2 and L3 environments. Open Finance protocols will scale to millions of users. But this future world requires elegant data management systems to enable complex protocol construction.
https://mirror.xyz/kames.eth/8SqDiMe3u71nLF3jv7IsTplJOYU8L4IqYFKDZdfUvsE
Cross-chain data binding using the Beacon and Receiver model doesn’t get us there.
Right now DeFi protocols are fairly simple. That will not always be the case.
IF we have hundreds of L1, L2 and L3 environments this will be due to demand from millions of users.
IF we have millions of user it means we 10X’ed the traditional finance system UX.
IF we 10X TradFi user experience it means we have complex financial instruments.
IF we have complex financial instruments, with millions of users, and hundreds of blockchain execution environments, it means we need to express complex cross-chain protocol interdependencies.
IF we have complex cross-chain protocol interdependencies we need an elegant paradigm to connect protocols that may or may not know about each other.

In the future, Open Finance protocols will have complex inputs. The inputs will be a combination of storage proofs and zk-SNARKS. The same technologies that are planned in Ethereum protocol roadmap.
Whether it’s synthetic derivatives, futures exchanges or virtualized fiat (money by decree of network) we need to scale one-to-many and many-to-one smart contract protocol communication systems.
The Bridge and Relay model fails us.
We can’t require Protocol Alpha on Chain Alice to initialize a relay request to Protocol Beta on Chain Bob, because it may not even know Protocol Beta exists. We need communication to happen using implicit relationships - observability.
Instead of requiring Chain Alice to broadcast a message, we need Chain Bob to observe state changes on Chain A and Protocol Beta react without requiring Chain Alice know anything about Chain Bob.
Let’s start with a basic example. A cross-chain automated market maker.

Why would we want to build a cross-chain automated market maker?
As I discussed in my thought experiment “Ethereum in 10 Years: How network states can level up fiat - money by decree.” two money principles dominate our financial systems.
Hard/Now/Real Money - money to represent the value we have amassed today.
Soft/Future/Synthetic Money - money to represent the value we’re creating tomorrow.
Soft money at its best is futures exchange and at its worst is credit default swaps and collateralized debt obligations that underpinned the 2008 financial crisis.
Arguably these financial instruments allow people, institutions and states to create an efficient marketplace of ideas, resources and investments i.e. capitalism. It’s how we’ve went from trading seashells on the sea shore to quantitive trading at the speed of light.
I love decentralized and distributed systems. But I love capitalism more. It can be ruthlessly efficient. It can drive people to action. It can move humanity forward.
But capitalism has flaws. Flaws from centralization. And not simply “fvck the banks” type of centralization. But flaws that arise from centralization in all systems.
Inability to quickly evolve and adapt.
Distributed and decentralized systems have an opportunity to make capitalism better.
Evolving today’s complex finance instruments underpinning our global markets.
Cross-chain AMMs will replace futures exchanges, collateralized debit obligations swapping, synthetic derivatives and more. But for these complex financial instruments to work at scale, we need elegant blockchain data management systems.
We need implicit observability. Not explicit data binding.
If you believe in a Superchain future you also believe in cross-chain data observability.
https://optimism.mirror.xyz/2jk3D1Y8-hid8YOCUUa6yXmsyzNCYYyFJP0Nhaey9x0
It’s the only way to scale Open Finance hyperstructures to millions of users.
Enough pontificating on the future of blockchains. Let’s get technical.
A One-to-Many and Many-to-One smart contract protocol data management system will happen using storage proofs and succinct messaging via zk-SNARKS.
Storage proofs, for those unfamiliar, is a method for validating state on the blockchain.
https://www.laconic.com/blog/what-is-a-proof
When storage proofs are used in combination with zk-SNARKS magic can happen.
For example the Celo blockchain has Plumo. Allowing users to efficiently validate the state of the blockchain without requiring a full node. Using only a smartphone it’s possible to verify the state of the blockchain without a centralized authority.
It’s an incredible achievement! Even though it was incredibly early.
https://docs.celo.org/protocol/plumo
Plumo is a zk-SNARK based system that allows mobile and resource constrained nodes on the Celo network to sync to the Celo blockchain faster and with less data. It accomplishes this by using zero-knowledge proofs, which allow the quick verification of the chain syncing computation without having to run it locally.
Storage proofs and zk-SNARKS aren’t limited to off-chain light clients.
They can power a cross-chain Proof of Consensus using on-chain light clients.
https://blog.succinct.xyz/post/2022/09/20/proof-of-consensus/
Once an on-chain light client can keep track of block headers of another chain, anyone can supply state proofs to prove any information (balances, storage, transactions, events) about the source chain in the context of the target chain. With this, building a cross-chain application, such as a token bridge becomes simple.
[Using] zero-knowledge proofs to generate a validity proof of the state of a chain according to its consensus protocol. This validity proof can be used to power a [on-chain] gas-efficient light client, which facilitates trust-minimized interoperability.

Succinct has prototyped a Proof of Consensus protocol. Demonstrating how it’s possible to use zk-SNARKS and state proofs for efficient cross-chain communication.

We can take this concept one step further. Remove Bridges/Beacons entirely.
Everything is a beacon signal: balances, storage, transactions, events, etc…
Storage proofs can be generated from any data object.
Why is this important?
To match the sophistication and scale of the traditional finance system we need to design protocols with complex abstractions. Complexity requires expressiveness. Expressive blockchain protocols ultimately require access to all the state and across all time ranges and execution environments - whether broadcast from a beacon or not.
No small achievement.
But it is what’s required if we want a global Open Finance system. A decentralized finance system where can start to view blockchains as neurons in a brain and less as islands connected using rickety bridges.
Where centralized capitalism fails is where decentralized capitalism excels.
Wisdom of the crowds and hyper efficient markets are the big unlock.
It’s the next evolution of finance.
Explicit data binding between chains is an important but simple construct.
Bridges and Beacons serve an important role today. But alone they’re not capable of scaling to meet the demands of Open Finance hyperstructures.
We will always require a Beacon and Receiver model. However future bridges will use a Proof of Consensus protocol… and not multi-sigs using 5/7 signer enforcement 🙈
Implicit data binding will be a new frontier in a world with hundreds of L2 and millions of users. It’s going to be difficult. We’ll need to rethink best practices and patterns.
If we actually want to build a better future, we need a cross-chain data management system capable of meeting global demands of Open Finance; security and scale.
A Chain Reaction protocol.

No activity yet