Galois is the umbrella term of Union’s ZK efforts. It currently has one purpose: consensus verification. We’ve built Galois around three fundamental principles:
- Fast execution: fast proving times equate to fast bridging and good user experience.
- Low-cost: zero-knowledge provers are computationally expensive to operate, and often require large machine clusters. Galoisd can run on a single machine and still outperform other zk bridges.
- Decentralized: infrastructure operators do not need complex cloud architecture to operate a relayer and prover. Anyone can participate in the system.
Architecture
Transactions through Union to other layers are composed of three steps:
- Emit a send-packet event
- Generate a ZKP of the Union state
- Update Counterparty with Union state
Note
Depending on validator set drift, Galois may need to generate multiple proofs. This results in �M being the last trusted height and �+1N+1 being the height to update to.
Technologies
Galois is built using
- Go: simple, secure, scalable.
- Gnark: fast zk-SNARK library.
- gRPC: high performance, open source universal RPC framework
Future Roadmap
The current focus for Galois is production-readiness. We’re mainly maintaining the current implementation and making performance improvements. After mainnet, the major roadmap items include: