前言:
此时你们对“椭圆曲线公钥密码算法不需要验证公钥”大致比较关心,大家都想要学习一些“椭圆曲线公钥密码算法不需要验证公钥”的相关资讯。那么小编也在网络上收集了一些对于“椭圆曲线公钥密码算法不需要验证公钥””的相关资讯,希望兄弟们能喜欢,朋友们快快来了解一下吧!数学基础
取模运算(“Modulo Operation”)和取余运算(“Complementation ”)两个概念有重叠的部分但又不完全一致。主要的区别在于对负整数进行除法运算时操作不同。取模主要是用于计算机术语中。取余则更多是数学概念。
%是除法取余运算。 用于整数与整数运算。如5%3=2。
幂模运算转化为乘模运算。
a*b % n = (a % n)*(b % n) % n
模幂乘运算采用平方乘算法,将模幂乘运算转化为模乘和模平方运算实现
对于任意指数E,都可采用以下算法计算D=C**E % N:
D=1
WHILE E>0
IF E%2=0
C=C*C % N
E=E/2
ELSE
D=D*C % N
E=E-1
RETURN D
椭圆曲线
椭圆曲线密码是一种公钥密码算法,公钥密码算法最根本的原理是利用信息的不对称性。私钥拥有者把信息的一部分公开披露,披露的信息记为公钥。一个公钥密码算法安全的必要条件(非充分)是“由公钥不能反推出私钥”。椭圆曲线密码也是一个基于加法阶数难求问题的密码方案。
椭圆曲线密码里的加法建立在 “有限域上的二元三次曲线上的点”上 ,组成一个“有限加法循环群”。
这个加法的几何定义如下面两个图,两个点的加法结果是指这两点的连线和曲线的交点关于x轴的镜像。
对椭圆曲线来说最流行的有限域是以素数为模的整数域。
椭圆曲线离散对数问题(ECDLP)就是给定点P和Q,确定整数k使k*P=Q。
给定素数p和椭圆曲线E,对Q=kP,在已知P,Q 的情况下求出小于p的正整数k。可以证明由k和P计算Q比较容易,而由Q和P计算k则比较困难。
将椭圆曲线中的加法运算与离散对数中的模乘运算相对应,将椭圆曲线中的乘法运算与离散对数中的模幂运算相对应。
标签: #椭圆曲线公钥密码算法不需要验证公钥