// AddCipher homomorphically adds together two cipher texts.
// To do this we multiply the two cipher texts, upon decryption, the resulting
// plain text will be the sum of the corresponding plain texts.
AddCipher homomorphically adds together two cipher texts.
To do this we multiply the two cipher texts, upon decryption, the resulting
plain text will be the sum of the corresponding plain texts.
// AddCipher homomorphically adds together two cipher texts . // To do this we multiply the two cipher texts upon decryption the resulting // plain text will be the sum of the corresponding plain texts .
func AddCipher(pubKey *PublicKey, cipher1, cipher2 []byte) []byte {
	x := new(big.Int).SetBytes(cipher1)
	y := new(big.Int).SetBytes(cipher2)
	return new(big.Int).Mod(
		new(big.Int).Mul(x, y),
		pubKey.NSquared,
	).Bytes()
}
func AddCipher ( pubKey * PublicKey , cipher1 , cipher2 [ ] byte ) [ ] byte { x := new ( big . Int ) . SetBytes ( cipher1 ) y := new ( big . Int ) . SetBytes ( cipher2 ) return new ( big . Int ) . Mod ( new ( big . Int ) . Mul ( x , y ) , pubKey . NSquared , ) . Bytes ( ) }
AddCipher homomorphically adds together two cipher texts.
AddCipher homomorphically adds together two cipher texts .
// x * y mod n^2