一种网络身份认证方法及系统的制作方法

文档序号:7816486阅读:169来源:国知局
一种网络身份认证方法及系统的制作方法
【专利摘要】本发明公开一种网络身份认证方法及系统,包括步骤:客户端处理第一时间和第一信息并加密生成第二信息,将第二信息和用户标识发送给服务器端;服务器端接收到用户标识和第二信息,通过解密第二信息得到第一时间,并进行初步认证;初步认证完成后,服务器端对第二时间加密得到第三信息;服务器端判断第一时间与第二时间的时间差是否小于预设值,如果是,则服务器端对客户端认证成功,向客户端发送第三信息;客户端解密服务器端发送的第三信息得到第二时间;客户端计算第一时间与第二时间的时间差,如果时间差小于预设值,则客户端对服务器端认证成功;本发明实现了初步认证和客户端服务器端双向身份认证,避免了密钥安全保存的问题。
【专利说明】一种网络身份认证方法及系统

【技术领域】
[0001] 本发明涉及网络安全领域,尤其涉及网络身份认证的方法及系统。

【背景技术】
[0002] 随着互联网的不断发展,越来越多的人们开始尝试在线交易。然而病毒、黑客、网 络钓鱼以及网页仿冒诈骗等恶意威胁,给在线交易的安全性带来了极大的挑战。层出不穷 的网络犯罪,引起了人们对网络身份的信任危机,如何在网络交易中认证真实身份,防止身 份冒用等问题又一次成为人们关注的焦点。
[0003] 目前,网络身份认证技术主要是采用公开密钥加密法。公开密钥加密法是指在计 算机网络上甲、乙两用户之间进行通信时,发送方甲为了保护要传输的明文信息不被第三 方窃取,采用密钥A对信息进行加密而形成密文Μ并发送给接收方乙,接收方乙用另一把 密钥Β对收到的密文Μ进行解密,得到明文信息完密文通信目的的方法。由于密钥Α、密钥 Β这两把密钥中其中一把为用户私有,另一把对网络上的大众用户是公开的,所以这种信 息加密传输方式,就称为公开密钥加密法。
[0004] 对于公开密钥算法,其密钥和算法是分开的,因此存在密钥存储的安全问题。


【发明内容】

[0005] 本发明的目的,就是提出一种能够实现网络身份认证的方法及系统。
[0006] 本发明的技术方案包括如下步骤:
[0007] S1客户端处理第一时间和第一信息并加密生成第二信息,并将第二信息和用户标 识发送给服务器端;
[0008] S2服务器端接收到所述用户标识和所述第二信息,通过解密并处理所述第二信息 得到所述第一时间,并进行初步认证;
[0009] S3初步认证完成后,服务器端对第二时间加密得到第三信息;
[0010] S4服务器端判断所述第一时间与所述第二时间的时间差是否小于预设值,如果 是,则服务器端对客户端认证成功,向客户端发送第三信息,否则认证失败;
[0011] S5客户端解密服务器端发送的第三信息得到第二时间;
[0012] S6客户端计算所述第一时间与所述第二时间的时间差,如果时间差小于预设值, 则客户端对服务器端认证成功,否则认证失败。
[0013] 进一步优选地,所述第一时间为所述客户端发送所述第二信息的时间;所述第二 时间为所述服务器端接收到所述第二信息的时间。
[0014] 进一步优选地,所述第一信息是由客户端采用第一算法(例如哈希算法,SM3算法 等)对用户标识和密码口令进行计算得到的。
[0015] 进一步优选地,服务器端存储加密算法、解密算法、第一密钥、第二密钥、所述用户 标识以及所述第一信息;客户端存储有加密函数和解密函数。
[0016] 进一步优选地,所述步骤S2中的初步认证过程为:服务器端还接收到客户端发送 的用户标识,并判断接收到的所述用户标识是否存在于所述用户标识档案内,如果是,则完 成用户身份的初步认证,继续执行步骤S3,否则初步认证失败,结束认证。
[0017] 进一步优选地,所述加密函数是由所述服务器端产生所述第一密钥并将其与所述 加密算法结合生成的;所述解密函数是由所述服务器端产生所述第二密钥并将其与所述解 密算法结合生成的。
[0018] 本发明还提供了一种应用所述网络身份认证方法的系统,包括:
[0019] 客户端,处理第一时间和第一信息并加密生成第二信息并发送给服务器端,以及, 判断所述第一时间与所述第二时间的时间差是否小于预设值;
[0020] 服务器端,解密并处理所述客户端发送的所述第二信息,同时对第二时间加密生 成第三信息,以及,判断所述第一时间与所述第二时间的时间差是否小于预设值。
[0021] 进一步优选地,所述第一信息是由所述客户端采用第一算法对用户标识和密码口 令进行计算得到。
[0022] 进一步优选地,所述服务器端存储加密算法、解密算法、第一密钥、第二密钥、用户 标识档案以及所述第一信息;所述客户端存储有加密函数和解密函数。
[0023] 本发明提供的网络身份认证方法及系统能够带来以下至少一种有益效果:
[0024] 1、本发明中采用的加解密算法和密钥融合在一起,不分算法和密钥,避开了密钥 存储的安全问题。
[0025] 2、客户端的加解密函数是由服务器端结合随机产生的密钥和加解密算法得来的, 所以每个客户端的算法不一样,一个客户的安全插件泄露不影响系统的整体安全性。
[0026] 3、客户端与服务器端采取双向认证,能够有效防止假冒攻击。

