细粒度恒定时间策略验证:Jasmin框架下的加密安全研究
83 浏览量
更新于2024-06-17
收藏 1.03MB PDF 举报
"该文章探讨了实施细粒度恒定时间策略的方法,特别是在Jasmin框架下进行高保证加密验证的实践。恒定时间策略是密码学编程的一个关键原则,用于防止时间攻击,确保程序执行过程中不泄露敏感信息。文章作者提出了一种系统且健全的方法,该方法结合了验证基础设施和编译器基础设施,能够超越基线泄漏模型,支持更精细的恒定时间策略。在Jasmin框架中实现这一方法后,作者通过对OpenSSL等实际加密库的案例分析进行了验证,甚至发现了OpenSSL中的一个错误并提供了正式验证的修复方案。文章强调了安全编译、加密常量时间和形式化方法在安全与隐私领域的应用。"
在本文中,作者首先介绍了密码恒定时间(CT)策略的重要性,这是为了防止通过执行时间的微小变化来推断敏感信息,如密钥。他们指出,虽然有多种自动检查工具可用于基线泄漏模型(BL),但针对其他更复杂的泄漏模型的验证方法相对较少。为解决这个问题,作者提出了一种新方法,该方法结合了两个核心组件:一是验证源代码是否遵循恒定时间原则的验证基础设施,二是确保这些细粒度策略在编译过程中得以保留的编译器基础设施。
在Jasmin框架中,这是一个用于构建高保证密码学软件的平台,作者实现了他们的方法。Jasmin允许开发者编写低级Java字节码,便于形式化分析和验证。通过在这些基础设施中参数化泄漏模型,他们创建了一个支持细粒度恒定时间策略的系统。这种方法的灵活性使其能够处理不同级别的细节,适应各种安全性和效率的权衡。
在评估阶段,作者将他们的方法应用于OpenSSL等实际加密库,并成功检测到一个错误,随后提供了经过正式验证的修复。这展示了他们的方法在实际安全审核中的潜力和价值。
这篇文章对密码学和安全社区具有重要意义,因为它提供了一种更为强大的工具来验证和维护恒定时间策略,从而提高了加密软件的安全性。这不仅有助于预防潜在的攻击,也为未来的加密库设计和优化提供了理论基础。通过结合形式化方法、编译器技术和实际应用案例,作者为提高软件安全性的实践探索开辟了新的道路。
2021-08-07 上传
2021-05-05 上传
2023-06-02 上传
2023-04-22 上传
2023-05-29 上传
2023-05-29 上传
2023-07-17 上传
2023-05-13 上传
2023-07-23 上传
cpongm
- 粉丝: 5
- 资源: 2万+
最新资源
- 构建Cadence PSpice仿真模型库教程
- VMware 10.0安装指南:步骤详解与网络、文件共享解决方案
- 中国互联网20周年必读:影响行业的100本经典书籍
- SQL Server 2000 Analysis Services的经典MDX查询示例
- VC6.0 MFC操作Excel教程:亲测Win7下的应用与保存技巧
- 使用Python NetworkX处理网络图
- 科技驱动:计算机控制技术的革新与应用
- MF-1型机器人硬件与robobasic编程详解
- ADC性能指标解析:超越位数、SNR和谐波
- 通用示波器改造为逻辑分析仪:0-1字符显示与电路设计
- C++实现TCP控制台客户端
- SOA架构下ESB在卷烟厂的信息整合与决策支持
- 三维人脸识别:技术进展与应用解析
- 单张人脸图像的眼镜边框自动去除方法
- C语言绘制图形:余弦曲线与正弦函数示例
- Matlab 文件操作入门:fopen、fclose、fprintf、fscanf 等函数使用详解