<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-key-forge/src/macros.rs, branch main</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=main</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=main'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2026-06-25T02:46:15Z</updated>
<entry>
<title>tor-key-forge: add a `secret()` accessor to the derived keypair type</title>
<updated>2026-06-25T02:46:15Z</updated>
<author>
<name>Steven Engler</name>
<email>opara@torproject.org</email>
</author>
<published>2026-06-25T02:45:46Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=c719fe1a49a984b3d4b6362c8f4f7e6b61ab3ac8'/>
<id>urn:sha1:c719fe1a49a984b3d4b6362c8f4f7e6b61ab3ac8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>tor-key-forge: for `Curve25519Keypair` public key, add `inner()`</title>
<updated>2026-04-14T19:03:01Z</updated>
<author>
<name>Steven Engler</name>
<email>opara@torproject.org</email>
</author>
<published>2026-04-13T19:03:11Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=1634660113d0ca4ddd981ed32476efd1556ebac7'/>
<id>urn:sha1:1634660113d0ca4ddd981ed32476efd1556ebac7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>relay: Implement a helper to build RelayIdentities</title>
<updated>2026-02-23T20:17:32Z</updated>
<author>
<name>David Goulet</name>
<email>dgoulet@torproject.org</email>
</author>
<published>2026-02-19T18:39:49Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=c22607156b1bddfe8a50e3bfccefbbb07d6d458c'/>
<id>urn:sha1:c22607156b1bddfe8a50e3bfccefbbb07d6d458c</id>
<content type='text'>
This required to add a slight helper to our tor-key-forge RSA key d-d
macro to access the inner keypair. This avoids a clone.

Signed-off-by: David Goulet &lt;dgoulet@torproject.org&gt;
</content>
</entry>
<entry>
<title>Lay foundations for RSA keys in keystore.</title>
<updated>2025-09-30T20:00:51Z</updated>
<author>
<name>Wesley Aptekar-Cassels</name>
<email>me@wesleyac.com</email>
</author>
<published>2025-09-30T18:44:05Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=073a6a96873d953cd4e8cc5018b593e3aa04d83a'/>
<id>urn:sha1:073a6a96873d953cd4e8cc5018b593e3aa04d83a</id>
<content type='text'>
This currently can't be used due to upstream limitations in the ssh_key
crate, which will be removed likely in the next release. In the
meantime, we can put in all the groundwork.
</content>
</entry>
<entry>
<title>tor-llcrypto: Rename rsa::PrivateKey to rsa::KeyPair.</title>
<updated>2025-09-08T21:12:10Z</updated>
<author>
<name>Wesley Aptekar-Cassels</name>
<email>me@wesleyac.com</email>
</author>
<published>2025-09-08T21:10:33Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=e3081529a0aa68bf74554b3a176717b4ba4c8c41'/>
<id>urn:sha1:e3081529a0aa68bf74554b3a176717b4ba4c8c41</id>
<content type='text'>
As discussed with gabi on IRC today.
</content>
</entry>
<entry>
<title>tor-key-forge: Add RSA key types.</title>
<updated>2025-09-08T21:07:35Z</updated>
<author>
<name>Wesley Aptekar-Cassels</name>
<email>me@wesleyac.com</email>
</author>
<published>2025-09-08T20:08:52Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=058455138a88141670b66a253fb5b0c124c30f40'/>
<id>urn:sha1:058455138a88141670b66a253fb5b0c124c30f40</id>
<content type='text'>
Some things I'm still considering here:

* We may want to define a tor_llcrypto::pk::rsa::Signature newtype.
* We likely want to rename tor_llcrypto::pk::rsa::PrivateKey to RsaKeypair.
</content>
</entry>
<entry>
<title>Switch Cargo.toml files to edition 2024.</title>
<updated>2025-08-07T15:28:36Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-08-06T01:19:58Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=77b0de43b8c67cdb81befe0680a3df43b6ad37bc'/>
<id>urn:sha1:77b0de43b8c67cdb81befe0680a3df43b6ad37bc</id>
<content type='text'>
First, run

```
git grep -l "^edition =" |
    xargs perl -i -pe 's/^edition *=.*/edition = "2024"/;'
```

Second, manually verify that all Cargo.toml files have changed,
and nothing else has changed.

Third, run cargo fmt again.
</content>
</entry>
<entry>
<title>Use an EntropicRng trait to enforce key generation rules.</title>
<updated>2025-03-24T19:11:48Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-03-20T15:09:08Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=8a33afe155e9bd29d9302b4b44dd5843d00866db'/>
<id>urn:sha1:8a33afe155e9bd29d9302b4b44dd5843d00866db</id>
<content type='text'>
We want to require that whenever we generate a key that's persistent
(stored in KeyMgr), it's going to be made from a stronger-than-usual
Rng.  This trait helps us enforce that.

We also add a FakeEntropicRng struct to use for testing.

Note that this turned up a case that we'd missed, which required
an internal change in tor-hsservice.
</content>
</entry>
<entry>
<title>squash! Upgrade rand dependency to 0.9.</title>
<updated>2025-03-18T16:09:44Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-03-18T13:01:31Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=2f8993c22c2b86010e4fd8b5169ef0ab83f8c754'/>
<id>urn:sha1:2f8993c22c2b86010e4fd8b5169ef0ab83f8c754</id>
<content type='text'>
- `rand::thread_rng()` has been deprecated and renamed to `rand::rng()`
</content>
</entry>
<entry>
<title>Wrap ed25519-dalek types.</title>
<updated>2025-03-18T12:45:28Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-03-17T18:31:42Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=d50e945a5286d89d75892878ff3aa9ed7ebed1f7'/>
<id>urn:sha1:d50e945a5286d89d75892878ff3aa9ed7ebed1f7</id>
<content type='text'>
With this change, we'll no longer need to expose the types from
dalek-cryptography as part of our API, and we'll have more freedom
to switch ed25519 implementations, or to upgrade to a newer
`rand` ahead of their schedule.

Unlike with x25519-dalek, I had to tweak the API a bit: There's no
way to get a &amp;PublicKey out of a Keypair now, and implementing the
old ed25519-dalek traits seemed unnecessary.
</content>
</entry>
</feed>
