<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-llcrypto/src/pk.rs, branch arti-v1.9.0</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.9.0</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.9.0'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2025-11-06T11:28:22Z</updated>
<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>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-llcrypto: as_bytes on curve25519::StaticSecret</title>
<updated>2025-09-16T20:52:25Z</updated>
<author>
<name>hashcatHitman</name>
<email>3924-hashcatHitman@gitlab.torproject.org</email>
</author>
<published>2025-09-16T18:44:10Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=201bf2ef0d5f8d1b2f96cd4f18fea3c6cfa78079'/>
<id>urn:sha1:201bf2ef0d5f8d1b2f96cd4f18fea3c6cfa78079</id>
<content type='text'>
Exposed `as_bytes` on `curve25519::StaticSecret`, allowing a shared
reference to the secret bytes rather than needing to copy them.

Signed-off-by: hashcatHitman &lt;3924-hashcatHitman@gitlab.torproject.org&gt;
</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>llcrypto: add an rng compatibility shim for dalek-crypto</title>
<updated>2025-03-18T16:09:44Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-03-18T13:24:41Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=9e4de6cbfe5cef6076b89f7a94a5232d47b980dd'/>
<id>urn:sha1:9e4de6cbfe5cef6076b89f7a94a5232d47b980dd</id>
<content type='text'>
dalek-cryptography is still on rand 0.8, so we need a compatibility
shim for the Rng.

Fortunately, since we merged interface-abstraction-of-the-daleks
(!2868), we no longer need to propagate this compatibility layer
throughout our codebase.
</content>
</entry>
<entry>
<title>Wrap x25519-dalek types.</title>
<updated>2025-03-17T18:40:17Z</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=6f5ad88ec515c95a632ed2c582d4ca61d89247af'/>
<id>urn:sha1:6f5ad88ec515c95a632ed2c582d4ca61d89247af</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 curve25519 implementations, or to upgrade to a newer
`rand` ahead of their schedule.
</content>
</entry>
<entry>
<title>Run maint/add_warning.</title>
<updated>2024-03-13T16:30:53Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2024-03-13T16:30:53Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=c0c9bd15d42897825dd0ab3d3b8dd1c17bd6320c'/>
<id>urn:sha1:c0c9bd15d42897825dd0ab3d3b8dd1c17bd6320c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix a typo in comment in llcrypto.</title>
<updated>2023-11-29T16:08:04Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-11-29T16:08:04Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=135918a602df17d0bd2baaccfc39dd227af22514'/>
<id>urn:sha1:135918a602df17d0bd2baaccfc39dd227af22514</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Clarify and downgrade TODO about ReusableSecret.</title>
<updated>2023-11-29T16:03:05Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-11-29T16:03:05Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=1a45a2b9af6aa2a6bba8a255f2c2e0fa35ea9cc0'/>
<id>urn:sha1:1a45a2b9af6aa2a6bba8a255f2c2e0fa35ea9cc0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Convert to the latest versions of dalek-cryptography</title>
<updated>2023-11-29T15:34:58Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2023-11-21T15:58:29Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=98037a2c788bd901679139178d25f855324637f3'/>
<id>urn:sha1:98037a2c788bd901679139178d25f855324637f3</id>
<content type='text'>
The main changes that we have to adjust for are as follows:

* In x25519-dalek:
  * `StaticSecret` is now behind a feature.
  * `StaticSecret::new` is deprecated in favor of
    `StaticSecret::random_from_rng`.
  * StaticSecret no longer does its own clamping.

* In ed25519-dalek:
  * `SecretKey` has (in effect) been renamed to `SigningKey`. The name
    `SecretKey` is now an alias for `[u8; 32]`.
  * `SigningKey` is effectively a keypair, since it contains a
     public key as well.
  * `PublicKey` has been renamed to `VerifyingKey`.
  * The functions to extract a signing key and verifying key have
    been renamed as you might expect.
  * `ExpandedSecretKey` has been moved to `hasmat` and no longer
    implements `sign`.
  * `ExpanededSecretKey` now has as its elements a scalar and a hash
    prefix.
  * Various functions that took `&amp;[u8]` now take `&amp;[u8; N]`.
  * We no longer need a wrapper for older versions of rand.

There is a single test in tor-keymgr that does not pass.  I've
marked it as ignore for now, in hopes that @gabi-250 can help me
figure it out.

This closes #808.  There are several changes I want to make before
we merge, however. They are marked with TODO DALEK.
</content>
</entry>
</feed>
