MIRACL(Multiprecision Integer and Rational Arithmetic C/c++ Library)是一套由Shamus Software Ltd.所开发的一套关于大数运算函数库,用来设计与大数运算相关的密码学之应用,包含了RSA 公开密码学、Diffie-Hellman密钥交换(Key Exchange)、AES、DSA数字签名,还包含了较新的椭圆曲线密码学(Elliptic Curve Cryptography)等等。运算速度快,并提供源代码。国外著名密码学函数库还有:GMP、NTL、Crypto++、LibTomCrypt(LibTomMath)、OpenSSL等。
miracl在VS2017上的安装教程
注意:以下全程用CMD命令
1.下载miracl库
地址:https://github.com/miracl/MIRACL
2.新建目录file
把解压的miracl库的所有文件放入file(目录下面的文件也要,file目录下面不要有子目录)
3.打开控制台CMD
- 转到 vs2017安装目录\VC\Auxiliary\Build,运行其下面的vcvars32.bat
- 转到file目录,运行ms32doit.bat(留意有无报错)
- 运行结束会在file目录生成一个miracl.lib文件
4.引用miracl库
添加miracl.lib存放目录:工程->属性->配置属性->链接器->常规->附加包含目录:加上头文件存放目录。
然后添加miracl.lib文件名:工程->属性->配置属性->链接器->输入->附加依赖项:加上lib文件名
5.测试代码
编写如下代码:
extern "C" { #include "miracl.h" #include "mirdef.h" #include <stdio.h> } int main() { big x, y, z; miracl*mip = mirsys(1000, 16); x = mirvar(0); y = mirvar(0); z = mirvar(0); bigbits(100, x); bigbits(100, y); bigbits(100, z); add(x, y, z); cotnum(z, stdout); return 0; }
6.参考文献
https://www.cnblogs.com/PNIDEMOOO/p/11107403.html
https://blog.csdn.net/hei_ya/article/details/51274783
附:
miracl库学习:https://www.cnblogs.com/hwu2014/p/3622684.html