全同态加密(1)

同态加密

可以对加密数据做任意功能的运算,运算的结果解密后相应于对明文做同样运算的结果。

云计算应用下的场景

Alice对数据进行加密。并把加密后的数据发送给Cloud;

Alice向Cloud提交数据的处理方法,这里用函数f来表示;

Cloud在函数f下对数据进行处理,并且将处理后的结果发送给Alice;

Alice对数据进行解密,得到结果。

主要函数

KeyGen函数:密钥生成函数。这个函数应该由Alice运行,用于产生加密数据Data所用的密钥Key。

Encrypt函数:加密函数。这个函数也应该由Alice运行,用Key对用户数据Data进行加密,得到密文CT(Ciphertext)。

Evaluate函数:评估函数。这个函数由Cloud运行,在用户给定的数据处理方法f下,对密文进行操作,使得结果相当于用户用密钥Key对f(Data)进行加密。

Decrypt函数:解密函数。这个函数由Alice运行,用于得到Cloud处理的结果f(Data)。

同态加密的方案

根据f的限制条件不同,HE方案实际上分为了两类:

Fully Homomorphic Encryption (FHE):这意味着HE方案支持任意给定的f函数,只要这个f函数可以通过算法描述,用计算机实现。显然,FHE方案是一个非常棒的方案,但是计算开销极大,暂时还无法在实际中使用。

Somewhat Homomorphic Encryption (SWHE):这意味着HE方案只支持一些特定的f函数。SWHE方案稍弱,但也意味着开销会变得较小,容易实现,现在已经可以在实际中使用。



你可能感兴趣的:(全同态加密)