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

eddsa 算法

信息安全课程设计:eddsa 算法

一、项目要求

  1. 使用 C++ 语言开发;
  2. 可以实现公私钥生成、签名、认证;
  3. 只需要手动输入明文,代码会自动生成公私钥、签名、认证;
  4. 记录公私钥生成、签名、认证的时间;
  5. 在 VS 上运行,使用 miracl 库。

二、算法原理参考

  1. 一文读懂ECDSA算法如何保护数据
  2. Edwards-Curve Digital Signature Algorithm (EdDSA)
  3. WHAT’S AN EDDSA?
  4. ECDSA、EdDSA 和 Ed25519 的区别
  5. EdDSA and Ed25519

三、效果展示

15

四、使用方法

注:该算法使用了 MIRACL 的核心库(MIRACL-core)

1. 简单使用版

  1. 解压文件夹
  2. 运行 testecc.exe 即可

2. vs 配置方法

  • 以 VS 2019 为例,首先创建一个新项目,放在你能找到的位置:
    1
    2
    3

  • 把解压的文件全都复制进去:
    4

  • 添加源文件:
    5
    6

  • 添加头文件:
    7
    8

  • 由于 MIRACL 核心库 core.a 不能直接使用,因此需要配置外部工具:
    9
    10
    其中内容为:

    • g++
    • D:\Software\mingw64\bin\g++.exe (注:找到你自己电脑下的该文件目录才行,如果找不到自行百度安装 mingw64)
    • -o2 $(ItemFileName).cpp core.a -o $(ItemFileName)
    • $(SolutionDir)

    配置成功后会在工具栏出现 g++ 工具:
    11

  • 打开 testecc.cpp 文件,运行 g++:
    12

  • 如果输出为空,且 testecc.cpp 文件的时间发生变化则表示编译成功:
    13

  • 由于VS不能直接打开文件,因此需在文件夹内打开 testecc.exe 文件查看:
    14

  • 如果需要修改源文件,请先保存文件后再用 g++ 工具编译,即每次修改代码后都需要:

    • 保存文件
    • g++ 工具编译
    • 运行文件夹中的 testecc.exe
http://www.lryc.cn/news/21913.html

相关文章:

  • Xcode Developer Document 开发者文档
  • IntelliJ插件开发教程之新建项目
  • 解决SpringBoot中@RequestBody不能和Multipart同时传递的问题
  • 【华为OD机试模拟题】用 C++ 实现 - 统计匹配的二元组个数(2023.Q1)
  • Vuex 面试题总结 的历史汇总!
  • Redis缓存更新策略与缓存穿透、雪崩等问题的解决
  • OSI和TCP/IP网络模型细讲
  • 【正点原子FPGA连载】第十九章FreeRtos Hello World实验 摘自【正点原子】DFZU2EG_4EV MPSoC之嵌入式Vitis开发指南
  • php mysql高校田径运动会成绩管理系统
  • scrum敏捷项目管理软件三款
  • 【项目设计】高并发内存池(二)[高并发内存池整体框架设计|threadcache]
  • 西电编译原理期末核心考点汇总(期末真题+相关知识点)
  • 追梦之旅【数据结构篇】——详解C语言实现二叉树
  • 独家 | Gen-1——可以改变视频风格的AI模型
  • 戴尔dell inspiron-5598电脑 Hackintosh 黑苹果efi引导文件
  • 3.2 网站图的爬取路径
  • 《SQL基础》12. SQL优化
  • fork之后是子进程先执行还是父进程先执行
  • 2023年java初级面试题(5道)
  • 【内网安全】——Linux权限维持
  • Linux 真实使用内存计算
  • Unity Jobsystem ECS
  • Java中创建线程有哪几种方式
  • C++【string类用法详细介绍string类模拟实现解析】
  • 常见的开发模型和测试模型
  • 印度和印度尼西亚有什么关系吗?
  • 单调栈(C/C++)
  • 算法设计与智能计算 || 专题一: 算法基础
  • 用javascript分类刷leetcode13.单调栈(图文视频讲解)
  • 英语基础语法学习(B站英语电力公司)