基于云平台物联网的多因子远程身份认证方法

2022-12-03 01:57于光华夏魁良辛明远王诗莹
计算机应用与软件 2022年11期
关键词:智能卡攻击者密钥

于光华 夏魁良 辛明远 王诗莹

1(黑河学院计算机与信息工程学院 黑龙江 黑河 164300)2(哈尔滨商业大学管理学院 黑龙江 哈尔滨 150076)

0 引 言

远程身份认证[1]是在不安全网络中对远程用户的合法性进行认证的过程。传统的单因子密码认证存在很多缺陷,例如密码容易被遗忘、容易被猜解攻击等,不足以确保较高的安全性[2]。由于分布式环境越来越普及,传统的单服务器方案[3]的局限性越来越明显。云计算通过共享和优化应用对硬件资源的能力进行扩展,成为一种可靠的解决途径。

王超等[4]提出基于椭圆曲线加密的多因子远程身份验证方案,包括密码、智能卡和生物统计信息3个因子。Dhillon等[5]提出了一种基于椭圆曲线密码的多因子远程身份认证方案,采用云物联网技术,并将其应用到远程医疗方案的解决中。Mishra[6]改进了生物特征隐私的表示方法,但该方案容易受到智能卡丢失攻击,也无法抵御冒名攻击。崔维等[7]提出一种轻量级的动态化密钥协商的身份认证协议。该协议在用户进行登录验证时使用时间戳值,可防范重放攻击以及拒绝服务攻击,但该方案不能检测无效输入。Banerjee等[8]提出一种基于生物特征的远程用户身份认证的改进方法。网关节点充当第三方,密钥协商协议与首选传感器节点协商为认证,从而启动会话密钥,建立可靠连接。该方案使用单向散列函数、位异或(XOR)和concat操作。屈娟等[9]指出文献[10]的缺点:易受智能卡丢失攻击和模仿攻击等,且用户匿名性难以保证。文献[9]提出一种改进方法,利用生物特征和混沌函数完成身份认证。

与以上相关方案技术不同,本文最大的特点是基于云计算的物联网(Internet of Things, IoT)应用,充分利用云计算处理多服务器的远程身份认证,提出一种基于智能卡的多因子轻量级认证方案,使用了XOR和散列函数使之具有轻量级,并具有其他众多关键的安全属性。

1 方法介绍

基于云计算的架构如图1所示,其中多个IoT网络连接至云服务器。由此支持远程用户访问IoT网络生成的数据。本文远程身份认证方案基于此框架,主要包括6个阶段:1) 预计算阶段;2) 注册阶段;3) 登录阶段;4) 身份认证阶段;5) 密码更改阶段;6) 智能卡撤销阶段。本文方案所使用的数学符号及含义如表1所示。

图1 本文远程身份认证的云计算框架

表1 本文的符号说明

续表1

1.1 预计算阶段

服务器以离线模式进行参数初始化。服务器生成素数U、整数V,以使得:

U×V≡1(mod(p-1)(q-1))

(1)

并计算:

V≡U-1(mod(p-1)(q-1))

(2)

SR将U作为公钥,V作为私钥。私钥保持保密性,并发布公钥。本文方案使用轻量级加密散列函数,定义为:

h: {0, 1}*→ {0, 1}l

(3)

式中:l为h(·)的输出长度。

1.2 注册阶段

该阶段中,远程用户注册到服务器。为此,用户Ui向服务器SR提交注册请求。为成功完成注册,Ui需要执行以下步骤。

步骤1用户Ui选择唯一标识usernamei、密码PWi。 其后,用户生成一个随机数R1。此外,Ui计算掩藏标识MIDi=h(R1‖usernamei)和掩藏密码MPWi=h(R1‖PWi)。用户通过安全信道将消息{MIDi}发送至远程服务器SR。

步骤2在接收到消息后,SR使用私钥V计算MVi=h(MIDi‖V),将参数{MVi,h(·)}保存在智能卡SC内并通过安全信道将SC发布至用户Ui。

步骤3在接收到智能卡SC后,用户Ui计算Xi=h(usernamei‖MPWi),Yi=h(usernamei‖PWi),Zi=MVi⊕Xi,Ai=h(usernamei⊕MPWi),Bi=R1⊕Yi。用户从智能卡存储中删除计算出的参数MVi。Ui将{Zi,Ai,Bi,h(·)}保存到智能卡SC中。

1.3 登录阶段

