littlebot
Published on 2025-04-03 / 1 Visits
0

【源码】基于C++编程语言的椭圆曲线密码学性能基准测试项目

项目简介

本项目借助miracl测试密码学基本运算单元的运行时间,无需编译miracl库,支持一键编译运行,可在win、linux和arm平台使用。项目涵盖op-eccop-pairing,分别用于测试无Pairing和有Pairing的运行时间。能测试椭圆曲线密码学(ECC)中加法、标量乘法的执行时间,还可与标准库OpenSSL中的哈希函数执行时间作比较,同时能测试椭圆曲线配对操作的性能。

项目的主要特性和功能

  1. 多平台支持:支持win、linux和arm平台。
  2. 一键编译运行:无需编译miracl库,使用xmake可一键编译运行。
  3. 性能测试:测试ECC中加法、标量乘法、哈希函数、椭圆曲线配对操作的执行时间。
  4. 不同实现性能比较:比较Miracl和OpenSSL不同实现的性能差异。
  5. 密钥和点生成:提供生成随机AES密钥、随机椭圆曲线点的方法,以及从字符串哈希生成AES密钥的功能。

安装使用步骤

安装依赖

需要安装Xmake。

Linux平台

  1. 安装gcc等编译程序所需要的环境。
  2. 复制程序使用的椭圆曲线参数(选取NIST中的P - 192): bash cp param/common.ecs .
  3. 执行xmake进行编译。
  4. 运行: bash xmake run -w . op-ecc common.ecs

Win平台

  1. 安装xmake。
  2. 安装Mingw。
  3. 执行以下命令: bash xmake clean xmake f --mingw="D:\MinGW\mingw64" -p windows -a x86_64 xmake run -w . op-ecc common.ecs

Arm平台(Linux平台交叉编译)

  1. 安装arm工具链(以arm-none-linux-gnueabihf为例)。
  2. 执行以下命令: bash xmake clean xmake f --toolchain=arm_toolchain -p cross -a arm-none-linux-gnueabihf 编译好的文件在build/cross/arm-none-linux-gnueabihf/release/,移植即可。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】