作者 | 星云 Clustar 柴迪 策划 | 蔡芳芳 分布式人工智能系统是一个多学科交叉领域,从应用场景看,其既可以应用在数据中心做加速,又可以用在联邦学习领域成为多方共同训练模型的工具。而在这两个应用场景中, 隐私保护都是必不可少的。近些年同态加密在隐私保护领域备受关注,本文将科普性地介绍什么是同态加密,以及其在联邦学习、云计算领域的应用。 1 什么是同态加密
同态加密(HE,homomorphic encryption)是密码学里一种特殊的加密模式,同态加密使我们可以将加密后的密文发给任意的第三方进行计算,并且在计算前不需要解密,即:在密文上进行计算。虽然同态加密的概念最早出现于 30 年前,但是第一个支持在密文上进行任意运算的 全同态加密 框架出现较晚,在 2009 年由 Craig Gentry 提出。
同态加密的数学定义为 [1]:
其中 E 为加密算法,M 是所有可能信息的集合。如果加密算法 E 满足公式 (1),那么我们称 E 在★运算上符合同态加密的性质。目前的同态加密算法,主要支持两种运算上的同态:加法和乘法。
需要注意的是,以上公式 (1) 只是为了让我们更加清晰地理解同态加密的性质,实际中的同态加密算法可能会有一些不同。比如 Paillier 算法对加法同态,那么根据公式 (1),其密文的求和应该等于求和后的密文,但实际情况是密文的乘积等于求和后的密文,所以我们一般只要求得到的密文结果和我们预期的计算相同,但是对密文上的计算不作具体要求(一般由加密算法决定)。
2 同态加密的组成与分类同态加密算法一般包含以下四个部分:
KeyGen:密钥生成算法,产生公钥和私钥
Encryption:加密算法
Decryption:解密算法
Homomorphic Propert