该阶段中,用户Ui向服务器提交登录请求。为发起会话,需要执行以下步骤。

步骤1用户Ui将智能卡插入读卡器,输入标识usernamei′和密码PWi′。

步骤2智能卡SC计算Yi′ =h(usernamei′‖PWi′)。为计算MIDi′和MPWi′,SC提取R1′=Bi⊕Yi′并计算MIDi′=h(R1′‖usernamei′),MPWi′=h(R1′‖PWi′)。

步骤3此外,SC计算Xi′=h(usernamei′‖MPWi′),并提取MVi′,MVi′=Zi⊕Xi′。其计算Ai′=h(usernamei′⊕MPWi′)并检查其存储的Ai是否等于计算出的Ai′。若相等,则用户通过认证,SC继续下一个步骤。否则,登录请求将被中止。

步骤4在成功完成认证后,智能卡AC在当前时间戳T1生成一个随机新鲜值R2。SC计算Auth1=h(R2‖MVi′ ‖T1),Auth2=h(MIDi′ ‖MVi′‖T1) ⊕R2。SC将消息{MIDi′ ,Auth1,Auth2,T1}发送至服务器。

1.4 身份认证阶段

该阶段中,服务器和用户彼此进行双向认证。在成功完成身份认证后,生成共享的加密会话密钥。身份认证阶段的步骤如下:

步骤1在接收到登录消息后,服务器SR生成当前时间戳Ti′,并认证(Ti′-T1)≤△T是否成立。该条件确保本文方案能够抵御重放攻击。若条件不成立,中止身份认证过程。若条件成立,SR计算MVi′=h(MIDi′‖V),并从Auth2中提取R2,R2′=Auth2⊕h(MIDi′ ‖MVi′ ‖T1)。

步骤2此外,服务器计算Auth1′=h(R2‖MVi′‖T1),并认证Auth1′=Auth1是否成立。若条件成立,则远程服务器确认用户为合法用户,继续下一个阶段。否则,SR将中止认证过程。

步骤3SR在当前时间戳T2生成随机数R3,并计算加密会话密钥SKey=h(MIDi‖R2′‖R3‖T1‖T2),Auth3=R2′⊕R3,Auth4=h(SKey‖MVi′ ‖R3‖T1‖R2′ ‖T2)。其后,SR将消息{Auth3,Auth4,T2}发送至Ui。

步骤4在接收到消息后,SC首先对时间戳进行检查。SC生成当前时间戳T2′,并认证(T2′-T2) ≤ △T是否成立。若条件不成立,则中止会话。若条件成立,SC计算R3′=R2⊕Auth3,SKey=h(MIDi′‖R2‖R3′‖T1‖T2),Auth4′=h(SKey‖MVi′‖R3′‖T1‖R2‖T2)。SC检查Auth4′=Auth4是否成立。若条件成立,用户Ui和远程服务器SR完成双向认证,继续下一进程。若不成立,则会话中止。

步骤5在当前时间戳T3,SC计算AuthSKey=h(SKey‖MVi′ ‖MIDi′ ‖T2‖T3),并通过安全信道将消息{AuthSKey,T3}发送至远程服务器SR。

步骤6在接收到消息后,SR生成当前时间戳T3′,并认证(T3′-T3) ≤ △T是否成立。若条件不成立,则会话中止。若条件成立,SR计算AuthSKey′=h(SKey‖MVi′‖MIDi′‖T2‖T3) ,并认证AuthSKey′=AuthSKey是否成立。若条件成立,则会话密钥SKey通过认证。在完成双向认证后,使用会话密钥SKey对所有消息进行加密。

1.5 密码更改阶段

本文方案允许授权用户进行密码更新。智能卡在启动密码更新之前,先对用户进行身份认证。用户可自主决定其密码。该阶段非常重要,因为定期更新密码有助于提高安全性。密码更改阶段要执行以下步骤:

步骤1用户插入其智能卡SC,并输入标识usernamei′和旧密码PWi′。

步骤2在授权用户更新密码之前,智能卡SC检查用户的真实性。SC计算Yi′=h(usernamei′‖PWi′),提取R1′=Bi⊕Yi′,并计算MIDi′=h(R1′‖usernamei′),MPWi′=h(R1′‖PWi′)。

