The produced values do not fulfill the cryptographic requirements for random numbers. Should not be used for high-stake production use-cases.
The Randomness Collective Flip module provides a random
function that generates low-influence random values based on the block hashes from the previous
81
blocks. Low-influence randomness can be useful when defending against relatively weak
adversaries. Using this pallet as a randomness source is advisable primarily in low-security
situations like testing.
See the Module
struct for details of publicly available functions.
Import the Randomness Collective Flip module and derive your module's configuration trait from the system trait.
```rust use frame_support::traits::Randomness;
pub mod pallet { use super::; use frame_support::pallet_prelude::; use framesystem::palletprelude::*;
#[pallet::pallet]
pub struct Pallet<T>(_);
#[pallet::config]
pub trait Config: frame_system::Config + pallet_insecure_randomness_collective_flip::Config {}
#[pallet::call]
impl<T: Config> Pallet<T> {
#[pallet::weight(0)]
pub fn random_module_example(origin: OriginFor<T>) -> DispatchResult {
let _random_value = <pallet_insecure_randomness_collective_flip::Pallet<T>>::random(&b"my context"[..]);
Ok(())
}
}
} ```
License: Apache-2.0