当前位置: 首页 > wzjs >正文

广州应用多的自助建站资讯企业培训课程表

广州应用多的自助建站资讯,企业培训课程表,黄页88网免费b2b平台,英文网站案例MIRACL(MultiprecisionIntegerandRationalArithmeticC/cLibrary)是著名的密码算法库,设法去官网下载安装MIRACL,提交安装过程截图或过程文本(3分). 去github官网下载.zip文件 使用如下命令进行解压 unzip -j -aa -L MIRACL-mast…

MIRACL(MultiprecisionIntegerandRationalArithmeticC/c++Library)是著名的密码算法库,设法去官网下载安装MIRACL,提交安装过程截图或过程文本(3分).

去github官网下载.zip文件

在这里插入图片描述
使用如下命令进行解压

unzip -j -aa -L MIRACL-master.zip

解压后的文件目录:
在这里插入图片描述

使用bash命令构建静态库

bash linux64

测试

./pk-demo

在这里插入图片描述

编译运行附件中MIRACL的测试代码,提交编译、运行过程截图或过程文本(5分).

测试内容:
使用MIRACL库来进行大数运算。以下是代码的具体功能。

  • 初始化 MIRACL 系统,设置大数运算的环境。
  • 声明并初始化三个大数变量 a、b 和 c。
  • 对两个大数 a 和 b 进行加法运算,并将结果存储在 c 中。
  • 输出加法结果。
#include <stdio.h>
#include "miracl.h"int main() {// 初始化 MIRACLmiracl *mip = mirsys(5000, 10); // 5000 是精度(位数),10 是进制// 定义大整数big a, b, sum, difference, product, quotient, remainder, result;// 为大整数分配内存a = mirvar(0);b = mirvar(0);sum = mirvar(0);difference = mirvar(0);product = mirvar(0);quotient = mirvar(0);remainder = mirvar(0);result = mirvar(0);// 将字符串转换为大整数cinstr(a, "123456789012345678901234567890");cinstr(b, "987654321098765432109876543210");// 显示输入的数字printf("a = ");cotnum(a, stdout);printf("b = ");cotnum(b, stdout);// 执行加法add(a, b, sum);printf("\n加法结果 = ");cotnum(sum, stdout);// 执行减法subtract(b, a, difference);printf("减法结果 = ");cotnum(difference, stdout);// 执行乘法multiply(a, b, product);printf("乘法结果 = ");cotnum(product, stdout);// 执行除法divide(a, b, quotient);printf("商 = ");cotnum(quotient, stdout);// 使用 modulo 计算余数divide(a, b, product);printf("余数 = ");cotnum(product, stdout);// 执行乘方运算 (a^2) 使用乘方函数powmod(a, mirvar(2), b, result);  // 假设'b'为模数的简单幂模运算printf("乘方结果 (a^2 mod b) = ");cotnum(result, stdout);// 清理mirexit(); // 清理 MIRACLreturn 0;
}

运行结果
在这里插入图片描述

研究MIRACL,在testmiracl.c添加至少一项你的学习成果,提交代码,编译运行过程截图或过程文本(5分).

MIRACL 库的功能

MIRACL(Multiprecision Integer and Rational Arithmetic C/C++ Library) 是一个用于高性能密码学和数学计算的库,主要功能包括:

  1. 大数运算
    支持任意精度的整数和有理数运算。
    提供加法、减法、乘法、除法、模运算、幂运算等基本操作。
  2. 数论计算
    素数检测(如 Miller-Rabin 测试)。
    最大公约数(GCD)、最小公倍数(LCM)、模逆等计算。
  3. 椭圆曲线密码学(ECC)
    支持椭圆曲线上的点运算(如点加、点乘)。
    提供椭圆曲线数字签名算法(ECDSA)等。
  4. 公钥密码学
    支持 RSA、Diffie-Hellman 等公钥加密算法。
    提供大数的快速幂运算和模运算。
  5. 随机数生成
    提供密码学安全的伪随机数生成器。
  6. 其他功能
    多项式运算、矩阵运算、有限域运算等。

举例:

MIRACL 库的大数加法和乘法功能

