Ubuntu18.04系统下charm-crypto0.5的安装以及测试

文章目录

  • 前言
  • 一、前期准备
  • 二、编译安装OpenSSL
    • 1.检查已安装的OpenSSL版本
  • 三、安装GMP
    • 1.下载GMP压缩包
    • 2.安装过程
  • 四、安装PBC
    • 1.下载最新的PBC压缩包
    • 2.安装过程
  • 五、安装charm-crypto 0.50
    • 1.选择dev版本,下载0.50版本
    • 2.安装过程
  • 六、启动pycahrm验证安装
  • 总结

前言

要确保安装的python环境为3.9,最好安装anaconda现在虚拟环境上试一下。
在安装GMP、PBC的时候安装好之后可以搜一下测试代码此时一下是否安装成功。

一、前期准备

安装python3.9环境
1、查看当前系统默认python版本

$ python --version
$ python3 –version     查看系统中已经安装的python3的版本,若有3.9则切换默认版本为3.9即可

若无,则安装python3.9 然后切换默认版本为python3.9
更改环境将系统默认指向的版本改为python3
2、安装python依赖包

$  sudo apt-get install python3-setuptools python3-dev libssl-dev

3、安装pyparsing 安装

首先安装python3-pip$   sudo apt-get install python3-pip
通过pip3安装pyparsing,并指定版本为2.4.6
$  pip3 install pyparsing==2.4.6

【注意】pyparsing要安装在python3的环境下,否则会出现问题。
安装成功如图所示:

4、检查gcc、make、perl是否已经安装,若无则安装这三个

$  gcc -v
$  make -v
$  perl -v
#如果没有则执行以下命令进行安装
#安装指令
$  sudo apt-get update
$  sudo apt-get install gcc make perl

本机安装版本信息为:gcc 7.50 make 4.1 perl 5.26.1

5、安装依赖库m4、flex、bison

$  sudo apt-get update
$  sudo apt-get install m4 flex bison

二、编译安装OpenSSL

1.检查已安装的OpenSSL版本

$  openssl version
默认安装openSSL1.1.1l

若果没有安装,参考一下教程
安装指定版本参考
https://blog.csdn.net/m0_47659650/article/details/123935539?spm=1001.2014.3001.5502

三、安装GMP

1.下载GMP压缩包

下载GMP安装包 GMP5.1.3 .bz2 下载地址

2.安装过程

命令如下:

(1)解压到/usr/local/src路径下
$  cd ~/下载
$  sudo tar -jxvf gmp_5.1.3.tar.bz2 -C /usr/local/src
(2)写入配置
$  cd /usr/local/src/gmp-5.1.3
$  sudo ./configure
(3)编译安装
$  cd /usr/local/src/gmp-5.1.3
$  sudo make
(4)安装
$   cd /usr/local/src/gmp-5.1.3
$   sudo make install

安装成功如图所示:

四、安装PBC

1.下载最新的PBC压缩包

官网下载PBC压缩包最新的0.5.14

2.安装过程

命令如下:

(1)下载好之后解压到/usr/local/src下
$  cd ~/下载
$  sudo tar -zxvf pbc-0.5.14.tar.gz -C /usr/local/src/
(2)写入配置
$ 写入配置
$  cd /usr/local/src/pbc-0.5.14/
$  sudo ./configure
(3)编译
$  cd /usr/local/src/pbc-0.5.14/
$  sudo make
(4)安装
$  cd /usr/local/src/pbc-0.5.14/
$  sudo make install

安装成功如图所示:

五、安装charm-crypto 0.50

1.选择dev版本,下载0.50版本

官网下载PBC压缩包最新的0.5.14

2.安装过程

命令如下:

(1)下载并解压到/usr/local/src/路径下
$  cd ~/下载
$  sudo tar -zxvf charm-dev.tar.gz -C /usr/local/src/
$ 写入编译配置
$  cd /usr/local/src/charm-dev/
$  sudo ./configure.sh
(3)编译
$ cd /usr/local/src/charm-dev/
$  sudo make
(4)安装
$ cd /usr/local/src/charm-dev/
$  sudo make instal

安装成功如图所示:

六、启动pycahrm验证安装

创建项目,选择本地环境python3
输入以下代码测试

from charm.toolbox.pairinggroup import PairingGroup,G1
group = PairingGroup('SS512')
data = 'just for test'
h = group.hash(data)
print(type(h),h)

总结

安装python3.9的时候一定注意,要将当前默认python环境改为python3,再执行下面安装环节之前要检查安装的python3版本 pip pip3版本 默认python环境

