糖糖隐私计算技术的三大主流门派( 五 )


零知识证明起源于最小泄露证明 。 假设P表示掌握某些信息 , 并希望证实这一事实的实体 , 假设V是证明这一事实的实体 。 假如某个协议向V证明P的确掌握某些信息 , 但V无法推断出这些信息是什么 , 则称P实现了最小泄露证明 。 不仅如此 , 如果V除了知道P能够证明某一事实外 , 不能够得到其他任何知识 , 则称P实现了零知识证明 , 相应的协议称作零知识协议 。
零知识证明系统包括两部分:宣称某一命题为真的示证者(prover)和确认该命题确实为真的验证者(verifier) 。 证明是通过这两部分之间的交互来执行的 。 在零知识协议的结尾 , 验证者只有当命题为真时才会确认 。 但是 , 如果示证者宣称一个错误的命题 , 那么验证者完全可能发现这个错误 。 这种思想源自交互式证明系统 。 交互式系统在计算复杂度理论方面已经获得异常独立的地位 。
糖糖隐私计算技术的三大主流门派
本文插图
零知识证明流程
零知识证明大体由四部分组成:
多项式问题的转化- 需要证明的问题转化为多项式问题 t (x) h (x) = w (x) v (x) , 证明者提交证明让验证者确认多项式成立 。
随机挑选验证- 随机选择验证的数值 s , 验证 t (s) h (s) = w (s) v (s) 。 相对于验证多项式相等 t (x) h (x) = w (x) v (x) , 随机挑选验证 , 简单 , 验证数据少 。 随机挑选验证 , 安全性肯定不及多项式等式验证 , 但如果确实足够随机 , 安全性还是相当高的 。
同态隐藏- 同态隐藏指的是函数的一种特性 。 输入的计算和输出的计算保持 “同态” 。 以加法同态为例 , 满足如下的三个条件的函数 E (x) , 称为加法同态:1. 给定 E (x) , 很难推导出 x. 2. 不同的输入 , 对应不同输出 3. E (x+y) 可以由 E (x) , E (y) 计算出来 。 乘法同态类似 。
零知识- 证明者和验证者之间除了 “问题证明与否” 知识外 , 不知道其他任何知识(不知道随机挑选值 , 不知道挑选值的多项式计算结果等等) 。
2、「华山派」:可信计算
2.1 TEE可信计算环境
可信计算(Trusted Computing)是指系统提供的计算服务是可信赖的 , 是一种运算与防护并存的信息安全技术 , 保证了计算的行为与预期一致 , 同时保证全程是可检测可监控 。
为实现计算行为的信任 , 通常需要证明平台的安全属性 , 保证部分关键计算不受到干扰 , 标识计算平台的身份 , 对外提供自己行为和环境的证据 , 以及对用身份的认证 。 可信计算的其中一种机制 , 是在硬件平台引入安全芯片架构 , 通过其提供的安全特征来提高终端系统的安全性 , 从而在根本上实现对各种不安全因素的主动防御 。
可信计算的基本思想是 , 首先在计算机系统中构建一个信任根 , 信任根的可信性由物理安全、技术安全和管理安全共同确保;再建立一条信任链 , 从信任根开始到软硬件平台 , 到操作系统、再到应用、一级度量认证一级、一级信任一级、把这种信任扩展到整个计算机系统 , 从而确保整个计算机系统的可信 。
在可信计算组织(Trusted Computing Group - TCG)的规范中 , 对可信计算定义了三个属性:
可鉴别性:计算机系统的用户可以确定与他们通信的对象身份
完整性:用户确保信息能被正确传输
私密性:用户相信系统能保证信息的私密性
可信计算是基于密码的计算机体系架构安全技术 , 在TCG规范中 , 包括5个关键技术概念:认证密钥 , 安全输入输出 , 内容屏蔽/受保护执行 , 封装存储 , 远程证明 。
可信技术在实践中的应用案例包括有:
Bit Locker: 针对离线攻击问题(如设备丢失 , 或使用其他引导介质启动后窃取硬盘数据 , 写入木马等) , 它关心系统的可信引导 , 着力确保在操作系统之前执行的所有引导相关代码都不存在被篡改的现象 , 防止被植入病毒或Root Kit等恶意程序 , 确保操作系统从引导到用户登录均处于可信的状态 。