#bech32 #bitcoin #base32 #encoding

不使用 std bitcoin-bech32

将比特币隔离见证地址编码和解码为Bech32格式

18个版本 (重大更改)

使用旧的Rust 2015

0.13.0 2023年4月5日
0.12.1 2021年2月23日
0.11.0 2019年8月8日
0.10.0 2019年7月10日
0.2.0 2017年5月20日

#2406 in 神奇豆子

Download history 1472/week @ 2024-03-14 1381/week @ 2024-03-21 1758/week @ 2024-03-28 1125/week @ 2024-04-04 1594/week @ 2024-04-11 1893/week @ 2024-04-18 1731/week @ 2024-04-25 1255/week @ 2024-05-02 1092/week @ 2024-05-09 967/week @ 2024-05-16 903/week @ 2024-05-23 1132/week @ 2024-05-30 1221/week @ 2024-06-06 1506/week @ 2024-06-13 1293/week @ 2024-06-20 686/week @ 2024-06-27

每月4,902次下载
用于 27 个crate(9个直接)

MIT 许可证

27KB
462

比特币Bech32

Docs.rs badge Continuous Integration

根据BIP-0173BIP-0350中描述的Bech32和Bech32m格式对比特币隔离见证地址进行编码和解码。

示例

use bitcoin_bech32::{WitnessProgram, u5};
use bitcoin_bech32::constants::Network;

let witness_program = WitnessProgram::new(
    u5::try_from_u8(0).unwrap(),
    vec![
        0x00, 0x00, 0x00, 0xc4, 0xa5, 0xca, 0xd4, 0x62,
        0x21, 0xb2, 0xa1, 0x87, 0x90, 0x5e, 0x52, 0x66,
        0x36, 0x2b, 0x99, 0xd5, 0xe9, 0x1c, 0x6c, 0xe2,
        0x4d, 0x16, 0x5d, 0xab, 0x93, 0xe8, 0x64, 0x33],
    Network::Testnet,
).unwrap();

let address = witness_program.to_address();
assert_eq!(address,
           "tb1qqqqqp399et2xygdj5xreqhjjvcmzhxw4aywxecjdzew6hylgvsesrxh6hy".to_string());

let decoded = WitnessProgram::from_address(&address).unwrap();
assert_eq!(decoded, witness_program);

依赖项

~180KB