crypto/ecies: shoulde return ErrInvalidMessage even err == nil

This commit is contained in:
Weixie Cui 2026-05-23 23:22:38 +08:00
parent efe58eac00
commit 9accbda175

View file

@ -254,9 +254,12 @@ func Encrypt(rand io.Reader, pub *PublicKey, m, s1, s2 []byte) (ct []byte, err e
Ke, Km := deriveKeys(hash, z, s1, params.KeyLen) Ke, Km := deriveKeys(hash, z, s1, params.KeyLen)
em, err := symEncrypt(rand, params, Ke, m) em, err := symEncrypt(rand, params, Ke, m)
if err != nil || len(em) <= params.BlockSize { if err != nil {
return nil, err return nil, err
} }
if len(em) <= params.BlockSize {
return nil, ErrInvalidMessage
}
d := messageTag(params.Hash, Km, em, s2) d := messageTag(params.Hash, Km, em, s2)