pub trait Host: Send + Send {
// Required method
fn insecure_seed(
&mut self,
) -> impl Future<Output = Result<(u64, u64)>> + Send;
}
Required Methods§
Sourcefn insecure_seed(&mut self) -> impl Future<Output = Result<(u64, u64)>> + Send
fn insecure_seed(&mut self) -> impl Future<Output = Result<(u64, u64)>> + Send
Return a 128-bit value that may contain a pseudo-random value.
The returned value is not required to be computed from a CSPRNG, and may even be entirely deterministic. Host implementations are encouraged to provide pseudo-random values to any program exposed to attacker-controlled content, to enable DoS protection built into many languages’ hash-map implementations.
This function is intended to only be called once, by a source language to initialize Denial Of Service (DoS) protection in its hash-map implementation.
§Expected future evolution
This will likely be changed to a value import, to prevent it from being called multiple times and potentially used for purposes other than DoS protection.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.
Implementations on Foreign Types§
Source§impl<_T: Host + ?Sized + Send> Host for &mut _T
impl<_T: Host + ?Sized + Send> Host for &mut _T
Source§async fn insecure_seed(&mut self) -> Result<(u64, u64)>
async fn insecure_seed(&mut self) -> Result<(u64, u64)>
Return a 128-bit value that may contain a pseudo-random value.
The returned value is not required to be computed from a CSPRNG, and may even be entirely deterministic. Host implementations are encouraged to provide pseudo-random values to any program exposed to attacker-controlled content, to enable DoS protection built into many languages’ hash-map implementations.
This function is intended to only be called once, by a source language to initialize Denial Of Service (DoS) protection in its hash-map implementation.
§Expected future evolution
This will likely be changed to a value import, to prevent it from being called multiple times and potentially used for purposes other than DoS protection.