同态加密听上去像密文上的万能计算器,这是我听到这个词的第1反应,但清单告诉我不是。越往下查越不对劲,它支持的运算种类,比想象中少得多,少到能数完。少到可以数出来,我数了,就两类半。加密状态下的计算,到底是不是一个整体能力?我原本当它是一整个,后来发现应该当成一张清单来读,答案就写在清单里。
先列官方材料里的运算能力清单,一条条核对过去。加法同态算得了,标量乘算得了,任意乘法呢。这一栏我卡住了,我翻了3遍,没有找到对应的支持项。清单列到这里,我花了20分钟,发现同态加密不是一个形容词,是一张能力边界表。这才是真相。表上有的才是能算的。@Dusk
拆开这份边界,看它怎么影响设计取舍。想在密文上做什么计算,先要问一句这个运算在不在表里。在表里的,密文状态下直接算。不在表里的,要么先解密,要么换电路设计。两条路都有代价,前者暴露数据,后者增加证明复杂度,没有免费选项。这是铁律。选路之前先问清楚,自己的数据能接受哪种代价。
45%到255%是WASM对比原生代码的慢速区间,这个数字我核了两遍。宣传口径把它讲成全能的加密计算,机制层画的是有限运算。我越核对越拧巴,密文上的计算能力不等于全能计算。这个区别大多数人要到看清单的时候才意识到,全能两个字的出处,最后只在标题里找到,真相藏在标题里。
所以判断一个隐私方案的成色,别问它有没有同态加密,问它的能力表上写了几项。有人觉得同态加密就是全能计算,我不这么看,这件事反直觉,能力表才是唯一标准。有人拿同态加密说事,$DUSK 先让他把表拿出来。拿不出来的,全能两个字就当没听见,看清单只花5分钟,这恰恰是划算的地方。#dusk
先列官方材料里的运算能力清单,一条条核对过去。加法同态算得了,标量乘算得了,任意乘法呢。这一栏我卡住了,我翻了3遍,没有找到对应的支持项。清单列到这里,我花了20分钟,发现同态加密不是一个形容词,是一张能力边界表。这才是真相。表上有的才是能算的。@Dusk
拆开这份边界,看它怎么影响设计取舍。想在密文上做什么计算,先要问一句这个运算在不在表里。在表里的,密文状态下直接算。不在表里的,要么先解密,要么换电路设计。两条路都有代价,前者暴露数据,后者增加证明复杂度,没有免费选项。这是铁律。选路之前先问清楚,自己的数据能接受哪种代价。
45%到255%是WASM对比原生代码的慢速区间,这个数字我核了两遍。宣传口径把它讲成全能的加密计算,机制层画的是有限运算。我越核对越拧巴,密文上的计算能力不等于全能计算。这个区别大多数人要到看清单的时候才意识到,全能两个字的出处,最后只在标题里找到,真相藏在标题里。
所以判断一个隐私方案的成色,别问它有没有同态加密,问它的能力表上写了几项。有人觉得同态加密就是全能计算,我不这么看,这件事反直觉,能力表才是唯一标准。有人拿同态加密说事,$DUSK 先让他把表拿出来。拿不出来的,全能两个字就当没听见,看清单只花5分钟,这恰恰是划算的地方。#dusk