Releases: stackup-wallet/keystore
Releases · stackup-wallet/keystore
v1.1
v1.0
Stackup Keystore v1
- Keystore:
0x69C9F626b5Bd934C0F9806346682eD407FB978d3 - KeystoreAccountFactory:
0x625cF8EDec3f68d48D3aA385F356524B04760BE8 - UserOpECDSAVerifier:
0x294CD71960eed5AEa11DbbFa5D3c8eA4A1c1CE0F - UserOpMultiSigVerifier:
0x1dBadE1E34706f83598ae9acFC63B7F4f928146E - UserOpWebAuthnVerifier:
0xE19620169A26aEbC4Fe229A073639da6b009bF1a - UserOpWebAuthnCosignVerifier:
0x7CD0D83C0c33AAC9cef88c75F3EDec80F4175252
Audited by Spearbit
What's Changed
- Initial keystore implementation by @hazim-j in #1
- Update nonce mechanism by @hazim-j in #2
- Implement account and factory by @hazim-j in #3
- Cleanup redundant account indirection by @hazim-j in #4
- Implement admin verifiers by @hazim-j in #5
- Add test coverage for Keystore by @hazim-j in #6
- Configure solidity compiler by @hazim-j in #7
- Add test coverage for UserOpAdminECDSAVerifier by @hazim-j in #8
- Add proof caching mechanism by @hazim-j in #9
- Cleanup register proof with multiple roothash updates by @hazim-j in #10
- Add test coverage for UserOpWebAuthnECDSAVerifier by @hazim-j in #11
- Add coverage for KeystoreAccountFactory by @hazim-j in #12
- Add mechanism for caching nodes by @hazim-j in #13
- Implement multisig verifier by @hazim-j in #14
- Add coverage for KeystoreAccount by @hazim-j in #15
- Remove redundant storage reads in nonce by @hazim-j in #16
- Add deployment scripts by @hazim-j in #18
- Fix ERC-1271 invalid return value by @hazim-j in #19
- Implement UserOpWebAuthnCosignVerifier by @hazim-j in #20
- Implement deploy script for UserOpWebAuthnCosignVerifier by @hazim-j in #21
- Cache array length in for loops by @hazim-j in #22
- Findings 16: use verifyCalldata in registerNode by @hazim-j in #24
- Findings 1: Consistent custom errors everywhere by @hazim-j in #25
- Findings 2: Use max uint32 for permanent entryPoint stake by @hazim-j in #26
- Findings 3: rename _refHash to refHash by @hazim-j in #27
- Findings 5: document cache mechanism in spec.md by @hazim-j in #28
- Findings 6: clarify conversion of node hash bytes conversion by @hazim-j in #29
- Findings 10: document contract dependencies for P256 verifiers by @hazim-j in #30
- Findings 15: use native slicing in registerNode by @hazim-j in #31
- Findings 17: add comment to address intentional missing short-circuit by @hazim-j in #32
- Findings 20: change input to nodeHash in getRegisteredNode() by @hazim-j in #33
- Findings 21: define a constant for node verifier length by @hazim-j in #34
- Findings 23: remove unnecessary conditional in _unpackNode() by @hazim-j in #35
- Findings 24: rename _validateNode to _fetchOrValidateNode by @hazim-j in #36
- Findings 25: use named params for nested mappings by @hazim-j in #37
- Findings 27: inherit TokenCallbackHandler to store ERC721 and ERC1155 tokens by @hazim-j in #38
- Findings 32: update spec Actions and root hash storage sections by @hazim-j in #39
- Findings 33: document address collision edge case with same refHash by @hazim-j in #40
- Findings 35: document expected verifier data and config inputs by @hazim-j in #41
- Findings 14: enforce minimum multi-sig threshold of 1 by @hazim-j in #42
- Findings 28: add dev note on expected invalid sig revert by @hazim-j in #43
- Findings 29: revert if more than max uint8 owners by @hazim-j in #44
- Findings 30: revert if more than max uint8 signatures by @hazim-j in #45
- Findings 19: enforce unique owner set by @hazim-j in #46
- Findings 19: enforce number of owners to be >= threshold by @hazim-j in #47
- Findings 37: defensive rehashing scheme with ERC-7739 by @hazim-j in #48
- Findings 40: switch to ERC-1167 minimal proxies by @hazim-j in #49
- Findings 38: add useChainId flag by @hazim-j in #50
- Findings 8: document handleUpdates revert scenarios by @hazim-j in #51
- Findings 9: add nonReentrant modfier to handleUpdates by @hazim-j in #52
- Findings 26: document signature replayability for verifiers by @hazim-j in #53
- Findings 36: minimal script for generating and verifying ucmt by @hazim-j in #54
- Findings 41: consider process for adding new verifiers by @hazim-j in #55
- Findings 11: document fragmentation cases by @hazim-j in #56
- Findings 13: add next root hash validation by @hazim-j in #57
- Update counterfactual addresses by @hazim-j in #58
- V1 mainnet contract deployments by @hazim-j in #59
- Spearbit audit by @hazim-j in #23
New Contributors
Full Changelog: https://github.com/stackup-wallet/keystore/commits/v1.0