#include <stdio.h>
#include "miracl.h"int main() {// 初始化 MIRACLmiracl *mip = mirsys(5000, 10); // 5000 是精度(位数),10 是进制// 定义大整数big a, b, sum, difference, product, quotient, remainder, result, gcd;// 为大整数分配内存a = mirvar(0);b = mirvar(0);sum = mirvar(0);difference = mirvar(0);product = mirvar(0);quotient = mirvar(0);remainder = mirvar(0);result = mirvar(0);gcd = mirvar(0);// 将字符串转换为大整数cinstr(a, "123456789012345678901234567890");cinstr(b, "987654321098765432109876543210");// 显示输入的数字printf("a = ");cotnum(a, stdout);printf("b = ");cotnum(b, stdout);// 执行加法add(a, b, sum);printf("\n加法结果 = ");cotnum(sum, stdout);// 执行减法subtract(b, a, difference);printf("减法结果 = ");cotnum(difference, stdout);// 执行乘法multiply(a, b, product);printf("乘法结果 = ");cotnum(product, stdout);// 执行除法divide(a, b, quotient);printf("商 = ");cotnum(quotient, stdout);// 使用 modulo 计算余数divide(a, b, product);printf("余数 = ");cotnum(product, stdout);// 执行乘方运算 (a^2) 使用乘方函数powmod(a, mirvar(2), b, result);  // 假设'b'为模数的简单幂模运算printf("乘方结果 (a^2 mod b) = ");cotnum(result, stdout);// 执行最大公约数运算xgcd(a, b, gcd, gcd, gcd); // 计算 a 和 b 的最大公约数printf("\n最大公约数 (GCD) = ");cotnum(gcd, stdout);// 清理mirexit(); // 清理 MIRACLreturn 0;
}

运行截图
在这里插入图片描述

编写installmiracl.sh脚本,从官网自动化安装MIRACL库到~/MIRACL目录,提交代码,编译、运行过程截图或过程文本(6分),

  • 要求:
    • ~/MIRACL目录已经安装了MIRACL,退出脚本
    • 把MIRACL官方源代码下载到~,并解压到~/你的八位学号MIRACL目录,然后删除下载的源代码
    • 要给出脚本的运行测试,保证testmiracl.c能正确运行

installmiracl.sh脚本如下:

#!/bin/bash# 设置安装目录
INSTALL_DIR="$HOME/MIRACL"
SOURCE_DIR="$HOME/20242817MIRACL"# 创建安装目录
mkdir -p "$INSTALL_DIR"
mkdir -p "$SOURCE_DIR"# 下载 MIRACL ZIP 包
echo "下载 MIRACL ZIP 包..."
wget https://github.com/miracl/MIRACL/archive/refs/heads/master.zip -O "$INSTALL_DIR/MIRACL.zip"# 检查下载是否成功
if [ ! -f "$INSTALL_DIR/MIRACL.zip" ]; thenecho "错误:下载 MIRACL ZIP 包失败!"exit 1
fi# 将源代码解压到学号目录
echo "将源代码解压到学号目录..."
unzip -j -aa -L "$INSTALL_DIR/MIRACL.zip" -d "$SOURCE_DIR"# 检查解压是否成功
if [ $? -ne 0 ]; thenecho "错误:将源代码解压到学号目录失败!"exit 1
fi# 进入安装目录
cd "$SOURCE_DIR"# 运行 linux64 配置脚本
echo "运行 linux64 配置脚本..."
bash linux64# 清理下载的 ZIP 包
echo "清理下载的 ZIP 包..."
rm "$INSTALL_DIR/MIRACL.zip"

在这里插入图片描述
在这里插入图片描述
安装成功。
在自动化脚本安装的目录里进行测试,证明MIRACL库可用,自动化脚本有效。

在这里插入图片描述

AI问答

  • 我:
    给我生成一个Ubuntu安装MIRACL的教程

  • AI:
    在这里插入图片描述

  • 我:
    MIRALC库是干什么的?有什么功能?

  • AI:
    在这里插入图片描述

http://www.dtcms.com/wzjs/195828.html

相关文章:

  • 网站建设 图纸网seo关键词快速排名前三位
  • 网站建设 岗位职责个人微信管理系统
  • 金属材料网站建设长沙百度快速排名优化
  • 企业网站建设 知乎西安官网seo
  • 制作一个在线收费网站北京外贸网站优化
  • 美女做艾网站搜索引擎优化是指
  • 检查色盲效果网站客服系统网页源码2022免费
  • 临沧市建设局网站网站推广途径和推广要点有哪些?
  • 网站建设sunmun长春网站建设制作
  • 婚纱手机网站制作如何制作自己的网站
  • 做网站 用asp网页制作代码
  • 广东省网站备案seo排名赚挂机
  • 公明做网站互联网平台推广
  • 网站有源码 怎么建设新手如何涨1000粉
  • 做网站和网页有什么区别电脑培训班零基础
  • 网站建设后期修改百度推广官网电话
  • 南宁网站建设建站系统百度平台商家我的订单查询
  • 启动wordpress linux成都seo推广
  • 同一个空间供应商做很多个网站影响网站排名哪个网站做推广效果好
  • 怎样做已有网站的编辑维护抚顺网络推广
  • 陕西有没有做网站好的公司软件培训机构排行榜
  • 做海报有哪些网站西安做网站公司
  • 比较个性的网站友情链接例子
  • 郑州一凡网站建设郑州seo哪家好
  • 个人网站做接口可以么2022年最火的电商平台
  • 钢结构网站建设怎么在网上做广告宣传
  • wordpress主题怎么制作seo网络优化日常工作内容
  • 深圳网站制作公司流程网站制作推广电话
  • 网站建设策划方案书论文网站模板平台资源
  • wordpress在线编辑器谷歌seo工具