Skip to content

tor-keymgr: added initial implementation for in-memory ArtiEphemeralKeystore

richard requested to merge richard/arti:ephemeral-keystore into main

Resolves #1358 (closed) and is arguablly needed for #1186.

This MR implements an ephemeral in-memory Keystore. Entries are stored in a HashMap<(ArtiPath, KeyType), Zeroizing<String>>, and the Keystore trait methods are mostly direct pass-throughs.

It's unclear to me how best to refactor the test mod in /crates/tor-keymgr/src/keystore/arti.rs to avoid repeating ourselves, so I've left tests unimplemented for now until you let me know what your best practices are here instead of hacking something together. I have successfully used this implementation in a KeyMgr to create an onion-service in my gosling functional test however!

Merge request reports