通信人家园

 找回密码
 注册

只需一步,快速开始

短信验证,便捷登录

搜索

军衔等级:

  新兵

注册:2008-12-262
跳转到指定楼层
1#
发表于 2019-11-28 17:30:05 |只看该作者 |正序浏览
     椭圆曲线的算法设计和参数选择涉及到近世代数概念,一般从事协议流程开发、测试和网络维护的人员可能没有太多的时间和精力详细研究规范,但又希望对此有个基本理解。
     其实如果跳过椭圆曲线和有关抽象代数操作的严格定义,简单地把椭圆曲线上的加、乘法及其逆运算(减、除)类比成普通的算术操作,其加密原理和流程还是很容易理解的。
     先说"乘",对某个点(坐标)乘以k,可以理解为就是做k次操作,至于是什么操作,随便理解为顺在曲线上选定的有限点集中蹦跶k次,或者说保险柜向左转了k圈。那么加法呢,就是选定另一个点A和B,按照约定的规则,A+B会唯一映射到集合中的第三个点C,就说A+B=C。至于怎么来的,可以简单理解两点决定一条直线,该直线与椭圆曲线的交点会唯一映射到第三点C。其实不用理解这些操作,就当成小学生理解的算术加法好了。
    下面来说移动端和网络端的加解密:
     1、网络和终端约定一个算法和参数集,确定了双方共同的椭圆曲线上的离散点集合,并选定一个参考点G。这一步是在用户签约制作SIM卡时完成的;
     2、网络端选一个整数k,这就是网络端私钥;再把K=kG通知到移动终端,这就是网络端公钥;
     3、移动端也选定一个整数r,这就是移动端私钥;同理,R=rG就是移动端公钥。
     4、假设移动端有一组信息,编码映射到椭圆曲线上一点M上。移动端把M+rK和自己的公钥R分别发给网络端;
     5、网络端收到M+rK和R后,作如下运算:(M+rk)-kR=M+rkG-krG=M.j恢复移动端想要发送的信息(其实这个信息才是真正用来对数据流(如用户身份)加密的密钥)。
     7、如果网络端向移动端发信息,过程完全对称。

     6、任何第三方虽然可截获公钥K和R,但由于不掌握私钥k和r,两个方向的信息都是猜不出来的。



举报本楼

本帖有 2 个回帖,您需要登录后才能浏览 登录 | 注册
您需要登录后才可以回帖 登录 | 注册 |

手机版|C114 ( 沪ICP备12002291号-1 )|联系我们 |网站地图  

GMT+8, 2024-11-15 23:46 , Processed in 0.099540 second(s), 15 queries , Gzip On.

Copyright © 1999-2023 C114 All Rights Reserved

Discuz Licensed

回顶部