#generator #pseudo-random #random #xorwow

xorwowgen

几种 Xorwow 算法的实现

3 个版本 (破坏性)

0.3.0 2024 年 8 月 19 日
0.2.0 2024 年 8 月 17 日
0.1.0 2024 年 8 月 15 日

#1186算法

Download history 311/week @ 2024-08-13

每月 311 次下载

MIT 许可证

16KB
215

_xorwow 生成器

在此提出的 Xorwow 生成器的几种实现

https://www.jstatsoft.org/article/view/v008i14

实现了来自 rand_coreSeedableRngRngCore 特性,因此该软件包可用于创建各种伪随机数序列。

示例

use rand_core::{SeedableRng, RngCore}; // version = "0.6.4"
use xorwowgen::Xorwow160;

fn main() {

    // initialize the pseudorandom number generator
    let mut rng = Xorwow160::seed_from_u64(123456789);

    // clock it a few times
    for _ in 0..100 {
        rng.next_u32();
    }

    // generate a few numbers
    for _ in 0..10 {
        println!("{}", rng.next_u32());
    }
}

注释

  • 此软件包中的生成器 适用于任何类型的加密用途。

  • 如果您需要的不仅仅是生成 u32u64 整数的功能,我强烈建议您查看 rand 书籍。如上所述,已实现 SeedableRngRngCore

依赖项

~88–430KB