Ubuntu18.04系统下charm-crypto0.5的安装以及测试相关推荐

  1. Ubuntu18.04系统下安装IDL8.4版本(破解版)

    Ubuntu18.04系统下安装IDL8.4版本(破解版) 为了安装IDL,把硬盘都弄坏了的我已经不知道重装了多少遍IDL了/(ㄒoㄒ)/~~ 踩了N多的坑,遇到N多问题,这一次终于算是安装好,可以成 ...

  2. Ubuntu18.04系统下,gcc编译过程分析、命令参数介绍及ELF文件格式学习

    GCC编译器背后的故事及常用命令.了解ELF文件格式 文章目录 GCC编译器背后的故事及常用命令.了解ELF文件格式 前言 一.GCC简介 二.GCC背后的战友 1.Binutils 2.C运行库 三 ...

  3. 基于30系显卡以及Ubuntu18.04系统的YOLOv3环境搭建和训练模型以及测试

    基于30系显卡以及Ubuntu18.04系统的YOLOv3环境搭建和训练模型以及测试 安装环境 下面是官网对N卡框架以及驱动和cuda版本的部分对应关系 驱动 (可以跳过这段安装,你可以在安装CUDA ...

  4. 在Ubuntu18.04系统下彻底删除MySQL的方法

    本文教你如何快速的在Ubuntu18.04操作系统下彻底删除MySQL,以下针对的是5.7版本,其它的版本可以自行调整运行指令. 注:采用sudo apt install mysql-server命令 ...

  5. linux(ubuntu16.04)系统下Matlab2015b软件下载与安装

    Linux版Matlab2015b软件下载安装与运行 一.Matlab软件(Linux版)百度网盘下载 二.软件安装教程 三.软件破解步骤 四.打开软件和添加环境变量 五.创建linux桌面快捷方式 ...

  6. Ubuntu18.04系统下,图像处理开源软件库 Opencv3.4.11的安装、编译及应用初步

    "学了opencv,妈妈再也不会担心你不会图像编程啦!" 文章目录 "学了opencv,妈妈再也不会担心你不会图像编程啦!" 前言 一.opencv-3.4.1 ...

  7. Ubuntu18.04 系统下ROS Melodic安装

    ROS官网:有一些在linux下的安装步骤说明 前期准备:更换国内源以及将"软件和更新"下的"可从互联网下载"的四个选项都勾选上. 安装步骤: 一. 添加ROS ...

  8. Ubuntu18.04系统下搭建Scm Manager

    1.安装jdk环境,我是apt方式安装的,也可以到Oracle的官网下载jdk安装,这里不做介绍,因为还要注册Oracle账号 apt install openjdk-8-jdk 2.安装tomcat ...

  9. ubuntu18.04系统下px4avoidance环境搭建问题

    按照csdn中一文进行环境搭建时候出现tf坐标报错问题,使用offboard模式时候如图3

最新文章

  1. 降维处理:PCA和LDA
  2. 前沿|8种面部表情实时追踪,你的喜怒哀乐全被AI看穿了
  3. [待总结]高频率vim命令
  4. github搭建个人博客 hexo d无效
  5. 地面指示标志_详解消防应急照明和疏散指示系统的施工及安装方法消防施工
  6. Android 功耗(5)----功耗调试
  7. mac 卸载ssh 重新安装mysql,linux下彻底卸载MySQL
  8. Android 网络学习之使用多线程下载,支持断点续传
  9. html中鼠标点击图片变动,JS实现页面鼠标点击出现图片特效
  10. Craft CMS简介
  11. 分享50个漂亮的双屏桌面壁纸资源(下篇)
  12. 超宽屏幕比例_选择合适的21:9超宽带鱼屏屏幕(普通屏幕也可)
  13. presto获取上月第一天和最后一天、当月第一天
  14. Shiro教程,整合SpringBoot项目实战(笔记)
  15. MBR和GUID分区模式的区别
  16. 前端面试题----html css
  17. 氨基官能化的铜金属有机骨架(Cu-MOF-NH2)|石墨相碳化氮纳米片/ZiF67片层结构复合材料|mof定制材料
  18. JAVA的MySQL字符串拼接_字符串的拼接-MYSQL
  19. 可变策略的拟人式三维装箱算法实现-开源
  20. 今天我教大家用js制作一个简单的计算器

热门文章

  1. STM32定时器输出PWM
  2. xbox的mac地址_如何将Xbox One控制器连接到Mac
  3. PMP中的沟通管理、相关方管理的简单介绍
  4. 【AirCompWeiszfeld】Byzantine-Resilient Federated Machine Learning via Over-the-Air Computation
  5. hdu 1028 母函数 模版题
  6. 关于WIFI和WLAN的区别?
  7. DateTime时间转换格式
  8. [Eclipse] plugin
  9. 爬楼梯 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。
  10. MySQL忘记密码操作