Skip to content

Commit

Permalink
Release v0.0.2
Browse files Browse the repository at this point in the history
  • Loading branch information
niran committed Jun 18, 2024
1 parent e65a4af commit 77b6ca5
Show file tree
Hide file tree
Showing 5 changed files with 42 additions and 14 deletions.
22 changes: 13 additions & 9 deletions docs/pages/deployments.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,16 @@ title: Deployments

## BridgedKeyStore

| Network | Address |
| ------- | ---------------- |
| Base Sepolia | [0xa3c95c6fb0151b42C29754FEF66b38dd6Eaa2950](https://sepolia.basescan.org/address/0xa3c95c6fb0151b42c29754fef66b38dd6eaa2950) |
| Optimism Sepolia | [0x6ECa30e3Be56Cf7FccF920a5Ee66B77940A5806F](https://sepolia-optimism.etherscan.io/address/0x6ECa30e3Be56Cf7FccF920a5Ee66B77940A5806F) |
| Arbitrum Sepolia | --- |
| Gnosis Chiado | --- |
| Polygon Amoy | --- |
| BSC Testnet | --- |
| Avalanche Fuji | --- |
| Network | Address | Sync Type |
| ------- | ---------------- | --------- |
| Base Sepolia | [0x610A7e97C6D2F1E09e6390F013BFCc39B8EE49e2](https://sepolia.basescan.org/address/0x610A7e97C6D2F1E09e6390F013BFCc39B8EE49e2#code) | Trustless |
| Optimism Sepolia | [0x610A7e97C6D2F1E09e6390F013BFCc39B8EE49e2](https://sepolia-optimism.etherscan.io/address/0x610A7e97C6D2F1E09e6390F013BFCc39B8EE49e2#code) | Trustless |
| Arbitrum Sepolia | [0x610A7e97C6D2F1E09e6390F013BFCc39B8EE49e2](https://sepolia.arbiscan.io/address/0x610A7e97C6D2F1E09e6390F013BFCc39B8EE49e2#code) | Oracle\* |
| Gnosis Chiado | [0x610A7e97C6D2F1E09e6390F013BFCc39B8EE49e2](https://gnosis-chiado.blockscout.com/address/0x610A7e97C6D2F1E09e6390F013BFCc39B8EE49e2?tab=contract) | Oracle |
| Polygon Amoy | [0x610A7e97C6D2F1E09e6390F013BFCc39B8EE49e2](https://amoy.polygonscan.com/address/0x610A7e97C6D2F1E09e6390F013BFCc39B8EE49e2#code) | Oracle |
| BSC Testnet | [0x610A7e97C6D2F1E09e6390F013BFCc39B8EE49e2](https://testnet.bscscan.com/address/0x610A7e97C6D2F1E09e6390F013BFCc39B8EE49e2#code) | Oracle |
| Avalanche Fuji | [0x610A7e97C6D2F1E09e6390F013BFCc39B8EE49e2](https://testnet.snowtrace.io/address/0x610A7e97C6D2F1E09e6390F013BFCc39B8EE49e2/contract/43113/code) | Oracle |

:::note
\* Since Arbitrum is a rollup, L1 blocks are part of its consensus, so trustless syncing is technically feasible. However, neither L1 block hashes nor L1 beacon block roots are currently exposed in a way that smart contracts can consume.
:::
1 change: 1 addition & 0 deletions docs/pages/references.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -26,5 +26,6 @@ title: References
* [Vortex: A List Polynomial Commitment and its Application to Arguments of Knowledge](https://eprint.iacr.org/2024/185), by Alexandre Belling, Azam Soleimanian, and Bogdan Ursu of Linea
* [ZK Summit 11 videos](https://www.youtube.com/playlist?list=PLj80z0cJm8QFy2umHqu77a8dbZSqpSH54)
* [Gnark on browsers using WASM](https://hackmd.io/@vocdoni/B1VPA99Z3), by Vocdoni Team
* [Groth16 Verification Gas cost](https://hackmd.io/@nebra-one/ByoMB8Zf6), by Todd Norton
* ERC 4337 Wallets
* [ERC-4337 Simple Whitelist Alt-Mempool](https://hackmd.io/@dancoombs/BJYRz3h8n), by Dan Coombs
17 changes: 17 additions & 0 deletions docs/pages/releases.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
---
title: Releases
---

# Releases

## Testnet Beta (v0.0.2)

*June 18, 2024*

The Testnet Beta (v0.0.2) release of Keyspace introduces [`keyspace-client`](https://github.com/base-org/keyspace-client/tree/v0.0.2), an example TypeScript client for Keyspace with an integrated smart wallet, and [`keyspace-recovery-service`](https://github.com/base-org/keyspace-recovery-service/tree/v0.0.2), an RPC service for generating SNARK proofs of the signatures users sign to change their keys. The supported chains have been expanded from Base Sepolia and Optimism Sepolia to include Arbitrum Sepolia, Gnosis Chiado, Polygon Amoy, BSC Testnet, and Avalanche Fuji.

## Testnet Alpha (v0.0.1)

*March 29, 2024*

Initial preview release of Keyspace, including a running Keyspace sequencer and [an example Go client](https://github.com/base-org/keyspace-example) for Keyspace's RPC calls.
12 changes: 7 additions & 5 deletions docs/pages/roadmap.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -37,17 +37,19 @@ Currently, `Account` circuits are only designed to manage the key configuration

### Optimize Recursive Circuits

It currently costs 330,000 gas to verify a single key recovery proof vs the ~80,000 gas cost of just writing keys directly to L1. The proofs can batch multiple recoveries, and we expect that more recoveries in a single would have a sublinear increase to the gas cost. But in practice, we don't expect to be able to batch many recoveries soon: there seem to be ~100 recoveries per day for Safe wallets on mainnet after five years of adoption.
Recovery proofs currently take five to ten minutes to generate, but recent improvements in proving systems offer 30x-100x increases in speed.

We aim to make two optimizations to our circuits:
We aim to explore two paths for optimizing our circuits:

1. Use gnark's AssertDifferentProofs to get us down to a single pairing at the end of the recurse circuit.
2. Convert the inner proofs to use Vortex, plonky2, or STARK-in-SNARK.
1. Convert the inner proofs to use Vortex, plonky2, plonky3, or STARK-in-SNARK.
2. Use gnark's AssertDifferentProofs to get us down to a single pairing at the end of the recurse circuit.

### Aggregate Config Proofs via ERC 4337 Aggregators

Aggregators in ERC 4337 were designed to allow BLS signatures to be aggregated, which saves on data availability costs. We can repurpose this feature for aggregating Keyspace configuration proofs. A single SNARK can prove the current configuration for many wallets, which could help us get the per-transaction gas costs down from 365,000 ($0.11) to less than a cent. (BLS signature aggregation is also being explored as an L2-specific transaction type, and this may be another avenue for aggregating configuration proofs.)

### Make Keyspace an L3

It costs 330,000 gas for the sequencer to verify proofs on L1, which makes the expected cost per key change fairly high. It would be cheaper to settle on a [minimal L2](https://vitalik.eth.limo/general/2022/09/17/layer_3.html#rollups-and-validiums-have-a-confirmation-time-vs-fixed-cost-tradeoff.-layer-3s-can-help-fix-this.-but-what-else-can) designed just for ZK systems to aggregate their proofs and update their state on L1.
It currently costs 330,000 gas to verify a single key recovery proof vs the ~80,000 gas cost of just writing keys directly to L1. The proofs can batch multiple recoveries, and we expect that more recoveries in a single would have a sublinear increase to the gas cost. But in practice, we don't expect to be able to batch many recoveries soon: there seem to be ~100 recoveries per day for Safe wallets on mainnet after five years of adoption.

It would be cheaper to settle on a [minimal L2](https://vitalik.eth.limo/general/2022/09/17/layer_3.html#rollups-and-validiums-have-a-confirmation-time-vs-fixed-cost-tradeoff.-layer-3s-can-help-fix-this.-but-what-else-can) designed just for ZK systems to aggregate their proofs and update their state on L1.
4 changes: 4 additions & 0 deletions vocs.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,10 @@ export default defineConfig({
text: 'Deployments',
link: '/deployments',
},
{
text: 'Releases',
link: '/releases',
},
{
text: 'Architecture',
link: '/architecture',
Expand Down

0 comments on commit 77b6ca5

Please sign in to comment.