Crates.io | tor-netdir |
lib.rs | tor-netdir |
version | 0.25.0 |
source | src |
created_at | 2021-06-24 14:48:12.123468 |
updated_at | 2024-12-02 18:04:04.289342 |
description | Types to represent and use a Tor network directory |
homepage | https://gitlab.torproject.org/tpo/core/arti/-/wikis/home |
repository | https://gitlab.torproject.org/tpo/core/arti.git/ |
max_upload_size | |
id | 414504 |
size | 229,948 |
Represents a clients'-eye view of the Tor network.
The tor-netdir
crate wraps objects from tor-netdoc, and combines
them to provide a unified view of the relays on the network.
It is responsible for representing a client's knowledge of the
network's state and who is on it.
This crate is part of Arti, a project to implement Tor in Rust. Its purpose is to expose an abstract view of a Tor network and the relays in it, so that higher-level crates don't need to know about the particular documents that describe the network and its properties.
There are two intended users for this crate. First, producers
like [tor-dirmgr
] create [NetDir
] objects fill them with
information from the Tor network directory. Later, consumers
like [tor-circmgr
] use [NetDir
]s to select relays for random
paths through the Tor network.
Only modern consensus methods and microdescriptor consensuses are supported.
License: MIT OR Apache-2.0