【算法】ECC验签名

ECC = Elliptic Curve Cryptography 椭圆曲线密码

  • 基于椭圆曲线离散对数问题(ECDLP):

已知曲线上一点 G(基点)和 K=k×G,由 K 反推 k 极其困难

  • 优点:短密钥 = 高强度(256 位 ECC ≈ 3072 位 RSA)

K就是公钥,k就是私钥。先确定私钥(随机数),通过私钥生成一个对应的公钥。

ECDSA = Elliptic Curve Digital Signature Algorithm 椭圆曲线数字签名算法

客户端(消息以某个序列号为例):

  1. 将序列号通过哈希算法(比如SHA1)计算出一个固定的20字节;
  2. 将私钥和哈希值算出一个64字节的签名;

服务端(有序列号和公钥)

  1. 将序列号通过哈希算法(比如SHA1)计算出一个固定的20字节;
  2. 通过公钥、哈希值,验证签名是否正确;

我们电表就是服务端,电表中存的是公钥。

相关推荐
浅念-8 小时前
刷穿LeetCode:BFS 解决 Flood Fill 算法
数据结构·c++·算法·leetcode·职场和发展·bfs·宽度优先
做cv的小昊9 小时前
【TJU】研究生应用统计学课程笔记(8)——第四章 线性模型(4.1 一元线性回归分析)
笔记·线性代数·算法·数学建模·回归·线性回归·概率论
踏着七彩祥云的小丑9 小时前
嵌入式测试学习第1天:电路基础核心概念
单片机·嵌入式硬件
贾斯汀玛尔斯9 小时前
每天学一个算法--倒排索引(Inverted Index)
算法·inverted-index
小e说说9 小时前
打破偏科困境:这些学习软件助孩子重燃学习热情
算法
月昤昽10 小时前
autoCAD二次开发 4.正多边形与collection区分
算法·c#·二次开发·autocad二次开发
休息一下接着来10 小时前
C++ 固定容量环形队列实现
c++·算法
im_AMBER11 小时前
手撕hot100之矩阵!看完这篇就AC~
javascript·数据结构·线性代数·算法·leetcode·矩阵
笨笨饿11 小时前
#79_NOP()嵌入式C语言中内联汇编宏的抽象封装模式研究
linux·c语言·网络·驱动开发·算法·硬件工程·个人开发