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

相关推荐
思茂信息21 分钟前
CST软件BCI仿真模型及仿真案例
开发语言·单片机·嵌入式硬件·算法·emc
Persistent的粽子!41 分钟前
双指针算法:最大盛水容器
c++·算法·leetcode
XiaoMaqqqq1 小时前
目前知名的IP驱动产业新场景新工具有哪些
网络·python·网络协议·tcp/ip
hold?fish:palm1 小时前
44 二叉搜索树中第K小的元素
开发语言·c++·算法
李永奉1 小时前
中科蓝讯SDK开发-BT897X、BT891X、AB573X、AB572X 系列 触摸按键提示音功能实现
网络·单片机·嵌入式硬件·mcu·物联网
ShineWinsu1 小时前
对于ProtoBuffer:ProtoBuffer的介绍以及安装
linux·网络·google·协议·序列化·反序列化·protobuffer
Eddyp2 小时前
避开溢价!艾默生 TREX2 手操器省钱选型攻略
网络·其他·百度·微信·微信公众平台·新浪微博
FlightYe2 小时前
视界原理之2D视频(二):视频文件里有什么
android·linux·网络·c++·ffmpeg·音视频·aac
Chen—LSN2 小时前
C语言——⽂件操作(1)
c语言·开发语言·c++·经验分享·笔记·算法·链表
anew___2 小时前
《从零手写操作系统 (11):文件系统初探——initrd与VFS抽象层》
java·javascript·算法