CIPT扩展知识-隐私增强技术-不经意传输
不经意传输(Oblivious Transfer - OT)是被广泛应用在安全多方计算中的一个密码学协议,最早在1981年由Rabin提出来。它希望解决的问题时就是用户A和用户B在进行秘密交换时,让秘密拥有方不知道对方是否获得秘密。这句话可能有点难于理解,我们来看一个例子:
背景调查公司(公司B)要对某候选人(C)的工作经历进行调查,于是致电他/她现在任职的公司(公司A)HR进行确认,虽然获得了正确的信息,但同时也暴露了候选人在重新找机会的机密信息。在一个完美世界里,我们希望实现的是:
1. 公司B从公司A获取到该候选人C的信息;
2. 公司A并不知道公司B获取的是哪位同事的信息;
3. 公司B无法获得获取除了C以外其他A公司同事的信息;
实现方式
下图简单说明了如何利用非对称加密实现不经意传输,从用户A得n个秘密中在对A保密的情况下将其中一条发送给用户B。
图1-OT实现方式说明上面的步骤完美的实现了OT的三个预定目标
1. 步骤9中用户B能解密处用自己的公钥加密的第i条数据,所以B获得了所需的秘密;
2. 步骤5中用户B只返回了一条加密消息给A,消息内容是用户B自己的公钥信息。用户B用自己的n个私钥都解密一遍后,无法从内容上区分出A选中的i是多少;
3. 用户A在第八步中传输给B的数据,只有第i条是正确用了B的公钥加密,其他都是其他对B来说未知的密钥加密的,B无法解密处除了mi之外其他的信息。
如果你对非对称加密原理不理解,欢迎阅读本系列中的RSA介绍文章。
回到文章开始的例子,如果我们把信息的交互都换成自动化的接口,利用OT协议是能在完成背景核查的同时保护候选人跳槽信息的。这个例子我们在后续讨论隐私计算中逆踪查询(Private Information Retrieval - PIR)应用的时候再进一步讨论。