步骤3此外,SC计算Xi′=h(usernamei′‖MPWi′) ,并提取MVi′=Zi⊕Xi′。其计算Ai′=h(usernamei′⊕MPWi′),并认证其保存的Ai与当前计算出的Ai′是否匹配。若认证未通过,则SC拒绝用户Ui的请求并中止进程。若认证通过,SC要求用户提交新密码PWi*。

步骤4用户向SC提交新密码PWi*。

步骤5在接收到新密码后,SC计算MPWi*=h(R1′ ‖PWi*),Xi*=h(usernamei‖MPWi*),Yi*=h(usernamei‖PWi*),Zi*=MVi′⊕Xi*,Ai*=h(usernamei⊕MPWi*),Bi*=R1′⊕Yi*。智能卡将之前保存的参数{Zi,Ai,Bi}替换为{Zi*,Ai*,Bi*}。

1.6 智能卡撤销阶段

该阶段中,用户可对失窃或丢失的智能卡进行撤销。服务器再次执行对用户的注册。本文方案可抵御冒名攻击,因为其中未使用之前使用过的数值(例如密码)。由此,攻击者无法利用其提取出的数值假冒合法用户。智能卡撤销阶段步骤如下:

步骤1用户Ui向服务器SR请求撤销智能卡。在启动撤销进程之前,服务器SR先认证用户的凭证(例如检验生物特征或Ui预留的保密值)。

步骤2若用户的撤销请求成功通过认证,则Ui选择密码PWi′并生成一个随机数R1′。Ui计算掩藏标识MIDi′=h(R1′‖usernamei)以及掩藏密码MPWi′=h(R1′‖PWi′)。用户通过安全信道将消息{MIDi′}发送至远程服务器SR。

步骤3服务器接收新的注册请求消息,并计算MVi′h(MIDi′ ‖V),其中V为SR的私钥。服务器为注册用户Ui生成新的智能卡SCnew,其中包含参数{MVi′,h(·)},并通过安全信道发送至Ui。

2 安全性分析与认证

2.1 安全性分析

2.1.1抵御伪造攻击

本文方案可抵御伪造攻击。窃听者可能拦截到合法实体之间正在进行的通信,并再次进行提交,试图假冒认证用户。假定攻击者J记录下用户在登录阶段发送的消息{MIDi′,Auth1,Auth2,T1}。但攻击者J无法假冒认证用户,因为要计算合法登录请求,J必须具有参数PWi和R1的先验知识。这些参数从未传输过,因此J无法成功生成有效消息。

2.1.2抵御重放攻击

本文方案可抵御重放攻击。攻击者J可能记录下之前会话中发送过的消息,并尝试将消息再次发送至服务器。本文方案所使用的时间戳,通过检测传输时间的延迟来防止重放攻击。假定攻击者再次传输其拦截到的消息:J记录下登录请求{MIDi′,Auth1,Auth2,T1}。J通过发送Auth1=h(R2‖MVi′ ‖T1)、Auth2=h(MIDi′ ‖MVi′ ‖T1)R2以发起一个新会话。首先,本文方案采用了时间戳,所以请求将被取消。J不可能在多项式时间内利用蛮力分析攻击破解所有参数[11-12],这会造成传输延迟,被远程服务器所检测。

2.1.3抵御密码猜测攻击

本文方案可抵御密码猜测攻击。假定攻击者J记录下两条消息:请求消息{MIDi′,Auth1,Auth2,T1}和应答消息{Auth3,Auth4,T2},以猜解密合法用户的密码PWi或唯一标识usernamei。攻击者J无法生成有效的PWi和usernamei。首先,参数{usernamei,PWi,R1,R2,V}是不可知的,因为这些参数既未传输过,也未保存在智能卡中。其次,安全参数通过不可逆单向散列函数h(·)进行了加密。

2.1.4抵御会话密钥泄漏攻击

本文方案能抵御会话密钥泄漏攻击。假定攻击者J侦听到正在进行的通信,并记录下登录消息{MIDi′,Auth1,Auth2,T1}、认证请求{Auth3,Auth4,T2}和应答{AuthSKey,T3}。首先,J无法从AuthSKey中提取SKey,因为AuthSKey受抗碰撞单向散列函数h(·)的保护。其次,为成功生成SKey,SKey=h(MIDi‖R2′‖R3‖T1‖T2),J必须具有唯一标识usernamei、PWi、随机新鲜值R2′和R3的知识。参数usernamei和PWi从未传输过,且通过单向散列函数h(·)进行了加密,不会被攻击者所提取。

2.1.5抵御内部者攻击

