summaryrefslogtreecommitdiff
path: root/crates/tor-hspow/src/v1
Commit message (Collapse)AuthorAgeFilesLines
* tor-hspow, equix, hashx: Comment tweaksMicah Elizabeth Scott2023-07-275-29/+63
| | | | | | Making a few comment tweaks suggested in review feedback. Signed-off-by: Micah Elizabeth Scott <[email protected]>
* tor-hspow: Simplify and optimize Challenge::newMicah Elizabeth Scott2023-07-271-10/+17
| | | | | | | | | Challenges are now built using try_extend_from_slice instead of iterators. There's no CPU benchmark in this crate yet, but I can confirm that the resulting code is shorter. With this patch, the entirety of Challenge:new() is automatically inlined at call sites. Signed-off-by: Micah Elizabeth Scott <[email protected]>
* tor-hspow, equix, hashx: Make all error types CloneMicah Elizabeth Scott2023-07-271-2/+2
| | | | | | | This uses an Arc to hold std::io::Error for low-level HashX runtime errors. Signed-off-by: Micah Elizabeth Scott <[email protected]>
* Start implementing Proposal 327Micah Elizabeth Scott2023-07-275-0/+520
This adds a new tor-hspow crate with the first layers of support in place for onion service client puzzles as described in Proposal 327. The API here is experimental, and it's currently only implementing the self-contained parts of the client puzzle. So, it can verify and solve puzzles, but it has no event loop integration or nonce replay tracking or prioritization code yet. These things seem like they would eventually live in the same crate. Signed-off-by: Micah Elizabeth Scott <[email protected]>