2026年ChipWhisperer教程(一)

ChipWhisperer教程(一)ChipWhispere 是一个完整的开源工具链 用于学习嵌入式设备上的侧信道攻击并验证这些设备的侧信道抗性 ChipWhispere 主要用于功耗分析 利用设备功耗泄露的信息进行攻击 也可用于故障攻击 电压和时钟毛刺攻击 通过短暂干扰设备的电源或时钟来引起故障行为 ChipWhispere

大家好,我是讯享网,很高兴认识大家。这里提供最前沿的Ai技术和互联网信息。



ChipWhisperer 是一个完整的开源工具链,用于学习嵌入式设备上的侧信道攻击并验证这些设备的侧信道抗性。ChipWhisperer主要用于功耗分析,利用设备功耗泄露的信息进行攻击,也可用于故障攻击(电压和时钟毛刺攻击),通过短暂干扰设备的电源或时钟来引起故障行为。ChipWhisperer 包含以下四个部分:

1. 硬件:ChipWhisperer包括捕获板,用于发起信道攻击,以及目标板,作为被测设备。硬件文档可以在找到。硬件在大多数情况下是开源的,设计文件/原理图可以在 ChipWhisperer Github 仓库 或 UFO 目标板仓库 找到。

2. 固件:ChipWhisperer 还包括捕获板和目标板的开源固件。捕获板固件是用 Verilog(用于 FPGA)和 C语言(用于处理器)编写的,可以在 ChipWhisperer Github 仓库 的 hardware/capture​ 部分找到。目标板固件同样是用C 语言和Verilog编写,可以在 ChipWhisperer Github 仓库 的 hardware/victims/firmware​ 目录中找到。

3. 软件:ChipWhisperer 有一个开源的 Python 库,用于控制捕获板并与目标板通信。ChipWhisperer ReadTheDocs提供了 API 文档和安装说明,API 的源代码位于 ChipWhisperer Github 仓库。

4. 教程:ChipWhisperer 还包括 Jupyter Notebook 教程,演示了如何使用 ChipWhisperer 进行的侧信道攻击,以及如何使用 Python API。这些教程可以在 ChipWhisperer Jupyter Github 仓库 找到。

总体来说,ChipWhisperer包括三个部分:运行于电脑主机的采集软件、通过USB与电脑连接的捕获板、与捕获板相连的目标板。首先,在电脑在安装采集软件,并将捕获板与目标板正确连接,之后准备用于烧写到目标板上代码(c语言或verilog),最后在采集软件(交互界面集成在jupyter notebook上)上编写用于采集的代码,在jupyter notebook中运行这些代码即可进行采集。

对于用户来说,需要准备两部分代码,其一是烧写到目标板中的代码,另一部分就是运行在jupyter notebook上的采集代码。当目标板是STM32F或XMEGA等处理器时,需要编写c语言代码,以及对应的Makefile文件,c语言代码需要按照ChipWhipsperer框架的约定,Makefile用于自动构建软件项目,以生成二进制文件。当目标板是FPGA时,需要编写verilog代码,verilog代码同样需要按照既定的接口规范,编写好后用vivado等工具生成比特流文件。采集部分代码主要用于控制捕获板进行采集、以及将二进制文件或比特流文件烧写到目标板中。

注意:Windows Subsystem for Linux (WSL) 会干扰jupyter notebook中的 %%bash​ 块,遇到错误时可以禁用 WSL 或将 %%bash​ 更改为 %%sh​。

(1) 打开https://github.com/newaetech/chipwhisperer/releases,点击下图红圈中的链接进行安装程序的下载。

(2) 运行可执行文件并选择你希望安装 ChipWhisperer 的路径。你必须对该位置具有读/写权限,因此避免安装在类似 C:Program Files​ 的位置。默认安装位置(用户的主目录)将适用于大多数用户。

(3) 选择是否要为运行 ChipWhisperer 创建桌面快捷方式,Make 和编译器将始终安装。

​(4) 等待安装完成。请注意,在安装完成之前会打开第二个窗口以完成其他步骤。

一旦你完成了上述步骤,你应该拥有一个功能齐全、自包含的安装,包含你所需的一切。由于所有内容都是自包含的,或者至少在 Windows 上是尽可能自包含的,因此只有在运行我们提供的应用程序时,你才能访问 ChipWhisperer、编译器、git bash 等。

启动 ChipWhisperer 并开始教程的最简单方法是运行 ChipWhisperer 应用程序,该应用程序可通过“开始”菜单、你安装 ChipWhisperer 的文件夹或桌面快捷方式(如果你选择了此选项)获得。运行后,你应该会看到一个终端弹出,随后浏览器中会打开一个新窗口,如下图所示,一旦你看到这个窗口打开,建议点击 jupyter​,然后运行 0 - Introduction to Jupyter Notebooks.ipynb​ 以验证一切安装正确。

下面例举在Ubuntu中使用pyenv和conda创建ChipWhisperer环境的方法,任选一种即可。

(1) 使用pyenv创建环境

以Ubuntu为例(其他类型Linux系统类似),运行下面的命令后重启系统即可完成安装:

 
  

运行这些安装说明后,请确保重新启动计算机。 你可以导航到 chipwhisperer 并运行下面的命令,检查安装是否成功,如果在浏览器中打开jupyter notebook窗口则安装成功。

GPT plus 代充 只需 145

(2) 使用conda创建环境的过程类似,具体命令如下:

 
  

使用 Conda 创建和管理环境可以简化依赖项的管理,并且可以更容易地切换不同的 Python 版本和包版本。

  1. ChipWhisperer官网:https://chipwhisperer.readthedocs.io/en/latest/index.html
  2. github仓库:https://github.com/newaetech/chipwhisperer
  3. jupyter notebook官网:https://jupyter-notebook.readthedocs.io/en/stable
  4. jupyter notebook用户手册:https://jupyter-notebook.readthedocs.io/en/stable/notebook.html
  5. NewAE硬件产品文档:https://rtfm.newae.com

小讯
上一篇 2026-03-14 09:36
下一篇 2026-03-14 09:34

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/234264.html