bech32 0.8

This commit is contained in:
Jack Grigg 2021-03-26 13:31:20 +13:00
parent a0c441817a
commit c3c7bd1d9c
3 changed files with 9 additions and 9 deletions

View File

@ -12,7 +12,7 @@ license = "MIT OR Apache-2.0"
edition = "2018" edition = "2018"
[dependencies] [dependencies]
bech32 = "0.7" bech32 = "0.8"
bls12_381 = "0.3.1" bls12_381 = "0.3.1"
bs58 = { version = "0.4", features = ["check"] } bs58 = { version = "0.4", features = ["check"] }
base64 = "0.13" base64 = "0.13"

View File

@ -5,7 +5,7 @@
//! //!
//! [constants]: zcash_primitives::constants //! [constants]: zcash_primitives::constants
use bech32::{self, Error, FromBase32, ToBase32}; use bech32::{self, Error, FromBase32, ToBase32, Variant};
use bs58::{self, decode::Error as Bs58Error}; use bs58::{self, decode::Error as Bs58Error};
use std::convert::TryInto; use std::convert::TryInto;
use std::io::{self, Write}; use std::io::{self, Write};
@ -21,18 +21,18 @@ where
{ {
let mut data: Vec<u8> = vec![]; let mut data: Vec<u8> = vec![];
write(&mut data).expect("Should be able to write to a Vec"); write(&mut data).expect("Should be able to write to a Vec");
bech32::encode(hrp, data.to_base32()).expect("hrp is invalid") bech32::encode(hrp, data.to_base32(), Variant::Bech32).expect("hrp is invalid")
} }
fn bech32_decode<T, F>(hrp: &str, s: &str, read: F) -> Result<Option<T>, Error> fn bech32_decode<T, F>(hrp: &str, s: &str, read: F) -> Result<Option<T>, Error>
where where
F: Fn(Vec<u8>) -> Option<T>, F: Fn(Vec<u8>) -> Option<T>,
{ {
let (decoded_hrp, data) = bech32::decode(s)?; match bech32::decode(s)? {
if decoded_hrp == hrp { (decoded_hrp, data, Variant::Bech32) if decoded_hrp == hrp => {
Vec::<u8>::from_base32(&data).map(|data| read(data)) Vec::<u8>::from_base32(&data).map(|data| read(data))
} else { }
Ok(None) _ => Ok(None),
} }
} }

View File

@ -12,7 +12,7 @@ license = "MIT OR Apache-2.0"
edition = "2018" edition = "2018"
[dependencies] [dependencies]
bech32 = "0.7" bech32 = "0.8"
bs58 = { version = "0.4", features = ["check"] } bs58 = { version = "0.4", features = ["check"] }
ff = "0.8" ff = "0.8"
group = "0.8" group = "0.8"