Homomorphic encryption supports mathematical operations on encrypted values.
Simple
Simple Homomorphic Cipher. Hom. This outlines a Simple Homomorphic cipher.
Simple Homomorphic Cipher (Python). Hom. This outlines a Simple Homomorphic cipher with Python.
Full Homomorphic Cipher with a Public Key. Public key. This outlines a Simple Homomorphic cipher using a public key
ElGamal
ElGamal Homomorphic Cipher (Go). ElGamal. This outlines ElGamal Homomorphic cipher with Go.
ElGamal Homomorphic Cipher (Go) - Divide. ElGamal. This outlines ElGamal Homomorphic cipher with Go with divide.
ElGamal Homomorphic Cipher (Go) - Additive. ElGamal. This outlines ElGamal Homomorphic cipher with Go with addition.
RSA
Multiplying with RSA. Multiply. This outlines the multiplication of ciphers with RSA.
HEAAN
HEAAN (Homomorphic Encryption for Arithmetic of Approximate Numbers). HEAAN. HEAAN.
HEAAN (Homomorphic Encryption for Arithmetic of Approximate Numbers) - Homorphonic Scalar. HEAAN Scalar. HEAAN Scalar.
HEAAN (Homomorphic Encryption for Arithmetic of Approximate Numbers) - Homorphonic Subtract. HEAAN Sub. HEAAN Subtract.
HEAAN (Homomorphic Encryption for Arithmetic of Approximate Numbers) - Homorphonic Add, Subtract and Multiply. HEAAN Add, Subtract and Multiply. HEAAN Add, Subtract and Multiply.
Lattice Encryption (NTRU). Lattice. This outlines Lattice encryption.
Lattice Encryption: NTRU Key Generation Python). NTRU. Outlines how NTRU operates for key generation.
ZKP
Full Homomorphic Cipher to determine if Bob is older. Older. This outlines a Simple Homomorphic cipher to determine if Bob is older than Alice.
Full Homomorphic Cipher to determine matching password. Password. This outlines a Simple Homomorphic cipher to determine if a password matches
Interactive ZKP With Probablistic Methods. ZKP. Interactive ZKP With Probablistic Methods using Python.
Full Homomorphic Cipher for Millionaire's Problem. Millionaire. This outlines a Simple Homomorphic cipher for the Millionaire's Problem
Full Homomorphic Cipher for 2-bit Adder. Adder. This outlines a Simple Homomorphic cipher for a 2-bit adder with DGHV.
Full Homomorphic Cipher for Full Adder. Full Adder. This outlines a Simple Homomorphic cipher for a full adder with DGHV.
Full Homomorphic Cipher for 4-bit Adder. Adder. This outlines a Simple Homomorphic cipher for a 4-bit adder with DGHV.
Full Homomorphic Cipher for 4-bit Adder/Subtractor. Subtract. This outlines a Simple Homomorphic cipher for a 4-bit adder/subtractor with DGHV.
Full Homomorphic Cipher to XOR two integers. X-OR. This outlines a Simple Homomorphic cipher to X-OR two integers
Paillier
Paillier crypto system (JavaScript). Paillier. Outlines Paillier crypto system using JavaScript.
Simple Paillier example (Python). Paillier. Outlines a simple Paillier crypto system using Python.
Homomorphic Difference in Python (Pallier). Diff. This outlines Homomorphic Difference in Python (Pallier) .
Voting with Paillier crypto system. ZKP. Outlines voting with Paillier crypto system.
Homomorphic encryption (add and subtract) and RSA protection. Paillier + RSA. In this case we will use add and subtract using homomorphic methods, but will protect these values using an RSA public key.
Homomorphic encryption (add and subtract) and RSA protection - with Montgomery reduction. Paillier + RSA. In this case we will use add and subtract using homomorphic methods, but will protect these values using an RSA public key. In this case we will use the Montgomery reduction method for the multiplications.
Others
(Un)Linkbable IDs with homomorphic encryption. CL-15. This outlines (un)linkage IDs using homomorphic encryption and RSA.