[论文解读] On White-box Cryptography and Obfuscation
本文通过引入白盒属性(WBP)来形式化白盒密码学与程序混淆之间的关系,以捕捉白盒环境下的安全需求。证明了对于所有规格说明,不存在任何混淆器能满足WBP——特别是对于非近似可学习的程序;然而,也表明混淆器可在特定有意义的规格说明下满足WBP,以及在近似可学习家族中满足通用白盒属性(UWBP)。
We study the relationship between obfuscation and white-box cryptography. We capture the requirements of any white-box primitive using a \emph{White-Box Property (WBP)} and give some negative/positive results. Loosely speaking, the WBP is defined for some scheme and a security notion (we call the pair a \emph{specification}), and implies that w.r.t. the specification, an obfuscation does not leak any ``useful'' information, even though it may leak some ``useless'' non-black-box information. Our main result is a negative one - for most interesting programs, an obfuscation (under \emph{any} definition) cannot satisfy the WBP for every specification in which the program may be present. To do this, we define a \emph{Universal White-Box Property (UWBP)}, which if satisfied, would imply that under \emph{whatever} specification we conceive, the WBP is satisfied. We then show that for every non-approximately-learnable family, there exist (contrived) specifications for which the WBP (and thus, the UWBP) fails. On the positive side, we show that there exists an obfuscator for a non-approximately-learnable family that achieves the WBP for a certain specification. Furthermore, there exists an obfuscator for a non-learnable (but approximately-learnable) family that achieves the UWBP. Our results can also be viewed as formalizing the distinction between ``useful'' and ``useless'' non-black-box information.
研究动机与目标
- 使用一种称为白盒属性(WBP)的新形式化方法,形式化白盒密码学的安全需求。
- 研究混淆器是否能在所有可能的规格说明下,保持白盒环境中的安全性。
- 区分混淆程序中‘有用’与‘无用’的非黑盒信息泄露。
- 确定混淆器在何种条件下可实现通用白盒安全(UWBP)。
提出的方法
- 引入白盒属性(WBP)作为形式化安全概念,确保在给定规格说明下,混淆程序不会泄露‘有用’信息。
- 将通用白盒属性(UWBP)定义为更强的要求,即混淆器必须对每一个可能的规格说明都满足WBP。
- 使用一个构造的规格说明‘find-q’,证明对于任何非近似可学习的程序族,均不存在混淆器能满足UWBP。
- 采用计算不可区分性和基于优势的定义来衡量信息泄露,优势函数用于比较黑盒与白盒攻击的成功概率。
- 应用计算学习理论中的结果,特别是区分可学习与不可学习的程序族。
- 证明对于非近似可学习的程序,存在一个规格说明,使得任何混淆器都会泄露有用信息,从而违反WBP。
实验结果
研究问题
- RQ1混淆器是否能对程序可能被使用的每一个可能规格说明都满足白盒属性(WBP)?
- RQ2能否构造一个混淆器,使其对不可学习的程序族满足通用白盒属性(UWBP)?
- RQ3在何种条件下,混淆器可对一个有意义且非平凡的规格说明实现WBP?
- RQ4程序族的计算可学习性与实现UWBP的可行性之间有何关系?
- RQ5我们能否正式区分混淆程序中‘有用’与‘无用’的非黑盒信息泄露?
主要发现
- 对于每一个非近似可学习的程序族,都存在一个构造的规格说明,使得没有任何混淆器能满足WBP,这揭示了通用混淆的根本局限性。
- 在非近似可学习族的情况下,黑盒与白盒敌手之间的白盒优势差异是非可忽略的,证明了此类环境中存在有用信息泄露。
- 存在一个混淆器,可在特定且有意义的规格说明下,对一个非近似可学习的程序满足WBP,表明在受限情境下具有可行性。
- 对于不可学习但近似可学习的程序,存在满足通用白盒属性(UWBP)的混淆器,表明可学习性与通用安全之间存在一个边界。
- Barak等人提出的不可能结果可扩展至本模型,但本文进一步表明,即使对于非近似可学习族,只要在特定且非通用的规格说明下,仍可满足WBP。
- 对‘有用’与‘无用’非黑盒信息泄露的区分被形式化,并证明其在评估混淆程序安全性时至关重要。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。