MAC上安装HEAAN库
介绍
HEAN是一个软件库,它实现支持定点运算的同态加密(HE),此库支持有理数之间的近似运算。近似误差取决于某些参数,与浮点运算误差几乎相同。该库中的方案发表在“近似数算术的同态加密”一文上(https://eprint.iacr.org/2016/421.pdf).
版本
v1:原始HEAN方案的实现
V1:原始HEAAN方案的自举实现(将其由Leveled-FHE推广到FHE)(https://eprint.iacr.org/2018/153.pdf)
V2:加快实施HEAN计划(优化)
下载
官方:位置
依赖库
这个库是用C++编写的,使用NTL库。http://www.shoup.net/ntl/).
我这里安装了homebrew,一键安装:
brew install ntl
NTL的安装,请参考:
1、https://www.thinbug.com/q/16955153
另外NTL需要安装GMP库,请参考:https://blog.csdn.net/zha_ojunchen/article/details/89818011
安装
构建静态库/运行测试函数
1、您可以通过在/lib目录中键入“makeall”来创建静态库。成功编译后,您可以找到一个静态库 ibHEAAN.a 位于/lib目录中。
2、在你建立ibHEAAN.a之后。您可以在/run目录中运行测试程序,在run.cpp,您需要取消所需的注释测试,并在/run目录中键入“make”。此命令将运行exe文件“HEAAN”。
测试
1、以“加密”为例:
2、测试给的example
新建example.cpp文件(注意修改头文件),然后修改makefile文件
重新make
参考
2、README文件
MAC上安装HEAAN库的更多相关文章
- C++: Mac上安装Boost库并使用CLion开发
1.下载安装Boost库 官网下载最新版本1.65.0:http://www.boost.org/users/history/version_1_65_0.html 选择UNIX版本: 下载后解压cd ...
- mac上安装mongoDb以及简单使用
年初粗略学习了下node,这好几个月没玩,突然发现已经忘完了,还是简单记录下基本知识,方便再次使用时资料查找. 一.mongoDb安装 在mac上安装了brew的情况下,可以直接执行命令 brew i ...
- 在Mac上安装IntelliJ IDEA
这篇文章旨在介绍如何在Mac系统上安装IntelliJ IDEA,至于IntelliJ IDEA的介绍和使用方法,大家另行查阅,本篇的文章不再详细阐述. 简短解说,IntelliJ IDEA是可以用来 ...
- Mac上安装brew
用过ubuntu系统的都知道,上面有一个命令apt-get 很方便可以快速的安装很多软件 特别lamp环境 都是一键安装. 在mac上也有类似的命令 brew brew用法可以访问官网地址 http ...
- mac 上安装服务,查看服务,重启和关闭
首先了解下的Mac的 homebrew ,官网:https://brew.sh/index_zh-cn.html 简单的说: Homebrew 能干什么? 答:使用 Homebrew 安装 Apple ...
- Mac上安装brew 包管理工具
Mac 上的包管理工具对于开发者来说是一件非常方便的工具,能够有效的对包进行管理. 所以这篇博客就来简单的讲一下brew 的安装和一些基础命令. brew 全称叫做Homebrew . 1. 首先来说 ...
- Mac上安装Charles进行抓包全流程设置
安装 -- 官网下载最新版的Charles版本,按照提示安装即可 破解 -- https://blog.csdn.net/qq_25821067/article/details/79848589. M ...
- 【mac上安装&配置&使用git】
转自:https://www.jianshu.com/p/7edb6b838a2e 目录 安装git 创建ssh key.配置git 提交本地项目到GitHub 一.安装Git MAC 上安装Git主 ...
- Mac上安装PHP、Apache、MySQL
Mac自带php5.6版本,要升级到php7.3 步骤如下 1,brew 安装php ,如果没有安装,访问https://brew.sh/index_zh-cn安装在终端输入以下内容,不用指定安装ph ...
随机推荐
- VUE3 之 键盘事件
1. 概述 老话说的好:宁愿自己吃亏,也不让他人吃亏. 言归正传,今天我们来聊聊 VUE3 的 键盘事件. 2. 键盘事件 2.1 敲击任意键触发事件 <body> <div id= ...
- python + requests发起请求,接口返回400,报错“Unexpected character encountered while parsing value: G. Path”
完整报错信息如下: {'errors': {'': ["Unexpected character encountered while parsing value: G. Path '', l ...
- Appium之xpath定位详解
前面也说过appium也是以webdriver为基的,对于元素的定位也基本一致,只是增加一些更适合移动平台的独特方式,下面将着重介绍xpath方法,这应该是UI层元素定位最强大的方法啦! 以淘宝app ...
- Java安全之Spring内存马
Java安全之Spring内存马 基础知识 Bean bean 是 Spring 框架的一个核心概念,它是构成应用程序的主干,并且是由 Spring IoC 容器负责实例化.配置.组装和管理的对象. ...
- 以太 ip tcp udp 三次握手的理解
以太帧: 1.前导码(7字节):使接收器建立比特同步. 2.起始定界符SFD(1字节):指示一帧的开始. 3.目的地址DA(6字节):指出要接收该帧的工作站. 4.源地址SA(6字节):指示发送该帧的 ...
- 如何使用Github搭建自己的博客
1.前期准备 sudo apt-get install npm sudo npm install hexo -g 首先使用如下命令创建项目,name是你要创建的博客的名字: hexo init {na ...
- 【刷题-LeetCode】216. Combination Sum III
Combination Sum III Find all possible combinations of k numbers that add up to a number n, given tha ...
- 【经验总结-markdown】markdown字体和颜色设置
字体设置 关键词为face <font face = "黑体">我是黑体</font> <font face = "宋体"> ...
- 『德不孤』Pytest框架 — 2、Pytest的基本使用
目录 1.Pytest安装 2.Pytest常用插件 3.Pytest运行的第一个例子 4.Pytest框架的运行方式 5.在PyCharm中以Pytest的方式运行测试用例 1.Pytest安装 C ...
- golang中的map
1. 声明与初始化 // map的声明与初始化 userInfo := map[string]string{"name": "马亚南", "age&q ...