3
3
//! Core functions of hierarchical deterministic key (HDK)
4
4
5
5
use wagyu_lib:: {
6
- wordlist, BitcoinDerivationPath , BitcoinExtendedPrivateKey ,
7
- BitcoinMnemonic , Mainnet ,
6
+ wordlist, HdkDerivationPath , HdkExtendedPrivateKey ,
7
+ HdkMnemonic , Mainnet ,
8
8
} ;
9
9
use wagyu_model:: {
10
10
mnemonic:: Mnemonic , ExtendedPrivateKey , MnemonicCount , MnemonicExtended ,
@@ -22,7 +22,7 @@ use wedpr_s_protos::generated::hdk::ExtendedKeyPair;
22
22
pub fn create_mnemonic_en ( word_count : u8 ) -> Result < String , WedprError > {
23
23
let rng = & mut StdRng :: from_entropy ( ) ;
24
24
let mnemonic =
25
- match BitcoinMnemonic :: < Mainnet , wordlist:: English > :: new_with_count (
25
+ match HdkMnemonic :: < Mainnet , wordlist:: English > :: new_with_count (
26
26
rng, word_count,
27
27
) {
28
28
Ok ( v) => v,
@@ -44,7 +44,7 @@ pub fn create_master_key_en(
44
44
mnemonic_str : & str ,
45
45
) -> Result < Vec < u8 > , WedprError > {
46
46
let mnemonic =
47
- match BitcoinMnemonic :: < Mainnet , wordlist:: English > :: from_phrase (
47
+ match HdkMnemonic :: < Mainnet , wordlist:: English > :: from_phrase (
48
48
mnemonic_str,
49
49
) {
50
50
Ok ( v) => v,
@@ -98,7 +98,7 @@ pub fn derive_extended_key(
98
98
} ,
99
99
} ;
100
100
let master_key =
101
- match BitcoinExtendedPrivateKey :: < Mainnet > :: from_str ( master_key_str) {
101
+ match HdkExtendedPrivateKey :: < Mainnet > :: from_str ( master_key_str) {
102
102
Ok ( v) => v,
103
103
Err ( _) => {
104
104
wedpr_println ! (
@@ -110,7 +110,7 @@ pub fn derive_extended_key(
110
110
} ;
111
111
112
112
let derivation_path =
113
- match BitcoinDerivationPath :: from_str ( & key_derivation_path) {
113
+ match HdkDerivationPath :: from_str ( & key_derivation_path) {
114
114
Ok ( v) => v,
115
115
Err ( _) => {
116
116
wedpr_println ! (
@@ -132,10 +132,9 @@ pub fn derive_extended_key(
132
132
return Err ( WedprError :: FormatError ) ;
133
133
} ,
134
134
} ;
135
- let private_key_hex = extended_private_key
135
+ let private_key_hex = hex :: encode ( extended_private_key
136
136
. to_private_key ( )
137
- . to_secp256k1_secret_key ( )
138
- . to_string ( ) ;
137
+ . to_secp256k1_secret_key ( ) . serialize ( ) ) ;
139
138
140
139
let extended_private_key_bytes = match decode_hex_string ( & private_key_hex) {
141
140
Ok ( v) => v,
@@ -151,7 +150,8 @@ pub fn derive_extended_key(
151
150
let extended_public_key_uncompress_bytes = extended_private_key
152
151
. to_public_key ( )
153
152
. to_secp256k1_public_key ( )
154
- . serialize_uncompressed ( ) ;
153
+ . serialize ( ) ;
154
+ // .serialize_uncompressed();
155
155
156
156
// TODO: Replace with a better way to initialize PB if available.
157
157
Ok ( ExtendedKeyPair {
0 commit comments