Skip to content
uencoder

Verifiable Encryption

Verifiable encryption lets a third party verify that a ciphertext satisfies a relation (e.g., it encrypts the value of a known commitment) without learning the plaintext.

Purpose

It proves ciphertext correctness without leaking content, used in fair exchange and verifiable voting protocols.

Mechanism

The ciphertext carries a zero-knowledge proof that the encryptor knows the plaintext and that it matches the public commitment/relation. The verifier checks the proof rather than decrypting. It builds on Sigma protocols or NIZK.

Use cases

  • Fair exchange protocols
  • Verifiable electronic voting
  • Commitment schemes

Related tools

References