本文方案能抵御内部者攻击。假定攻击者J在服务器SR处获得了掩藏表示MIDi。Ui的唯一标识通过随机新鲜值进行过散列,即注册阶段中MIDi=h(R1‖usernamei)。由于散列函数不可逆,J无法成功推导出标识usernamei和R1,无法从散列值中解密出信息。此外,无法使用MIDi生成认证阶段中的任何参数。

2.1.6抵御拒绝服务攻击

本文方案可抵御拒绝服务攻击。其中,远程服务器会认证用户的usernamei和密码PWi的真实性。此外,本文方案使用了时间戳。

2.1.7抵御失窃智能卡攻击

本文方案可抵御失窃智能卡攻击。智能卡SC保存参数{Zi,Ai,Bi,h(·)}。假定攻击者J成功窃取智能卡,并尝试提交有效登录请求{MIDi′,Auth1,Auth2,T1}。为此,J必须成功计算MVi=h(MIDi‖V)、Auth1=h(R2‖MVi′ ‖T1)、Auth2=h(MIDi′ ‖MVi′ ‖T1)⊕R2。为计算这些参数,J需要得到标识usernamei、密码PWi、MVi′、服务器私钥V和MPWi。这些参数并未保存在智能卡中。因此,即使攻击者窃得智能卡,也无法成功计算出这些参数。

2.1.8抵御服务器欺骗攻击

本文方案可抵御服务器欺骗攻击。为了假冒认证服务器SR,攻击者J尝试对服务器发送的有效应答消息{Auth3,Auth4,T2}进行伪造。为生成有效消息,J必须拥有服务器私钥V、用户标识usernamei、掩藏密码MPWi的知识,以成功计算出Auth3、Auth4,因为Auth3=R2′⊕R3、Auth4=h(SKey‖MVi′‖R3‖T1‖R2‖T2)、MVi′ =h(MIDi′ ‖V)、R2′ =Auth2⊕h(MIDi′ ‖MVi′ ‖T1)这些参数从未传输过。因此,攻击者J无法生成合法应答消息。

2.1.9抵御并行会话攻击

本文方案可抵御并行会话攻击。假定攻击者J拦截到之前会话中传输的登录请求消息{MIDi′,Auth1,Auth2,T1},并再次发送该消息。由于本文方案使用了时间戳,每次会话中时间戳均是不同的。因此窃听到的消息在另一次会话中是无效的。

2.1.10用户匿名性

本文方案能确保用户匿名性。窃听者试图侦听用户与远程服务器之间正在进行的消息交换。必须保证用户标识不被窃听者所获取。本文方案采用了具有随机性的掩藏标识MIDi。首先,用户标识usernamei从未传输过。因此,窃听者无法得到唯一标识。即使窃听者得到了MIDi,其也无法由此解密其他消息,因为认证参数均未使用MIDi。其次,所有参数均使用单向散列函数h(·)保护,攻击者无法检索到任何信息。此外,用户标识与随机新鲜值相关联,使其在每次会话中均具有唯一性。

2.2 安全性的形式化认证

本文使用互联网安全协议和应用的自动化认证[13](Automated Validation of Internet Security Protocols and Applications, AVISPA)对本文方案进行形式化安全分析。结果表明,本文方案足够安全。

2.2.1AVISPA概述

AVISPA是安全验证工具,以高级协议规范语言[14](High Level Protocol Specification Language, HLPSL)编写要执行的代码,AVISPA工具为每个参与者提供角色模型,每个角色均独立于其他角色。使用AVISPA进行方案检验需要执行以下步骤:

步骤1首先,以HLPSL语言编写方案。

步骤2使用HLPSL2IF翻译工具将HLPSL代码自动转换为中间格式(Intermediate Format,IF)。

步骤3将IF规范输入到后端。

执行IF后,后端通过分析输出格式(Output Format,OF)展示仿真结果,表明方案是否安全。后端还会确认方案的安全属性,例如抵御重放攻击、身份认证和密钥保密性等。

2.2.2本文方案在HLPSL代码中的规范

本文方案中存在两个基本角色,用户Ui和服务器SR。首先,在注册阶段,用户Ui将注册请求消息{MVi}传递至服务器SR。通过SND()和对称密钥SyKus发送该请求。在保密声明中,username为保密参数,仅为用户所知。启动器(用户Ui)角色的HLPSL规范如代码1所示。用户Ui使用RCV()和对称密钥SyKus,接收包含参数{MVi′}的智能卡。其后,用户接收来自SR的认证应答消息RCV({Auth3′.Auth4′.T2′}_SyKus)。在成功通过认证后,用户生成会话密钥:Skey′ :=h(MIDi′.R2′.R3′.T1′.T2′)。为认证生成的会话密钥,用户生成:AuthSkey′ :=h(Skey′.MVi′.MIDi′.T2′.T3′)。并将其发送至服务器。

