一种改进的双向认证的动态密码
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
认证 结果 S S M =
2l 2 2 2 ^
●
( 2 )
图 1 认 证 流 程 图
:
R 1
R桕
Rm h
S S M和 P S M 的关 系 为 : R = G m o d P , 即 和 R f
( 1 ) 认证 请 求 : 用 户 向服 务 器认 证 端 发 送 认 证 请 求信 息 , 将 注册 过 的 I D发到 认证 端 。 ( 2 ) 挑 战信 息 : 认 证 端 通 过查 询 用 户 I D判 断是 否
傅菇 , 等: 一种 改进 的双 向认 证 的动 态 密码
有数 据库 的支持 , 也不 需要 在 线运行 , 具 有较 高 水 平 的 处 理能 力 和运行效 率 。 文献 [ 4 ] 提 出 了 一 种 以椭 圆 曲 线 公 钥 算 法 E C C ( E l l i p t i c C u r v e C r y p t o s y s t e m s ) 为基 础 的 C P K算 法 。在 构造 C P K时 , 需 要先 选定 椭 圆 曲线 算 法 Y= +似 +b m o d P , 参 数 T={ a , b , G=( , y ) , n , P } , 其 中, a , b为椭 圆 曲线 的参数 ; G为 椭 圆曲线 上 的基 点 ; n为 椭 圆 曲线
P的单 向 函数 , 与接 收 到 的应 答信 息 对 比。若 一致 , 则
认证通过 , 并根据应答信息更新用户密码生成序数 / Z 。 否 则认 证失 败 。
为 注册用 户 , 若是 注册 用户 , 认证 端生 成一 个 随机数 r ,
是 上述 E C C算 法 的 一个 公 私钥 对 。为 了能 够 通 过 密 钥种 子矩 阵计 算 出用 户 的 密钥 对 , 需 要对 用 户标 识 和 用 户密 钥进 行绑 定 , 这种 绑定 依靠 一 个 映射 算 法 o r , 设
用户 A的标识为 A , o - ( A ) = m a p A ={ 。 , i d 2 , A i k j } , 则 A的私 钥 和公钥 分 别为 : 私 钥
d A =( 1 + r 2 『 2 +… + r ) m o d n ( 3 )
并将与用户共享的秘密值 P , 一并作 为挑战信息 , 通过 用I D查 询 得 到 的用 户 公 钥 加 密 将 信 息 发送 至 用 户 。 若不 是注 册用 户 , 不 作 处理 。 ( 3 ) 应 答 信息 : 用 户 收到 认 证端 的挑 战信 息 , 提取
出 随机数 r , 用 自身 私钥 解 密得 到秘 密 值 P, 通过 比对 , 可 对认 证端 进行 验证 。若 验 证 通 过 , 用 户 将 提 取 到 的 随 机数 r 和秘 密 值 运 行 P双 变量 单 向 函数 算 法 , 加 上 用 户密码 生 成序数 n的密 文 d ( n ) , 作 为应 答 信息 一并
发 送到认 证 端 。 ( 4 ) 认 证 结果 : 认 证 端 自行运 算 随机数 r 和秘 密值
公钥 Q A =d A G m o d P=( ( 们 +r 2 『 2 +… +r ) m o d n ) G m o d p=( r i r i l G+r i 2 J 2 G+… + r i  ̄ k G ) m o @ =( R 1 + R + …+ ) o t o @ ( 4 )
阵, 记 为
认证 阶 段 : 整 个 认 证 过 程 由 4部 分 组 成 , 如图 1
所示 。
SS M = 认证请求
挑 战信 息
并通 过 S S M派 生 出公钥 种 子矩 阵 P S M
RI l Rl 2 l 3 R2 3 尺l h
客 户端
应答信 息
认 证端
C P K将 用 户 的 密 钥 分 存 于 两 个 m x h维 密 钥 矩 阵, 这 两个 密钥 矩 阵可 以组合 成 m 个公 私钥 对 。 由于 存储 公 钥矩 阵所 需 的空 间较小 , 完 全可 以放 在 认证 端 , 无 需公 钥存 储 服务 器或 数据 库 的支持 。系统使 用 E C C 算法 , 只涉 及加 法 , 具 有 较快 的计 算速 度 。 此外 , C P K产 生 的 密钥 数 量 庞 大 , 若 n使 用 一 个 4 字 节整数 , 一次初始 化之后可产 生 2 弛= 4 2 9 4 9 6 7 2 9 6个 密钥 对 。若 用户每 天使用 1 0 个 密码 进行 登 录认 证 , 至 少也 可 以使用 1 0 0 0年 。
2 . 1 总体 设计
整体 算法 由注 册 阶段 和认证 阶段 两部分 组 成 。
注 册 阶段 : 用户 在系统初次认 证时 , 先 要 进 行 注 册, 自行 定义 一个 唯一 的 I D。 同时认 证 系统 分 配 给用 户 一个 秘密 值 P , 作 为 一 个 重 要 的认 证 依 据 。 客 户 端
素数 域 F 。上 任 意 一 整 数 , 那 么 其 对 应 的 公 钥 为
Q ^= d A G mo dP 。
和 系统认 证 端都存 有用 户 I D 和秘 密值 P , 并 保 存 相 同
的动态 密码 算法 。
C P K使用一系列 随机数 . f 构成 m x h维私钥 矩
上 点 的个 数 ; p为素 数域 F 的阶 。设 用 户 A 的私 钥 为
改进 , 采 用双 向认 证 的方式 , 不仅 认证 端要 对客 户 端进 行验 证 , 客户 端 也要 验证 认 证 端 的 真伪 。方 案 中通 过 比对 秘密 值 P和认 证 端 生 成 的 随 机 数 r实 现 双 向认 证, 对整 体 的安全 性有 大幅 提高 。