projects
/
rust-lightning
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge pull request #2985 from TheBlueMatt/2024-03-fix-upgradable-enum-121
[rust-lightning]
/
lightning
/
src
/
ln
/
peer_channel_encryptor.rs
diff --git
a/lightning/src/ln/peer_channel_encryptor.rs
b/lightning/src/ln/peer_channel_encryptor.rs
index c9e1ac47886956eb3a6532d6008ca6d6e62992f7..51e34bdb96967428e432cba2c8a082e1f6352b72 100644
(file)
--- a/
lightning/src/ln/peer_channel_encryptor.rs
+++ b/
lightning/src/ln/peer_channel_encryptor.rs
@@
-24,8
+24,8
@@
use bitcoin::secp256k1;
use hex::DisplayHex;
use hex::DisplayHex;
-use crate::
util
::chacha20poly1305rfc::ChaCha20Poly1305RFC;
-use crate::
util::crypto
::hkdf_extract_expand_twice;
+use crate::
crypto
::chacha20poly1305rfc::ChaCha20Poly1305RFC;
+use crate::
crypto::utils
::hkdf_extract_expand_twice;
use crate::util::ser::VecWriter;
use core::ops::Deref;
use crate::util::ser::VecWriter;
use core::ops::Deref;
@@
-188,7
+188,7
@@
impl PeerChannelEncryptor {
nonce[4..].copy_from_slice(&n.to_le_bytes()[..]);
let mut chacha = ChaCha20Poly1305RFC::new(key, &nonce, h);
nonce[4..].copy_from_slice(&n.to_le_bytes()[..]);
let mut chacha = ChaCha20Poly1305RFC::new(key, &nonce, h);
- if
!chacha.decrypt(&cyphertext[0..cyphertext.len() - 16], res, &cyphertext[cyphertext.len() - 16..]
) {
+ if
chacha.variable_time_decrypt(&cyphertext[0..cyphertext.len() - 16], res, &cyphertext[cyphertext.len() - 16..]).is_err(
) {
return Err(LightningError{err: "Bad MAC".to_owned(), action: msgs::ErrorAction::DisconnectPeer{ msg: None }});
}
Ok(())
return Err(LightningError{err: "Bad MAC".to_owned(), action: msgs::ErrorAction::DisconnectPeer{ msg: None }});
}
Ok(())