代码1用户的角色规范

role user(Ui, SR:agent,

%Ui使用户, SR是服务器

h:hash_func,

SyKus:symmetric_key,

SND,RCV:channel(dy))

played_by Ui

def=

Local State:nat,

username, PWi, M, MVi, U, V, MIDi, MPWi:text,

Zi, Ai, Bi, Auth1, Auth2, Auth3, Auth4:text,

R1,R2,R3,T1,T2,T3,P,Q,Skey,AuthSkey:text

Mu:hash_func

const alice_bob_r2, alice_bob_t1, alice_bob_t3,

alice_bob_t2,bob_alice_r3

subs1, subs2, subs3: protocol_id

init State :=0

transition

1. State=0∧RCV(start)=|>

State′:=1∧R1′:=new()

∧MIDi′:=h(R1′.username)

∧SND({MIDi′}_SyKus)

∧secret({username},sub1,Ui)

%从服务器安全接收智能卡SC

2. State=1∧RCV({MVi′.Mu(P′.Q′).U′}_SyKus)=|>

%登录和身份验证阶段

State′:=2∧secret({V′,P′,Q′},sub2,{SR})

∧MPWi′:=h(R1’,PWi)

∧PVi′:=xor(h(MID′.V),h(username.MPWi′))

∧R2′:=new()

∧T1′:=new()

∧Auth1′:=h(R2′.MVi.T1)

∧Auth2′:=xor(h(MIDi′.MVi′.T1′),R2′)

%向服务器发送登录请求消息{MIDi′, Auth1, Auth2, T1}

∧SND({MIDi′.Auth1′Auth2′.T1′}_SyKus)

∧witness(Ui,SR,alice_bob_r2,R2′)

∧witness(Ui,SR,alice_bob_t1,T1′)

%从服务器中接受身份验证信息{Auth3, Auth4,T2}

3. State=2∧RCV({Auth3′.Auth4′,T2′}_SyKus)=|>

State′:=3∧T3′:=new()

∧Skey′:=h(MIDi′.R2′.R3′.T1′.T3′)

∧SND({AuthSkey′.T3}_SyKus)

∧witness(Ui,SR,alice_bob_t3,T3′)

∧request(SR,Ui,bob_alice_t2,T2′)

∧request(SR,Ui,bob_alice_r2,R2′)

end role

服务器SR的角色的HLPSL规范如代码2所示。远程服务器通过RCV({MID′}_SyKus)接收用户发送的注册请求消息。SR向用户发放智能卡。SR接收来自用户的登录请求消息{MID′,Auth1′,Auth2′,T1′}并认证该请求。SR计算参数{Auth4′,Auth5′,T2′},并通过SND和对称密钥SyKus将该参数提交至用户。SR生成会话密钥并进行认证。

代码2服务器的角色规范

role user(Ui, SR:agent,

%Ui使用户, SR是服务器

h:hash_func,

SyKus:symmetric_key,

SND,RCV:channel(dy))

played_by SR

def=

Local State:nat,

username, PWi, M, MVi, U, V, MIDi, MPWi:text,

Zi, Ai, Bi, Auth1, Auth2, Auth3, Auth4:text,

R1,R2,R3,T1,T2,T3,P,Q,Skey,AuthSkey:text

Mu:hash_func

const alice_bob_r2, alice_bob_t1, alice_bob_t3,

alice_bob_t2,bob_alice_r3

subs1, subs2, subs3: protocol_id

init State :=0

Transition

%从用户信息中接受登记信息

1. State=0∧RCV({MID}′_SyKus)=|>

State′:=1∧P′:=new()

∧Q′:=new()

∧U′:=new()

∧V′:=inv(U′)

∧MVi′:=h(h(R1′.username).V′)

∧SND({MIDi′}_SyKus)

%接收智能卡给用户

∧secret({username},sub3,Ui)

∧secret({V′,P′,Q′},sub2,{SR})

%登录和身份验证阶段

2. State=1∧RCV({MIDi′.Auth′, Auth2′, T1′}_SyKus)=|>

