scql icon indicating copy to clipboard operation
scql copied to clipboard

关于Group by的疑问和思考

Open Shareong opened this issue 1 year ago • 2 comments

首先对隐语的开源贡献表示深深的敬意,隐语丰富的文档和视频课程为社区用户提供了大量有价值的知识点和Idea!

学习完隐语关于SCQL的两节慕课,我有两个疑问:

  1. Vertical Group By的实现原理是怎样的? 我自己思考了下,在实际的数据水平切割场景中,Group By的Key大概率是个枚举类型。大家先各自做分组和聚合,然后按Key排序,并用占位符补齐缺失Key的聚合Value,这样保证各方的数据对齐,然后再执行MPC(加法/比较),这样密态计算的开销就很小了。不知道这种思路和SCQL的实现差别有多少。

  2. 数据垂直切分场景中的分组后求最值是怎么实现的? 视频课程中详细介绍了HESum Group By,我理解它是解决SUM的问题,那如果是要计算最值呢。借鉴同态的思路,我在想揭序加密(ORE)是否能用上,有Value的一方用一个随机盐和私钥加密所有Value,然后把密文发给有分组的一方,基于密文求出最值,最后给到有Value的一方解密。

期待社区的回复~

Shareong avatar Jan 23 '24 07:01 Shareong

Hi @Shareong,感谢认可~

  1. 等 vertical group by 实现到 github 上来再展开细节哈~ 抱歉不在这里展开。
  2. 目前 HESum group by 用的是半同态加密,只能做 sum。求 min/max 不会走到 HESum group by 实现。如果要使用同态加密求极值,可能要用 TFHE。你这里提到的 ORE 是什么,可以展开说下吗,以及是否有相关的资料。

tongke6 avatar Jan 23 '24 09:01 tongke6

Hi @Shareong,感谢认可~

  1. 等 vertical group by 实现到 github 上来再展开细节哈~ 抱歉不在这里展开。
  2. 目前 HESum group by 用的是半同态加密,只能做 sum。求 min/max 不会走到 HESum group by 实现。如果要使用同态加密求极值,可能要用 TFHE。你这里提到的 ORE 是什么,可以展开说下吗,以及是否有相关的资料。
  1. Vertical Group By大概什么时候上呀
  2. ORE属于对称密码,能保证密文和明文保持同样的顺序,即能在密文上做排序,这是密码大牛Dan Boneh列出的它相关研究

Shareong avatar Jan 24 '24 02:01 Shareong