<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-proto/src/crypto/cell, branch arti-v1.4.3</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.4.3</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v1.4.3'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2025-04-29T16:35:04Z</updated>
<entry>
<title>CGO: Fix authenticated-sendme tag handling.</title>
<updated>2025-04-29T16:35:04Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-04-23T16:20:03Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=5d5599392d514517b3d5fc387694c73388e474dc'/>
<id>urn:sha1:5d5599392d514517b3d5fc387694c73388e474dc</id>
<content type='text'>
See discussion at torspec#328: it's important that our
SENDME authentication tag always be taken based on the
_encrypted_ cell.
</content>
</entry>
<entry>
<title>CGO: Note another possible performance improvement.</title>
<updated>2025-04-29T16:35:04Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-04-23T14:05:12Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=ecd0702a2e662dbd45272ca1424be206db0316aa'/>
<id>urn:sha1:ecd0702a2e662dbd45272ca1424be206db0316aa</id>
<content type='text'>
</content>
</entry>
<entry>
<title>proto: Implement and test CGO cryptography.</title>
<updated>2025-04-29T16:35:04Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-04-15T00:57:32Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=37aba22d180e5817bcb3302e8fb4e55494a382fc'/>
<id>urn:sha1:37aba22d180e5817bcb3302e8fb4e55494a382fc</id>
<content type='text'>
This provides all the operations from proposal 359,
along with the necessary integration and unit tests to make sure
that they are behaving properly.

Closes #1943
</content>
</entry>
<entry>
<title>proto: Implement UIV+, the wide-block RPRP used for CGO.</title>
<updated>2025-04-29T16:35:04Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-04-14T21:39:39Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=f60463a91d404fc12e0929707f1a626d6d2cefbb'/>
<id>urn:sha1:f60463a91d404fc12e0929707f1a626d6d2cefbb</id>
<content type='text'>
</content>
</entry>
<entry>
<title>proto: Implement CGO functions ET and PRF</title>
<updated>2025-04-29T16:34:57Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-04-14T20:44:30Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=bc04d424c95174e8fb1b849a970a37d8445e8664'/>
<id>urn:sha1:bc04d424c95174e8fb1b849a970a37d8445e8664</id>
<content type='text'>
These are a tweakable block cipher, and a pseudorandom byte stream.
This commit includes test vectors, which were generated from the
Python reference implementation and confirmed with a less optimized
Rust implementation.
</content>
</entry>
<entry>
<title>New empty CGO module.</title>
<updated>2025-04-29T16:34:56Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-04-14T16:35:15Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=dfa6e308275795c106ee38b2d5cac45ecd40f6ea'/>
<id>urn:sha1:dfa6e308275795c106ee38b2d5cac45ecd40f6ea</id>
<content type='text'>
</content>
</entry>
<entry>
<title>proto: Make relay-side cell crypto traits return tags.</title>
<updated>2025-04-29T16:31:09Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-04-15T14:41:13Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=8f6d6201c2b61a9a2d40527b3a77143d7b49be5c'/>
<id>urn:sha1:8f6d6201c2b61a9a2d40527b3a77143d7b49be5c</id>
<content type='text'>
(We'll need these tags both to implement authenticated SENDMES
at the relay side, and also to make sure that cgo is generating them
correctly.)
</content>
</entry>
<entry>
<title>proto: Make crypt layers take a ChanCmd argument</title>
<updated>2025-04-29T16:31:09Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-04-15T01:14:25Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=1998aa7b6a837bc33d372de22566447f477bf01f'/>
<id>urn:sha1:1998aa7b6a837bc33d372de22566447f477bf01f</id>
<content type='text'>
CGO will need this argument so that it can authenticate
the command as part of its crypto operations.
(Trying to meddle with RELAY vs RELAY_EARLY will no longer work!)
</content>
</entry>
<entry>
<title>proto: refactor RelayCrypt trait into separate traits</title>
<updated>2025-04-29T16:31:09Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-04-15T00:01:22Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=3bd64c9308a7f3c7772acc2a42f5349ad0534e17'/>
<id>urn:sha1:3bd64c9308a7f3c7772acc2a42f5349ad0534e17</id>
<content type='text'>
It seems very likely that, as with client crypto,
we'll want relay crypto to separable into "forward" and "reverse"
objects, so that the two can be used more or less independently.
</content>
</entry>
<entry>
<title>proto: Tweak semantics of RelayCrypt::originate.</title>
<updated>2025-04-29T16:31:09Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2025-04-14T22:54:28Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=955440b3c54621233fae23e7a3ddfa1e21d130df'/>
<id>urn:sha1:955440b3c54621233fae23e7a3ddfa1e21d130df</id>
<content type='text'>
This makes the behavior of "originate" match the behavior of
OutboundClientLayer::originate_for, which creates the message
_and_ encrypts it.  This will be necessary for CGO, where
"originate" and "encrypt" are not easily separated operations.

(Nothing uses this trait yet, since relay circuits aren't yet a thing,
so it's a good time to get it right.)
</content>
</entry>
</feed>
