From 5d84bddc62e658c946fbba67265fe13d1e2705b2 Mon Sep 17 00:00:00 2001 From: Tulir Asokan Date: Mon, 11 Aug 2025 10:58:24 +0300 Subject: [PATCH] crypto/attachments: hash correct data while decrypting --- crypto/attachment/attachments.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/crypto/attachment/attachments.go b/crypto/attachment/attachments.go index 65c76f5a..155cca5c 100644 --- a/crypto/attachment/attachments.go +++ b/crypto/attachment/attachments.go @@ -207,8 +207,13 @@ func (r *encryptingReader) Read(dst []byte) (n int, err error) { } } n, err = r.source.Read(dst) + if r.isDecrypting { + r.hash.Write(dst[:n]) + } r.stream.XORKeyStream(dst[:n], dst[:n]) - r.hash.Write(dst[:n]) + if !r.isDecrypting { + r.hash.Write(dst[:n]) + } return }