<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-keymgr/src/keystore.rs, branch arti-v1.1.7</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.1.7</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.1.7'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2023-07-27T10:03:06Z</updated>
<entry>
<title>keymgr: Make Keystore::generate() return a Result.</title>
<updated>2023-07-27T10:03:06Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2023-07-27T10:03:06Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=44f6d1c82715f628ca53fddedae23a780d560701'/>
<id>urn:sha1:44f6d1c82715f628ca53fddedae23a780d560701</id>
<content type='text'>
</content>
</entry>
<entry>
<title>keymgr: Add function for generating EncodableKeys.</title>
<updated>2023-07-24T12:17:23Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2023-07-24T11:01:59Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=9c326ced816ab4bf9e3e7380f5caa6a6cb05a784'/>
<id>urn:sha1:9c326ced816ab4bf9e3e7380f5caa6a6cb05a784</id>
<content type='text'>
</content>
</entry>
<entry>
<title>keymgr: Add a Keystore::contains accessor.</title>
<updated>2023-07-24T12:17:05Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2023-07-14T10:08:54Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=e36e7db6e7bfe06f967ce45e135714fd7983d470'/>
<id>urn:sha1:e36e7db6e7bfe06f967ce45e135714fd7983d470</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix typos</title>
<updated>2023-07-22T07:10:34Z</updated>
<author>
<name>Dimitris Apostolou</name>
<email>dimitris.apostolou@icloud.com</email>
</author>
<published>2023-07-22T07:10:34Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=947ddfff0cfac3fef0e3d7ebc14182c638a1d90b'/>
<id>urn:sha1:947ddfff0cfac3fef0e3d7ebc14182c638a1d90b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>keymgr: Use KeystoreId instead of a static string.</title>
<updated>2023-07-21T11:36:29Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2023-07-21T11:20:46Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=96e59cb97fda894fbd432390ab95141b5b1ceee1'/>
<id>urn:sha1:96e59cb97fda894fbd432390ab95141b5b1ceee1</id>
<content type='text'>
</content>
</entry>
<entry>
<title>keymgr: Add EncodableKey::to_bytes for encoding keys.</title>
<updated>2023-07-20T18:25:04Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2023-07-19T12:25:57Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=79c382ff50f2f153e4d9901901a1b7fe9c6e3128'/>
<id>urn:sha1:79c382ff50f2f153e4d9901901a1b7fe9c6e3128</id>
<content type='text'>
We'll need this to implement `Keystore::insert`.
</content>
</entry>
<entry>
<title>keymgr: Remove unimplemented/unnecessary has_key_bundle function.</title>
<updated>2023-07-20T18:24:44Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2023-07-18T13:24:05Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=8b0b8785f405f64351d23773f6c99dcc9103b7b9'/>
<id>urn:sha1:8b0b8785f405f64351d23773f6c99dcc9103b7b9</id>
<content type='text'>
The concept of a "key bundle" would introduce a lot of complexity while
providing little to no gain.

Some context:
```
Originally, "key bundles" were meant to be the answer to the question
"which keystore should insert place keys in?":
https://gitlab.torproject.org/tpo/core/arti/-/blob/36606a66ddca9abd1595d13c9397bc812bf24cb5/crates/tor-keymgr/src/mgr.rs#L60-69
However, I'm not so sure anymore that "key bundles" are the answer. I
don't think there is any way we can "guess" where a key should go. When
inserting/generating a new key, we should either:

always write to the same, primary key store, OR require the user to be
explicit about which key store the new key should go in (by assigning an
ID to each key store and expecting the user to provide it when
inserting/generating new keys)

I prefer the latter option, because it provides more flexibility, which
we're going to need when implementing the key management CLI (which I
think should allow users to generate keys anywhere they want, e.g. arti
keymgr generate &lt;key type&gt; --keystore hsm ...)
```

For more details, see the discussion on #903.

Closes #903
</content>
</entry>
<entry>
<title>keymgr: Add an `id` function to `Keystore`.</title>
<updated>2023-07-20T18:24:05Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2023-07-18T10:58:20Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=04379dcae61c90e936229a011190480cfcea4db4'/>
<id>urn:sha1:04379dcae61c90e936229a011190480cfcea4db4</id>
<content type='text'>
This will enable the `KeyMgr` to look up `Keystore`s by ID (which is
a requirement for disambiguating the semantics of `insert`, which
currently tries to "guess" which keystore it should be using).
</content>
</entry>
<entry>
<title>keymgr: Use Box&lt;dyn EncodableKey&gt; instead of Box&lt;dyn Any&gt;.</title>
<updated>2023-07-10T13:41:30Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2023-07-10T13:20:17Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=9cde64c2c8b05958dd2d0a3fe88ad915e8f49123'/>
<id>urn:sha1:9cde64c2c8b05958dd2d0a3fe88ad915e8f49123</id>
<content type='text'>
Prompted by https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/1337#note_2917701

This will make it harder to accidentally return the wrong value from
`Keystore::get` (the returned value is now at least guaranteed to
implement `EncodableKey`).

Closes #937
</content>
</entry>
<entry>
<title>keymgr: Explain why the TODO regarding EncodableKey can't be addressed.</title>
<updated>2023-07-05T21:21:47Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2023-07-04T17:58:08Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=258dd195e0bbac968e195b04f62478918ea14f62'/>
<id>urn:sha1:258dd195e0bbac968e195b04f62478918ea14f62</id>
<content type='text'>
</content>
</entry>
</feed>
