HmacShaCryptor.Hash never hashed its input. For any input it returned HMACK("") — the MAC of the empty message under the key. Every AES-CBC-HMAC JWE produced or verified by gose therefore carried an authentication tag that is constant per key and independent of the message, removing ciphertext integrity entirely.