一种认证方法,服务器,终端以及网关技术

技术编号:17267799 阅读:92 留言:0更新日期:2018-02-14 16:21
本申请实施例公开了一种认证方法,服务器,终端以及网关,用于减少服务器与网关之间在认证阶段的信息交互,进而减轻服务器的负担。本申请实施例提供的方法包括:服务器获取与网关共享的第一密钥Ksm;服务器接收终端发送的加密后的第一随机因子Rand‑M‑Encry,第一数据摘要Data‑Hash和加密后的第一数据Data‑Encry;服务器使用存储的Ksm对Rand‑M‑Encry解密得到第二随机因子Rand‑M’;服务器使用第二预设算法对Rand‑M’和Kpsa‑xi进行运算生成第三密钥K’sx;服务器利用K’sx对Data‑Encry解密得到第二数据Data’;服务器将K’sx和Data’根据第一预设算法运算得到第二数据摘要Data‑Hash’;若Data‑Hash’与Data‑Hash相同,服务器确定终端认证通过。

A authentication method, server, terminal, and gateway

【技术实现步骤摘要】
一种认证方法,服务器,终端以及网关
本专利技术涉及通信领域,尤其涉及一种认证方法,服务器,终端以及网关。
技术介绍
在物联网(英文全称:InternetofThing,简称:IoT)系统中,存在终端通过网关与服务器进行通信的场景,为了确定安装在终端上的应用的合法性,及保障后续终端上应用同服务器之间通信的安全性,服务器需要对安装在终端设备上的应用进行认证。在IoT系统中,很多网关会将具有相同地域、属性或业务等特征的终端划分到一个群组中。所以业界提出了群组认证的方案。其认证过程包括:群组中的终端分别同网关进行一一认证,网关代表群组内的终端同服务器进行一次统一的认证;然后服务器通过网关下发随机数给群组内终端,用于生成应用同服务器之间的密钥(英文全称:IoTSecureConnectionKey,简称:Ks),Ks用于保证终端同平台服务器之间通信的安全。本方案中,服务器在与终端进行认证时,需要通过网关向终端发送随机数,而群组里存在多个终端,进而导致服务器与网关之间需要进行大量的信息交互,增加了服务器的负担。
技术实现思路
本申请实施例提供了一种认证方法,服务器,终端以及网关,用于减少服务器与网关之间在认证阶段的信息交互,进而减轻服务器的负担。第一方面,本申请实施例提供一种认证方法,包括:服务器获取与网关共享的第一密钥Ksm;在该服务器接收终端发送的加密后的第一随机因子Rand-M-Encry,第一数据摘要Data-Hash和加密后的第一数据Data-Encry的情况下,该服务器使用存储的该Ksm对该Rand-M-Encry解密得到第二随机因子Rand-M’;该服务器使用该第二预设算法对该Rand-M’和该Kpsa-xi进行运算生成第三密钥K’sx;该服务器利用该K’sx对该Data-Encry解密得到第二数据Data’;该服务器将该K’sx和该Data’根据该第一预设算法运算得到第二数据摘要Data-Hash’;若该Data-Hash’与该Data-Hash相同,该服务器确定该终端认证通过。其中,该Rand-M-Encry由该网关利用该Ksm对第一随机因子Rand-M加密生成,该Data-Hash为该终端将第二密钥Ksx和第一数据Data根据第一预设算法运算得到,该Data-Encry为该终端使用该Ksx对该Data加密得到,该Ksx为该终端使用该第二预设算法对该Rand-M和该终端与该服务器的共享密钥Kpsa-xi进行运算生成的,该Kpsa-xi和该第一预设算法和该第二预设算法由该终端与该服务器之间预先配置,该Rand-M由该网关生成并发送给该终端。本申请实施例中,在与终端的认证过程中,该服务器根据该终端发送的该Rand-M-Encry,该Data-Encry和该Data-Hash完成认证,不再通过该网关向该终端发送随机数进而完成认证,导致该服务器与该网关之间的信息交互大大减少,进而减轻了服务器的负担。一种可能的设计中,在该服务器获取与该网关共享的第一密钥时,该服务器可以采用如下方式:一种可能实现方式为:该服务器获取第三随机因子Rand-author,该Rand-author为该服务器与该网关共享;该服务器将该Rand-author和第二共享密钥Kpsa-mi根据第三预设算法生成第一密钥Ksm,该Kpsa-mi由该服务器与该网关之间预先配置,该第三预设算法由该服务器与该网关之间预先配置或由该服务器与该网关之间协商确定。另一种可能实现方式为:该服务器与该网关预先配置好该第一密钥Ksm。本申请实施例中,该服务器与该网关在一次认证之后,可以在一定时间段内不再进行第二次认证,但为了实际应用中的安全性,也可以在预设时间段过后再次进行双向认证,具体实施方式,此处不做限定。本申请实施例中,减少服务器与网关的认证次数,同时也减少了服务器与网关之间的信息交互次数,有利于减轻服务器的负担。一种可能的设计中,该服务器在获取该第三随机因子Rand-author时,可以采用如下方式:该服务器生成该Rand-author;或,该服务器接收该网关发送的该Rand-author。本申请实施例中,该服务器采用多种方式实现该认证过程,有利于减轻该服务器的负担。一种可能的设计中,该第一预设算法为哈希运算。该第二预设算法为基于哈希运算的消息认证码算法HMAC-SHA-256。该第三预设算法为基于哈希运算的消息认证码算法HMAC-SHA-256。实际应用中,该第一预设算法还可以是信息-摘要算法5(英文全称:MessageDigestAlgorithm5,简称:MD5),安全哈希算法(英文全称:SecureHashAlgorithm,简称:SHA)等系列算法,该第二预设算法和该第三预设算法还可以是高级数据加密标准(英文全称:AdvancedEncryptionStandard,简称:AES),数据加密标准(英文全称:DataEncryptionStandard,简称:DES),三重数据加密标准(英文全称:TripleDataEncryptionAlgorithm,简称:3DES),国际数据加密算法(英文全称:InternationalDataEncryptionAlgorithm,简称:IDEA),三重数据加密算法(英文全称:TripleDataEncryptionAlgorithm,简称:TDEA),参数可变的分组密码算法RC5,Blowfish等算法,具体的实现方式,此处不做限定。第二方面,本申请实施例提供一种认证方法,包括:网关获取与服务器共享的第一密钥Ksm;然后该网关生成第一随机因子Rand-M;该网关利用该Ksm对该Rand-M进行加密生成加密后的第一随机因子Rand-M-Encry;在该网关与终端完成双向认证后,该网关将该Rand-M-Encry和该Rand-M发送给终端,以使得该终端根据该Rand-M生成第二密钥Ksx。本申请实施例中,该认证系统中,将生成随机数并下发的功能由服务器转移至网关,则有效的减少了该服务器在与终端进行认证的过程中,该服务器与该网关之间的交互。一种可能的设计中,在该网关获取与该服务器共享的第一密钥时,该网关可以采用如下方式:一种可能实现方式中,该网关获取第三随机因子Rand-author,该Rand-author为该服务器与该网关共享;该网关将该Rand-author和第二共享密钥Kpsa-mi根据第三预设算法生成第一密钥Ksm,该Kpsa-mi由该服务器与该网关之间预先配置,该第三预设算法由该服务器与该网关之间预先配置或由该服务器与该网关之间协商确定。另一种可能实现方式中,该网关与该服务器预先配置好该第一密钥Ksm。本申请实施例中,该网关与该服务器在一次认证之后,可以在一定时间段内不再进行第二次认证,但为了实际应用中的安全性,也可以在预设时间段过后再次进行双向认证,具体实施方式,此处不做限定。本申请实施例中,减少服务器与网关的认证次数,同时也减少了服务器与网关之间的信息交互次数,有利于减轻服务器的负担。一种可能的设计中,该网关在获取该第三随机因子Rand-author时,可以采用如下方式:该网关生成该Rand-author;或,该网关接收该服务器发送的该Rand-author。本申请实施例中,该网关采用本文档来自技高网...
一种认证方法,服务器,终端以及网关

