upleb.uk

Public git repos — served from a NIP-34 GRASP relay at git.upleb.uk

summaryrefslogtreecommitdiff
path: root/src/key_handling/encryption.rs
diff options
context:
space:
mode:
authorDanConwayDev <DanConwayDev@protonmail.com>2024-03-28 12:35:37 +0000
committerDanConwayDev <DanConwayDev@protonmail.com>2024-03-28 12:35:37 +0000
commit4b06b2bd70d37656d727c8fffc0656c1aa3c7b97 (patch)
tree1d885fdef21a7530c1a91f848788a665d6fc9948 /src/key_handling/encryption.rs
parent91a68de459b7d22a8dfb8a324e43740fca3e0a35 (diff)
parent11dc9fa2d8b82594d3803f12d2c5a49e57026cfb (diff)
Merge upgrade rust-nostr v0.29
refactor to address breaking changes in rust-nostr fix a number of in dependancy which have been upstreamed
Diffstat (limited to 'src/key_handling/encryption.rs')
-rw-r--r--src/key_handling/encryption.rs12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/key_handling/encryption.rs b/src/key_handling/encryption.rs
index 0ef7f69..54002fa 100644
--- a/src/key_handling/encryption.rs
+++ b/src/key_handling/encryption.rs
@@ -1,3 +1,5 @@
1use std::str::FromStr;
2
1use anyhow::{anyhow, bail, ensure, Context, Result}; 3use anyhow::{anyhow, bail, ensure, Context, Result};
2use chacha20poly1305::{ 4use chacha20poly1305::{
3 aead::{rand_core::RngCore, Aead, AeadCore, KeyInit, OsRng, Payload}, 5 aead::{rand_core::RngCore, Aead, AeadCore, KeyInit, OsRng, Payload},
@@ -6,6 +8,7 @@ use chacha20poly1305::{
6#[cfg(test)] 8#[cfg(test)]
7use mockall::*; 9use mockall::*;
8use nostr::{prelude::*, Keys}; 10use nostr::{prelude::*, Keys};
11use nostr_sdk::bech32::{self, FromBase32, ToBase32};
9use rand::{distributions::Alphanumeric, thread_rng, Rng}; 12use rand::{distributions::Alphanumeric, thread_rng, Rng};
10use zeroize::Zeroize; 13use zeroize::Zeroize;
11 14
@@ -120,10 +123,11 @@ impl EncryptDecrypt for Encryptor {
120 bail!("invalid encrypted key"); 123 bail!("invalid encrypted key");
121 } 124 }
122 125
123 let key = Keys::from_sk_str( 126 let key =
124 std::str::from_utf8(&inner_secret).context("inner secret is not [u8]")?, 127 Keys::from_str(std::str::from_utf8(&inner_secret).context("inner secret is not [u8]")?)
125 ) 128 .context(
126 .context("incorrect password. Key decrypted with password did not produce a valid nsec.")?; 129 "incorrect password. Key decrypted with password did not produce a valid nsec.",
130 )?;
127 131
128 inner_secret.zeroize(); 132 inner_secret.zeroize();
129 133