feat: v0.1.2, fix decrypt missing tag panic issue
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "sm4-gcm"
|
name = "sm4-gcm"
|
||||||
version = "0.1.1"
|
version = "0.1.2"
|
||||||
edition = "2021"
|
edition = "2021"
|
||||||
authors = ["Hatter Jiang"]
|
authors = ["Hatter Jiang"]
|
||||||
repository = "https://git.hatter.ink/hatter/sm4-gcm"
|
repository = "https://git.hatter.ink/hatter/sm4-gcm"
|
||||||
|
|||||||
@@ -123,6 +123,9 @@ impl Sm4GcmStreamDecryptor {
|
|||||||
self.ghash.update_padded(&adata_and_message_len);
|
self.ghash.update_padded(&adata_and_message_len);
|
||||||
|
|
||||||
let tag = self.calculate_tag();
|
let tag = self.calculate_tag();
|
||||||
|
if self.message_buffer.len() < 16 {
|
||||||
|
return Err(format!("Tag missing, message length is: {} < 16 bytes", self.message_buffer.len()));
|
||||||
|
}
|
||||||
let message_tag = &self.message_buffer[message_buffer_len - 16..];
|
let message_tag = &self.message_buffer[message_buffer_len - 16..];
|
||||||
|
|
||||||
if message_tag != tag.as_slice() {
|
if message_tag != tag.as_slice() {
|
||||||
|
|||||||
Reference in New Issue
Block a user