Module base58_monero::base58
source · Expand description
Base58 encoder and decoder functions and constants
§Stream Examples
Async streams can be used with the stream feature:
use futures_util::pin_mut;
use futures_util::stream::StreamExt;
use base58_monero::{encode_stream, Error};
async {
let mut input: &[u8] = b"Hello World";
let mut w: Vec<char> = vec![];
let s = encode_stream(&mut input);
pin_mut!(s);
while let Some(value) = s.next().await {
w.push(value?);
}
let s: String = w.into_iter().collect();
assert_eq!("D7LMXYjUbXc1fS9Z", &s[..]);
}Async decoding with decode_stream and decode_stream_check is available with the features check and
stream enabled:
use futures_util::pin_mut;
use futures_util::stream::StreamExt;
use base58_monero::{decode_stream_check, Error};
async {
let mut input: &[u8] = b"D7LMXYjUbXc5LVkq6vWDY";
let mut w: Vec<u8> = vec![];
let s = decode_stream_check(&mut input);
pin_mut!(s);
while let Some(value) = s.next().await {
w.push(value?);
}
assert_eq!(b"Hello World", &w[..]);
}Enums§
- Possible errors when encoding/decoding base58 and base58-check strings
Constants§
- Base58 alphabet, does not contains visualy similar characters
- Size of checksum
- Resulted block size given a
0..=8bytes block - Maximum size of block to encode
- Size of an encoded 8 bytes block, i.e. maximum encoded block size
Functions§
- Decode base58-encoded string into a byte vector
- decode_check
checkDecode base58-encoded with 4 bytes checksum string into a byte vector - Encode a byte vector into a base58-encoded string
- encode_check
checkEncode a byte vector into a base58-check string, adds 4 bytes checksum
Type Aliases§
- Utility type for handling results with base58 error type