eddsa 算法
信息安全课程设计:eddsa 算法
一、项目要求
- 使用 C++ 语言开发;
- 可以实现公私钥生成、签名、认证;
- 只需要手动输入明文,代码会自动生成公私钥、签名、认证;
- 记录公私钥生成、签名、认证的时间;
- 在 VS 上运行,使用 miracl 库。
二、算法原理参考
- 一文读懂ECDSA算法如何保护数据
- Edwards-Curve Digital Signature Algorithm (EdDSA)
- WHAT’S AN EDDSA?
- ECDSA、EdDSA 和 Ed25519 的区别
- EdDSA and Ed25519
三、效果展示

四、使用方法
注:该算法使用了 MIRACL 的核心库(MIRACL-core)
1. 简单使用版
- 解压文件夹
- 运行 testecc.exe 即可
2. vs 配置方法
-
以 VS 2019 为例,首先创建一个新项目,放在你能找到的位置:



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

-
添加源文件:


-
添加头文件:


-
由于 MIRACL 核心库 core.a 不能直接使用,因此需要配置外部工具:


其中内容为:g++D:\Software\mingw64\bin\g++.exe(注:找到你自己电脑下的该文件目录才行,如果找不到自行百度安装 mingw64)-o2 $(ItemFileName).cpp core.a -o $(ItemFileName)$(SolutionDir)
配置成功后会在工具栏出现 g++ 工具:

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

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

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

