陶瓷刮刀
同态加密理论⾸次在1978年提出,是⼀种能保护数据隐私的加密算法。
1.什么是同态加密算法?
如果有⼀个加密函数 f , 把明⽂A变成密⽂A’, 把明⽂B变成密⽂B’,也就是说f(A) = A’ ,f(B) = B’ 。另外还有⼀个解密函数,能够将 f 加密后的密⽂解密成加密前的明⽂。 对于⼀般的加密函数,如果我们将A’和B’相加,得到C’。对C’进⾏解密得到的结果⼀般是毫⽆意义的乱码。
但是,如果 f 是个可以进⾏同态加密的加密函数, 对C’使⽤解密函数进⾏解密得到结果C, 这时候的C = A + B。
作⽤:这样,数据处理权与数据所有权可以分离,这样企业可以防⽌⾃⾝数据泄露的同时,利⽤云服务的算⼒。
2.同态加密算法的分类
(1)如果满⾜ f(A)+f(B)=f(A+B), 将这种加密函数叫做加法同态。 (2)如果满⾜ f(A)×f(B)=f(A×B), 将这种加密函数叫做乘法同态。
洗头床
如果⼀个加密函数f只满⾜加法同态,就只能进⾏加减法运算;
手印台如果⼀个加密函数f只满⾜乘法同态,就只能进⾏乘除法运算;
3、全同态加密算法
如果⼀个算法能满⾜:
张紧轮
1)加法同态
2)乘法同态
短程蒸馏器
那么,称之为全同态算法。
也就是说,如果⼀个加密函数同时满⾜加法同态和乘法同态,称为全同态加密。
加法同态加密是针对数值的⼀种⾮对称加密
1. 传统区块链上,⽤户的账户余额没有经过加密直接存储在区块上,导致⽤户的账户完全暴露在所有节点上,同时,⽤户在发起交易 时,交易信息中的交易⾦额也是完全公开的,区块链上的验证节点会对⽤户的账户余额和交易⾦额进⾏数学判断,从⽽验证交易的合法性。这种⽅式在实现了区块链去中⼼化、信息不可篡改的基本功能外,⽤户的账户隐私完暴露在区块链的所有节点上。
漱口杯2. 对区块链上⾦额数值进⾏加法同态加密,验证节点在不需要知道交易⾦额的具体数值或者其他任何隐藏信息的情况下,可以对密⽂进
⾏正确的加法操作,这样区块链上所有的⽤户余额和交易⾦额都以同态密⽂的形式存在,除了拥有私钥的可信第三⽅机构外,所有节点都只能验证交易⽽⽆法得知具体数值,这将有效的保护⽤户的账户隐私。
同态加密相关论⽂: