椭圆曲线密码算法介绍

椭圆曲线密码算法(ECC) 网上有很多关于ECC的文章,但是讲明白的很少,最近发现了一个大佬的博客,里面将ECC的算法讲的比较透彻,我当作自己的笔记来看。其中会对于一些细小的错处做一些修改和添加一些自己的见解(大佬的博客地址和参考资料全部已经放在文章的末尾了)。 比特币使用椭圆曲线算法生成公钥和私钥,选择的是secp256k1曲线。   椭圆曲线密码学(ECC)是(Elliptic Curve Cryptography)... 阅读详情

1,有限域上的椭圆曲线 
设K表示一个有限域,E是域K上的椭圆曲线,则E是一个点的集合: 
E/K = { ( x, y ) | y2+ a1xy + a3y = x3 + a2x2 + a4x + a6, 
a1, a3, a2, a4, a6 x, y K } { O } 
其中O表示无穷远点。 
在E上定义‘+’运算,P + Q = R,R是过P、Q的直线与曲线的另一交点关于x轴的对称点,当P = Q时R是P点的切线与曲线的另一交点关于 x轴的对称点。这样,( E, + )构成可换群( Abel群),O是加法单位元(零元)。椭圆曲线离散对数问题ECDLP定义如下:给定定义在K上的 椭圆曲线E,一个n阶的点P E/K,和点Q E/ K,如果存在l,确定整数l, 0 l n - 1, Q = lP。前面已经提到,ECDLP是比 因子分解难得多的问题。 
椭圆曲线上的加法: P + Q = R 
椭圆曲线上一点的2倍: P + P = R. 


2,椭圆曲线上的密码算法 
基于该难题,Neal Koblitz[13] 和Victor Miller[14]在1985年分别利用有限域上椭圆曲线的点构成的群实现了离散对 数密码算法,其中被广泛接受的是椭圆曲线上的DSA,称ECDSA。随即展开了椭圆曲线密码学研究,除椭圆曲线外,还有人提出在其它类型的曲线如超椭圆曲 线上实现公钥密码算法。 
此后,有人在椭圆曲线上实现了类似ElGamal的加密算法,以及可恢复明文的数字签名方案。除有限域上的椭圆曲线密码算法外,人们还探索了在椭圆曲线上实现RSA算法,如KMOV等,笔者也设计了一种算法(“一种基于Z/nZ上椭圆曲线的公钥密码算法”,王汉强、魏庆福,通信学报,1999,第7期)。 


3,椭圆曲线密码算法的发展 
由于其自身优点,椭圆曲线密码学一出现便受到关注。现在密码学界普遍认为它将替代RSA成为通用的公钥密码算法,SET ( Secure Electronic Transactions )协议的制定者已把它作为下一代SET协议中缺省的公钥密码算法,目前已成为研究的 热点,是很有前途的研究方向。

 
椭圆曲线密码算法 椭圆曲线密码算法(Elliptic Curve Cryptography,ECC)是基于椭圆曲线数学的一种公钥密码算法,其安全性依赖于椭圆曲线离散对数问题的困难性。本文介绍了椭圆曲线密码算法的基本概念...... 阅读详情

相关推荐

GMSSL :SM2椭圆曲线公钥密码算法

2021SC@SDUSC

vincy_yeha的博客 2498

椭圆曲线乘法

今天终于了解了一番神奇的非对称加密算法:椭圆曲线乘法为什么无法反推了,下面介绍一波. 1.椭圆曲线是一个二维的散点图 这里用NIST设立的一条椭圆曲线函数来介绍,因为这条曲线就是比特币使用的.这条曲线就是secp256k1标准定义的.公式如下: y2=x3+7Fpy2=x3+7Fpy^2 = {{x^3+7}\over{F_p}} y2modp=(x3+7)modpy2modp=(...

little_prog的博客 8260

SM2椭圆曲线公钥密码算法的C语言实现(基于Miracl大数运算库)

SM2椭圆曲线公钥密码算法的C语言实现(基于Miracl大数运算库)

Peter Kim的博客 5857

椭圆曲线入门详解

转载请注明http://blog.youkuaiyun.com/boksic 如有疑问欢迎留言 如果不知道数学上的群、循环群等概念,可以先了解ElGamal加密算法 后再回过来椭圆曲线加密 这两个算法有共通之处,都是在离散问题难解群上的加密算法,椭圆曲线是进一步的加深 首先,什么是椭圆曲线 椭圆曲线(Elliptic curve) 叫椭圆曲线只是因为方程跟椭圆的曲线积分比较相似 椭圆...

emowuyi 1674

掌握椭圆曲线密码学算法:从理论到应用

本文还有配套的精品资源,点击获取 简介:椭圆曲线算法是现代密码学中用于公钥加密和数字签名的高效数学方法,具有高安全性和低计算量的优点。基于椭圆曲线方程的数学运算构建了其安全基础,涉及椭圆曲线加法、点乘、公私钥生成、加密和数字签名。该算法在区块链、TLS/SSL、物联网通信等领域有广泛应用,安全性能在较短的密钥长度下与RSA相当。提供的文件包含椭圆曲线算法的源代码、文档和使用...

weixin_42510243的博客 2052

深入研究椭圆曲线密码算法的实现

ECC的核心在于椭圆曲线,它是由一个特定的方程式定义在有限域上的点的集合。这个方程通常写为,其中a和b是满足的常数,以确保没有奇点。椭圆曲线上的点与传统意义上的“点”不同,它们的行为符合椭圆曲线的群规则。

weixin_31185473的博客 1057

判断点及线段是否在多边形内

昨天小学了一点计算几何学的内容,想把它记下来,以便以后翻阅。 1.判断点是否在多边形中 先说一下思路: 判断点(P)是否在多边形中,可以先以点p向左引一条射线(L),我们知道,从射线L左端的无穷远处开始一直到点P的过程中,当遇到多边形的第一个交点时L进入了多边形,当遇到第二个交点时,L穿出了多边形。。。。。。。。。可知,规律如下,当在遇到P点之前L与多边形的交点为偶数个时,说明p点...

1340

求解某些奇异椭圆曲线上的椭圆曲线离散对数问题

求解某些奇异椭圆曲线上的椭圆曲线离散对数问题

椭圆曲线密码算法概述

设下图是显示了其中一种实际的椭圆曲线:对椭圆曲线上的点,我们可以定义一种形式的加法:如果椭圆曲线上的三个点位于同一直线上,那么它们的和为根据上面的定义导出椭圆曲线上的加法运算法则如下: 当当下面的动画解释了为什么是切线:随着两个点越来越接近,过这两点的直线最终变成了曲线的切线上面用几何的形式解释了椭圆曲线上的加法法则,下面是数学表达式。设在数学上,椭圆曲线群的元素为椭圆曲线上的点,群操作为”+”,”+”的定义为,给定曲线两点

qq_44005305的博客 2921

C#---第十一课:对列表的各种操作,添加、删除、排序、列表长度、获取元素的索引、FirstOrDefault()、SingleOrDefault()、last()

1.添加元素 2.删除元素 (1)删除列表中指定的元素 (2)删除列表A中所有与列表B相交的元素---常规 (3)删除列表A中所有与列表B相交的元素---lambda 3.排序(正序、倒序) 4.获取列表的最大容量(长度)、已用容量 6.获取元素在列表中的位置(index) 7.判断某元素是否在列表List中 8.获取列表中第一个元素First() & FirstOrDefault() 9.获取列表中唯一元素Single() & SingleOrDefault() 10.获取列表中最后一个元素

Alien-Hu 3628

高项49个过程,输入、工具技术、输出的思维导图

为了制定项目章程的管理方法主要是采用了数据收集技术,例如通过头脑风暴,通过召集主题专家和团队成员收集信息、解决方案,并在短时间内获得大量创意,并对大量创意进行分析和排序,选出最优化最适合本项目方案,并对项目成员的不同差异观点,进行了引导和对冲突的管理,最终有助于项目干系人的目标、成功标准的内容达成一致意见,形成完善的项目章程。在本过程中得到项目章程,在制定项目章程中需要包括信息有:项目名称、项目目标、项目总里程碑进度表、项目经理、主要干系人及财务预算信息。本过程在仅开展一次,或仅在项目的预定义点开展。

Legend_Jiang的博客 6186

SM2椭圆曲线公钥密码算法(Python实现)

Python实现SM2椭圆曲线公钥密码算法

m0_51913750的博客 1万+

从二体运动到高精度轨道:STK与MATLAB联动的轨道外推算法演进史

本文探讨了轨道外推算法从二体运动到高精度轨道预报(HPOP)的演进历程,重点分析了STK与MATLAB协同仿真环境下的技术实现与应用。通过对比不同算法的精度与适用场景,展示了HPOP在卫星参数优化和轨道设计中的优势,为航天任务规划提供了高效解决方案。

weixin_29082143的博客 701

SM2椭圆曲线公钥密码算法

国家必须要有属于自己的一套加密机制才行。。。好复杂。分享下看哪位看得懂其中的原理 国家密码管理局于2010年12月17日发布了SM2椭圆曲线公钥密码算法,并要求为对现有基于RSA算法的电子认证系统、密钥管理系统、应用系统进行升级改造。关于算法标准,请参见《国家密码管理局公告(第 21 号)》,网址为www.oscca.gov.cn/ SM2算法和RSA算法有什么关系?  SM...

aiyao6658的博客 1107

光互联技术演进:OIO、OBO、NPO、CPO四种方案对比与选型指南

光互联技术是解决高速数据中心和AI算力集群带宽瓶颈的关键路径。其核心原理是将光电转换点从面板向交换芯片逐步拉近,以缩短电通道、降低功耗并改善信号完整性。按照光电转换位置与芯片的距离,光互联可分为OIO、OBO、NPO和CPO四种技术路线,各自在功耗、可维护性和成熟度上存在显著差异。在AI训练集群、运营商网络等场景中,选型需综合考量功耗预算、运维体系和供应链生态。本文深入拆解这四种方案的技术细节、工程挑战与部署策略,为光互联技术选型提供实操参考。

weixin_33393017的博客 169

DCDC--控制方式(Control Mode)

DCDC反馈控制方式

网始如芯个人博客 1万+

SM2椭圆曲线公钥密码算法实现项目

用python实现SM2椭圆曲线公钥密码算法

qq_45793494的博客 3457

STM32与FreeRTOS:基于TIM6的高精度系统时间获取实践

本文详细介绍了在STM32与FreeRTOS环境下,基于TIM6定时器实现高精度系统时间获取的实践方法。通过复用FreeRTOS的TIM6硬件资源,开发者可以高效获取毫秒级和微秒级系统时间,同时解决时间溢出和中断处理等关键问题。文章还提供了CubeMX配置技巧、代码实现及性能优化建议,适用于嵌入式系统开发中的精确时间管理需求。

weixin_29169505的博客 359

7.6椭圆曲线密码算法

为了保证RSA算法的安全性,其密钥长度不断增加,导致加解密运算负担越来越重,处理速度越来越慢;相比之下,基于椭圆曲线理论的公钥密码体制可以用较短的密钥获得同样的密码强度。

qq_43699776的博客 1565

使用STM32制作简易数字时钟

连接LED数码管的电源和地线到STM32单片机的对应引脚,将数码管的A、B、C、D引脚连接到STM32单片机的I/O口引脚。通过编写和调试这个项目,可以熟悉STM32单片机的GPIO口和定时器的使用,以及数字显示的控制。步骤六:测试和调试 通过观察数码管的显示,可以验证时钟功能是否正常工作。步骤四:编写代码 在主程序中,我们将使用定时器中断来控制时钟的运行,并使用GPIO口控制LED数码管的显示。步骤五:编译和下载 编译代码并下载到STM32单片机中,通过调试器和串口监视器进行调试和查看输出结果。

qq_67153941的博客 1303

PCL 点到面的ICP算法【2024最新版】

经典的点到面的ICP算法。博客长期更新,本文最新更新时间为:2024年10月18日。

点云侠的博客 36万+

详解SM2椭圆曲线公钥密码算法

公钥是指用于加密明文或验证数字签名。当接收者用发送者的公钥验证签名时,他们可以确认发送者是谁(因为只有发送者有对应的私钥)并且消息自签名以来未被篡改(因为哈希值与原始数据是唯一对应的)。密钥交换协议是两个用户A和B通过交互的信息传递,用各自的私钥和对方的公钥来商定一个只有他们知道的秘密密钥。在密钥协商过程中,密钥派生函数作用在密钥交换所获共享的秘密比特串上,从中产生所需的会话密钥或进一步加密所需的密钥数据。公钥密码体系确保了信息的机密性和完整性,只有预期的接收者,即私钥的持有者,才能解密由公钥加密的信息。

qq_65944532的博客 1378

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

SM2椭圆曲线密码算法实现

SM2椭圆曲线密码算法实现 去发现同类优质开源项目:https://gitcode.com/ 简介 本仓库提供了采用Verilog硬件描述语言实现的SM2椭圆曲线密码算法资源文件。该实现支持有限域和二元域下的数据签名/验签,数据加解密等功能,为信息安全领域提供了重要的算法支持。 文件说明 sm2_cpa.zip:包含SM2椭圆曲线密码算法的Verilog代码,可用于硬件描述和算法实现。 使用说...

gitblog_06782的博客 299

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

上一篇: 搜索引擎算法研究
下一篇: RSA算法 概述
iiprogram
博客等级 码龄25年 1068粉丝 1515原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值