更新时间:2024-05-10 GMT+08:00
分享

统计型作业的差分隐私保护

本示例作业,以统计各行业的“企业税收总和”“用电量总和”,进行统计分析:

Select
  industry,
  sum(tax_bal),
  sum(electric_bal)
from
  LEAGUE_CREATOR.tax a join
  dayu002.power_data b
  on a.id = b.id 
group by
  industry

统计分析型的作业,可能被作业执行方通过增删某个碰撞的id,得到两次作业之间的差值,从而推算出实际taxpay和water_fee。

开启空间中的差分隐私开关保护敏感数据,符合差分隐私条件的统计作业,会自动应用差分隐私算法对计算结果进行加噪保护, 在一定误差范围内保证数据无法被恶意偷取。
图1 差分隐私开关
第一次执行作业的结果如下:
图2 作业结果

在返回最终统计结果前,增加了一个差分隐私计算的任务节点,如图3所示。

图3 差分隐私计算任务节点

再执行如下sql,sql中过滤掉了某个企业,试图用差值去计算这个企业的税收值。

Select
  industry,
  sum(tax_bal),
  sum(electric_bal)
from
  LEAGUE_CREATOR.tax a join
  dayu002.power_data b   
  on a.id = b.id   
  where a.id <> '123400558'  
group by
  industry

这个企业的实际tax为274:

图4 tax

得到新的结果如下:

图5 新结果

经过计算,66539.583321490225131-66078.857559963717677=461,

通过差分隐私算法保护聚合操作的安全性,使开启算法保护的计算差值与预期得到的实际差值274不同,避免真实数据被窃取。

相关文档