pub struct IntroductionPointV2 {
pub identifier: String,
pub address: String,
pub port: u16,
pub onion_key: Option<String>,
pub service_key: Option<String>,
pub intro_authentication: Vec<(String, String)>,
}Expand description
Introduction point for a version 2 hidden service.
An introduction point is a Tor relay that acts as an intermediary between clients and the hidden service. Clients connect to introduction points to establish a rendezvous with the service.
§Fields
identifier: Base32-encoded hash of the introduction point’s identity keyaddress: IPv4 address where the introduction point is reachableport: Port number for the introduction pointonion_key: RSA public key for encrypting the introductionservice_key: RSA public key for the hidden service at this pointintro_authentication: Optional authentication data as (type, data) pairs
§Security
Introduction points do not know the hidden service’s actual location. They only relay encrypted introduction requests.
§Example
ⓘ
// Introduction points are typically parsed from a descriptor
let desc = HiddenServiceDescriptorV2::parse(content)?;
let intro_points = desc.introduction_points()?;
for point in intro_points {
println!("Introduction point: {} at {}:{}",
point.identifier, point.address, point.port);
}Fields§
§identifier: StringBase32-encoded hash of the introduction point’s identity key.
address: StringIPv4 address of the introduction point relay.
port: u16Port number where the introduction point is listening.
onion_key: Option<String>RSA public key for encrypting introduction requests (PEM format).
service_key: Option<String>RSA public key for the hidden service at this introduction point (PEM format).
intro_authentication: Vec<(String, String)>Authentication data as (auth_type, auth_data) pairs for establishing connections.
Trait Implementations§
Source§impl Clone for IntroductionPointV2
impl Clone for IntroductionPointV2
Source§fn clone(&self) -> IntroductionPointV2
fn clone(&self) -> IntroductionPointV2
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for IntroductionPointV2
impl Debug for IntroductionPointV2
Source§impl PartialEq for IntroductionPointV2
impl PartialEq for IntroductionPointV2
impl StructuralPartialEq for IntroductionPointV2
Auto Trait Implementations§
impl Freeze for IntroductionPointV2
impl RefUnwindSafe for IntroductionPointV2
impl Send for IntroductionPointV2
impl Sync for IntroductionPointV2
impl Unpin for IntroductionPointV2
impl UnwindSafe for IntroductionPointV2
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more