Skip to content

基于模拟的安全性

Simulation-based security · Real-ideal paradigm

通过真实协议执行与只访问理想功能的模拟执行不可区分,刻画协议没有泄漏或能力超出理想规格。

形式陈述

基于模拟的定义先固定协议 Π、理想功能 F、安全参数 λ、参与方与通信调度,再明确允许的腐化集合、攻击方式、辅助输入和输出观察者。真实世界中,各方运行 Π,真实对手 A 控制被腐化方及模型授予的网络能力;理想世界中,诚实方把输入交给可信功能 F,理想对手或模拟器 S 只能通过规定接口与 F、被腐化方和观察环境交互。

REALΠ,A,Z(1λ,x,z)

为环境或指定输出者在真实执行后的输出分布,x 是各方输入,z 是辅助输入;相应理想分布记为

IDEALF,S,Z(1λ,x,z).

典型计算安全量词是

APPTSPPTZPPT,x,z:REALΠ,A,ZcIDEALF,S,Z.

顺序 AS 表示针对每一种现实攻击策略,都能构造一个只拥有理想能力的模拟器;不能先固定一个万能 S 再要求覆盖所有 A,也不能让 S 依赖环境尚未提供的秘密诚实输入。具体框架可能把 Z 合并进 distinguisher、把输入生成交给环境,或限制为单次 stand-alone 执行,但必须保持相同能力在两个世界中可比。

采用接受概率差时,环境 Z 的归一化区分优势为

AdvΠ,F,A,S,Zsim(λ)=|Pr[REALΠ,A,Z=1]Pr[IDEALF,S,Z=1]|.

概率覆盖协议、功能、对手、模拟器、调度者和环境的全部随机币;计算模拟要求该量对允许的 PPT A,Z 可忽略。若改成均匀隐藏世界 bit 并让 Z 猜测,|2Pr[b=b]1| 与上式相同,而成功率减 1/2 的规范少一个因子 2

统计模拟把两个输出 ensemble 的总变差要求为可忽略,从而允许计算无界 distinguisher;完美模拟要求分布逐参数完全相同。模拟器通常仍要求高效,否则它可能靠穷举获得现实中不应存在的解释。采用哪一层安全性、模拟器是严格 PPT 还是期望 PPT,都应在定理中写明。

腐化和执行模型是定义的一部分。静态腐化在协议开始前选定被腐化方;自适应腐化允许执行中改变集合,并要求处理已使用随机币与内部状态。半诚实对手按协议运行但观察全部内部信息,恶意对手可任意偏离;同步、异步、认证信道、可信设置、允许 abort、公平性和输出交付都会改变 F 及可模拟能力。

直觉

理想功能是一份安全规格:它明确攻击者在最理想实现中仍能知道什么、改变什么、延迟什么。若现实攻击者制造的每一种可观察结果,都能由只使用这些理想权限的模拟器复现到不可区分,那么现实协议没有额外泄漏信息,也没有赋予攻击者规格之外的能力。

模拟器不是部署中的防御进程,而是证明中的解释器。它用真实对手的代码和理想接口合成一个看似真实的视图;观察者若无法判断自己身处哪一边,就不能把某项现实行为转化为理想世界不允许的攻击收益。

例子与边界

零知识提供最小例子。真实 verifier 与知道 witness 的 prover 交互并得到完整 view;理想侧的 simulator 不知道 witness,却仅凭公开语句生成不可区分的 verifier view。这说明 verifier 从 transcript 中获得的内容可以不依赖 witness 重建,但不说明语句为假时 prover 不能欺骗,后者由 soundness 单独保证。

多方计算中,理想功能像可信方:收集各方输入、计算 f(x),再按规格发送输出或允许特定 abort。现实协议若安全,恶意参与者在消息调度、输入选择与中途退出中造成的全部影响,都应能由 S 在理想接口内重现。若理想功能允许对手看见输出后再阻止诚实方收到结果,所得结论只有 security with abort,不能描述成完全公平。

“模拟器能生成一个像真的 transcript”不足以证明安全。定义要求联合分布对所有允许的输入、辅助信息和观察环境不可区分;模拟器还要复现腐化方内部状态、消息时序和输出相关性。只展示一次成功样本,或只匹配每个字段的边缘分布,都会遗漏可被联合测试识别的差异。

Stand-alone 模型通常只分析一份协议与外部执行隔离的情形,证明可使用 rewinding 等技术。通用可组合模型允许环境并发运行任意协议并在执行间传递消息,要求同一个模拟器在这种上下文中维持不可区分;它通常更强,且支持组合定理。Stand-alone 结论不能因使用了 real/ideal 语言就自动升级为 UC 安全。

自适应腐化同样不能从静态证明免费获得。环境若在看见消息后腐化发送者,会要求模拟器解释此前消息与新暴露随机币的一致性;没有可擦除状态、非承诺加密或相应模拟技术时,静态安全协议可能失败。

推论与应用

基于模拟的安全性统一了零知识、秘密共享、安全多方计算和可组合协议的证明语言。它把“安全”拆成一份理想功能与一项不可区分结论,使泄漏、abort、腐化、调度和设置假设都能在规格层接受审查,而不埋进证明叙述。

实际证明常用混合论证在真实执行与理想执行之间逐步替换组件。每一步都要保持接口一致并记录优势和运行时间损失;最终结论只覆盖定义允许的环境。侧信道、实现错误或模型外协议组合若未进入 Z 的能力,就不会由抽象模拟定理自动处理。

参考资料
  • Shafi Goldwasser, Silvio Micali, and Charles Rackoff, “The Knowledge Complexity of Interactive Proof Systems,” SIAM Journal on Computing 18(1), 1989。
  • Oded Goldreich, Silvio Micali, and Avi Wigderson, “How to Play Any Mental Game,” STOC 1987,simulation for secure computation。
  • Ran Canetti, “Universally Composable Security: A New Paradigm for Cryptographic Protocols,” FOCS 2001; Journal of the ACM 2020 version。