pub trait Rand {
fn get_chain_randomness(
&self,
pers: DomainSeparationTag,
round: ChainEpoch,
entropy: &[u8]
) -> Result<[u8; 32]>;
fn get_beacon_randomness(
&self,
pers: DomainSeparationTag,
round: ChainEpoch,
entropy: &[u8]
) -> Result<[u8; 32]>;
}Expand description
Randomness provider trait
Required methods
fn get_chain_randomness(
&self,
pers: DomainSeparationTag,
round: ChainEpoch,
entropy: &[u8]
) -> Result<[u8; 32]>
fn get_chain_randomness(
&self,
pers: DomainSeparationTag,
round: ChainEpoch,
entropy: &[u8]
) -> Result<[u8; 32]>
Gets 32 bytes of randomness for ChainRand paramaterized by the DomainSeparationTag, ChainEpoch, Entropy from the ticket chain.
fn get_beacon_randomness(
&self,
pers: DomainSeparationTag,
round: ChainEpoch,
entropy: &[u8]
) -> Result<[u8; 32]>
fn get_beacon_randomness(
&self,
pers: DomainSeparationTag,
round: ChainEpoch,
entropy: &[u8]
) -> Result<[u8; 32]>
Gets 32 bytes of randomness for ChainRand paramaterized by the DomainSeparationTag, ChainEpoch, Entropy from the latest beacon entry.