【专利附图】

【附图说明】
[0027] 下面结合附图和【具体实施方式】对本发明作进一步详细说明:
[0028] 图1为本发明中网络身份认证方法实施例的流程示意图;
[0029] 图2为本发明中网络身份认证系统实施例的流程示意图。

【具体实施方式】
[0030] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的一些实施例,对于本领域普通技术人员来说,在不付出创造性劳动的前提下,还可以 根据这些附图获得其他的附图。
[0031] 作为本发明的一个具体实施例,图1为本发明提供的网络身份认证方法的实施例 流程示意图。本发明提供了一种网络身份认证的方法,包括如下步骤:
[0032] S1客户端处理第一时间和第一信息并加密生成第二信息,并将第二信息和用户标 识发送给服务器端;
[0033] S2服务器端接收到所述用户标识和所述第二信息,通过解密和处理所述第二信息 得到所述第一时间,并进行初步认证;
[0034] S3初步认证完成后,服务器端对第二时间加密得到第三信息;
[0035] S4服务器端判断所述第一时间与所述第二时间的时间差是否小于预设值,如果 是,则服务器端对客户端认证成功,向客户端发送第三信息,否则认证失败;
[0036] S5客户端解密服务器端发送的第三信息得到第二时间;
[0037] S6客户端计算所述第一时间与所述第二时间的时间差,如果时间差小于预设值, 则客户端对服务器端认证成功,否则认证失败。
[0038] 对实施例一进行改进,得到优选的实施例二,其中,第一时间(记为Tui)为客户端 选取的当前时间,对当前时间加密。客户端对加密后的时间与第一信息(记为MJ进行处 理后再加密生成第二信息(记为M 2)。第二时间(记为Tsi)为服务器端接收到客户端发送 的第二信息M2之后选取的当前时间。
[0039] 对上述实施例进行改进,得到优选的实施例三,其中,第一信息A是客户端采用第 一算法对用户标识(记为uid)和密码口令(记为pw)进行计算得到的,本发明中采用的第 一算法为哈希算法,计算用户标识uid和密码口令pw,得到第一信息札为安全单向的散列 函数,?ν^ = H(pw)。本发明中每个用户具有唯一的用户标识uid和一个对应的密码口令pw。
[0040] 对上述实施例进行改进,得到优选的实施例四,其中,服务器端存储加密算法(记 为E)、解密算法(记为D)、第一密钥(记为K)、第二密钥(记为K')、用户标识档案(记为 List,为服务器端存放的用户标识uid的列表)以及第一信息札。第一密钥K结合解密算 法D用来解密客户端发送的加密后的第一时间T ui,第二密钥Γ结合加密算法E用来加密 服务器端选取的第二时间Tsi。服务器端存储的用户标识档案List是一个存储有所有合法 客户端用户标识uid的列表,通过将用户标识uid与用户标识档案List进行匹配可完成身 份的初步认证。客户端存储有加密函数(记为Ε κ),用以对当前选取的第一时间Tui和第一 信息A进行加密,还存储有解密函数(记为D K,),用来解密服务器端发送的第三信息(记为 M3)。
[0041] 对上述实施例进行改进,得到优选的实施例五,其中,客户端存储的加密函数Eκ是 由服务器端将其产生的第一密钥K与其存储的加密算法E结合生成的。客户端存储的解密 函数D K,是由服务器端将其产生的第二密钥Γ与其存储的解密算法D结合生成的。每个客 户端存储的加解密函数都不相同,都是由服务器端结合随机密钥和加密算法生成的,因此 其中一个客户端的安全性遭到破坏后并不影响系统的整体安全性。
[0042] 对上述实施例进行改进,得到优选的实施例六,其中,步骤S2中,服务器端接收客 户端发送的用户标识uid,判断服务器端存储的用户标识档案List中是否存在用户标识 uid。如果有,则判断此用户为合法用户,认证成功,继续执行步骤S3,否则初步认证失败,结 束认证。通过增加初步身份认证,提高了网络身份认证的安全性。
[0043] 本发明提供的一种网络身份认证方法的认证过程具体如下:
[0044] 步骤S1中,用户输入用户标识uid和密码口令pw。客户端采用第一算法即哈希算 法对用户输入的用户标识Uid和口令密码pw进行计算,得到一安全单向的散列函数H(pw), 记为第一信息札。
[0045] 然后,客户端选取当前时间即第一时间Tui,通过存储的加密函数Ek对第一时间T ui 加密,即Ek(Tui)。客户端对加密后的第一时间Tui和第一信息MjMiiKpw))进行异或运算 处理,得到E k(Tui) ?H(pw)。客户端再通过存储的加密函数Ek对异或结果进行加密得到第 二信息M2, MfEj、(Ε?、(Τι;)十Η (pw)),其中Tui为第一时间,pw为密码口令,。
[0046] 接着,客户端将用户输入的用户标识uid和生成的第二信息M2发送给服务器端。
[0047] 步骤S2中,服务器端首先接收到客户端发送的用户标识uid和第二信息M2。
[0048] 然后,服务器端使用解密算法D和第一密钥K对接收到的第二信息M2进行 解密。D k (Bk (Ek (Tui) Θ H (pw)))得到 Ek (Tui) θ H (pw),此为加密后的第一时间 Tui 和第一信息A异或后的结果。服务器端再将此结果与H(pw)进行异或运算处理, Ek (T.J ΘΗ (pw) ΘΗ (pw),得到Ek(Tui)。然后,服务器端再通过解密算法D和第一密钥K解 密 Ek(Tui),即 Dk(Ek(Tui)),得到第一时间 Tui。
[0049] 接着,服务器端进行用户身份初步认证。其初步认证过程如下:服务器端对接收到 的用户标识uid与存储的用户标识档案List进行匹配。判断用户标注uid是否存在其存 储的用户标识档案内,如果uid e List,则说明此用户为合法用户,初步认证成功,否则认 证结束。
[0050] 步骤S3中,服务器端完成用户身份的初步认证后,选取当前的时间即第二时间 Tsi,通过加密算法E和第二密钥k'加密第二时间Tsi生成第三信息M3, M3 = Ek'(Tsi)。
[0051] 步骤S4中,服务器端计算解密得到的第一时间Tui与其选取的第二时间T si的时 间差。如果Tsi-Tui〈10min(系统设定一个预设值,视网络延时而定,本发明中选取预设值为 lOmin,仅作为本发明的一个优选的预设值),则"服务器端对客户端认证成功",服务器端将 加密生成的第三信息M3发送给客户端。否则认证失败,结束认证过程。
[0052] 步骤S5中,客户端接收到服务器端发送的第三信息M3,通过使用存储的解密函数 Dk,解密第三信息M3, Dk, (M3) = Dk'(Ek, (Tsi)),得到第二时间Tsi。
[0053] 步骤S6中,客户端计算解密得到的第二时间Tsi与其选取的第一时间Tui的时间 差,如果T si-Tui〈10min(系统设定一个预设值,视网络延时而定,本发明中选取10分钟作为 一个优选的预设值),则"客户端对服务器端认证成功",否则认证失败,结束认证过程。
[0054] 到此,本发明完成了客户端和服务器端的双向身份认证。
[0055] 如图2所示为本发明提供的网络身份认证系统的实施例流程示意图。作为本发明 的一个具体实施例七,本发明还提供了一种使用网络身份认证方法的系统,包括客户端,处 理第一时间和第一信息并加密生成第二信息并发送给服务器端,以及,判断所述第一时间 与所述第二时间的时间差是否小于预设值;
[0056] 还包括服务器端,解密并处理所述客户端发送的所述第二信息,同时对第二时间 加密生成第三信息,以及,判断所述第一时间与所述第二时间的时间差是否小于预设值。 [0057] 具体的,客户端先对第一时间和第一信息进行异或运算处理,再通过加密算法对 异或结果进行加密生成第二信息。客户端将第二信息发送给服务器端。
[0058] 服务器端接收到第二信息时对第二信息解密,得到加密后的第一时间和第一信息 异或运算的结果。服务器端对此结果再进行异或运算处理,得到客户端加密后的第一时间。 服务器端再对加密的第一时间进行解密,得到第一时间。与此同时,服务器端对第二时间进 行加密生成第三信息。服务器端判断所述第一时间与第二时间的时间差,如果小于预设值, 则服务器对客户端认证成功。服务器端将第三信息发送给客户端。客户端接收到服务器端 发送的第三信息,通过解密第三信息得到第二时间。客户端判断第一时间与第二时间的时 间差,如果小于预设值,则客户端对服务器端认证成功,完成认证。
[0059] 对实施例七进行改进,得到优选的实施例八,其中第一信息由所述客户端采用第 一算法对所述用户标识和密码口令进行计算得到。本发明中,客户端采用的第一算法是哈 希算法,对用户标识和密码口令进行计算生成安全单向的散列函数,哈希函数,具有更高的 安全性。客户端对第一时间和第一信息进行异或运算处理。加密异或运算的结果生成第二 信息并发送给服务器端。服务器端同时发送用户标识给服务器端,用于服务器端初步认证。
[0060] 对实施例七进行改进,得到优选的实施例九,客户端存储有加密函数和解密函数, 服务器端存储有加密算法、解密算法、第一密钥、第二密钥、用户标识档案以及第一信息。其 中,加密函数是由服务器端产生随机第一密钥结合加密算法生成的,解密函数是由服务器 端产生随机的第二密钥结合解密算法生成的。用户标识档案是一个存储所有合法客户端用 户标识的列表,用于用户的初步认证。
[0061] 具体的,服务器端初步认证过程如下:客户端在发送第二信息时同时将用户标识 发送至向服务器端。服务器端存储有用户标识档案以及第一信息。服务器端接收到用户标 识,将其与存储的用户标识档案进行匹配,如果用户标识存在其存储的用户标识档案内,则 初步认证成功,否则认证失败,结束认证。
[0062] 本发明提供的网络身份认证系统在进行网络身份认证时采用"服务器端对客户 端"和"客户端对服务器端"的双向认证方式。
[0063] 具体的,服务器端对客户端的认证过程为:服务器端判断第一时间与第二时间的 时间差是否小于预设值,此预设值是由系统设置,根据网络情况而定。如果两个时间差值小 于预设值,则服务器端对客户端认证成功,否则认证失败,结束认证。
[0064] 具体的,客户端对服务器端的认证过程为:客户端判断第一时间与第二时间的时 间差是否小于预设值,此预设值是由系统设置,根据网络情况而定。如果两个时间差值小于 预设值,则客户端对服务器端认证成功,否则认证失败,结束认证。
[0065] 本发明提供的一种网络身份认证方法及系统实现了初步认证和客户端服务器端 双向身份认证,其算法和密钥种子融合,避免了密钥安全保存的问题。同时,由于每个客户 端的加解密函数不同,一个客户端的安全不会影响到系统的整体安全。因此,本发明具有更 优的发展前景。
[0066] 以上对本发明的具体实施例进行了详细描述,但本发明并不限制于以上描述的具 体实施例,其只是作为范例。对于本领域技术人员而言,任何对本发明进行的等同修改和替 代也都在本发明的范畴之中。因此,在不脱离发明的精神和范围下所做出的均等变换和修 改,都应涵盖在本发明的范围内。
【权利要求】
1. 一种网络身份认证方法,其特征在于,包括步骤: S1客户端处理第一时间和第一信息并加密生成第二信息,并将所述第二信息和用户标 识发送给服务器端; S2所述服务器端接收到所述用户标识和所述第二信息,通过解密并处理所述第二信息 得到所述第一时间,并进行初步认证; S3所述初步认证完成后,所述服务器端对第二时间加密得到第三信息; S4所述服务器端判断所述第一时间与所述第二时间的时间差是否小于预设值,如果 是,则所述服务器端对所述客户端认证成功,并向所述客户端发送所述第三信息,否则认证 失败; S5所述客户端解密所述服务器端发送的所述第三信息得到所述第二时间; S6所述客户端计算所述第一时间与所述第二时间的时间差,如果时间差小于预设值, 则所述客户端对所述服务器端认证成功,否则认证失败。
2. 根据权利要求1所述的网络身份认证方法,其特征在于: 所述第一时间为所述客户端发送所述第二信息的时间; 所述第二时间为所述服务器端完成初步认证的时间。
3. 根据权利要求1所述的网络身份认证方法,其特征在于: 所述第一信息由所述客户端采用第一算法对所述用户标识和密码口令进行计算得到。
4. 根据权利要求1所述的网络身份认证方法,其特征在于: 所述服务器端存储加密算法、解密算法、第一密钥、第二密钥、用户标识档案以及所述 第一信息;所述客户端存储有加密函数和解密函数。
5. 根据权利要求1至4中任意一项所述的网络身份认证方法,其特征在于: 所述步骤S2中的所述初步认证过程为:所述服务器端接收到所述客户端发送的所述 用户标识,并判断接收到的所述用户标识是否存在于所述用户标识档案内,如果是,则完成 用户身份的初步认证,继续执行步骤S3,否则初步认证失败,结束认证。
6. 根据权利要求1至4中任意一项所述的网络身份认证方法,其特征在于: 所述加密函数是由所述服务器端产生所述第一密钥并将其与所述加密算法结合生成 的;所述解密函数是由所述服务器端产生所述第二密钥并将其与所述解密算法结合生成 的。
7. -种网络身份认证系统,其特征在于,包括: 客户端,处理第一时间和第一信息并加密生成第二信息发送给服务器端,以及,判断所 述第一时间与第二时间的时间差是否小于预设值; 服务器端,解密并处理所述客户端发送的所述第二信息,同时对所述第二时间加密生 成第三信息,以及,判断所述第一时间与所述第二时间的时间差是否小于预设值。
8. 根据权利要求7所述的一种网络身份认证系统,其特征在于: 所述第一信息由所述客户端采用第一算法对所述用户标识和密码口令进行计算得到。
9. 根据权利要求7所述的一种网络身份认证系统,其特征在于: 所述服务器端存储加密算法、解密算法、第一密钥、第二密钥、用户标识档案以及所述 第一信息;所述客户端存储有加密函数和解密函数。
【文档编号】H04L9/32GK104243493SQ201410532212
【公开日】2014年12月24日 申请日期:2014年10月11日 优先权日:2014年10月11日
【发明者】谈剑锋, 郑建华 申请人:上海众人科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1