<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-hscrypto/src, branch arti-v2.0.0</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v2.0.0</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v2.0.0'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2026-01-27T18:05:36Z</updated>
<entry>
<title>maint/add_warning: Run script to add new warning</title>
<updated>2026-01-27T18:05:36Z</updated>
<author>
<name>Gabriela Moldovan</name>
<email>gabi@torproject.org</email>
</author>
<published>2026-01-27T18:05:36Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=a98faf72eb06b47700faeeac5a8a0dd0fc29b584'/>
<id>urn:sha1:a98faf72eb06b47700faeeac5a8a0dd0fc29b584</id>
<content type='text'>
This adds the lint to all our crates.
</content>
</entry>
<entry>
<title>Fix name of clippy lint to unchecked_time_subtraction (2)</title>
<updated>2025-11-06T11:28:22Z</updated>
<author>
<name>Ian Jackson</name>
<email>ijackson@chiark.greenend.org.uk</email>
</author>
<published>2025-11-06T11:23:25Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=a5fd5c48ea059a80cc1f6c50e248654b5ff3aaff'/>
<id>urn:sha1:a5fd5c48ea059a80cc1f6c50e248654b5ff3aaff</id>
<content type='text'>
Run maint/add_warning
</content>
</entry>
<entry>
<title>Remove "doc_auto_cfg" incantation from all crates.</title>
<updated>2025-09-29T19:30:03Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-09-29T18:30:14Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=808b0ec2e3735a6dbbebeb857a3d6040ae02c697'/>
<id>urn:sha1:808b0ec2e3735a6dbbebeb857a3d6040ae02c697</id>
<content type='text'>
This feature has been removed from nightly, in favor of doc_cfg.
</content>
</entry>
<entry>
<title>tor-hscrypto: derive_deftly is mandatory again</title>
<updated>2025-09-23T20:31:52Z</updated>
<author>
<name>hashcatHitman</name>
<email>3924-hashcatHitman@gitlab.torproject.org</email>
</author>
<published>2025-09-23T20:31:52Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=ae8697fa9d0ce318c30133ca2315632d922e86b9'/>
<id>urn:sha1:ae8697fa9d0ce318c30133ca2315632d922e86b9</id>
<content type='text'>
I don't know why this was breaking rust-recent-async-std-rustls, but oh
well.

Signed-off-by: hashcatHitman &lt;3924-hashcatHitman@gitlab.torproject.org&gt;
</content>
</entry>
<entry>
<title>tor-(hs|ll)crypto: export cteq macros correctly</title>
<updated>2025-09-23T19:52:04Z</updated>
<author>
<name>hashcatHitman</name>
<email>3924-hashcatHitman@gitlab.torproject.org</email>
</author>
<published>2025-09-23T19:52:04Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=8cfe85d6ff3461a1110467ae45d63c0915460dec'/>
<id>urn:sha1:8cfe85d6ff3461a1110467ae45d63c0915460dec</id>
<content type='text'>
The macros to deftly derive `ConstantTimeEq` and `PartialEq` (for
`ConstantTimeEq`) are now only defined in `tor-llcrypto` and exported.

The macro to deftly derive `ConstantTimeEq` is now struct only and uses
`subtle::Choice::from(1)` for improved clarity.

Signed-off-by: hashcatHitman &lt;3924-hashcatHitman@gitlab.torproject.org&gt;
</content>
</entry>
<entry>
<title>tor-(hs|ll)crypto: deftly derive ConstantTimeEq</title>
<updated>2025-09-23T08:25:49Z</updated>
<author>
<name>hashcatHitman</name>
<email>3924-hashcatHitman@gitlab.torproject.org</email>
</author>
<published>2025-09-23T08:25:49Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=bc3de195b4f90f6bcd6697c7655a0663ceec5ef4'/>
<id>urn:sha1:bc3de195b4f90f6bcd6697c7655a0663ceec5ef4</id>
<content type='text'>
This is my initial attempt at deriving ConstantTimeEq and PartialEq.
This includes the previously missed HsSvcNtorKeypair and
HsClientDescEncKeypair types.

