@Override
  public byte[] decrypt(final byte[] ciphertext, final byte[] contextInfo)
      throws GeneralSecurityException {
    if (outputPrefix.length == 0) {
      return decryptNoPrefix(ciphertext, contextInfo);
    }
    if (!isPrefix(outputPrefix, ciphertext)) {
      throw new GeneralSecurityException("Invalid ciphertext (output prefix mismatch)");
    }
    byte[] ciphertextNoPrefix =
        Arrays.copyOfRange(ciphertext, outputPrefix.length, ciphertext.length);
    return decryptNoPrefix(ciphertextNoPrefix, contextInfo);
  }
Hybrid Public Key Encryption (HPKE) decryption.

<p>HPKE RFC: https://www.rfc-editor.org/rfc/rfc9180.html
java_src/src/main/java/com/google/crypto/tink/hybrid/internal/HpkeDecrypt.java