Summary
config.go:329,334 require and validate a 32-byte security.encryption_key, but it is never used. Instead wallet/service.go:505-526 encrypts the secret key with AES key = SHA256(passkeySeed) - the same secret that derives the wallet, so encryption adds nothing if the seed leaks.
Acceptance Criteria
Complexity
High - cryptography + migration of stored data.
Summary
config.go:329,334 require and validate a 32-byte security.encryption_key, but it is never used. Instead wallet/service.go:505-526 encrypts the secret key with AES key = SHA256(passkeySeed) - the same secret that derives the wallet, so encryption adds nothing if the seed leaks.
Acceptance Criteria
Complexity
High - cryptography + migration of stored data.