【代码】OpenSCA 工具箱
什么是OpenSCA工具箱?
OpenSCA 工具箱由一组 Matlab 对象和函数组成,这些对象和函数专门设计用于支持侧信道攻击的实施。特别是,该工具箱可以很容易地用于执行可变类型的功耗分析攻击,从标准DPA攻击到基于模板的DPA攻击,攻击数据是掩码实现的跟踪。(traces that stem from masked implementations)
该工具箱的目的是促进 SCA 攻击。尽管其中有称为DPA的对象(@dpa),但它也可用于对EM或定时测量执行攻击。希望研究人员能贡献更多的演示,展示该工具箱如何与其他侧通道结合使用。该工具箱附带一组演示。
这些演示通常由执行某种分析、输入(AES 加密)和相应跟踪的脚本组成。所有源代码都是公开可用的,可以修改和定制。
支持的任务
工具箱由两个主要对象和一组实用程序函数组成。
称为container stores 和 manages "elements"。元素可以是相同长度的向量,也可以是结构。容器对于处理输入、跟踪和模板很有用。
使用不同的统计方法执行dpa攻击。目前支持的方法包括均值距离检验(DOM),基于相关性的分析 (CORR) 和贝斯分析 (TEMPLATE)。
实用程序包括用于跟踪处理和绘制结果的功能。
该工具箱支持 SCA 攻击中分析“步骤”的所有方面。可以通过 Matlab(使用仪器控制工具箱)获取测量值,但这不是此开源项目的一部分。该工具箱附带了一组利用实际功率迹线的演示。演示的要点是演示如何使用此工具箱。但是,随着新演示的添加,可能包括来自不同设备的跟踪或跟踪的模拟,该工具箱还可以作为新攻击和对策的测试台。
安装
该工具箱以ZIP文件(OpenSCA.zip)的形式出现。只需将其解压缩到文件夹中,然后按照 README.txt 文件中的说明进行操作即可。简而言之:您必须运行名为 install 的脚本,然后更新帮助浏览器才能查看此 HTML 文档。如果添加新函数或对象,则可以运行脚本create_toolbox_help为这些函数生成 HTML 页。然后,您必须在 /help/functions/index.html 中手动添加相应的链接以链接到这些页面。
组织
工具箱存储在 /OpenSCA/ 顶部文件夹正下方的单独文件夹中。所有与密码学无关的函数都应该进入/OpenSCA/utilities/。所有与加密算法相关的函数、脚本或表都应进入 /OpenSCA/crypto/ 中。新的演示将添加到 /OpenSCA/demos/ 中的文件夹中。

浙公网安备 33010602011771号