【技术保护点】
一种认证方法,其特征在于,包括:服务器获取与网关共享的第一密钥Ksm;所述服务器接收终端发送的加密后的第一随机因子Rand‑M‑Encry,第一数据摘要Data‑Hash和加密后的第一数据Data‑Encry;所述Rand‑M‑Encry由所述利用所述Ksm对第一随机因子Rand‑M加密生成,所述Data‑Hash为所述将第二密钥Ksx和第一数据Data根据第一预设算法运算得到,所述Data‑Encry为使用所述Ksx对所述Data加密得到,所述Ksx为使用所述第二预设算法对所述Rand‑M和所述终端与所述服务器的共享密钥Kpsa‑xi进行运算生成的,所述Kpsa‑xi和所述第一预设算法和所述第二预设算法由所述终端与所述服务器之间预先配置,所述Rand‑M由所述网关生成并发送给所述终端;所述服务器使用存储的所述Ksm对所述Rand‑M‑Encry解密得到第二随机因子Rand‑M’;所述服务器使用所述第二预设算法对所述Rand‑M’和所述Kpsa‑xi进行运算生成第三密钥K’sx;所述服务器利用所述K’sx对所述Data‑Encry解密得到第二数据Data’;所述服务器将所述K’sx和所述Data’根据所述第一预设算法运算得到第二数据摘要Data‑Hash’;若所述Data‑Hash’与所述Data‑Hash相同,所述服务器确定所述终端认证通过。...

