macOS 下 Charm-Crypto 的安装
更新于:2022-11-10 标签:macOSCharm-Crypto密码学

密码学方向硕士,做实验需要用Charm来实现一些密码学算法。Charm是基于Python的密码学开发框架,用于快速原型设计先进的密码系统。常用的基础密码库基本都有支持,包括对称加密、消息摘要、数字签名等。

由于我的 PD 虚拟机在新系统下各种崩溃,在Ubuntu下操作太费劲了,故尝试在macOS 13系统下进行了安装,踩了一些坑后最终安装成功。

准备

说明

Python

经过测试,Python一定要选用 3.7 或以下版本。否则安装后有无法引用 modules 的问题,也通过过不了make test验证。 如果正在使用 3.8 或以上版本,可以通过以下命令更改默认python3版本。

$ rm /usr/local/bin/python3
$ sudo rm -rf /usr/local/Cellar/python@3.9/3.9.15
$ brew install python@3.7
$ ln -s /usr/local/Cellar/python@3.7/3.7.15/bin/python3.7 /usr/local/bin/python3

GMP

Charm官网要求使用GMP 5.X版本作为依赖,但是在尝试安装5.1.3版本时,make阶段出现了 error: could not find a working compiler 报错,尝试重新安装 gcc 和 g++ 都没能解决。所以我尝试了使用最新版本的,安装顺利。目前的业务流程也没有受到影响。

PBC

PBC下载最新版即可

Charm

Charm最新的版本是 0.50,直接把仓库下载下来使用。不要下载 Release 下的 0.43,否则在编译阶段会报错。

编译安装

GMP

$ tar -xf gmp-6.2.1.tar.xz && cd gmp-6.2.1
$ ./configure --enable-cxx
$ make
$ sudo make install

PBC

$ cd pbc-0.5.14
$ ./configure
$ make
$ sudo make install

Charm

在编译Charm之前,一定要先指定 CFLAGS 编译参数,否则会出现找不到头文件等问题。运行 configure.sh 之前要加 --enable-darwin 参数。

$ cd pbc-0.5.14
$ export "CFLAGS=-I/usr/local/include -I/usr/local/opt/openssl/include -L/usr/local/lib -L/usr/local/opt/openssl/lib"
$ ./configure.sh --enable-darwin
$ make
$ sudo make install
$ sudo make test # 测试,如果顺利通过,则可以愉快使用了
次元物语

载入中..

-「载入中..」
左邻右舍

• 按部就班填坑

• 天道轮回 斗转星移

• Alive: 0 天 0 小时 0 分

• © 2018-2024 Arabaku

Support:

framessrserverDNS
back2top