Some Basic Algorithm on PPML
Published:
本次note讨论几个机器学习隐私保护预计算的几个算法
一些关于机器学习(ML)中隐私保护的学术论文,通常需要根据用户数据的类型进行一些个性化设计。这种设计是关于根据ML算法的数学特征密文状态下的数据处理。对于解决一些ML场景中使用的多的模型,需要找到一种安全的可扩展的密码学构件,确保密文下数据计算的正确性。ML主要完成的事情是用保护用户数据隐私的方式进行数据分类工作,这样用户们并不会共享出他们的数据,但会从ML分类中体会到个性华服务。此note把每个用到的基础协议进行编程分析并说明出处。有一些基本概念会对前文重合补充。
安全比特位分解协议
比特分解是安全多方计算中一个基本问题。
比特分解关心在固定输入参数比特长度情况下的通信的轮数和复杂度。在一个输入的长度是线性轮数的协议中,轮数和单位输入比特长度成线性关系。但在ML的计算中,通常在一个环上,固可以优化比特位分解协议,让其适用于在模$2$的模数上操作。通常这种协议满足两方安全计算,但存在一方恶意的三方计算中,会将问题归约到两方之间计算的新问题上,然后利用加法器的思想获取比特位共享。加法器的想法可见Veugen和Toft的协议。
安全求最大值
安全比较协议
(方法1)[https://www.mit.edu/~fengt/decision_tree.pdf]
利用加同态构造两轮比较协议的变种。协议中用户和服务器分别拥有$x$和$y$,协议结束两者获得比较比特的共享$1 { x<y }$。两方都获取不到对方的任何隐私信息。 用户拥有$x = x_1 \dots x_t$和服务器拥有$y = y_1 \dots y_t$,两者进行比较,第一种想法
Yao电路共享转换为布尔共享,对每条电路$w$,乱码者产生两个随机字符串$k^0_w, k^1_w$