ECC 加密算法入门介绍
同 RSA (Ron Rivest,Adi Shamir,Len Adleman 三位天才的名字)一样,ECC(Elliptic Curves
Cryptography,椭圆曲线密码编码学)也属于公开密钥算法。目前,国内详细介绍 ECC 的公开文献并不多
(反正我没有找到)。有一些简介,也是泛泛而谈,看完后依然理解不了 ECC 的实质(可能我理解力太
差)。前些天我从国外网站找到些材料,看完后对 ECC 似乎懵懂了。于是我想把我对 ECC 的认识整理一下,
与大家分享。当然 ECC 博大精深,我的认识还很肤浅,文章中错误一定不少,欢迎各路高手批评指正,小
弟我洗耳恭听,并及时改正。文章将采用连载的方式,我写好一点就贴出来一点。本文主要侧重理论,代
码实现暂不涉及。这就要求你要有一点数学功底。最好你能理解 RSA 算法,对公开密钥算法有一个了解。
《近世代数基础》《初等数论》之类的书,最好您先翻一下,这对您理解本文是有帮助的。别怕,我尽量会
把语言通俗些,希望本文能成为学习 ECC 的敲门砖。
一、从平行线谈起。
平行线,永不相交。没有人怀疑把:)不过到了近代这个结论遭到了质疑。平行线会不会在很远很远的地方
相交了?事实上没有人见到过。所以“平行线,永不相交”只是假设(大家想想初中学习的平行公理,是没
有证明的)。既然可以假设平行线永不相交,也可以假设平行线在很远很远的地方相交了。即平行线相交于
无穷远点 P∞(请大家闭上眼睛,想象一下那个无穷远点 P∞,P∞是不是很虚幻,其实与其说数学锻炼人的
抽象能力,还不如说是锻炼人的想象力)。给个图帮助理解一下:
直线上出现 P∞点,所带来的好处是所有的直线都相交了,且只有一个交点。这就把直线的平行与相交统一
了。为与无穷远点相区别把原来平面上的点叫做平常点。
以下是无穷远点的几个性质。
▲直线 L 上的无穷远点只能有一个。
(从定义可直接得出)
▲平面上一组相互平行的直线有公共的无穷远点。
(从定义可直接得出)
▲ 平面上任何相交的两直线 L1,L2 有不同的无穷远点。
(否则 L1 和 L2 有公共的无穷远点 P ,则 L1 和 L2 有两个交点 A、P,故假设错误。)
▲平面上全体无穷远点构成一条无穷远直线。(自己想象一下这条直线吧)
▲平面上全体无穷远点与全体平常点构成射影平面。
二、射影平面坐标系
射影平面坐标系是对普通平面直角坐标系(就是我们初中学到的那个笛卡儿平面直角坐标系)的扩展。我
们知道普通平面直角坐标系没有为无穷远点设计坐标,不能表示无穷远点。为了表示无穷远点,产生了射
影平面坐标系,当然射影平面坐标系同样能很好的表示旧有的平常点(数学也是“向下兼容”的)。
评论0
最新资源