《深入浅出HTTPS》读书笔记(24):椭圆曲线密码学

《深入浅出HTTPS​​​​​​​​​​》读书笔记(24):椭圆曲线密码学

为了保证DH的密钥对不被破解,提升安全性的主要手段就是增加密钥对的长度,但是长度越长,性能越低。

为了解决性能问题,需要了解下椭圆曲线密码学(Elliptic Curve Cryptography),简称为ECC。

ECC是新一代的公开密钥算法,主要的优点就是安全性,极短的密钥能够提供很大的安全性。

ECC算法的优势就是性能和安全性非常高。

【ECC算法的基本模型】

ECC是比离散对数类算法(比如RSA和DH算法)更复杂的算法。ECC椭圆曲线由很多点组成,这些点由特定的方程式组成的。

椭圆曲线有个特点,任意两个点能够得到这条椭圆曲线上的另外一点,这个操作称为打点,经过多次(比如n次)打点后,能够生成一个最终点(F)。

ECC密码学的关键点就在于就算知道具体方程式、基点(G)、最终点(F),也无法知晓一共打点了多少次(n),这就是椭圆曲线的关键,很难破解打点过程。

椭圆曲线的关键点就是方程式。

必须把所有的操作数限制在一个有限域中,为了控制在有限域中,需要一个很大的质数(p),而这个曲线上的点都必须小于这个质数。

ECC由方程式、基点(G)、质数(P)组成,当然还有a、b这样的方程式参数。

为了安全,系统预先定义了一系列的曲线,称为命名曲线(name curve),比如secp256k1就是一个命名曲线。

相关推荐
Python私教几秒前
GenericAgent记忆系统深度解析:四层架构如何让AI拥有永不遗忘的大脑
网络·人工智能·架构
AI进化营-智能译站2 分钟前
ROS2 C++开发系列16-智能指针管理传感器句柄|告别ROS2节点内存泄漏与野指针
java·c++·算法·ai
KnowSafe26 分钟前
CaaS商业模式解析:证书即服务如何创造商业价值
https·itrustssl·certcloud
CS创新实验室36 分钟前
从盘边到芯端——硬盘接口七十年变迁史
算法·磁盘调度
时空系1 小时前
第9篇:成员功能——为结构体添加能力 Rust中文编程
开发语言·网络·rust
xvhao20131 小时前
单源、多源最短路
数据结构·c++·算法·深度优先·动态规划·图论·图搜索算法
@encryption1 小时前
VLAN --- 深度学习
网络
MATLAB代码顾问1 小时前
多种群协同进化算法(MPCE)求解大规模作业车间调度问题——附MATLAB代码
开发语言·算法·matlab
FQNmxDG4S1 小时前
JVM内存模型详解:堆、栈、方法区与垃圾回收
java·jvm·算法
We་ct2 小时前
LeetCode 72. 编辑距离:动态规划经典题解
前端·算法·leetcode·typescript·动态规划