Struct libp2p_noise::NoiseConfig
source · [−]Expand description
The protocol upgrade configuration.
Implementations
sourceimpl<H, C: Zeroize, R> NoiseConfig<H, C, R>
impl<H, C: Zeroize, R> NoiseConfig<H, C, R>
sourcepub fn into_authenticated(self) -> NoiseAuthenticated<H, C, R>
pub fn into_authenticated(self) -> NoiseAuthenticated<H, C, R>
Turn the NoiseConfig
into an authenticated upgrade for use
with a Network
.
sourcepub fn set_legacy_config(&mut self, cfg: LegacyConfig) -> &mut Self
pub fn set_legacy_config(&mut self, cfg: LegacyConfig) -> &mut Self
Sets the legacy configuration options to use, if any.
sourceimpl<C> NoiseConfig<IX, C> where
C: Protocol<C> + Zeroize,
impl<C> NoiseConfig<IX, C> where
C: Protocol<C> + Zeroize,
sourcepub fn ix(dh_keys: AuthenticKeypair<C>) -> Self
pub fn ix(dh_keys: AuthenticKeypair<C>) -> Self
Create a new NoiseConfig
for the IX
handshake pattern.
sourceimpl<C> NoiseConfig<XX, C> where
C: Protocol<C> + Zeroize,
impl<C> NoiseConfig<XX, C> where
C: Protocol<C> + Zeroize,
sourcepub fn xx(dh_keys: AuthenticKeypair<C>) -> Self
pub fn xx(dh_keys: AuthenticKeypair<C>) -> Self
Create a new NoiseConfig
for the XX
handshake pattern.
sourceimpl<C> NoiseConfig<IK, C> where
C: Protocol<C> + Zeroize,
impl<C> NoiseConfig<IK, C> where
C: Protocol<C> + Zeroize,
sourcepub fn ik_listener(dh_keys: AuthenticKeypair<C>) -> Self
pub fn ik_listener(dh_keys: AuthenticKeypair<C>) -> Self
Create a new NoiseConfig
for the IK
handshake pattern (recipient side).
Since the identity of the local node is known to the remote, this configuration does not transmit a static DH public key or public identity key to the remote.
sourceimpl<C> NoiseConfig<IK, C, (PublicKey<C>, PublicKey)> where
C: Protocol<C> + Zeroize,
impl<C> NoiseConfig<IK, C, (PublicKey<C>, PublicKey)> where
C: Protocol<C> + Zeroize,
sourcepub fn ik_dialer(
dh_keys: AuthenticKeypair<C>,
remote_id: PublicKey,
remote_dh: PublicKey<C>
) -> Self
pub fn ik_dialer(
dh_keys: AuthenticKeypair<C>,
remote_id: PublicKey,
remote_dh: PublicKey<C>
) -> Self
Create a new NoiseConfig
for the IK
handshake pattern (initiator side).
In this configuration, the remote identity is known to the local node, but the local node still needs to transmit its own public identity.
Trait Implementations
sourceimpl<P: Clone, C: Clone + Zeroize, R: Clone> Clone for NoiseConfig<P, C, R>
impl<P: Clone, C: Clone + Zeroize, R: Clone> Clone for NoiseConfig<P, C, R>
sourcefn clone(&self) -> NoiseConfig<P, C, R>
fn clone(&self) -> NoiseConfig<P, C, R>
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl<T, C> InboundUpgrade<T> for NoiseConfig<IX, C> where
NoiseConfig<IX, C>: UpgradeInfo,
T: AsyncRead + AsyncWrite + Unpin + Send + 'static,
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
impl<T, C> InboundUpgrade<T> for NoiseConfig<IX, C> where
NoiseConfig<IX, C>: UpgradeInfo,
T: AsyncRead + AsyncWrite + Unpin + Send + 'static,
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
type Output = (RemoteIdentity<C>, NoiseOutput<T>)
type Output = (RemoteIdentity<C>, NoiseOutput<T>)
Output after the upgrade has been successfully negotiated and the handshake performed.
type Error = NoiseError
type Error = NoiseError
Possible error during the handshake.
sourcefn upgrade_inbound(self, socket: T, _: Self::Info) -> Self::Future
fn upgrade_inbound(self, socket: T, _: Self::Info) -> Self::Future
After we have determined that the remote supports one of the protocols we support, this method is called to start the handshake. Read more
sourceimpl<T, C> InboundUpgrade<T> for NoiseConfig<XX, C> where
NoiseConfig<XX, C>: UpgradeInfo,
T: AsyncRead + AsyncWrite + Unpin + Send + 'static,
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
impl<T, C> InboundUpgrade<T> for NoiseConfig<XX, C> where
NoiseConfig<XX, C>: UpgradeInfo,
T: AsyncRead + AsyncWrite + Unpin + Send + 'static,
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
type Output = (RemoteIdentity<C>, NoiseOutput<T>)
type Output = (RemoteIdentity<C>, NoiseOutput<T>)
Output after the upgrade has been successfully negotiated and the handshake performed.
type Error = NoiseError
type Error = NoiseError
Possible error during the handshake.
sourcefn upgrade_inbound(self, socket: T, _: Self::Info) -> Self::Future
fn upgrade_inbound(self, socket: T, _: Self::Info) -> Self::Future
After we have determined that the remote supports one of the protocols we support, this method is called to start the handshake. Read more
sourceimpl<T, C, R> InboundUpgrade<T> for NoiseConfig<IK, C, R> where
NoiseConfig<IK, C, R>: UpgradeInfo,
T: AsyncRead + AsyncWrite + Unpin + Send + 'static,
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
impl<T, C, R> InboundUpgrade<T> for NoiseConfig<IK, C, R> where
NoiseConfig<IK, C, R>: UpgradeInfo,
T: AsyncRead + AsyncWrite + Unpin + Send + 'static,
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
type Output = (RemoteIdentity<C>, NoiseOutput<T>)
type Output = (RemoteIdentity<C>, NoiseOutput<T>)
Output after the upgrade has been successfully negotiated and the handshake performed.
type Error = NoiseError
type Error = NoiseError
Possible error during the handshake.
sourcefn upgrade_inbound(self, socket: T, _: Self::Info) -> Self::Future
fn upgrade_inbound(self, socket: T, _: Self::Info) -> Self::Future
After we have determined that the remote supports one of the protocols we support, this method is called to start the handshake. Read more
sourceimpl<T, C> OutboundUpgrade<T> for NoiseConfig<IX, C> where
NoiseConfig<IX, C>: UpgradeInfo,
T: AsyncRead + AsyncWrite + Unpin + Send + 'static,
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
impl<T, C> OutboundUpgrade<T> for NoiseConfig<IX, C> where
NoiseConfig<IX, C>: UpgradeInfo,
T: AsyncRead + AsyncWrite + Unpin + Send + 'static,
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
type Output = (RemoteIdentity<C>, NoiseOutput<T>)
type Output = (RemoteIdentity<C>, NoiseOutput<T>)
Output after the upgrade has been successfully negotiated and the handshake performed.
type Error = NoiseError
type Error = NoiseError
Possible error during the handshake.
sourcefn upgrade_outbound(self, socket: T, _: Self::Info) -> Self::Future
fn upgrade_outbound(self, socket: T, _: Self::Info) -> Self::Future
After we have determined that the remote supports one of the protocols we support, this method is called to start the handshake. Read more
sourceimpl<T, C> OutboundUpgrade<T> for NoiseConfig<XX, C> where
NoiseConfig<XX, C>: UpgradeInfo,
T: AsyncRead + AsyncWrite + Unpin + Send + 'static,
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
impl<T, C> OutboundUpgrade<T> for NoiseConfig<XX, C> where
NoiseConfig<XX, C>: UpgradeInfo,
T: AsyncRead + AsyncWrite + Unpin + Send + 'static,
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
type Output = (RemoteIdentity<C>, NoiseOutput<T>)
type Output = (RemoteIdentity<C>, NoiseOutput<T>)
Output after the upgrade has been successfully negotiated and the handshake performed.
type Error = NoiseError
type Error = NoiseError
Possible error during the handshake.
sourcefn upgrade_outbound(self, socket: T, _: Self::Info) -> Self::Future
fn upgrade_outbound(self, socket: T, _: Self::Info) -> Self::Future
After we have determined that the remote supports one of the protocols we support, this method is called to start the handshake. Read more
sourceimpl<T, C> OutboundUpgrade<T> for NoiseConfig<IK, C, (PublicKey<C>, PublicKey)> where
NoiseConfig<IK, C, (PublicKey<C>, PublicKey)>: UpgradeInfo,
T: AsyncRead + AsyncWrite + Unpin + Send + 'static,
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
impl<T, C> OutboundUpgrade<T> for NoiseConfig<IK, C, (PublicKey<C>, PublicKey)> where
NoiseConfig<IK, C, (PublicKey<C>, PublicKey)>: UpgradeInfo,
T: AsyncRead + AsyncWrite + Unpin + Send + 'static,
C: Protocol<C> + AsRef<[u8]> + Zeroize + Send + 'static,
type Output = (RemoteIdentity<C>, NoiseOutput<T>)
type Output = (RemoteIdentity<C>, NoiseOutput<T>)
Output after the upgrade has been successfully negotiated and the handshake performed.
type Error = NoiseError
type Error = NoiseError
Possible error during the handshake.
sourcefn upgrade_outbound(self, socket: T, _: Self::Info) -> Self::Future
fn upgrade_outbound(self, socket: T, _: Self::Info) -> Self::Future
After we have determined that the remote supports one of the protocols we support, this method is called to start the handshake. Read more
sourceimpl UpgradeInfo for NoiseConfig<IX, X25519>
impl UpgradeInfo for NoiseConfig<IX, X25519>
type Info = &'static [u8]
type Info = &'static [u8]
Opaque type representing a negotiable protocol.
sourcefn protocol_info(&self) -> Self::InfoIter
fn protocol_info(&self) -> Self::InfoIter
Returns the list of protocols that are supported. Used during the negotiation process.
sourceimpl UpgradeInfo for NoiseConfig<XX, X25519>
impl UpgradeInfo for NoiseConfig<XX, X25519>
type Info = &'static [u8]
type Info = &'static [u8]
Opaque type representing a negotiable protocol.
sourcefn protocol_info(&self) -> Self::InfoIter
fn protocol_info(&self) -> Self::InfoIter
Returns the list of protocols that are supported. Used during the negotiation process.
sourceimpl<R> UpgradeInfo for NoiseConfig<IK, X25519, R>
impl<R> UpgradeInfo for NoiseConfig<IK, X25519, R>
type Info = &'static [u8]
type Info = &'static [u8]
Opaque type representing a negotiable protocol.
sourcefn protocol_info(&self) -> Self::InfoIter
fn protocol_info(&self) -> Self::InfoIter
Returns the list of protocols that are supported. Used during the negotiation process.
sourceimpl UpgradeInfo for NoiseConfig<XX, X25519Spec>
impl UpgradeInfo for NoiseConfig<XX, X25519Spec>
type Info = &'static [u8]
type Info = &'static [u8]
Opaque type representing a negotiable protocol.
sourcefn protocol_info(&self) -> Self::InfoIter
fn protocol_info(&self) -> Self::InfoIter
Returns the list of protocols that are supported. Used during the negotiation process.
sourceimpl UpgradeInfo for NoiseConfig<IX, X25519Spec>
impl UpgradeInfo for NoiseConfig<IX, X25519Spec>
Note: This is not currentlyy a standardised upgrade.
type Info = &'static [u8]
type Info = &'static [u8]
Opaque type representing a negotiable protocol.
sourcefn protocol_info(&self) -> Self::InfoIter
fn protocol_info(&self) -> Self::InfoIter
Returns the list of protocols that are supported. Used during the negotiation process.
sourceimpl<R> UpgradeInfo for NoiseConfig<IK, X25519Spec, R>
impl<R> UpgradeInfo for NoiseConfig<IK, X25519Spec, R>
Note: This is not currently a standardised upgrade.
type Info = &'static [u8]
type Info = &'static [u8]
Opaque type representing a negotiable protocol.
sourcefn protocol_info(&self) -> Self::InfoIter
fn protocol_info(&self) -> Self::InfoIter
Returns the list of protocols that are supported. Used during the negotiation process.
Auto Trait Implementations
impl<P, C, R> RefUnwindSafe for NoiseConfig<P, C, R> where
C: RefUnwindSafe,
P: RefUnwindSafe,
R: RefUnwindSafe,
impl<P, C, R> Send for NoiseConfig<P, C, R> where
C: Send,
P: Send,
R: Send,
impl<P, C, R> Sync for NoiseConfig<P, C, R> where
C: Sync,
P: Sync,
R: Sync,
impl<P, C, R> Unpin for NoiseConfig<P, C, R> where
C: Unpin,
P: Unpin,
R: Unpin,
impl<P, C, R> UnwindSafe for NoiseConfig<P, C, R> where
C: UnwindSafe,
P: UnwindSafe,
R: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<C, U> InboundUpgradeExt<C> for U where
U: InboundUpgrade<C>,
impl<C, U> InboundUpgradeExt<C> for U where
U: InboundUpgrade<C>,
sourcefn map_inbound<F, T>(self, f: F) -> MapInboundUpgrade<Self, F> where
F: FnOnce(Self::Output) -> T,
fn map_inbound<F, T>(self, f: F) -> MapInboundUpgrade<Self, F> where
F: FnOnce(Self::Output) -> T,
Returns a new object that wraps around Self
and applies a closure to the Output
.
sourcefn map_inbound_err<F, T>(self, f: F) -> MapInboundUpgradeErr<Self, F> where
F: FnOnce(Self::Error) -> T,
fn map_inbound_err<F, T>(self, f: F) -> MapInboundUpgradeErr<Self, F> where
F: FnOnce(Self::Error) -> T,
Returns a new object that wraps around Self
and applies a closure to the Error
.
sourceimpl<C, U> OutboundUpgradeExt<C> for U where
U: OutboundUpgrade<C>,
impl<C, U> OutboundUpgradeExt<C> for U where
U: OutboundUpgrade<C>,
sourcefn map_outbound<F, T>(self, f: F) -> MapOutboundUpgrade<Self, F> where
F: FnOnce(Self::Output) -> T,
fn map_outbound<F, T>(self, f: F) -> MapOutboundUpgrade<Self, F> where
F: FnOnce(Self::Output) -> T,
Returns a new object that wraps around Self
and applies a closure to the Output
.
sourcefn map_outbound_err<F, T>(self, f: F) -> MapOutboundUpgradeErr<Self, F> where
F: FnOnce(Self::Error) -> T,
fn map_outbound_err<F, T>(self, f: F) -> MapOutboundUpgradeErr<Self, F> where
F: FnOnce(Self::Error) -> T,
Returns a new object that wraps around Self
and applies a closure to the Error
.
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more