<feed xmlns='http://www.w3.org/2005/Atom'>
<title>mirrors/arti.git/crates/tor-proto/src/util, branch arti-v0.4.0</title>
<subtitle>mirror of https://gitlab.torproject.org/tpo/core/arti
</subtitle>
<id>http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v0.4.0</id>
<link rel='self' href='http://git.dilluti0n.com/mirrors/arti.git/atom?h=arti-v0.4.0'/>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/'/>
<updated>2022-05-25T19:57:19Z</updated>
<entry>
<title>More tests for ClockSkew.</title>
<updated>2022-05-25T19:57:19Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-05-25T15:43:09Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=bbc7470dc555a532f7fa9cbbd139ef63a5308beb'/>
<id>urn:sha1:bbc7470dc555a532f7fa9cbbd139ef63a5308beb</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix typos (using the typos-cli tool).</title>
<updated>2022-05-04T18:41:50Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-05-04T18:36:27Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=fc33fc3efbfabd6d7d38334caedbea51ad6c8064'/>
<id>urn:sha1:fc33fc3efbfabd6d7d38334caedbea51ad6c8064</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Implement a better clock skew estimator.</title>
<updated>2022-04-11T16:34:16Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-04-07T20:03:25Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=cf362fac9f7288ddeddff447f9db23b0a27690b6'/>
<id>urn:sha1:cf362fac9f7288ddeddff447f9db23b0a27690b6</id>
<content type='text'>
This time, our estimator discards outliers, takes the mean of what's
left, and uses the standard deviation to try to figure out how
seriously to take our report of skew/not-skew.

These estimates are still not actually used.
</content>
</entry>
<entry>
<title>Initial functions to determine and expose a clock skew estimate.</title>
<updated>2022-04-07T20:01:46Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-04-07T16:16:13Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=eedee51899eb3365a21c37be3803846373265284'/>
<id>urn:sha1:eedee51899eb3365a21c37be3803846373265284</id>
<content type='text'>
(This is just a placeholder; I'm going to make the functions
smarter in the next commit.)
</content>
</entry>
<entry>
<title>chanmgr: bubble ClockSkew up through the Error object.</title>
<updated>2022-04-07T14:15:28Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-04-07T14:01:19Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=9160b55c57e9b2d68b82059139a2be0dd7954b8a'/>
<id>urn:sha1:9160b55c57e9b2d68b82059139a2be0dd7954b8a</id>
<content type='text'>
Fortunately, we don't need a separate type here: authenticated
clock skew can only come attached to a `tor_proto::Error`.

We also remove skew from `tor_proto::Error::HandshakeCertsExpired`,
since it would now be redundant.
</content>
</entry>
<entry>
<title>tor-proto: better errors when handshake fails due to untimely certs</title>
<updated>2022-03-23T12:24:36Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-03-14T18:33:11Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=0b2cf533ee5771fdb16255652837af69c316642e'/>
<id>urn:sha1:0b2cf533ee5771fdb16255652837af69c316642e</id>
<content type='text'>
We now check the handshake certificates unconditionally, and only
report them as _expired_ as a last resort.

(Rationale: if somebody is presenting the wrong identity from a year
ago, it is more interesting that they are presenting the wrong ID
than it is that they are doing so with an expired cert.

We also now report a different error if the certificate is expired,
but its expiration is within the range of reported clock skew.

(Rationale: it's helpful to distinguish this case, so that we can
blame the failure on possible clock skew rather than definitely
attributing it to a misbehaving relay.)

Part of #405.
</content>
</entry>
<entry>
<title>tor-proto: add a backend to detect reported clock skew.</title>
<updated>2022-03-23T12:24:36Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-03-14T15:51:06Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=3885a2c05b64e6d071adfabdf5eb957fab001a5d'/>
<id>urn:sha1:3885a2c05b64e6d071adfabdf5eb957fab001a5d</id>
<content type='text'>
NETINFO cells, which are sent in every handshake, may contain
timestamps.  This patch adds an accessor for the timestamp in the
Netinfo messages, and teaches the tor-proto code how to compute the
minimum clock skew in the code.

The computation isn't terribly precise, but it doesn't need to be:
Tor should work fine if your clock is accurate to within a few
hours.

This patch also notes a Y2038 problem in the protocol: see
torspec#80.

Part of #405.
</content>
</entry>
<entry>
<title>Merge branch 'proto_handshake_err' into 'main'</title>
<updated>2022-02-24T19:44:34Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-02-24T19:44:34Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=7f3ea03e58dfe7a7dcc051aeb015b432cab876df'/>
<id>urn:sha1:7f3ea03e58dfe7a7dcc051aeb015b432cab876df</id>
<content type='text'>
tor-proto: Split up a couple of handshake-based errors

Closes #359 and #358

See merge request tpo/core/arti!344</content>
</entry>
<entry>
<title>tor-proto: refactor handshake protocol errors to a different type</title>
<updated>2022-02-23T15:39:08Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-02-23T15:35:09Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=74a5ce863553780fadc1afb926a14cfb8426f367'/>
<id>urn:sha1:74a5ce863553780fadc1afb926a14cfb8426f367</id>
<content type='text'>
This helps the user distinguish between protocol violations that
happen when connecting to the tor network from those that happen
while connected.

Closes #358.
</content>
</entry>
<entry>
<title>tor-proto: Rename BadHandshake to BadCircHandshake</title>
<updated>2022-02-23T15:39:08Z</updated>
<author>
<name>Nick Mathewson</name>
<email>nickm@torproject.org</email>
</author>
<published>2022-02-23T15:07:49Z</published>
<link rel='alternate' type='text/html' href='http://git.dilluti0n.com/mirrors/arti.git/commit/?id=d42b932ed93c5f4d4204d933e4ea798c21c4d02d'/>
<id>urn:sha1:d42b932ed93c5f4d4204d933e4ea798c21c4d02d</id>
<content type='text'>
(We'll have a BadChanHandshake soon.)
</content>
</entry>
</feed>
