#random-string #string #rng #generation #secure-random #character-set

advanced-random-string

基于给定的字符集、长度和RNGs提供高级字符串生成

1个不稳定版本

0.1.3 2024年6月3日
0.1.2 2024年6月3日
0.1.1 2024年6月3日

#559 in 加密学

Download history 198/week @ 2024-05-28 156/week @ 2024-06-04 21/week @ 2024-06-11 18/week @ 2024-07-02 38/week @ 2024-07-23 22/week @ 2024-07-30

每月60次下载

MIT许可证

11KB
58 代码行

advanced-random-string

advanced-random-string 是一个Rust库,用于生成具有可定制字符集的随机字符串。它支持基本的和加密安全的随机数生成器(RNGs)。

功能

  • 使用可定制的字符集生成随机字符串。
  • 使用加密安全的RNGs进行安全字符串生成。
  • 允许用户为高级用例指定自己的RNGs。
  • 提供预定义字符集以方便使用。

安装

advanced-random-string 添加到您的 Cargo.toml

[dependencies]
advanced-random-string = "0.1.3"

用法

使用可定制的字符集生成随机字符串

use advanced_random_string::{charset, random_string};

let random_string = random_string::generate(10, charset::BASE62);
println!("Generated string: {}", random_string);

// Specify a custom charset
let charset = b"MY_CHARSET";
let random_string_with_custom_charset = random_string::generate(10, charset);
println!("Generated string: {}", random_string_with_custom_charset);

生成不安全的随机字符串

use advanced_random_string::{charset, random_string};

let random_string = random_string::generate_unsecure(10, charset::BASE62);
println!("Generated string: {}", random_string);

生成加密安全的随机字符串

use advanced_random_string::{charset, random_string};

let random_string = random_string::generate_os_secure(10, charset::BASE62);
println!("Generated string: {}", random_string);

使用用户指定的RNG生成随机字符串

use rand::SeedableRng;
use rand::rngs::SmallRng;
use advanced_random_string::{charset, random_string};

let mut rng = SmallRng::from_entropy();
let random_string = random_string::generate_with_rng(10, charset::BASE62, &mut rng);
println!("Generated string: {}", random_string);

预定义字符集

该库提供了一些预定义的字符集,以便于使用

  • ALPHANUMERIC
  • UPPERCASE
  • LOWERCASE
  • DIGITS
  • HEXADECIMAL
  • ALPHABETIC
  • BASE62
  • BASE64
  • ASCII_PRINTABLE
  • URLSAFE_BASE64
  • BINARY
  • OCTAL
  • SYMBOLS
  • WHITESPACE
  • EXTENDED_ASCII

许可证

本项目采用MIT许可证。有关详细信息,请参阅LICENSE文件。

依赖关系

~315KB