diff --git a/internal/encoding/asn1/asn1.go b/internal/encoding/asn1/asn1.go index 1d27cc5f..04052560 100644 --- a/internal/encoding/asn1/asn1.go +++ b/internal/encoding/asn1/asn1.go @@ -177,6 +177,10 @@ func decodeIdentifier(r []byte) ([]byte, []byte, error) { for offset < len(r) && r[offset]&0x80 == 0x80 { offset++ } + if offset >= len(r) { + return nil, nil, ErrEarlyEOF + } + offset++ } return r[:offset], r[offset:], nil }