class E2ETestKeyManagementService : KeyManagementServiceA simple in-memory KMS that doesnt bother saving keys to disk. A real implementation would:
Probably be accessed via the network layer as an internal node service i.e. via a message queue, so it can run on a separate/firewalled service.
Use the protocol framework so requests to fetch keys can be suspended whilst a human signs off on the request.
Use deterministic key derivation.
Possibly have some sort of TREZOR-like two-factor authentication ability
etc
| <init> |
E2ETestKeyManagementService()A simple in-memory KMS that doesnt bother saving keys to disk. A real implementation would: |
| keys |
val keys: Map<PublicKey, PrivateKey>Returns a snapshot of the current pubkey->privkey mapping. |
| freshKey |
fun freshKey(): KeyPairGenerates a new random key and adds it to the exposed map. |
| toKeyPair |
open fun toKeyPair(publicKey: PublicKey): KeyPair |
| toPrivate |
open fun toPrivate(publicKey: PublicKey): PrivateKey |