wip adding bitcoin keys to side nodes
This commit is contained in:
@@ -1,8 +1,9 @@
|
||||
use bitcoin::secp256k1::{rand, Keypair, Secp256k1};
|
||||
use bitcoin::secp256k1::{rand, Keypair, Secp256k1, SecretKey};
|
||||
use std::{
|
||||
fs::{self, File},
|
||||
io::Write,
|
||||
path::PathBuf,
|
||||
str::FromStr,
|
||||
};
|
||||
|
||||
pub(crate) fn write(key_path: &PathBuf) -> Result<(), std::io::Error> {
|
||||
@@ -13,6 +14,7 @@ pub(crate) fn write(key_path: &PathBuf) -> Result<(), std::io::Error> {
|
||||
|
||||
let pub_str = public_key.to_string();
|
||||
let priv_str = secret_key.display_secret().to_string();
|
||||
println!("private key: {priv_str}");
|
||||
let out = format!("{pub_str}/{priv_str}");
|
||||
println!("out: {out}");
|
||||
file.write(out.as_bytes())?;
|
||||
@@ -20,16 +22,15 @@ pub(crate) fn write(key_path: &PathBuf) -> Result<(), std::io::Error> {
|
||||
Ok(())
|
||||
}
|
||||
|
||||
pub(crate) fn load_from_file(side_dir: PathBuf) -> bitcoin::secp256k1::Keypair {
|
||||
let key_path = crate::utils::side_paths(side_dir.clone()).0;
|
||||
pub(crate) fn load_from_file(side_dir: &PathBuf) -> bitcoin::secp256k1::Keypair {
|
||||
let bitcoin_key_path = crate::utils::side_paths(side_dir.clone()).1; // TODO: this tuple stinks
|
||||
|
||||
let data = fs::read_to_string(key_path).expect("couldn't read bitcoin key file");
|
||||
println!("data: {:?}", data);
|
||||
let data = fs::read_to_string(bitcoin_key_path).expect("couldn't read bitcoin key file");
|
||||
println!("bitcoin keys: {:?}", data);
|
||||
|
||||
let secret_key_data = data.split("/").collect::<Vec<&str>>()[1];
|
||||
|
||||
let secp = Secp256k1::new();
|
||||
let secret_key = bitcoin::secp256k1::SecretKey::from_slice(secret_key_data.as_bytes()).unwrap();
|
||||
|
||||
let secret_key =
|
||||
SecretKey::from_str(secret_key_data).expect("couldn't load secret key from file");
|
||||
Keypair::from_secret_key(&secp, &secret_key)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user