【问题标题】:How to generate an array of random bytes from a seed? [duplicate]如何从种子生成随机字节数组? [复制]
【发布时间】:2023-03-16 12:35:01
【问题描述】:

我想从自定义随机数生成器生成 UUID:

use uuid::{Builder, Uuid, Variant, Version};
use rand::{Rng, SeedableRng, rngs::StdRng, RngCore};

fn main() {
    let seed = [5u8; 32];
    let mut rng: StdRng = SeedableRng::from_seed(seed);
    let bytes = ???
    let uuid = Builder::from_bytes(bytes)
        .set_variant(Variant::RFC4122)
        .set_version(Version::Random)
        .build();
    println!("{:?}", uuid);
}

如何获取字节?

【问题讨论】:

    标签: random rust


    【解决方案1】:

    我想我已经做到了。

    use rand::{rngs::StdRng, RngCore, SeedableRng};
    use uuid::{Builder, Variant, Version};
    
    fn main() {
        let seed = [0u8; 32];
        let mut rng: StdRng = SeedableRng::from_seed(seed);
        let mut bytes = [0u8; 16];
        rng.fill_bytes(&mut bytes);
        let uuid = Builder::from_bytes(bytes)
            .set_variant(Variant::RFC4122)
            .set_version(Version::Random)
            .build();
        println!("{:?}", uuid);
    }
    

    【讨论】:

      猜你喜欢
      • 2021-05-15
      • 2016-08-08
      • 2020-01-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-01
      • 1970-01-01
      相关资源
      最近更新 更多