Skipper
27925a67ad
merge: custom db ids for entities
2026-08-26 13:01:44 +02:00
Skipper
9ca2c4ed64
refactor(server::db): introduced newtype wrappers for entity id's in database
2026-08-26 13:01:44 +02:00
Skipper
ab79959dce
housekeeping(server): deps upgrade + diesel migration to AsyncFnOnce
2026-08-26 13:01:44 +02:00
Clippy Bot
7cc745182f
Merge branch 'main' into zeroized-bootstrap-token
2026-08-26 13:01:44 +02:00
Clippy Bot
95799e5da8
fix: lints
2026-08-26 13:01:44 +02:00
CleverWild
8dabec893e
fix(user-agent): zombie sessions #74
2026-08-26 13:01:44 +02:00
Skipper
ec5a8143fb
refactor: rename to to better reflect meaning
2026-08-26 13:01:44 +02:00
CleverWild
00426e597d
fix!: protect evm_wallet integrity and bind key ciphertext to wallet address
...
Three independent failures allowed an offline attacker with DB write access
to sign transactions using a different wallet's private key:
1. evm_wallet had no HMAC envelope — aead_encrypted_id could be swapped silently.
2. AEAD used a static tag as AAD — any valid ciphertext decrypted as any wallet key.
3. No post-decryption check that the derived address matched the requested wallet.
Fix: sign_entity covers (address, aead_encrypted_id) in a single transaction;
CreateNew/Decrypt take caller-provided AAD (wallet address bytes); after decryption
signer.address() is verified against the requested wallet address.
2026-08-26 13:01:44 +02:00
CleverWild
55b5b9361f
fix(operator): bind sign-transaction to operator-approved client set
2026-08-26 13:01:44 +02:00
CleverWild
49e5f2c7f6
Merge branch 'main' into security-hash-revoke_at
2026-08-26 13:01:44 +02:00
CleverWild
5824df16b1
fix(integrity): return AttestationStatus::Unavailable for key version mismatch
2026-08-26 13:01:44 +02:00
CleverWild
add058f1d5
security(bootstrap): use SafeCell for token storage instead of zeroize
2026-08-26 13:01:44 +02:00
CleverWild
5ecf3508d6
fix(UA): signing endpoint accepts arbitrary client_id
2026-08-26 13:01:44 +02:00
CleverWild
2b53023234
security: feat unseal and bootstrap handshake brute-force protection
2026-08-26 13:01:44 +02:00
CleverWild
850e2b8669
fix(bootstrap): token persists on disk with weak file permissions #59
2026-08-26 13:01:44 +02:00
CleverWild
4e11c27129
security(server): use SysRng directly for bootstrap token generation
...
Replace make_rng()/StdRng with UnwrapErr(SysRng) to eliminate the PRNG
intermediate layer and make OS entropy derivation explicit and unambiguous.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-08-26 13:01:44 +02:00
CleverWild
84e1ef7c85
security(memory): zeroization of bootstrap token
2026-08-26 13:01:44 +02:00
CleverWild
7e23b3b2ec
security(evm): remove client-controlled wallet_access_id from grant revocation
2026-08-26 13:00:40 +02:00
Skipper
602be3aa11
merge: feat-lints into main
2026-08-26 13:00:40 +02:00
CleverWild
bb28d311a1
feat(evm): add wallet_access_id to grant deletion requests and revocation logic
2026-08-26 13:00:40 +02:00
CleverWild
3302bb8995
refactor(evm): implement revoke_grant method for grant revocation
2026-08-26 13:00:40 +02:00
CleverWild
d4084ded35
feat: rustc and clippy linting
2026-08-26 13:00:40 +02:00
Skipper
e6724cb8d3
merge: refactor-integrity-check into main
2026-08-26 13:00:40 +02:00
Skipper
6b572d0c86
housekeeping(server): clean too-broad visibility markers and organize imports
2026-08-26 13:00:40 +02:00
Skipper
d7ca0b4fc8
housekeeping(server): dependencies upgrade
2026-08-26 13:00:40 +02:00
Skipper
f6151293d4
refactor(server): now keeps track of useragents, instead of
2026-08-26 13:00:40 +02:00
hdbg
1d9b572565
feat(user-agent): add VaultGate for sealed vault authentication
2026-08-26 13:00:40 +02:00
hdbg
d2f41e693c
fix(server::user_agent): useragents now self-sign themselves on bootstrap
2026-08-26 13:00:40 +02:00
hdbg
9650407093
refactor(server): reorganized client/user_agent actors into separate module peers and added event MessageBus
2026-08-26 13:00:40 +02:00
CleverWild
247cb90fbf
refactor(hashing): introduce Hashable derive macro and migrate server types
2026-08-26 13:00:39 +02:00
hdbg
a49baf7386
housekeeping(server): fixed clippy warns
2026-08-26 13:00:39 +02:00
hdbg
6b814f4869
refactor(server): moved shared module crypto into arbiter-crypto
2026-08-26 13:00:39 +02:00
hdbg
4c2e00b56d
refactor(server): migrated auth to ml-dsa
2026-08-26 13:00:39 +02:00
hdbg
13fb31f841
fix(server::bootsrapper): token compare is now constant-time
2026-08-26 13:00:39 +02:00
hdbg
11ad5df426
feat(server): add integrity verification for client keys
2026-08-26 13:00:39 +02:00
hdbg
d482ed37aa
fix(server): replaced postcard-based integrity fingerprint with custom trait providing order-independent hashing
2026-08-26 13:00:39 +02:00
hdbg
dcf42b0e4e
fix(server): added chain_id check and covered check_shared_constraints with unit tests
2026-08-26 13:00:39 +02:00
hdbg
9173be2920
tests(server): fixed for new integrity checks
2026-08-26 13:00:39 +02:00
hdbg
d55e9880ec
refactor(server): rework envelopes and integrity check
2026-08-26 13:00:39 +02:00
hdbg
ba7bfe9b6f
fix(server): remove stale mentions of miette
2026-08-26 13:00:39 +02:00
CleverWild
4bd8a2df33
feat(server): integrity envelope engine for EVM grants with HMAC verification
2026-08-26 13:00:39 +02:00
hdbg
37fa954933
merge: @main into client-integrity-verification
2026-08-26 13:00:39 +02:00
hdbg
5c3421de1e
housekeeping(server): fixed clippy warns
2026-08-26 13:00:39 +02:00
hdbg
be23f87e67
refactor(user-agent): remove backfill pubkey integrity tags
2026-08-26 13:00:39 +02:00
hdbg
29f2174dcf
fix(server): previously, user agent auth accepted invalid signatures
2026-08-26 13:00:39 +02:00
hdbg
149035ecf5
refactor(server): separate crypto by purpose and moved outside of actor into separate module
2026-08-26 13:00:39 +02:00
CleverWild
17ea8d8dc9
feat(auth): implement attestation status verification for public keys
2026-08-26 13:00:39 +02:00
CleverWild
e9e2888e95
fix(keyholder): comment drift
2026-08-26 13:00:39 +02:00
CleverWild
0b30416a7b
refactor(keyholder): generalize derive_useragent_integrity_key and compute_useragent_pubkey_integrity_tag corespondenly to derive_integrity_key and compute_integrity_tag
2026-08-26 13:00:39 +02:00
CleverWild
e2e2c4fc07
feat(auth): add seal-key-derived pubkey integrity tags with auth enforcement and unseal backfill
2026-08-26 13:00:39 +02:00