Add key_is_part_of_member to Member
This commit is contained in:
parent
185a014de1
commit
432dc4b8ea
@ -6,7 +6,7 @@ use log::debug;
|
|||||||
use rand::thread_rng;
|
use rand::thread_rng;
|
||||||
use serde::{Deserialize, Serialize};
|
use serde::{Deserialize, Serialize};
|
||||||
use serde_json::{Map, Value};
|
use serde_json::{Map, Value};
|
||||||
use sp_client::{bitcoin::{hashes::{sha256t_hash_newtype, Hash, HashEngine}, hex::{DisplayHex, FromHex}, Txid}, silentpayments::utils::SilentPaymentAddress};
|
use sp_client::{bitcoin::{hashes::{sha256t_hash_newtype, Hash, HashEngine}, hex::{DisplayHex, FromHex}, XOnlyPublicKey}, silentpayments::utils::SilentPaymentAddress};
|
||||||
use tsify::Tsify;
|
use tsify::Tsify;
|
||||||
|
|
||||||
use crate::crypto::AAD;
|
use crate::crypto::AAD;
|
||||||
@ -44,6 +44,13 @@ impl Member {
|
|||||||
pub fn get_addresses(&self) -> Vec<String> {
|
pub fn get_addresses(&self) -> Vec<String> {
|
||||||
self.sp_addresses.clone()
|
self.sp_addresses.clone()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub fn key_is_part_of_member(&self, key: &XOnlyPublicKey) -> bool {
|
||||||
|
self.sp_addresses.iter().any(|a| {
|
||||||
|
let addr = SilentPaymentAddress::try_from(a.as_str()).unwrap();
|
||||||
|
addr.get_spend_key().x_only_public_key().0 == *key
|
||||||
|
})
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
sha256t_hash_newtype! {
|
sha256t_hash_newtype! {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user