【技术特征摘要】
1.一种认证方法,其特征在于,包括:服务器获取与网关共享的第一密钥Ksm;所述服务器接收终端发送的加密后的第一随机因子Rand-M-Encry,第一数据摘要Data-Hash和加密后的第一数据Data-Encry;所述Rand-M-Encry由所述利用所述Ksm对第一随机因子Rand-M加密生成,所述Data-Hash为所述将第二密钥Ksx和第一数据Data根据第一预设算法运算得到,所述Data-Encry为使用所述Ksx对所述Data加密得到,所述Ksx为使用所述第二预设算法对所述Rand-M和所述终端与所述服务器的共享密钥Kpsa-xi进行运算生成的,所述Kpsa-xi和所述第一预设算法和所述第二预设算法由所述终端与所述服务器之间预先配置,所述Rand-M由所述网关生成并发送给所述终端;所述服务器使用存储的所述Ksm对所述Rand-M-Encry解密得到第二随机因子Rand-M’;所述服务器使用所述第二预设算法对所述Rand-M’和所述Kpsa-xi进行运算生成第三密钥K’sx;所述服务器利用所述K’sx对所述Data-Encry解密得到第二数据Data’;所述服务器将所述K’sx和所述Data’根据所述第一预设算法运算得到第二数据摘要Data-Hash’;若所述Data-Hash’与所述Data-Hash相同,所述服务器确定所述终端认证通过。2.根据权利要求1所述的方法,其特征在于,服务器获取与网关共享的第一密钥Ksm包括:所述服务器获取第三随机因子Rand-author,所述Rand-author为所述服务器与所述网关共享;所述服务器将所述Rand-author和第二共享密钥Kpsa-mi根据第三预设算法生成第一密钥Ksm,所述Kpsa-mi由所述服务器与所述网关之间预先配置,所述第三预设算法由所述服务器与所述网关之间预先配置或由所述服务器与所述网关之间协商确定。3.根据权利要求2所述的方法,其特征在于,所述服务器获取第三随机因子Rand-author包括:所述服务器生成所述Rand-author;或,所述服务器接收所述网关发送的所述Rand-author。4.一种认证方法,其特征在于,包括:网关获取与服务器共享的第一密钥Ksm;所述网关生成第一随机因子Rand-M;所述网关利用所述Ksm对所述Rand-M进行加密生成加密后的第一随机因子Rand-M-Encry;在所述网关与终端完成双向认证后,所述网关将所述Rand-M-Encry和所述Rand-M发送给终端,以使得所述终端根据所述Rand-M生成第二密钥Ksx。5.根据权利要求4所述的方法,其特征在于,网关获取与服务器共享的第一密钥Ksm包括:所述网关获取第三随机因子Rand-author,所述Rand-author为所述服务器与所述网关共享;所述网关将所述Rand-author和第二共享密钥Kpsa-mi根据第三预设算法生成第一密钥Ksm,所述Kpsa-mi由所述服务器与所述网关之间预先配置,所述第三预设算法由所述服务器与所述网关之间预先配置或由所述服务器与所述网关之间协商确定。6.根据权利要求5所述的方法,其特征在于,所述网关获取第三随机因子Rand-author包括:所述网关生成所述Rand-author;或,所述网关接收所述服务器发送的所述Rand-author。7.一种认证方法,其特征在于,包括:终端在与网关完成双向认证后,所述终端接收网关发送的加密后的随机数Rand-M-Encry和随机数Rand-M,所述Rand-M-Encry由所述网关利用第一密钥Ksm对所述Rand-M加密生成,所述Rand-M为所述网关生成;所述终端将所述Rand-M和所述终端与服务器的共享密钥Kpsa-xi根据第二预设算法生成第二密钥Ksx,所述Kpsa-xi和所述第二预设算法由所述终端与服务器之间预先配置;所述终端利用所述Ksx对Data加密得到Data-Encry,将所述Ksx和Data根据第一预设算法运算得到Data-Hash,所述第一预设算法由所述终端与所述服务器之间预先配置;所述终端将所述Rand-M-Encry,所述Data-Encry和所述Data-Hash发送给所述服务器,以使得所述服务器根据所述Rand-M-Encry,所述Data-Encry和所述Data-Hash完成认证。8.根据权利要求7所述的方法,其特征在于,所述第一预设算法为哈希运算。9.根据权利要求7所述的方法,其特征在于,所述第二预设算法为基于哈希运算的消息认证码算法HMAC-SHA-256。10.一种服务器,其特征在于,包括:处理模块,用于获取与网关共享的第一密钥Ksm;接收模块,用于接收终端发送的加密后的第一随机因子Rand-M-Encry,第一数据摘要Data-Hash和加密后的第一数据Data-Encry;所述Rand-M-Encry由所述利用所述Ksm对第一随机因子Rand-M加密生成,所述Data-Hash为所述将第二密钥Ksx和第一数据Data根据第一预设算法运算得到,所述Data-Encry为使用所述Ksx对所述Data加密得到,所述Ksx为使用所述第二预设算法对所述Rand-M和所述终端与所述服务器的共享密钥Kpsa-xi进行运算生成的,所述Kpsa-xi和所述第一预设算法和所述第二预设算法由所述终端与所述服务器之间预先配置,所述Rand-M由所述网关生成并发送给所述终端;所述处理模块,还用于使用存储的所述Ksm对所述Rand-M-Encry解密得到第二随机因子Rand-M’;使用所述第二预设算法对所述Rand-M’和所述Kpsa-xi进行运算生成第三密钥K’sx;利用所述K’sx对所述Data-Encry解密得到第二数据Data’;将所述K’sx和所述Data’根据所述第一预设算法运算得到第二数据摘要Data-Hash’;若所述Data-Hash’与所述Data-Hash相同,则确定所述终端认证通过。11.根据权利要求10所述的服务器,其特征在于,所述处理模块,还用于获取第三随机因子Ran...

【专利技术属性】
技术研发人员:肖杨刘艳
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1