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 serde::{Deserialize, Serialize};
|
||||
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 crate::crypto::AAD;
|
||||
@ -44,6 +44,13 @@ impl Member {
|
||||
pub fn get_addresses(&self) -> Vec<String> {
|
||||
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! {
|
||||
|
Loading…
x
Reference in New Issue
Block a user