Noir component for Encryption

Hi!
I’m exploring the opportunity of using Noir for an experiment. I’m wondering if there is any available gadget containing the primitives to perform:
a) symmetric key encryption (no particular preference for a specific scheme)
b) asymmetric key encryption (no particular preference for a specific scheme)

37 Likes

We have a few hashing primitives available but not encryption specifically atm.

How does the workflow of your experiment look like?

17 Likes

The component that regards encryption would be to:

  • prove that a value committed is equal to a secret being encrypted with a symmetric key
  • prove that a (different) value committed is equal to a secret being encrypted with an asymmetric key (public key)
3 Likes

Would proving hash(secret, ...) + sharing the preimage with the decryptor sufficiently mimics what you aim to achieve, or must it strictly be an en/decryption scheme?

Thanks for the reply. Actually from what I can tell, it must be an encryption/decryption scheme.

Do you have a library that contains all these reusable primitives? Would it be something worth adding to it?

41 Likes

We don’t currently have such a library. Would you be interested in creating one? We’d be happy to help with technical and financial support via our grants program. You can learn more about it here.