Jeddak-DPSQL 首次开源!基于差分隐私的 SQL 代理保护能力

动手点关注

f8de5d3387ec91e319a79b6c04dc6593.gif

干货不迷路

‍1. 背景

火山引擎对于用户敏感数据尤为重视,在火山引擎提供的数据分析产品中,广泛采用差分隐私技术对用户敏感信息进行保护。此类数据产品通常构建于 ClickHouse 等数据引擎之上,以 SQL 查询方式来执行计算逻辑,且查询逻辑往往较为复杂,因此对差分隐私的应用提出了以下要求:

  • 零改造、零感知:最大程度避免影响业务现有查询方式,最好做到业务零感知、零改造;

  • 良好、灵活的适配性:能够适配不同数据引擎的查询语法,以及能够处理包含多层嵌套、多重计算、多表连接等情形的复杂 SQL 语句;

  • 安全性与可用性平衡:能够根据业务数据质量要求,计算合理的隐私预算,在安全性和数据可用性之间保持平衡;

针对以上需求,火山引擎安全研究团队开发了 Jeddak-DPSQL:一种基于差分隐私的 SQL 代理工具。Jeddak-DPSQL 能够兼容多种数据引擎和SQL方言,内嵌多种差分噪声扰动算法,具备隐私预算管理能力,并且能够与底层数据引擎结合,在数据分析师无感的情况下,对 SQL 语句进行自动化分析和结果加噪处理。作为数据安全和隐私合规治理的标准能力之一,Jeddak-DPSQL 已经在抖音集团相关业务中得到了普遍应用与验证。

在实际解决公司内部面临的问题风险后,我们决定对 Jeddak-DPSQL 进行开源,希望能够为同样面临该类问题的企业和个人提供一定参考和帮助,同时也希望能够有更多的外部开发者能够一起对该开源项目进行共建,完善 Jeddak-DPSQL 产品功能,共同构建更完备的应用生态。

2. 全面了解 Jeddak-DPSQL

2.1 Jeddak-DPSQL 介绍

Jeddak-DPSQL 采用中心化差分隐私 (Centralized Differential Privacy,简称 CDP,适用于数据管理者可信的场景) 模式,以中间件的形式接收 SQL 统计查询请求,返回满足差分隐私的查询结果。一个典型的查询请求处理流程如下:

  • 首先,核心服务接受客户提交的 SQL 查询语句,对该语句进行解析和重写,以便于计算隐私噪声(如将 AVG 计算改为 SUM/COUNT);

  • 然后,核心服务调用元数据管理服务,计算重写后的 SQL 查询所对应的数据表敏感度,同时在数据库上执行重写后的 SQL 查询,得到原始的查询结果;

  • 最后,核心服务调用隐私预算管理服务得到为该查询分配的隐私预算,并结合敏感度在原始的查询结果中添加噪声并返回。

e9f83e4222f4d8e9b3ef533cfcf894f2.png

2.2 Jedda

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值