#codec #encode #decode #no-std

no-std base32

Base32编码器/解码器,适用于Rust

10个版本

使用旧的Rust 2015

0.5.1 2024年7月18日
0.4.0 2018年10月23日
0.3.1 2016年1月11日
0.3.0 2015年4月8日
0.1.1 2014年11月22日

编码类别中排名45

Download history 53055/week @ 2024-05-03 53570/week @ 2024-05-10 60062/week @ 2024-05-17 55268/week @ 2024-05-24 53185/week @ 2024-05-31 54439/week @ 2024-06-07 53123/week @ 2024-06-14 48804/week @ 2024-06-21 49235/week @ 2024-06-28 53674/week @ 2024-07-05 48977/week @ 2024-07-12 46592/week @ 2024-07-19 54110/week @ 2024-07-26 49818/week @ 2024-08-02 53372/week @ 2024-08-09 56497/week @ 2024-08-16

每月下载量222,994
379个crate(直接使用120个)中使用

MIT/Apache

22KB
489

base32

此库允许您对各种Base32变体进行编码和解码。与#[no_std]兼容,但需要一个全局分配器与alloccrate一起使用。

用法

use base32::Alphabet;

// Crockford's Base32
assert_eq!(base32::encode(Alphabet::Crockford, &[0xF8, 0x3E, 0x0F, 0x83, 0xE0]), "Z0Z0Z0Z0");
assert_eq!(base32::decode(Alphabet::Crockford, "Z0Z0Z0Z0").unwrap(), vec![0xF8, 0x3E, 0x0F, 0x83, 0xE0]);

// RFC4648
assert_eq!(base32::encode(Alphabet::Rfc4648 { padding: true }, &[0xF8, 0x3E, 0x7F, 0x83, 0xE7]), "7A7H7A7H");
assert_eq!(base32::decode(Alphabet::Rfc4648 { padding: true }, "7A7H7A7H").unwrap(), vec![0xF8, 0x3E, 0x7F, 0x83, 0xE7]);

// RFC4648 base32hex
assert_eq!(base32::encode(Alphabet::Rfc4648Hex { padding: true }, &[0xF8, 0x3E, 0x7F, 0x83, 0xE7]), "V0V7V0V7");
assert_eq!(base32::decode(Alphabet::Rfc4648Hex { padding: true }, "V0V7V0V7").unwrap(), vec![0xF8, 0x3E, 0x7F, 0x83, 0xE7]);

// z-base-32
assert_eq!(base32::encode(Alphabet::Z, &[0xF8, 0x3E, 0x7F, 0x83, 0xE7]), "9y989y98");
assert_eq!(base32::decode(Alphabet::Z, "9y989y98").unwrap(), vec![0xF8, 0x3E, 0x7F, 0x83, 0xE7]);

许可证

许可协议为以下之一

任选其一。

贡献

除非您明确说明,否则您有意提交以包含在本作品中的任何贡献,根据Apache-2.0许可证定义,应双重许可如上所述,不附加任何额外条款或条件。

无运行时依赖