<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-keymgr/src/arti_path.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-07-15T18:05:29Z</updated>
<entry>
<title>Remove now-unneeded allow(clippy::cognitive_complexity)</title>
<updated>2026-07-15T18:05:29Z</updated>
<author>
<name>Jim Newsome</name>
<email>jnewsome@torproject.org</email>
</author>
<published>2026-07-15T18:05:29Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=e4c00405e703b6e274af2e3cfb000cab5a7c7837'/>
<id>urn:sha1:e4c00405e703b6e274af2e3cfb000cab5a7c7837</id>
<content type='text'>
</content>
</entry>
<entry>
<title>maint: Run maint/add_warning to deny string slices</title>
<updated>2026-06-09T15:36:01Z</updated>
<author>
<name>Clara Engler</name>
<email>cve@cve.cx</email>
</author>
<published>2026-06-09T15:36:01Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=9f5752a77fb57052c06ead0eeae606831f1e8e97'/>
<id>urn:sha1:9f5752a77fb57052c06ead0eeae606831f1e8e97</id>
<content type='text'>
This commit executes maint/add_warning with the just added change to
deny string slices except in tests.

I recommend auditing this by checking out the previous commit followed
by running the script yourself and then verifying that the diff is
identical to this commit.

This commit makes cargo clippy fail.  We will add exceptions in the next
commit.
</content>
</entry>
<entry>
<title>keymgr: Do not elide leading empty denotator groups</title>
<updated>2026-03-05T16:54:30Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-03-05T16:54:30Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=e7b406b680217dc77d148da2dce9d0605d59df9f'/>
<id>urn:sha1:e7b406b680217dc77d148da2dce9d0605d59df9f</id>
<content type='text'>
Addresses https://gitlab.torproject.org/tpo/core/arti/-/merge_requests/3754#note_3361904
</content>
</entry>
<entry>
<title>keymgr: Replace literal value with constant</title>
<updated>2026-03-05T16:41:29Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-03-05T16:41:29Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=aac457eb62a76166e7f28821a4c1df0e2949804a'/>
<id>urn:sha1:aac457eb62a76166e7f28821a4c1df0e2949804a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>keymgr: Add test for paths with empty denotator groups (fmt)</title>
<updated>2026-03-05T11:53:19Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-03-05T11:51:25Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=24c08e971e7b16b5f8235f13125de79c5003525b'/>
<id>urn:sha1:24c08e971e7b16b5f8235f13125de79c5003525b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>keymgr: Add test for paths with empty denotator groups</title>
<updated>2026-03-05T11:53:19Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-03-04T13:37:14Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=314c0fd5bec3bfdf4c7515ddf1cb490e5fb55931'/>
<id>urn:sha1:314c0fd5bec3bfdf4c7515ddf1cb490e5fb55931</id>
<content type='text'>
</content>
</entry>
<entry>
<title>keymgr: Add more tests for cert ArtiPath construction (fmt)</title>
<updated>2026-03-05T11:53:19Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-02-26T16:44:59Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=ec8946dab939d614269f28a3b0c63243ec474737'/>
<id>urn:sha1:ec8946dab939d614269f28a3b0c63243ec474737</id>
<content type='text'>
</content>
</entry>
<entry>
<title>keymgr: Add more tests for cert ArtiPath construction</title>
<updated>2026-03-05T11:53:19Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-02-26T16:44:03Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=3bcc75c2cb2891a7abd696c432955c8af87092ff'/>
<id>urn:sha1:3bcc75c2cb2891a7abd696c432955c8af87092ff</id>
<content type='text'>
This commit is intentionally misindented to make reviewing the diff a
bit easier.
</content>
</entry>
<entry>
<title>keymgr: Update cert ArtiPath building to use denotator groups</title>
<updated>2026-03-05T11:53:19Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-02-26T16:13:52Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=29c0533139ca0622704e72ca6d126d5b97a0691c'/>
<id>urn:sha1:29c0533139ca0622704e72ca6d126d5b97a0691c</id>
<content type='text'>
In a certificate's `ArtiPath`, the `ArtiPath` of the subject key is now
separated from the certificate denotators by `@`. This will enable us to
derive the subject key `ArtiPath` from the `ArtiPath` of its
certificate.

In practice, this change is a no-op for the relay implementation,
because none of our certificates have certificate denotators. For
instance, the `ArtiPath` of the for the `KP_relaysign_ed` certificate
(`KP_relaysign_ed` signed with `KS_relayid_ed`) is of the form
`relay/relaysign_ed+&lt;valid_until&gt;` (the only denotators here are the
denotators of the subject key).

It's important to note that the certifying key is not encoded in the
`ArtiPath` of the certificate. The implication is that if we'll ever
need to have multiple certs for the same subject key, signed with
different with different certifying keys, those certificates will be
distinguished by their certificate denotator group. So if we ever need a
second certificate for `KP_relaysign_ed`, certified with something other
than `KP_relaysign_ed`, it will need to be of the form
`relay/relaysign_ed+&lt;valid_until&gt;@&lt;CERT_DENOS&gt;`, where `&lt;CERT_DENOS&gt;`
is a list of `+`-separated certificate denotators.

Closes #2377
</content>
</entry>
<entry>
<title>keymgr: Support having multiple denotator groups within an ArtiPath</title>
<updated>2026-03-05T11:53:19Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-02-26T16:06:02Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=412c0f70bd3c2724cb57c871233e89ae3a93e0c4'/>
<id>urn:sha1:412c0f70bd3c2724cb57c871233e89ae3a93e0c4</id>
<content type='text'>
This will enable us to parse certificate paths that consist of the
`ArtiPath` of the subject key, followed by the denotator group of the
certificate.
</content>
</entry>
</feed>