-
如果需要修改源文件,请先保存文件后再用 g++ 工具编译,即每次修改代码后都需要:
- 保存文件
- g++ 工具编译
- 运行文件夹中的 testecc.exe
相关文章:
eddsa 算法
信息安全课程设计:eddsa 算法 一、项目要求 使用 C 语言开发;可以实现公私钥生成、签名、认证;只需要手动输入明文,代码会自动生成公私钥、签名、认证;记录公私钥生成、签名、认证的时间;在 VS 上运行&am…...
Xcode Developer Document 开发者文档
总目录 iOS开发笔记目录 从一无所知到入门 文章目录IntroDeveloper Documentation 打开方式菜单栏点击 | 快捷键方式另一种打开方式Intro 2016年我在学校学Java的时候,要查某个Java类/方法的用法还得自己手动下载一种.chm格式的开发文档文件,…...
IntelliJ插件开发教程之新建项目
JetBrains公司系列产品IDEA、WebStrom、PyCharm、CLion、GoLand等都是基于IntelliJ Platform开发而成,掌握IntelliJ插件开发技能便能拥有提升开发效率的终极武器。本教程Demo源码请微信公众号“开发效率”进行获取。阅读原文如果您是JetBrains产品的用户,…...
解决SpringBoot中@RequestBody不能和Multipart同时传递的问题
问题描述 今天在做文件上传的时候,遇到了这么一个错误日志: Resolved[org.springframework.web.HttpMediaTypeNotSupportedException: Content type ‘multipart/form-data;boundary--------------------------771899451541318130280588;charsetUTF-8’…...
【华为OD机试模拟题】用 C++ 实现 - 统计匹配的二元组个数(2023.Q1)
最近更新的博客 【华为OD机试模拟题】用 C++ 实现 - 去重求和(2023.Q1) 文章目录 最近更新的博客使用说明统计匹配的二元组个数题目输入输出描述示例一输入输出说明示例二输入输出说明备注Code使用说明 参加华为od机试,一定要注意不要完全背诵代码&...
Vuex 面试题总结 的历史汇总!
一.vuex是什么?怎么使用?哪种功能场景使用它? Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。简单来说就是:应用…...
Redis缓存更新策略与缓存穿透、雪崩等问题的解决
文章目录一、缓存更新策略1、三种策略2、策略选择3、主动更新的方案二、缓存存在的问题1、缓存穿透2、缓存雪崩3、缓存击穿三、解决缓存问题1、自定义分布式锁2、解决缓存穿透问题3、解决缓存击穿问题一、缓存更新策略 1、三种策略 内存淘汰:redis自带的内存淘汰机…...
OSI和TCP/IP网络模型细讲
文章目录一、OSI七层参考模型二、TCP/IP体系结构三、TCP/IP参考模型四、沙漏计时器形状的TCP/IP协议族五、两种国际标准对比相似之处不同之处一、OSI七层参考模型 OSI参考模型共分为7层,低三层面向通信,可用软硬件实现;高三层面向信息处理&am…...
【正点原子FPGA连载】第十九章FreeRtos Hello World实验 摘自【正点原子】DFZU2EG_4EV MPSoC之嵌入式Vitis开发指南
1)实验平台:正点原子MPSoC开发板 2)平台购买地址:https://detail.tmall.com/item.htm?id692450874670 3)全套实验源码手册视频下载地址: http://www.openedv.com/thread-340252-1-1.html 第十九章FreeRto…...
php mysql高校田径运动会成绩管理系统
第一章 引言 1 1.1 选题背景 1 1.2 编写目的 2 1.3 目标 2 1.4 功能需求 3 第二章 开发工具介绍 4 2.1 PHP 4 2.2 APACHE 5 2.3 MYSQL数据库 5 2.4 运行环境 WINDOWS XP 6 2.5 XAMPP 6 2.6 DREAMWEAVE8 6 2.7 EDITPLUS 7 第三章 需求…...
scrum敏捷项目管理软件三款
Leangoo领歌Leangoo是国产的一个项目管理软件,www.leangoo.com , 专门的Scrum敏捷开发工具,看板的管理方式,高度可视化。它支持敏捷开发全流程。从产品路线图-需求-迭代-缺陷-测试-上线。燃尽图,工作量,迭代…...
【项目设计】高并发内存池(二)[高并发内存池整体框架设计|threadcache]
🎇C学习历程:入门 博客主页:一起去看日落吗持续分享博主的C学习历程博主的能力有限,出现错误希望大家不吝赐教分享给大家一句我很喜欢的话: 也许你现在做的事情,暂时看不到成果,但不要忘记&…...
西电编译原理期末核心考点汇总(期末真题+相关知识点)
文章目录前言一、正规式1.1 相关知识点1.1.1 正规式定义1.1.2 辅助定义1.2 历年真题二、二义文法2.1 相关知识点2.1.1 二义性概念2.2 历年考题三、全部短语、直接短语和句柄3.1 相关知识点3.1.1 短语,直接短语和句柄定义3.1.2 短语,直接短语和句柄例题3.…...
追梦之旅【数据结构篇】——详解C语言实现二叉树
详解C语言实现二叉树~😎前言🙌什么是二叉树?二叉树的性质总结:整体实现内容分析💞1.头文件的编写:🙌2.功能文件的编写:🙌1)前序遍历的数值来创建树——递归函…...
独家 | Gen-1——可以改变视频风格的AI模型
翻译:吴振东校对:张睿毅本文约1000字,建议阅读3分钟 本文简单介绍了Runway公司的发展史,以及他们新推出的生成式AI模型Gen-1,可用于通过应用文本提示或者参考图像所指定的任意风格,将现有视频转换为新视频。…...
戴尔dell inspiron-5598电脑 Hackintosh 黑苹果efi引导文件
原文来源于黑果魏叔官网,转载需注明出处。硬件型号驱动情况主板X99 K9 v2 Machinist处理器i5-10210U / *i7-10510U已驱动内存20GB已驱动硬盘1000GB SAMSUNG 860 QVO SATA已驱动显卡Intel UHD 620已驱动声卡Realtek ALC3204/236已驱动网卡RTL8168H Gigabit Ethernet已…...
3.2 网站图的爬取路径
深度优先与广度优先方法都是遍历树的一种方法,但是网站的各个网页 之间的关系未必是树的结构,它们可能组成一个复杂的图形结构,即有回路。如果在前面的网站中每个网页都加一条Home的语句,让每个网页都能回到主界面,那么…...
《SQL基础》12. SQL优化
SQL优化SQL优化数据插入insert优化大批量插入数据主键优化order by优化group by优化limit优化count优化count用法update优化SQL优化 数据插入 insert优化 如果我们需要一次性往数据库表中插入多条记录,可以从以下三个方面进行优化。 批量插入手动控制事务主键顺…...
fork之后是子进程先执行还是父进程先执行
CFS(完全公平调度器)是Linux内核2.6.23版本开始采用的进程调度器,它的基本原理是这样的:设定一个调度周期(sched_latency_ns),目标是让每个进程在这个周期内至少有机会运行一次,换一种说法就是每个进程等待CPU的时间最长不超过这个…...
2023年java初级面试题(5道)
一、两个对象值相同(x.equals(y) true),但却可有不同的hash code,这句话对不对?答:不对,如果两个对象x和y满足x.equals(y) true,它们的哈希码(hash code)应当相同。Java对于eqauls…...
Go语言Beego框架如何用_Go语言Beego框架入门教程【高效】
Beego Controller 靠约定式反射自动注册,需嵌入 beego.Controller、方法名首字母大写且以 HTTP 动词开头、文件置于 controllers/ 目录下;路由参数用 :id 形式绑定到同名 string 参数;模板路径为 views/{小写控制器名}/{小写方法名}.html&…...
Azure OpenAI代理层:无缝兼容官方API,平滑迁移与统一管理
1. 项目概述:一个为Azure OpenAI服务量身打造的代理层如果你正在使用微软Azure平台上的OpenAI服务,比如GPT-4、GPT-3.5-Turbo或者Embeddings模型,并且遇到了API格式不兼容、部署环境限制或者想统一管理多个终端的麻烦,那么diemus/…...
别只盯着main()!STM32F407启动配置避坑指南:堆栈、时钟与BOOT模式
STM32F407启动配置实战:堆栈优化、时钟校准与BOOT模式避坑手册 引言 当你的STM32项目从简单的LED闪烁升级到复杂多任务系统时,是否遇到过这些"灵异现象":程序运行几天后突然死机、RTOS任务切换时触发HardFault、使用malloc分配内存…...
RevokeMsgPatcher:微信/QQ/TIM防撤回补丁工具完全指南
RevokeMsgPatcher:微信/QQ/TIM防撤回补丁工具完全指南 【免费下载链接】RevokeMsgPatcher :trollface: A hex editor for WeChat/QQ/TIM - PC版微信/QQ/TIM防撤回补丁(我已经看到了,撤回也没用了) 项目地址: https://gitcode.co…...
一键转载革命:auto_feed_js如何让PT资源分享效率提升10倍
一键转载革命:auto_feed_js如何让PT资源分享效率提升10倍 【免费下载链接】auto_feed_js PT站一键转载脚本 项目地址: https://gitcode.com/gh_mirrors/au/auto_feed_js 在PT(Private Tracker)社区中,资源分享是一项既重要…...
突破性APK安装器:在Windows上高效运行Android应用的革命性方案
突破性APK安装器:在Windows上高效运行Android应用的革命性方案 【免费下载链接】APK-Installer An Android Application Installer for Windows 项目地址: https://gitcode.com/GitHub_Trending/ap/APK-Installer 你是否渴望在Windows电脑上无缝运行Android应…...
码农的职业天花板:30岁前必须突破的5个瓶颈
在软件行业的快速迭代浪潮中,软件测试从业者作为质量保障的核心力量,正面临着愈发严峻的职业挑战。30岁,不仅是人生的重要分水岭,更是测试人职业发展的关键节点。如果不能在这个阶段突破潜藏的瓶颈,很可能会陷入“经验…...
为持续集成流水线集成智能代码评审利用taotoken多模型能力
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 为持续集成流水线集成智能代码评审利用Taotoken多模型能力 在DevOps实践中,持续集成(CI)流水线…...
2026最权威的六大AI写作工具推荐
Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 在学术研究链路里,DeepSeek能够为论文撰写给予全流程辅助支持,从梳理…...
【Midjourney Holga风格权威调参手册】:基于1,843组实测Prompt的色偏校准模型与动态暗角衰减公式
更多请点击: https://intelliparadigm.com 第一章:Holga风格的视觉基因解码与Midjourney适配原理 Holga相机以其塑料镜头、不可控漏光、边缘暗角与柔和色散著称,构成了一套独特的“模拟故障美学”语言。将这种物理成像缺陷转化为AI生成语义&…...
