BGV的对称加密

BGV是目前比较流行的全同态加密方案之一,其构造基于 L W E LWE LWE或者 R − L W E R-LWE RLWE。本文介绍BGV方案的私钥加密,也就是对称加密的形式,基于多项式环的描述。

假设与参数

其假设跟公钥的BGV是完全一样的。有一个由分圆多项式构造的环R,满足安全参数。在环上有三个分布,均匀随机分布,私钥分布和噪声分布。一般来说,私钥分布和噪声分布是相同的(对于多项式环),为高斯离散分布。
明文为 Z p \mathbb{Z}_p Zp中的元素, p p p是一个公开的素数。

私钥生成和加解密

其私钥是从私钥分布中采样的一个秘密随机数,设为 s s s.
加密:假设我们要加密一个消息,被编码成 m m m。在均匀随机分布中采样得到 c 1 c_1 c1,在噪声分布中采样得到 e e e,然后计算 c 0 = c 1 s + p e + m c_0=c_1s+pe+m c0=c1s+pe+m.得到最终的密文为 c = ( c 0 , c 1 ) \mathbf{c}=(c_0,c_1) c=(c0,c1).
解密:对称加密的特点就是,加密和解密的密钥是相同的,都是 s s s.解密时,我们计算 m = c 0 − c 1 s m o d    p m=c_0-c_1s \mod p m=c0c1smodp.可以看到,私钥加密得到的密文和公钥加密得到的密文是一样的解密方式。这样对于同态加法、同态乘法、重线性化等等操作都是一样的。
解密正确性证明:
c 0 − c 1 s m o d    p = c 1 s + p e + m − c 1 s m o d    p = p e + m m o d    p = m m o d    p \begin{aligned} c_0-c_1s \mod p&=c_1s+pe+m-c_1s \mod p\\ &=pe+m \mod p\\ &=m \mod p \end{aligned} c0c1smodp=c1s+pe+mc1smodp=pe+mmodp=mmodp

猜你喜欢

转载自blog.csdn.net/watqw/article/details/124082022
今日推荐