optimistic-specs
optimistic-specs copied to clipboard
Milestone epic: Stateless Compression of Transaction Data
Define or choose a compression algorithm. Benchmark it. Implement it.
- Research
- [x] #174
- See https://github.com/ethereum-optimism/optimistic-specs/issues/10
- [x] #175
- [x] #174
- Spec updates
- [ ] Update derivation to decompress batch data (= stateless compression)
- [ ] Update batch-submission spec to compress batch data
- Rollup-node updates
- [ ] Update derivation code
- Rollup-node sequencer extension updates:
- [ ] Update batch-submission to compress batch data
Note: this may be ported back to the pre-1.0 deployment and rolled out before 1.0 production release.
A note on this: since so many crypto transactions contain a large number of hashes/addresses/etc. which are "random" and hard to compress, I think a prepopulated dictionary could afford really big savings here and is worth investigating. It could just be a stateless/hardcoded dict which we upgrade binary for once in a while.
Reminds me of the caching functionality in the DSProxyCache:
https://github.com/dapphub/ds-proxy/blob/e17a2526ad5c9877ba925ff25c1119f519b7369b/src/proxy.sol#L44-L48
and
https://github.com/dapphub/ds-proxy/blob/e17a2526ad5c9877ba925ff25c1119f519b7369b/src/proxy.sol#L138-149