State′:=2∧R2′:=new()

∧R3′:=new()

∧T2′:=new()

∧R2′:=xor(Auth2′,h(MID′,MVi′,T1′))

∧Auth3′:=xor(R2′,R3′)

∧Skey′:=h(MIDi′.R2′.R3′.T1′.T2′)

∧Auth4′:=h(Skey′.MVi.R3′.T1′.R2′.T2′)

∧SND({Auth3’.Auth4’.T2’}_SyKus)

%发送身份验证反馈信息给用户

∧witness(SR,Ui,bob_alice_t2,T2′)

∧witness(SR,Ui,bob_alice_r3,R3′)

3. State=2∧RCV({AuthSkey′.T3′}_SyKus)=|>

State′:=3∧AuthSkey′:=h(Skey′.MVi.MIDi′.T2′.T3′)

∧request(Ui,SR, alice_bob_t1,T1′)

∧request(Ui,SR, alice_bob_t2,R1′)

∧request(Ui,SR, alice_bob_t3,T3′)

end role

2.2.3模拟结果

模拟所得结果如图2所示,其中:CL-AtSe和OFMC是后端分析工具,分析状态数为7个;可到达状态数为7个;转换耗时为0.17 s;计算时间为0.01 s;解析时间为0.01 s;搜索时间为0.14 s;访问节点数为52个;深度为7层。结果证明本文方案可抵御所有积极和消极攻击。生成的输出包括以下部分:

SUMMARY:描述协议是否安全(SAFE,UNSAFE)或不确定(INCONCLUSIVE)。

DETAILS:描述本文方案的分析,例如方案是否被发现易于受到任何攻击、分析中采用的模型、分析未得到确定结果的原因等。

PROTOCOL:描述方案名称。

GOAL:描述分析目标。

BACKEND:描述使用了哪个后端。

STATISTICS:描述后端执行方案所耗时间。

ATTACK TRACE:描述攻击入侵方案的方式(若存在)。

图2 本文案例的模拟结果

3 性能比较

本节将比较本文方案与其他方案的计算成本,其中:TH表示执行散列运算的计算复杂度;TE表示执行指数函数的计算复杂度;TM表示执行乘法/除法函数的计算复杂度;TS表示执行对称加密/解密函数的计算复杂度。

各方案在计算复杂度上的比较如表2所示。由表2可发现,本文方案效率最高。因为本文方案足够轻量级,仅使用XOR和单向散列运算,单向散列运算的计算成本可忽略不计。其他方案采用的加密/解密运算的计算成本比散列运算高得多。各方案的安全特征比较分析如表3所示。

表2 计算复杂度比较

表3 各方案的安全性比较

文献[4]对很多攻击的抵御性有所提高,但不提供智能卡撤销操作,无法抵御隐藏服务器攻击,但包含了大量的指数运算,计算开销较大。文献[5]是一种多因子的解决方案,包含密码、生物特征和智能卡,其主要面向远程医疗解决方案,该方案无法抵御内部特权攻击,需要较多的指数运算和非对称密码运算,尤其在身份认证阶段需要较多的计算开销。文献[8]由于其固有设计,无法抵御如隐藏服务器攻击、服务器欺骗攻击、密码猜测攻击等攻击。由于该方案使用单向散列函数、XOR和Concat操作,这些运算大多属于轻量级,因此总体开销与其他方案比较,属于中等。本文方案满足众多安全要求,可抵御很多已知安全威胁。由表2和表3可知本文方案的综合性能最高。

4 结 语

在基于云计算的物联网架构,多个IoT网络连接至云服务器,由此支持远程用户访问IoT网络生成的数据。在此基础上,本文提出多因子智能卡的轻量级远程用户身份认证方案。严格的安全分析表明,本文方案能够抵御多种网络攻击。在AVISPA中进行了模拟,证明了本文方案的安全性。性能评价结果表明,本文方案的安全性优于其他相关方案。

猜你喜欢
智能卡攻击者密钥
机动能力受限的目标-攻击-防御定性微分对策
幻中邂逅之金色密钥
密码系统中密钥的状态与保护*
东方磁卡李晓东:进击的智能卡研发巨子
TPM 2.0密钥迁移协议研究
正面迎接批判
一种对称密钥的密钥管理方法及系统
基于STC89 单片机的非接触智能卡读写机设计
临沂机顶盒智能卡升级方案介绍
有限次重复博弈下的网络攻击行为研究