椭圆曲线的基础知识

1.名词说明

椭圆曲线离散对数(ESCDP): 离散对数问题是寻找到一个整数指数z,对于整数b和素数p的一个原根a,使得a^z\equiv b \mod p,(0\leqslant z\leqslant p-1)。椭圆曲线上离散曲线是阶n的椭圆曲线,P点在椭圆曲线上,对于椭圆曲线上的Q点,寻找k,使得Q=kP

椭圆曲线点乘 : 椭圆曲线E上的点P,和正整数x,可以得出xP=P+P+\cdots+P,称为椭圆曲线的点乘运算,也能够被称为标量积。

椭圆曲线的阶F_q上椭圆曲线E中的点数#E(F_q)

椭圆曲线P点的阶:令nP=O的最小整数。

Hasse定理:F_q椭圆曲线上的点数满足|#E(F_q)-(q+1))\leqslant 2\sqrt{q}

2.椭圆曲线

K是一个域,域K上的点集满足方程Weierstrass方程:

E=\{(x,y)|y^2+a_1xy+a_3y=x^3 +a_2x^2+a_4x+a_6\}\cup \{O\}

其中a_1,a_2,a_3,a_4,a_6\in K, 其中\{O\}为无穷远点。则域K上的椭圆曲线的标准式子为Weierstrass方程。

设椭圆曲线E是如下方程:

F(x,y)=y^2+a_1xy+a_3y-x^3 -a_2x^2-a_4x-a_6

可以知道椭圆曲线E是齐次方程,且满足\begin{pmatrix} \partial F/\partial x &\partial F/\partial y \end{pmatrix} \neq (0,0),因而椭圆曲线上的每一个点都是光滑的。利用matla,如图2.1,就是椭圆曲线在实数域K上的实例

 

椭圆曲线的基础知识_第1张图片椭圆曲线的基础知识_第2张图片

                                  图2.1:椭圆曲线例子

而如图2.2则非实数域上的椭圆曲线,每一个点都是光滑的条件不满足。

椭圆曲线的基础知识_第3张图片椭圆曲线的基础知识_第4张图片

                           图2.2:非椭圆曲线例子

在进行椭圆曲线的研究中,采用如下形式的weierstrass方程,当特征域不为2,3,方程为:y^2=x^3+a_4x+a_6.

3.椭圆曲线阿贝尔群

定义椭圆曲线为E,椭圆曲线上的运算法则记为\oplus

运算法则[2]:椭圆曲线E上的P,Q两点,L是过P,Q两点(如果P=Q,那么L是椭圆曲线上的切线),与椭圆曲线交于R’,过R’做平行于y轴的直线,则与椭圆曲线E相交于点R,P\oplus Q=R

如图2.3椭圆曲线的运算法则示意图如下:

椭圆曲线的基础知识_第5张图片

 

                                    图2.3椭圆曲线运算法则

因此椭圆曲线E:y^2=x^3+a_4x+a_6上有如下的运算法则

    a.  椭圆曲线E上的直线LP,Q,R^',且O为无穷远点,则(P\oplus Q)\oplus R^{'} =O

    b. P\subset E,P\oplus O=P

    c.P,Q\subset E,P\oplus Q=Q\oplus P

    d.设P\subset E,存在椭圆曲线E上的一点-P,则P\oplus-P=O

    e.P,Q,R\subset E,(P\oplus Q)\oplus R=Q\oplus (P\oplus R)

    f.P_1=(x_1,y_1),P_2=(x_2,y_2)\subset E, P_3=(x_3,y_3)=P_1+P_2\neq 0,则

\left\{\begin{matrix} x_3=\lambda ^2-x_1-x_2\\ y_3=\lambda(x_1-x_3)-y_1 \end{matrix}

其中:

\left\{\begin{matrix} \frac{y_2-y_1}{x_2-x_1}, x_1\neq x_2\\ \frac{3x^2+a}{2y_1}, x_1\neq x_2 \end{matrix}\right.

因而椭圆曲线E上的运算法\oplus则构成了Abel群。

  示例: 有限域F_{19}上一条椭圆曲线

F_{19}上方程:y^2=x^3+x+1,则F_{19}上的点是(0,1),(0,18),(2,7),(2,12),(5,6),(5,13),(7,3),(7,16),(9,6),(9,13),(10,2),(10,17),(13,8),(13,11),(14,2),(14,17),(15,3),(15,16),

(16,3),(16,16)

椭圆曲线y^2=x^3+x+1的离散点群如图3.1所示

椭圆曲线的基础知识_第6张图片

                                图3.1:椭圆曲线离散点

a)取P_1=(10,2),P_2=(9,6), P_3=(x_3,y_3)=P_1+P_2

\lambda = \frac{y_2-y_1}{x_2-x_1}=\frac{6-2}{9-10}\equiv -4 \equiv 15(\mod 19)

x_3=\lambda ^2-x_1-x_2=15^2-10-9\equiv -3\equiv 16(\mod 19)

y_3=\lambda(x_1-x_3)-y_1=15\times(10-16)-2\equiv 3(\mod 19)

b)取P_1=(10,2) P_3=(x_3,y_3)=P_1+P_1

\lambda =\frac{3x^2+a}{2y_1}=\frac{3x^2+a}{2y_1}=16/4=4(\mod 19)

x_3=\lambda ^2-x_1-x_2=4^2-10-10\equiv15\equiv 16(\mod 19)

y_3=\lambda(x_1-x_3)-y_1=15\times(10-16)-2\equiv 3(\mod 19)

椭圆曲线的基础知识_第7张图片

                                                 图3.1:标乘p的值

 

你可能感兴趣的:(椭圆曲线的基础知识)