(自学整理)基于改进远程登录方案的椭圆曲线的密码系统

基于改进远程登录方案的椭圆曲线的密码系统

学习文档来源:《对称密钥结合椭圆曲线加密的网络认证和密码更新方案》

相关符号

方案均遵循双线性配对,保证了该方案的正确性。

 IDA:客户端 A 的标志符
 pwA:客户端 A 的密码
 ds:服务器 S 的私钥
 Us:服务器 S 的公钥,且满足 Us = ds·G
 UA:客户端 A 的密码验证器,且满足 UA = pwA·G,
 Kx:K = pwA·Us = ( Kx,Ky ) 或 K = ds·UA = ( Kx,Ky ) 计算的私钥
 G: n 阶椭圆曲线组的基点,满足 n·G = 0,其中 0 是个大素数
H( ·):防碰撞单向安全散列函数
rA /rS:客户端/服务器从[1,n - 1]中选取的随机数
+ / -:椭圆曲线点加/减法。

方案阶段

1. 注册

客户端 A 使用其标志符 IDA 和密码验证器 UA注册到服务器S,并获取服务器 S 的公钥。
服务器存储每个合法客户端的标志符和密码验证器,以及写保护文件中的状态位(状态位:客户端的状态,即当客户端登录到服务器时,将状态位置为 1,否则设为零

2. 口令认证

口令认证协议包括以下四个步骤:

a) 客服端到服务器: IDA,EKx( IDA,RA,WA ) 。
客户端A,将其标志符 IDA 和密码 pwA 放入终端。
客户端在[1,n - 1]中选择一个随机数 rA,计算
RA = rA·US ;
WA = ( rA·pwA ) ·G

再使用对称密钥 Kx 加密( IDA,RA,WA ) ,并发送给服务器 。(加密密钥 Kx 是 K 的 x 坐标;K= pwA·US = pwA·dS·G = ( Kx,Ky )

b) 服务器到客户端: ( WA + WS ) ,H( WS ) 。
服务器计算解密密钥 Kx。 K = dS·UA = pwA·dS·G = (Kx,Ky) 。使用 Kx 解密 EKx ( IDA,RA,WA )
将解密得到 IDA,^e ( RA,UA ) 分别与获取的 IDA、^e( WA,US ) 进行比较。
如果满足所有条件,服务器选择一个随机数 rS,并计算 WS = rS·US = rS·dS·G。
然后服务器向客户端发送( WA + WS ) ,H( WS ) 。

c) 客服端到服务器: IDA,H( WA,WS ) 。
客户端使用( WA + WS ) 减去 WA 得到 WS。
计算得到的 WS 的散列值与获取的H( WS ) 相等,客户端执行散列操作 H( WA,WS ) ,并发送给服务器。

d) 服务器到客户端: 访问授权/拒绝。
服务器计算在步骤 b) 中提取并存储的 WA 和 WS 的散列值,并与获取的 H(WA,WS) 作比较,已决定是否接受登录请求。如果所有条件均满足,则允许客户登录,否则,拒绝客户登录。

3. 密码更新

a) 客服端到服务器: IDA,EKx( IDA,RA,WA ) 。
b) 服务器到客户端: ( WA + WS ) ,H( WS ) 。
c) 客服端到服务器: IDA,H( WA,WS ) ,WA + U’ A,H(WS,U’ A) 。
d) 服务器到客户端: 密码更新授权/拒绝。

若客户端想要将旧密码 pwA 修改为 pwA ‘,则客户端计算相关的密码验证器 UA ’ = pwA ‘·G
在步骤 c) 中,若认证口令 H( WA,WS ) 得到验证,则服务器使用 WA + U’ A 减去 WA 得到新的密码验证器 UA ’
接着,若( WS,U’ A ) 的散列值与 H( WS,U’ A ) 相等,则服务器使用 UA '代替 UA。

4. 会话密钥

a) 客服端到服务器: IDA,EKx( IDA,RA,WA ) 。
b) 服务器到客户端: ( WA + WS ) ,H( WS ) 。
c) 客服端到服务器: IDA,H( WA,WS ) 。
d) 服务器到客户端: 密钥分发授权/拒绝。

在这个协议中,客户端和服务器分别从[1,n - 1]中选取随机数 rA 和 rS。客户端计算最终的会话密钥,服务器计算 SK =( rS·dS ) ·WA = rA·rS·pwA·dS·G

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值