《深入浅出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就是一个命名曲线。

相关推荐
云计算-Security几秒前
计算机网络 7 个性能指标
网络·计算机网络
网安情报局2 分钟前
抗 DDoS 的核心:黑白名单、限速、流量牵引技术对比分析
运维·服务器·网络
醒醒该学习了!3 分钟前
Prompt提示词——带有深度思考模型的提示方法(理论篇)
人工智能·算法·prompt
君为先-bey4 分钟前
Latte——视频生成的潜在扩散变换器
算法·机器学习·音视频·扩散模型
浅念-6 分钟前
LeetCode刷题专题:FloodFill泛滥填充算法剖析
数据结构·算法·leetcode·职场和发展·深度优先·宽度优先
笨蛋不要掉眼泪7 分钟前
Java并发编程:深入剖析 ArrayBlockingQueue
java·开发语言·算法·并发
菜菜的顾清寒10 分钟前
力扣HOT100(33)二叉树的最大深度
算法·leetcode·职场和发展
pengyi87101514 分钟前
代理 IP 隐私保护核心原理:从 IP 隐藏到身份匿名的完整链路
网络·网络协议·tcp/ip
运维行者_20 分钟前
使用Applications Manager监控的关键MongoDB指标
服务器·开发语言·网络·数据库·mongodb·机器学习·云计算
Deepoch22 分钟前
Deepoc数学大模型:重塑半导体研发与制造的核心算法范式
人工智能·算法·机器学习·半导体·deepoc·数学大模型