时光如金:Garbling工具中的计时侧信道攻击剖析
1. 缓存架构与计时侧信道基础
现代x86处理器拥有三级缓存:L1、L2和L3,数据在各级缓存中具有包容性。以Intel Core - i7缓存架构为例,每个CPU核心都有专用的L1和L2缓存,L1缓存又分为32KB的数据缓存和32KB的指令缓存,L2缓存由CPU线程共享,容量为256KB,L3缓存则由所有CPU核心共享,容量达8MB。
处理器指令主要分为三类:内存读写、控制流(数据处理)和算术/逻辑运算。算术/逻辑运算的执行时间取决于操作类型和算术逻辑单元(ALU)的调用次数;而内存访问时间则取决于指令是访问RAM还是缓存。为了高效管理内存访问,CPU会将操作结果存储在缓存层次结构(L1、L2、L3)和RAM中。当请求数据时,CPU会按L1缓存、L2缓存、L3缓存、最后是RAM的顺序检查数据可用性。
缓存逐出策略有四种:
- 第一种和第二种分别使用静态和动态逐出集,采用静态访问模式。
- 第三种使用动态逐出集和动态访问模式,可实现全自动攻击。
- 第四种使用静态逐出集和动态访问模式,但效率较低。
2. 敌手模型
在GC(Garbled Circuits)的安全研究中,主要有两种敌手模型:诚实但好奇和恶意敌手模型。恶意敌手可能采用任意攻击策略,而诚实但好奇的一方虽会诚实遵循协议,但可能试图从执行过程中获取额外信息,类似于侧信道分析(SCA)攻击者。在服务器辅助或云辅助的场景中,标准的安全函数评估(SFE)协议借助服务器运行,服务器不提供输入,而是为各方提供计算资源。在这种情况下,服务器可能是诚实但好奇的。我们的敌手模型假设各方和服务器相互独立,敌手能够执
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



