文章目录
一、Miracl是什么
MIRACL(Multiprecision Integer and Rational Arithmetic C/c++ Library)是一套由Shamus Software Ltd.所开发的一套关于大数运算函数库,用来设计与大数运算相关的密码学之应用,包含了RSA 公开密码学、Diffie-Hellman密钥交换(Key Exchange)、AES、DSA数字签名,还包含了较新的椭圆曲线密码学(Elliptic Curve Cryptography)等等。
二、Miracl如何使用
- github下载软件包
- 本地生成静态库lib文件
- 函数中即可调用
三、如何学习Miracl
Miracl官方提供两个说明文档:
- 函数查询手册(MIRACL Reference Manual)
- 使用说明(User’s Manual)
尝试文档User’s Manual中的程序,熟悉常见的函数的使用方法。
具体函数的使用说明,参考文档(MIRACL Reference Manual),在文档中可以查到某个函数的源代码在哪个文件里,找到该文件后,进去找找,每个函数的前面都有说明,说明该函数中的算法出自哪里。对于研究算法和实现的人很有帮助。
四、使用Miracl
example1-big类型使用
extern "C"
{
#include "miracl.h"
#include "mirdef.h"
}
#pragma comment(lib,"miracl.lib")
#include<iostream>
using namespace std;
int main()
{
miracl *mip = mirsys(500, 16); //初始化miracl系统
//变量长度500bit,16进制
big n = mirvar(8); //big型变量必须赋初始值
cotnum(n, stdout); //打印n
cinnum(n, stdin); //输入n
cotnum(n, stdout); //再次打印n
system("pause"<