16 releases (7 breaking)

0.18.0 Apr 30, 2024
0.6.1 Mar 4, 2024
0.4.0 Dec 4, 2023
0.3.4 Oct 31, 2023
0.1.2 Mar 31, 2023

#351 in Cryptography

Download history 119/week @ 2024-01-29 308/week @ 2024-02-05 196/week @ 2024-02-12 146/week @ 2024-02-19 442/week @ 2024-02-26 2020/week @ 2024-03-04 637/week @ 2024-03-11 997/week @ 2024-03-18 1518/week @ 2024-03-25 985/week @ 2024-04-01 1432/week @ 2024-04-08 289/week @ 2024-04-15 261/week @ 2024-04-22 540/week @ 2024-04-29 325/week @ 2024-05-06 231/week @ 2024-05-13

1,381 downloads per month
Used in 23 crates (9 directly)

MIT/Apache

435KB
6.5K SLoC

tor-hscrypto

tor-hscrypto: Basic cryptography used by onion services

Overview

This crate is part of Arti, a project to implement Tor in Rust.

Onion services and the clients that connect to them need a few cryptographic operations not used by the rest of Tor. These include:

  • A set of key-blinding operations to derive short-term public keys from long-term public keys.
  • An ad-hoc SHA3-based message authentication code.
  • Operations to encode and decode public keys as .onion addresses.
  • A set of operations to divide time into different "periods". These periods are used as inputs to the DHT-style hash ring, and to the key-blinding operations.

This crate implements those operations, along with a set of wrapper types to keep us from getting confused about the numerous keys and nonces used for the onion services.

License: MIT OR Apache-2.0


lib.rs:

Dependencies

~14MB
~271K SLoC