| Crates.io | tor-hscrypto |
| lib.rs | tor-hscrypto |
| version | 0.34.0 |
| created_at | 2023-02-01 17:02:55.322945+00 |
| updated_at | 2025-08-28 21:11:11.569059+00 |
| description | Basic onion service cryptography types used by Aerti |
| homepage | https://gitlab.torproject.org/tpo/core/arti/-/wikis/home |
| repository | https://gitlab.torproject.org/tpo/core/arti.git/ |
| max_upload_size | |
| id | 773954 |
| size | 215,560 |
tor-hscrypto: Basic cryptography used by onion services
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:
.onion addresses.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.
memquota-memcost -- implement tor_memquota::HasMemoryCost for many types.
(Does not actually force compiling in memory quota tracking;
that's memquota in tor-memquota and higher-level crates.)
ope -- support for Order Preserving Encryption
full -- Enable all features above.
Note that the APIs enabled by these features are NOT covered by semantic versioning1 guarantees: we might break them or remove them between patch versions.
hs-pow-full -- Tor Hidden Services Proof of Work.
experimental: Enable all the above experimental features.
MIT OR Apache-2.0
When the hs-pow-full feature is used, we link with LGPL licensed dependencies.
Remember, semantic versioning is what makes various cargo
features work reliably. To be explicit: if you want cargo update
to only make safe changes, then you cannot enable these
features. ↩