项目简介
pqm4 是针对 ARM Cortex-M4 微控制器的后量子密码库,用于实现后量子密钥封装机制和签名方案。该项目源于欧盟 H2020 计划资助的 PQCRYPTO 项目,提供自动化测试和基准测试框架,支持在常用开发板上进行功能测试、性能分析和代码优化。
项目的主要特性和功能
- 支持在多种开发板上进行自动化功能测试。
- 自动生成测试向量,并与主机端的参考实现进行对比。
- 自动进行速度、堆栈使用和代码大小的基准测试。
- 自动分析对称原语(如 SHA - 2、SHA - 3、AES)的周期消耗。
- 支持轻松集成新的密码方案和实现。
安装使用步骤
前提条件
假设用户已经下载了本项目的源码文件。
具体步骤
- 安装 ARM 工具链:确保已安装
arm-none-eabi-gcc
工具链,在大多数 Linux 系统上,通过包管理器安装:bash sudo apt-get install arm-none-eabi-gcc
- 安装 stlink:用于将二进制文件烧录到开发板上,通过包管理器安装:
bash sudo apt-get install stlink-tools
- 安装 OpenOCD:对于某些开发板,需要使用 OpenOCD 进行烧录,通过包管理器安装:
bash sudo apt-get install openocd
- 安装 Python3 和 pyserial:确保已安装 Python3 和 pyserial 模块:
bash sudo apt-get install python3 python3-pip pip3 install pyserial
- 下载 pqm4 和 libopencm3:复制项目及其子模块(此处文档未给出具体命令,需补充完整命令)。
- 编译代码:进入项目目录并编译代码,选择适合的开发板(如
stm32f4discovery
):bash cd pqm4 make -j4 PLATFORM=stm32f4discovery
- 运行测试和基准测试:使用 Python 脚本进行自动化测试和基准测试:
bash python3 test.py python3 benchmarks.py
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】