In tor-llcrypto, a few implementations still had to be done by hand, and
some types which previously derived normal PartialEq now derive it with
ConstantTimeEq.

I could not figure out how to properly set up the macros such that they
could be used both in the current crate and in others, so for the moment
they are duplicated. Just so I can get feedback. Ideally, this will be
replaced with a better solution before merge.

Signed-off-by: hashcatHitman &lt;3924-hashcatHitman@gitlab.torproject.org&gt;
</content>
</entry>
<entry>
<title>tor-hscrypto: constant time PartialEq for keys</title>
<updated>2025-09-16T20:55:34Z</updated>
<author>
<name>hashcatHitman</name>
<email>3924-hashcatHitman@gitlab.torproject.org</email>
</author>
<published>2025-09-16T06:58:53Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=1722932f76dfcc7e3e5e30d82b51f1b0263a10a1'/>
<id>urn:sha1:1722932f76dfcc7e3e5e30d82b51f1b0263a10a1</id>
<content type='text'>
Implemented `subtle::ConstantTimeEq` for all of the following types:
 - `pk::HsIdKey`
 - `pk::HsIdKeypair`
 - `pk::HsBlindIdKey`
 - `pk::HsBlindIdKeypair`
 - `pk::HsDescSigningKey`
 - `pk::HsDescSigningKeypair`
 - `pk::HsIntroPtSessionIdKey`
 - `pk::HsIntroPtSessionIdKeypair`
 - `pk::HsSvcNtorKey`
 - `pk::HsSvcNtorSecretKey`
 - `pk::hs_client_intro_auth::HsClientIntroAuthKey`
 - `pk::hs_client_intro_auth::HsClientIntroAuthKeypair`
 - `pk::HsClientDescEncKey`
 - `pk::HsClientDescEncSecretKey`
 - `pk::HsSvcDescEncKey`
 - `pk::HsSvcDescEncSecretKey`
 - `pk::HsSvcDescEncKeypair`

`PartialEq` has also been implemented for all listed types, using the
constant time comparison under the hood.

Signed-off-by: hashcatHitman &lt;3924-hashcatHitman@gitlab.torproject.org&gt;
</content>
</entry>
<entry>
<title>tor-hscrypto: change redacted `HsId` from "???" to "[…]"</title>
<updated>2025-08-25T15:22:16Z</updated>
<author>
<name>Steven Engler</name>
<email>opara@torproject.org</email>
</author>
<published>2025-08-25T01:16:28Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=78f0cc445bd2abe4c43136d683997e96523f3d72'/>
<id>urn:sha1:78f0cc445bd2abe4c43136d683997e96523f3d72</id>
<content type='text'>
Before:

```text
INFO tor_hsservice: Generated a new identity for service bar: ???mad.onion
```

After:

```text
INFO tor_hsservice: Generated a new identity for service foo: […]2qd.onion
```
</content>
</entry>
<entry>
<title>tor-hsservice: Add disable_pow_compilation option.</title>
<updated>2025-08-13T18:30:37Z</updated>
<author>
<name>Wesley Aptekar-Cassels</name>
<email>me@wesleyac.com</email>
</author>
<published>2025-08-04T23:40:10Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=880f0215f4410e7c90cc622a870f8b62f5fd367f'/>
<id>urn:sha1:880f0215f4410e7c90cc622a870f8b62f5fd367f</id>
<content type='text'>
I'm not 100% on this being here, it seems like it might want to be a
option for all onion services, rather than per-service. However, this is
good enough for now.
</content>
</entry>
<entry>
<title>Fix warnings and errors from edition 2024.</title>
<updated>2025-08-07T15:28:39Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-08-06T01:54:12Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=4fbbffe7c14b2df6290268b6e3c8530106ab2529'/>
<id>urn:sha1:4fbbffe7c14b2df6290268b6e3c8530106ab2529</id>
<content type='text'>
The two main causes of errors were:

- Since some of the lifetime rules have changed, we no longer need
  to do as many "bind a variable and immediately return it"
  patterns, and so clippy now warns about them.
- We needed to adjust the explicit captures (`use&lt;...&gt;`)
  in a couple of our RPIT instances.
</content>
</entry>
</feed>
