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

#410 in Cryptography

Download history 129/week @ 2024-01-24 200/week @ 2024-01-31 226/week @ 2024-02-07 216/week @ 2024-02-14 213/week @ 2024-02-21 1383/week @ 2024-02-28 1174/week @ 2024-03-06 932/week @ 2024-03-13 1483/week @ 2024-03-20 823/week @ 2024-03-27 1094/week @ 2024-04-03 1084/week @ 2024-04-10 293/week @ 2024-04-17 416/week @ 2024-04-24 340/week @ 2024-05-01 301/week @ 2024-05-08

1,399 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

~15MB
~287K SLoC