準同型暗号
位数が素数 q {\displaystyle q} であるような群 G = ⟨ g ⟩ {\displaystyle G=\langle g\rangle } 上のElGamal暗号を考える。公開鍵を ( g , y = g x ) {\displaystyle (g,y=g^{x})} 、秘密鍵を x {\displaystyle x} とする。平文 m 1 , m 2 ∈ G {\displaystyle m_{1},m_{2}\in G} の暗号文は、 ( g r 1 , y r 1 ⋅ m 1 ) {\displaystyle (g^{r_{1}},y^{r_{1}}\cdot m_{1})} 、 ( g r 2 , y r 2 ⋅ m 2 ) {\displaystyle (g^{r_{2}},y^{r_{2}}\cdot m_{2})} となる。 この二つの暗号文を掛け合わせれば、 ( g r 1 + r 2 , y r 1 + r 2 ⋅ ( m 1 m 2 ) ) {\displaystyle (g^{r_{1}+r_{2}},y^{r_{1}+r_{2}}\cdot (m_{1}m_{2}))} となり、 m 1 m 2 {\displaystyle m_{1}m_{2}} の暗号文となる。