CN110661784B - 一种用户的认证方法、装置和存储介质 - Google Patents

一种用户的认证方法、装置和存储介质 Download PDF

Info

Publication number
CN110661784B
CN110661784B CN201910804681.XA CN201910804681A CN110661784B CN 110661784 B CN110661784 B CN 110661784B CN 201910804681 A CN201910804681 A CN 201910804681A CN 110661784 B CN110661784 B CN 110661784B
Authority
CN
China
Prior art keywords
user
field
server
client
content
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910804681.XA
Other languages
English (en)
Other versions
CN110661784A (zh
Inventor
赵海亮
牛明
王庆杰
杨春晖
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Visionvera Information Technology Co Ltd
Original Assignee
Visionvera Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Visionvera Information Technology Co Ltd filed Critical Visionvera Information Technology Co Ltd
Priority to CN201910804681.XA priority Critical patent/CN110661784B/zh
Publication of CN110661784A publication Critical patent/CN110661784A/zh
Application granted granted Critical
Publication of CN110661784B publication Critical patent/CN110661784B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0853Network architectures or network communication protocols for network security for authentication of entities using an additional device, e.g. smartcard, SIM or a different communication terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0869Network architectures or network communication protocols for network security for authentication of entities for achieving mutual authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response

Abstract

本发明实施例提供了一种用户的认证方法、装置和存储介质,其中,所述方法包括:节点服务器对客户端的用户注册请求消息中的用户名和密码进行验证操作,将服务器公钥发送至客户端;节点服务器根据用户公钥对客户端的用户登录请求消息进行验证操作,生成并返回用户登录挑战消息至客户端,以便客户端根据服务器公钥和用户私钥对用户登录挑战消息进行验证操作,生成并返回用户登录响应消息至节点服务器;节点服务器对用户登录响应消息进行验证操作,生成并返回用户登录应答消息至客户端,以便客户端根据服务器公钥对用户登录应答消息进行验证操作,若验证通过则将客户端的用户登录至节点服务器。本发明实施例提升了用户注册及登录的安全性。

Description

一种用户的认证方法、装置和存储介质
技术领域
本发明涉及视联网技术领域,特别是涉及一种用户的认证方法、装置和一种计算机可读存储介质。
背景技术
视联网是一种基于以太网硬件的用于高速传输高清视频及专用协议的专用网络,视联网是以太网的更高级形态,是一个实时网络。
随着视联网业务的快速发展,视联网用户的数量也迅速壮大。视联网用户需要借助视联网客户端注册并登录到视联网服务器之后才可以执行视联网业务。目前,视联网用户在向视联网服务器注册时,视联网服务器仅对视联网用户的用户名和密码进行验证。而且,视联网用户在向视联网服务器登录时,视联网服务器仅对登录请求进行验证,视联网用户的注册及登录的安全性较低。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种用户的认证方法、装置和一种计算机可读存储介质。
为了解决上述问题,本发明实施例公开了一种用户的认证方法,应用于认证系统,所述认证系统包括:节点服务器和客户端,其中,所述节点服务器和所述客户端设置于视联网中,所述节点服务器与所述客户端通信连接,所述方法包括:所述节点服务器接收来自所述客户端的用户注册请求消息,所述用户注册请求消息包括:用户名、密码和用户公钥,所述客户端用于为所述用户名和所述密码生成包括所述用户公钥和用户私钥的用户非对称密钥,并存储所述用户私钥;所述节点服务器对所述用户名和所述密码进行验证操作,在验证通过的情况下存储所述用户名、所述密码和所述用户公钥,并将预先生成的服务器非对称密钥中的服务器公钥发送至所述客户端,以便所述客户端存储所述服务器公钥;所述节点服务器接收来自所述客户端的用户登录请求消息;所述节点服务器根据所述用户公钥对所述用户登录请求消息进行验证操作,生成并返回用户登录挑战消息至所述客户端,以便所述客户端根据所述服务器公钥和所述用户私钥对所述用户登录挑战消息进行验证操作,生成并返回用户登录响应消息至所述节点服务器;所述节点服务器对所述用户登录响应消息进行验证操作,生成并返回用户登录应答消息至所述客户端,以便所述客户端根据所述服务器公钥对所述用户登录应答消息进行验证操作,并在验证通过的情况下将所述客户端的用户登录至所述节点服务器。
可选地,所述客户端上安装有UKey,所述客户端用于调用所述UKey内的预置算法为所述用户名和所述密码生成所述用户非对称密钥;所述客户端还用于将所述用户私钥和所述服务器公钥存储至所述UKey中。
可选地,所述用户登录请求消息包括:安全交互流程版本字段、用户安全配置字段、用户名字段和用户随机数字段;所述节点服务器根据所述用户公钥对所述用户登录请求消息进行验证操作,生成并返回用户登录挑战消息至所述客户端的步骤,包括:所述节点服务器判断所述安全交互流程版本字段和所述用户安全配置字段是否包含对应的预设第一字段内容;所述节点服务器在所述安全交互流程版本字段和所述用户安全配置字段包含对应的所述预设第一字段内容时,根据所述用户名字段的字段内容查找所述用户公钥;所述节点服务器根据所述用户公钥生成所述用户登录挑战消息,并返回所述用户登录挑战消息至所述客户端。
可选地,所述节点服务器根据所述用户公钥生成所述用户登录挑战消息的步骤,包括:所述节点服务器生成服务器随机数和服务器对称密钥;所述节点服务器利用所述用户公钥对所述服务器对称密钥和所述用户随机数字段的字段内容的异或值进行加密操作得到服务器对称密钥密文;所述节点服务器利用所述服务器非对称密钥中的服务器私钥对所述节点服务器的服务器安全交互流程版本信息、所述节点服务器的服务器安全配置信息、所述用户名字段的字段内容、所述用户随机数字段的字段内容、所述服务器对称密钥密文、所述服务器随机数和所述节点服务器的标识信息进行签名操作得到服务器签名;所述节点服务器根据所述服务器安全交互流程版本信息、所述服务器安全配置信息、所述服务器随机数、所述用户随机数字段的字段内容、所述节点服务器的标识信息、所述服务器对称密钥密文和所述服务器签名生成所述用户登录挑战消息。
可选地,所述用户登录挑战消息包括:安全交互流程版本字段、服务器安全配置字段、服务器随机数字段、用户随机数字段、服务器标识字段、服务器对称密钥密文字段和服务器签名字段;所述客户端用于判断所述用户登录挑战消息中的所述安全交互流程版本字段和所述服务器安全配置字段是否包含对应的预设第二字段内容;所述客户端还用于在所述用户登录挑战消息中的所述安全交互流程版本字段和所述服务器安全配置字段包含对应的所述预设第二字段内容时,比较所述用户登录挑战消息中的所述用户随机数字段的字段内容是否与所述用户登录请求消息中的所述用户随机数字段的字段内容相同;所述客户端还用于在所述用户登录挑战消息中的所述用户随机数字段的字段内容与所述用户登录请求消息中的所述用户随机数字段的字段内容相同时,利用所述服务器公钥对所述服务器签名字段的字段内容进行验签操作;所述客户端还用于利用所述用户私钥对所述服务器对称密钥密文字段的字段内容进行解密操作得到用户解密结果;所述客户端还用于将所述用户解密结果与所述用户随机数字段的字段内容进行异或操作得到用户异或结果。
可选地,所述用户登录响应消息包括:安全交互流程版本字段、用户安全配置字段、服务器随机数字段、用户新随机数字段、服务器标识字段、用户名字段、用户口令密文字段和用户签名字段;其中,所述用户口令密文字段的字段内容包括所述客户端利用所述用户异或结果对用户口令和所述服务器随机数字段的字段内容的异或值进行加密操作得到的用户加密结果;所述用户签名字段的字段内容包括所述客户端利用所述用户私钥对所述用户登录响应消息的所述安全交互流程版本字段的字段内容、所述用户安全配置字段的字段内容、所述服务器随机数字段的字段内容、所述用户新随机数字段的字段内容、所述服务器标识字段的字段内容、所述用户名字段的字段内容和所述用户口令密文字段的字段内容进行签名操作得到的用户签名结果。
可选地,所述节点服务器对所述用户登录响应消息进行验证操作,生成并返回用户登录应答消息至所述客户端的步骤,包括:所述节点服务器判断所述用户登录响应消息中的所述安全交互流程版本字段和所述用户安全配置字段是否包含对应的预设第三字段内容;所述节点服务器在所述用户登录响应消息中的所述安全交互流程版本字段和所述用户安全配置字段包含对应的所述预设第三字段内容时,比较所述用户登录响应消息中的所述服务器随机数字段的字段内容和所述服务器标识字段的字段内容是否对应地与所述用户登录挑战消息中的所述服务器随机数字段的字段内容和所述服务器标识字段的字段内容相同;所述节点服务器在所述用户登录响应消息中的所述服务器随机数字段的字段内容和所述服务器标识字段的字段内容对应地与所述用户登录挑战消息中的所述服务器随机数字段的字段内容和所述服务器标识字段的字段内容相同时,根据所述用户名字段的字段内容查找到对应的用户公钥,并利用所述对应的用户公钥对所述用户签名字段的字段内容进行验签操作;所述节点服务器利用所述服务器对称密钥对所述用户口令密文字段的字段内容进行解密操作得到服务器解密结果,并将所述服务器解密结果与所述服务器随机数字段的字段内容进行异或操作得到所述用户口令;所述节点服务器将所述用户口令与所述密码进行比较,并根据比较结果生成并返回所述用户登录应答消息至所述客户端。
可选地,所述用户登录应答消息包括:安全交互流程版本字段、服务器安全配置字段、登录结果字段和服务器签名字段;所述客户端还用于判断所述用户登录应答消息中的所述安全交互流程版本字段和所述服务器安全配置字段是否包含对应的预设第四字段内容;所述客户端还用于在所述用户登录应答消息中的所述安全交互流程版本字段和所述服务器安全配置字段包含对应的所述预设第四字段内容时,利用所述服务器公钥对所述服务器签名字段的字段内容进行验签操作;所述客户端还用于在所述登录结果字段的字段内容表示登录成功时,允许所述客户端的用户登录至所述节点服务器,在所述登录结果字段的字段内容表示登录失败时,禁止所述客户端的用户登录至所述节点服务器;其中,当所述比较结果为所述用户口令与所述密码相同时,所述登录结果字段的字段内容表示登录成功;当所述比较结果为所述用户口令与所述密码不相同时,所述登录结果字段的字段内容表示登录失败。
本发明实施例还公开了一种用户的认证装置,应用于认证系统中的节点服务器,所述节点服务器与所述认证系统中的客户端通信连接,所述节点服务器和所述客户端设置于视联网中,所述装置包括:接收模块,用于接收来自所述客户端的用户注册请求消息,所述用户注册请求消息包括:用户名、密码和用户公钥,所述客户端用于为所述用户名和所述密码生成包括所述用户公钥和用户私钥的用户非对称密钥,并存储所述用户私钥;验证模块,用于对所述用户名和所述密码进行验证操作;存储模块,用于在所述验证模块对所述用户名和所述密码验证通过的情况下存储所述用户名、所述密码和所述用户公钥,并将预先生成的服务器非对称密钥中的服务器公钥发送至所述客户端,以便所述客户端存储所述服务器公钥;所述接收模块,还用于接收来自所述客户端的用户登录请求消息;所述验证模块,还用于根据所述用户公钥对所述用户登录请求消息进行验证操作,生成并返回用户登录挑战消息至所述客户端,以便所述客户端根据所述服务器公钥和所述用户私钥对所述用户登录挑战消息进行验证操作,生成并返回用户登录响应消息至所述节点服务器;所述验证模块,还用于对所述用户登录响应消息进行验证操作,生成并返回用户登录应答消息至所述客户端,以便所述客户端根据所述服务器公钥对所述用户登录应答消息进行验证操作,并在验证通过的情况下将所述客户端的用户登录至所述节点服务器。
可选地,所述客户端上安装有UKey,所述客户端用于调用所述UKey内的预置算法为所述用户名和所述密码生成所述用户非对称密钥;所述客户端还用于将所述用户私钥和所述服务器公钥存储至所述UKey中。
可选地,所述用户登录请求消息包括:安全交互流程版本字段、用户安全配置字段、用户名字段和用户随机数字段;所述验证模块,包括:判断子模块,用于判断所述安全交互流程版本字段和所述用户安全配置字段是否包含对应的预设第一字段内容;查找子模块,用于在所述安全交互流程版本字段和所述用户安全配置字段包含对应的所述预设第一字段内容时,根据所述用户名字段的字段内容查找所述用户公钥;生成子模块,用于根据所述用户公钥生成所述用户登录挑战消息,并返回所述用户登录挑战消息至所述客户端。
可选地,所述生成子模块,包括:生成单元,用于生成服务器随机数和服务器对称密钥;加密单元,用于利用所述用户公钥对所述服务器对称密钥和所述用户随机数字段的字段内容的异或值进行加密操作得到服务器对称密钥密文;签名单元,用于利用所述服务器非对称密钥中的服务器私钥对所述节点服务器的服务器安全交互流程版本信息、所述节点服务器的服务器安全配置信息、所述用户名字段的字段内容、所述用户随机数字段的字段内容、所述服务器对称密钥密文、所述服务器随机数和所述节点服务器的标识信息进行签名操作得到服务器签名;所述生成单元,还用于根据所述服务器安全交互流程版本信息、所述服务器安全配置信息、所述服务器随机数、所述用户随机数字段的字段内容、所述节点服务器的标识信息、所述服务器对称密钥密文和所述服务器签名生成所述用户登录挑战消息。
可选地,所述用户登录挑战消息包括:安全交互流程版本字段、服务器安全配置字段、服务器随机数字段、用户随机数字段、服务器标识字段、服务器对称密钥密文字段和服务器签名字段;所述客户端用于判断所述用户登录挑战消息中的所述安全交互流程版本字段和所述服务器安全配置字段是否包含对应的预设第二字段内容;所述客户端还用于在所述用户登录挑战消息中的所述安全交互流程版本字段和所述服务器安全配置字段包含对应的所述预设第二字段内容时,比较所述用户登录挑战消息中的所述用户随机数字段的字段内容是否与所述用户登录请求消息中的所述用户随机数字段的字段内容相同;所述客户端还用于在所述用户登录挑战消息中的所述用户随机数字段的字段内容与所述用户登录请求消息中的所述用户随机数字段的字段内容相同时,利用所述服务器公钥对所述服务器签名字段的字段内容进行验签操作;所述客户端还用于利用所述用户私钥对所述服务器对称密钥密文字段的字段内容进行解密操作得到用户解密结果;所述客户端还用于将所述用户解密结果与所述用户随机数字段的字段内容进行异或操作得到用户异或结果。
可选地,所述用户登录响应消息包括:安全交互流程版本字段、用户安全配置字段、服务器随机数字段、用户新随机数字段、服务器标识字段、用户名字段、用户口令密文字段和用户签名字段;其中,所述用户口令密文字段的字段内容包括所述客户端利用所述用户异或结果对用户口令和所述服务器随机数字段的字段内容的异或值进行加密操作得到的用户加密结果;所述用户签名字段的字段内容包括所述客户端利用所述用户私钥对所述用户登录响应消息的所述安全交互流程版本字段的字段内容、所述用户安全配置字段的字段内容、所述服务器随机数字段的字段内容、所述用户新随机数字段的字段内容、所述服务器标识字段的字段内容、所述用户名字段的字段内容和所述用户口令密文字段的字段内容进行签名操作得到的用户签名结果。
可选地,所述判断子模块,还用于判断所述用户登录响应消息中的所述安全交互流程版本字段和所述用户安全配置字段是否包含对应的预设第三字段内容;所述验证模块,还包括:比较子模块,用于在所述用户登录响应消息中的所述安全交互流程版本字段和所述用户安全配置字段包含对应的所述预设第三字段内容时,比较所述用户登录响应消息中的所述服务器随机数字段的字段内容和所述服务器标识字段的字段内容是否对应地与所述用户登录挑战消息中的所述服务器随机数字段的字段内容和所述服务器标识字段的字段内容相同;所述查找子模块,还用于在所述用户登录响应消息中的所述服务器随机数字段的字段内容和所述服务器标识字段的字段内容对应地与所述用户登录挑战消息中的所述服务器随机数字段的字段内容和所述服务器标识字段的字段内容相同时,根据所述用户名字段的字段内容查找到对应的用户公钥;验签子模块,用于利用所述对应的用户公钥对所述用户签名字段的字段内容进行验签操作;解密子模块,用于利用所述服务器对称密钥对所述用户口令密文字段的字段内容进行解密操作得到服务器解密结果;异或子模块,用于将所述服务器解密结果与所述服务器随机数字段的字段内容进行异或操作得到所述用户口令;所述比较子模块,还用于将所述用户口令与所述密码进行比较;所述生成子模块,还用于根据比较结果生成并返回所述用户登录应答消息至所述客户端。
可选地,所述用户登录应答消息包括:安全交互流程版本字段、服务器安全配置字段、登录结果字段和服务器签名字段;所述客户端还用于判断所述用户登录应答消息中的所述安全交互流程版本字段和所述服务器安全配置字段是否包含对应的预设第四字段内容;所述客户端还用于在所述用户登录应答消息中的所述安全交互流程版本字段和所述服务器安全配置字段包含对应的所述预设第四字段内容时,利用所述服务器公钥对所述服务器签名字段的字段内容进行验签操作;所述客户端还用于在所述登录结果字段的字段内容表示登录成功时,允许所述客户端的用户登录至所述节点服务器,在所述登录结果字段的字段内容表示登录失败时,禁止所述客户端的用户登录至所述节点服务器;其中,当所述比较结果为所述用户口令与所述密码相同时,所述登录结果字段的字段内容表示登录成功;当所述比较结果为所述用户口令与所述密码不相同时,所述登录结果字段的字段内容表示登录失败。
本发明实施例包括以下优点:
本发明实施例提供的用户的认证方案,可以应用于认证系统。该认证系统可以包括节点服务器和客户端,其中,节点服务器和客户端设置于视联网中,节点服务器可以与客户端通信连接。
在本发明实施例中,用户通过客户端向节点服务器发送用户注册请求消息,该用户注册请求消息中包括用户名、密码和用户公钥。该用户公钥为客户端为用户名和密码生成的用户非对称密钥中的公钥。客户端预先将用户非对称密钥中的用户私钥存储起来。节点服务器对用户注册请求消息中的用户名和密码进行验证操作,在验证通过的情况下存储用户名、密码和用户公钥,并将预先生成的服务器非对称密钥中的服务器公钥发送至客户端,以便客户端存储服务器公钥。用户在节点服务器注册成功之后,用户通过客户端向节点服务器发送用户登录请求消息,节点服务器根据用户公钥对用户登录请求消息进行验证操作,生成并返回用户登录挑战消息至客户端。客户端再根据服务器公钥和用户私钥对用户登录挑战消息进行验证操作,生成并返回用户登录响应消息至节点服务器。节点服务器对用户登录响应消息进行验证操作,生成并返回用户登录应答消息至客户端,以便客户端根据服务器公钥对用户登录应答消息进行验证操作,并在验证通过的情况下将客户端的用户登录至节点服务器。本发明实施例在用户的注册过程中,用户通过客户端不仅向节点服务器发送用户名和密码,还向节点服务器发送用户非对称密钥中的用户公钥,而且,节点服务器还将服务器非对称密钥中的服务器公钥发送至客户端。节点服务器在对用户名和密码验证通过的情况下,将用户名、密码和用户公钥存储在本地。在用户的登录过程中,节点服务器不仅对用户登录请求消息和用户登录响应消息进行验证,客户端还对节点服务器的用户登录挑战消息和用户登录应答消息进行验证,实现了节点服务器与客户端之间的双向验证,在所有验证都通过的情况下节点服务器允许客户端的用户登录至节点服务器,提升了用户注册及登录的安全性。
附图说明
图1是本发明的一种用户的认证方法实施例的步骤流程图;
图2是本发明的一种用户的认证方法中用户注册过程的流程示意图;
图3a是本发明的一种用户的认证方法中用户登录过程的流程示意图;
图3b是本发明的一种用户的认证方法中用户登录过程的流程示意图
图4是本发明的一种用户的认证方法的软硬件架构图;
图5是本发明的一种用户的认证装置实施例的结构框图;
图6是本发明的一种视联网的组网示意图;
图7是本发明的一种节点服务器的硬件结构示意图;
图8是本发明的一种接入交换机的硬件结构示意图;
图9是本发明的一种以太网协转网关的硬件结构示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
参照图1,示出了本发明的一种用户的认证方法实施例的步骤流程图,该用户的认证方法可以应用于认证系统中,该认证系统可以包括节点服务器和客户端,其中,节点服务器和客户端可以设置于视联网中,节点服务器可以与客户端通信连接。该用户的认证方法具体可以包括如下步骤:
步骤101,节点服务器接收来自客户端的用户注册请求消息。
在本发明的实施例中,节点服务器可以为网管服务器,网管服务器可以为视联网上的核心设备,控制业务开通、终端注册等功能,是视联网的“大脑”,而且,网管服务器还可以提供用户界面接口供视联网中的客户端调用。客户端可以理解为视联网业务的实际参与者或服务者,客户端可以为个人计算机、机顶盒、流媒体网关、存储网关、媒体合成器等。其中,机顶盒是一个连接电视机与外部信号源的设备,它可以将压缩的数字信号转成电视内容,并在电视机上显示出来。一般而言,机顶盒可以连接摄像头和麦克风,用于采集视频数据和音频数据等多媒体数据,也可以连接电视机,用于播放视频数据和音频数据等多媒体数据。
在本发明的实施例中,用户注册请求消息可以包括用户名、密码和用户公钥。其中,用户名为用户通过客户端输入的待注册的用户名,密码为用户通过客户端输入的待注册的用户名对应密码。用户公钥为客户端为用户名和密码生成的用户非对称密钥中的公钥,用户非对称密钥中还包括用户私钥。客户端在生成用户非对称密钥之后,可以将用户私钥保存下来,将用户公钥携带在用户注册请求消息中发送至节点服务器。
步骤102,节点服务器对用户名和密码进行验证操作,在验证通过的情况下存储用户名、密码和用户公钥,并将预先生成的服务器非对称密钥中的服务器公钥发送至客户端,以便客户端存储服务器公钥。
在本发明的实施例中,节点服务器可以先对用户名进行验证操作,再对密码进行验证操作。节点服务器在对用户名进行验证操作时,可以验证用户名是否符合预设的用户名规则,例如,验证用户名的字符长度、字符组成等是否符合用户名要求。节点服务器在对密码进行验证操作时,可以验证密码是否符合预设的密码规则,例如,验证密码的字符长度、字符组成等是否符合密码要求。在用户名符合用户名要求,且密码符合密码要求时,节点服务器确定对用户名和密码验证通过。进而,节点服务器可以将用户名、密码,以及,用户公钥存储在本地,或者,将用户名、密码,以及,用户公钥存储在服务器端的数据库中。需要说明的是,节点服务器在存储用户名、密码和用户公钥时,不仅需要存储用户名、密码和用户公钥,还需要存储用户名、密码和用户公钥之间的对应关系。
节点服务器在对用户名和密码验证通过的情况下,还可以将预先生成的服务器非对称密钥中的服务器公钥发送至客户端,以便客户端将服务器公钥保存起来。
在本发明的一种优选实施例中,客户端上可以安装有UKey,客户端可以调用UKey内的预置算法为用户名和密码生成用户非对称密钥,客户端将用户非对称密钥中的用户私钥,以及节点服务器预先生成的服务器对称密钥中的服务器公钥一起写入到Ukey中。
上述步骤101和步骤102可以认为是用户的注册过程。通常,对于一个用户而言,注册过程在本发明的实施例中执行一次即可,无需重复执行。
步骤103,节点服务器接收来自客户端的用户登录请求消息。
在本发明的实施例中,用户登录请求消息可以包括安全交互流程版本字段、用户安全配置字段、用户名字段和用户随机数字段等,如表1所示,示出了用户登录请求消息的一种具体实例。
Figure BDA0002183296670000111
Figure BDA0002183296670000121
表1
步骤104,节点服务器根据用户公钥对用户登录请求消息进行验证操作,生成并返回用户登录挑战消息至客户端,以便客户端根据服务器公钥和用户私钥对用户登录挑战消息进行验证操作,生成并返回用户登录响应消息至节点服务器。
在本发明的实施例中,节点服务器对用户登录请求消息进行验证操作,并生成用户登录挑战消息的过程,可以包括如下步骤。
步骤201,节点服务器判断安全交互流程版本字段和用户安全配置字段是否包含对应的预设第一字段内容,若安全交互流程版本字段和用户安全配置字段包含对应的预设第一字段内容,则执行步骤202;若安全交互流程版本字段和用户安全配置字段未包含对应的预设第一字段内容,则流程结束。
在实际应用中,节点服务器可以判断安全交互流程版本字段的字段内容和用户安全配置字段的第1字节的字段内容是否均为“0x01”,若安全交互流程版本字段的字段内容和用户安全配置字段的第1字节的字段内容均为“0x01”,则执行步骤202;若安全交互流程版本字段的字段内容和/或用户安全配置字段的第1字节的字段内容不是“0x01”,则流程结束。需要说明的是,用户安全配置字段的第1字节的字段内容为“0x01”,表示客户端的登录过程支持双向验证。
步骤202,节点服务器根据用户名字段的字段内容查找用户公钥。
节点服务器在本地或者服务器端的数据库中根据用户名字段的字段内容查找用户公钥。具体地,节点服务器可以根据已存储的用户名、密码和用户公钥之间的对应关系,查找与用户名字段的字段内容对应的用户公钥。若节点服务器查找到与用户名字段的字段内容对应的用户公钥,则表示用户名字段的字段内容为已注册的用户名;若节点服务器未查找到与用户名字段的字段内容对应的用户公钥,则表示用户名字段的字段内容为未注册的用户名。
步骤203,节点服务器根据用户公钥生成用户登录挑战消息。
在本发明的实施例中,节点服务器可以生成服务器随机数和服务器对称密钥,利用上述步骤202查找到的用户公钥对服务器对称密钥和用户随机数字段的字段内容的异或值进行加密操作得到服务器对称密钥密文。,进而再利用服务器非对称密钥中的服务器私钥对节点服务器的服务器安全交互流程版本信息、节点服务器的服务器安全配置信息、用户名字段的字段内容、用户随机数字段的字段内容、服务器对称密钥密文、服务器随机数和节点服务器的标识信息进行签名操作得到服务器签名。然后,根据服务器安全交互流程版本信息、服务器安全配置信息、服务器随机数、用户随机数字段的字段内容、节点服务器的标识信息、服务器对称密钥密文和服务器签名生成用户登录挑战消息。
在实际应用中,用户登录挑战消息可以包括:安全交互流程版本字段、服务器安全配置字段、服务器随机数字段、用户随机数字段、服务器标识字段、服务器对称密钥密文字段和服务器签名字段等,如表2所示,示出了用户登录挑战消息的一种具体实例。
Figure BDA0002183296670000131
Figure BDA0002183296670000141
表2
在本发明实施例中,节点服务器生成用户登录挑战消息之后,将用户登录挑战消息发送至客户端,客户端需要对用户登录挑战消息进行验证操作,生成并返回用户登录响应消息至节点服务器。
在实际应用中,客户端可以判断用户登录挑战消息中的安全交互流程版本字段和服务器安全配置字段是否包含对应的预设第二字段内容。具体地,客户端可以判断安全交互流程版本字段的字段内容和服务器安全配置字段的第1字节的字段内容是否均为“0x01”,若安全交互流程版本字段的字段内容和服务器安全配置字段的第1字节的字段内容均为“0x01”,则客户端执行后续步骤;若安全交互流程版本字段的字段内容和/或服务器安全配置字段的第1字节的字段内容不是“0x01”,则流程结束。
若用户登录挑战消息中的安全交互流程版本字段和服务器安全配置字段包含对应的预设第二字段内容,则客户端比较用户登录挑战消息中的用户随机数字段的字段内容是否与用户登录请求消息中的用户随机数字段的字段内容相同。
若用户登录挑战消息中的用户随机数字段的字段内容与用户登录请求消息中的用户随机数字段的字段内容相同,则客户端利用服务器公钥对服务器签名字段的字段内容进行验签操作。若用户登录挑战消息中的用户随机数字段的字段内容与用户登录请求消息中的用户随机数字段的字段内容不相同,则流程结束。
若客户端对服务器签名字段的字段内容验签通过,则可以利用用户私钥对服务器对称密钥密文字段的字段内容进行解密得到用户解密结果。进而,客户端将用户解密结果与用户随机数字段的字段内容进行异或操作得到用户异或结果。若客户端对服务器签名字段的字段内容验签未通过,则流程结束。
在本发明实施例中,用户登录响应消息可以包括:安全交互流程版本字段、用户安全配置字段、服务器随机数字段、用户新随机数字段、服务器标识字段、用户名字段、用户口令密文字段和用户签名字段等,如表3所示,示出了用户登录响应消息的一种具体实例。
Figure BDA0002183296670000151
表3
上述用户口令密文字段的字段内容可以包括客户端利用用户异或结果对用户口令和服务器随机数字段的字段内容的异或值进行加密操作得到的用户加密结果。
上述用户签名字段的字段内容可以包括客户端利用用户私钥对用户登录响应消息的安全交互流程版本字段的字段内容、用户安全配置字段的字段内容、服务器随机数字段的字段内容、用户新随机数字段的字段内容、服务器标识字段的字段内容、用户名字段的字段内容和用户口令密文字段的字段内容进行签名操作得到的用户签名结果。
若用户登录挑战消息中的安全交互流程版本字段和/或服务器安全配置字段不包含对应的预设第二字段内容,则流程结束。
步骤105,节点服务器对用户登录响应消息进行验证操作,生成并返回用户登录应答消息至客户端,以便客户端根据服务器公钥对用户登录应答消息进行验证操作,并在验证通过的情况下将客户端的用户登录至节点服务器。
在本发明的实施例中,节点服务器对用户登录响应消息进行验证操作的过程可以包括如下步骤。
步骤301,节点服务器判断用户登录响应消息中的安全交互流程版本字段和用户安全配置字段是否包含对应的预设第三字段内容,若用户登录响应消息中的安全交互流程版本字段和用户安全配置字段包含对应的预设第三字段内容,则执行步骤302;若用户登录响应消息中的安全交互流程版本字段和/或用户安全配置字段不包含对应的预设第三字段内容,则流程结束。
在实际应用中,节点服务器可以判断用户登录响应消息中的安全交互流程版本字段和用户安全配置字段的第1字节的字段内容是否均为“0x01”,若用户登录响应消息中的安全交互流程版本字段和用户安全配置字段的第1字节的字段内容均为“0x01”,则执行步骤302;若用户登录响应消息中的安全交互流程版本字段和/或用户安全配置字段的第1字节的字段内容不是“0x01”,则流程结束。
步骤302,节点服务器比较用户登录响应消息中的服务器随机数字段的字段内容和服务器标识字段的字段内容是否对应地与用户登录挑战消息中的服务器随机数字段的字段内容和服务器标识字段的字段内容相同。
若用户登录响应消息中的服务器随机数字段的字段内容与用户登录挑战消息中的服务器随机数字段的字段内容相同,而且,用户登录响应消息中的服务器标识字段的字段内容与用户登录挑战消息中的服务器标识字段的字段内容相同,则执行步骤303;若用户登录响应消息中的服务器随机数字段的字段内容与用户登录挑战消息中的服务器随机数字段的字段内容不相同,和/或,用户登录响应消息中的服务器标识字段的字段内容与用户登录挑战消息中的服务器标识字段的字段内容不相同,则流程结束。
步骤303,节点服务器根据用户名字段的字段内容查找到对应的用户公钥,并利用对应的用户公钥对用户签名字段的字段内容进行验签操作。
若节点服务器对用户签名字段的字段内容验签通过,则执行步骤304;若节点服务器对用户签名字段的字段内容验签未通过,则流程结束。
步骤304,节点服务器利用服务器对称密钥对用户口令密文字段的字段内容进行解密操作得到服务器解密结果,并将服务器解密结果与服务器随机数字段的字段内容进行异或操作得到用户口令。
步骤305,节点服务器将用户口令与密码进行比较,并根据比较结果生成并返回用户登录应答消息至客户端。
节点服务器将用户口令与用户名字段的字段内容对应的密码进行比较,得到用户口令与密码相同或不相同的比较结果。进而根据比较记过生成用户登录应答消息。
在本发明的实施例中,用户登录应答消息可以包括:安全交互流程版本字段、服务器安全配置字段、登录结果字段和服务器签名字段等,如表4所示,示出了用户登录应答消息的一种具体实例。
Figure BDA0002183296670000171
表4
客户端接收到用户登录应答消息之后,判断用户登录应答消息中的安全交互流程版本字段和服务器安全配置字段是否包含对应的预设第四字段内容。具体地,客户端可以判断安全交互流程版本字段的字段内容和服务器安全配置字段的第1字节的字段内容是否均为“0x01”,若安全交互流程版本字段的字段内容和服务器安全配置字段的第1字节的字段内容均为“0x01”,则客户端执行后续步骤;若安全交互流程版本字段的字段内容和/或服务器安全配置字段的第1字节的字段内容不是“0x01”,则流程结束。
若用户登录应答消息中的安全交互流程版本字段和服务器安全配置字段包含对应的预设第四字段内容,则客户端利用服务器公钥对服务器签名字段的字段内容进行验签操作。
若客户端对服务器签名字段的字段内容验签通过,则客户端在登录结果字段的字段内容表示登录成功时,允许客户端的用户登录至节点服务器,在登录结果字段的字段内容表示登录失败时,禁止客户端的用户登录至节点服务器。若客户端对服务器签名字段的字段内容验签未通过,则流程结束。其中,当比较结果为用户口令与密码相同时,登录结果字段的字段内容表示登录成功;当比较结果为用户口令与密码不相同时,登录结果字段的字段内容表示登录失败。
上述步骤103至步骤105可以认为是用户的登录过程。
参照图2,示出了一种用户的认证方法中用户注册过程的流程示意图。客户端上安装有UKey,用户通过客户端输入待注册的用户名和密码。客户端调用UKey生成与待注册的用户名和密码对应的一对用户非对称密钥,将用户非对称密钥中的用户私钥写入UKey,将用户非对称密钥中的用户公钥、待注册的用户名和密码发送至节点服务器。节点服务器对用户名的合法性、密码的合法性进行验证,如果用户名和密码均通过合法性验证,则将用户名、密码和用户公钥一起存储在节点服务器本地或者数据库中。而且,节点服务器也创建一对服务器非对称密钥,将服务器非对称密钥中的服务器私钥保存下来,将服务器非对称密钥中的服务器公钥发送至客户端,客户端将服务器公钥也写入到UKey中。写入有用户私钥的UKey与用户名具有绑定关系,可以理解为,该UKey只有在登录该用户名时才有效,其他用户名无法在安装该UKey的客户端上登录节点服务器。
参照图3a,示出了一种用户的认证方法中用户登录过程的流程示意图。用户通过客户端向节点服务器发送用户登录请求消息。节点服务器对用户登录请求消息进行验证,并向客户端返回用户登录挑战消息。客户端对用户登录挑战消息进行验证,并向节点服务器发送用户登录响应消息。节点服务器对用户登录响应消息进行验证,并向客户端返回用户登录应答消息。客户端对用户登录应答消息进行验证,若验证通过,则允许客户端上的用户登录至节点服务器;若验证未通过,则禁止客户端上的用户登录至节点服务器。
参照图3b,示出了一种用户的认证方法中用户登录过程的流程示意图。用户通过客户端向节点服务器发送登录请求消息,该登录请求消息中包括随机数RB、用户名IDB和其他信息info,其他信息info可以包括安全交互流程版本信息和安全配置信息等。节点服务器接收到登录请求消息后,对登陆请求进行验证,并生成随机数RA、对称密钥S1、加密信息E(PKB,S1)、签名信息sign(RA+RB+E(PKB,S1)+IDA+IDB)和info,向客户端发送登录挑战消息。登录挑战消息包括RA、RB、加密信息E(PKB,S1)、IDA、IDB、签名信息sign(RA+RB+E(PKB,S1)+IDA+IDB)和info。其中,PKB为用户非对称密钥中的用户公钥,IDA为节点服务器的标识信息、IDB为客户端发送的待登录的用户名。客户端接收到登录挑战消息之后,对登录挑战消息中的RB和IDB进行验证,对签名信息sign(RA+RB+E(PKB,S1)+IDA+IDB)进行验签,对加密信息E(PKB,S1)进行解密得到对称密钥S1,进而生成登录响应消息。该登录响应消息包括RA、RB、加密信息E(S1,用户口令)、IDA、签名信息sign(RB+RA+IDA)和info。节点服务器接收到登录响应消息之后,对登录响应消息中的RA和IDA进行验证,对签名信息sign(RB+RA+IDA)进行验签,对加密信息E(S1,用户口令)进行解密得到用户口令,将用户口令与已存储的密码进行比较,生成登录应答消息。该登录答应消息包括登录结果J和签名信息sign(J)。客户端接收到登录应答消息之后,对签名信息sing(J)进行验签,若登录结果J表示登录成功,则允许用户登录至节点服务器;若登录结果J表示登录失败,则禁止用户登录至节点服务器,并记录下登录结果J中的错误码,以便展示错误码,根据错误码进行登录修复等。
参照图4,示出了一种用户的认证方法的软硬件架构图。用户通过客户端向节点服务器发出认证请求,该客户端可以包括用户交互界面模块、用户认证安全交互模块、软件中间件和密码模块软件开发工具包(Software Development Kit,SDK),其中,用户认证安全交互模块与节点服务器的用户认证安全交互模块通过管理透传通道通信。节点服务器还包括软件中间件、密码运算软件库和数据库。客户端的密码模块SDK用于调用密码模块的密码模块软件/固件。
本发明实施例提供的用户的认证方案,可以应用于认证系统。该认证系统可以包括节点服务器和客户端,其中,节点服务器和客户端设置于视联网中,节点服务器可以与客户端通信连接。
在本发明实施例中,用户通过客户端向节点服务器发送用户注册请求消息,该用户注册请求消息中包括用户名、密码和用户公钥。该用户公钥为客户端为用户名和密码生成的用户非对称密钥中的公钥。客户端预先将用户非对称密钥中的用户私钥存储起来。节点服务器对用户注册请求消息中的用户名和密码进行验证操作,在验证通过的情况下存储用户名、密码和用户公钥,并将预先生成的服务器非对称密钥中的服务器公钥发送至客户端,以便客户端存储服务器公钥。用户在节点服务器注册成功之后,用户通过客户端向节点服务器发送用户登录请求消息,节点服务器根据用户公钥对用户登录请求消息进行验证操作,生成并返回用户登录挑战消息至客户端。客户端再根据服务器公钥和用户私钥对用户登录挑战消息进行验证操作,生成并返回用户登录响应消息至节点服务器。节点服务器对用户登录响应消息进行验证操作,生成并返回用户登录应答消息至客户端,以便客户端根据服务器公钥对用户登录应答消息进行验证操作,并在验证通过的情况下将客户端的用户登录至节点服务器。本发明实施例在用户的注册过程中,用户通过客户端不仅向节点服务器发送用户名和密码,还向节点服务器发送用户非对称密钥中的用户公钥,而且,节点服务器还将服务器非对称密钥中的服务器公钥发送至客户端。节点服务器在对用户名和密码验证通过的情况下,将用户名、密码和用户公钥存储在本地。在用户的登录过程中,节点服务器不仅对用户登录请求消息和用户登录响应消息进行验证,客户端还对节点服务器的用户登录挑战消息和用户登录应答消息进行验证,实现了节点服务器与客户端之间的双向验证,在所有验证都通过的情况下节点服务器允许客户端的用户登录至节点服务器,提升了用户注册及登录的安全性。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图5,示出了本发明的一种用户的认证装置实施例的结构框图,该装置可以应用于认证系统中的节点服务器,所述节点服务器与所述认证系统中的客户端通信连接,所述节点服务器和所述客户端设置于视联网中,所述装置具体可以包括如下模块:
接收模块51,用于接收来自所述客户端的用户注册请求消息,所述用户注册请求消息包括:用户名、密码和用户公钥,所述客户端用于为所述用户名和所述密码生成包括所述用户公钥和用户私钥的用户非对称密钥,并存储所述用户私钥;
验证模块52,用于对所述用户名和所述密码进行验证操作;
存储模块53,用于在所述验证模块52对所述用户名和所述密码验证通过的情况下存储所述用户名、所述密码和所述用户公钥,并将预先生成的服务器非对称密钥中的服务器公钥发送至所述客户端,以便所述客户端存储所述服务器公钥;
所述接收模块51,还用于接收来自所述客户端的用户登录请求消息;
所述验证模块52,还用于根据所述用户公钥对所述用户登录请求消息进行验证操作,生成并返回用户登录挑战消息至所述客户端,以便所述客户端根据所述服务器公钥和所述用户私钥对所述用户登录挑战消息进行验证操作,生成并返回用户登录响应消息至所述节点服务器;
所述验证模块52,还用于对所述用户登录响应消息进行验证操作,生成并返回用户登录应答消息至所述客户端,以便所述客户端根据所述服务器公钥对所述用户登录应答消息进行验证操作,并在验证通过的情况下将所述客户端的用户登录至所述节点服务器。
在本发明的一种优选实施例中,所述客户端上安装有UKey,所述客户端用于调用所述UKey内的预置算法为所述用户名和所述密码生成所述用户非对称密钥;所述客户端还用于将所述用户私钥和所述服务器公钥存储至所述UKey中。
在本发明的一种优选实施例中,所述用户登录请求消息包括:安全交互流程版本字段、用户安全配置字段、用户名字段和用户随机数字段;
所述验证模块52,包括:
判断子模块521,用于判断所述安全交互流程版本字段和所述用户安全配置字段是否包含对应的预设第一字段内容;
查找子模块522,用于在所述安全交互流程版本字段和所述用户安全配置字段包含对应的所述预设第一字段内容时,根据所述用户名字段的字段内容查找所述用户公钥;
生成子模块523,用于根据所述用户公钥生成所述用户登录挑战消息,并返回所述用户登录挑战消息至所述客户端。
在本发明的一种优选实施例中,所述生成子模块523,包括:
生成单元,用于生成服务器随机数和服务器对称密钥;
加密单元,用于利用所述用户公钥对所述服务器对称密钥和所述用户随机数字段的字段内容的异或值进行加密操作得到服务器对称密钥密文;
签名单元,用于利用所述服务器非对称密钥中的服务器私钥对所述节点服务器的服务器安全交互流程版本信息、所述节点服务器的服务器安全配置信息、所述用户名字段的字段内容、所述用户随机数字段的字段内容、所述服务器对称密钥密文、所述服务器随机数和所述节点服务器的标识信息进行签名操作得到服务器签名;
所述生成单元,还用于根据所述服务器安全交互流程版本信息、所述服务器安全配置信息、所述服务器随机数、所述用户随机数字段的字段内容、所述节点服务器的标识信息、所述服务器对称密钥密文和所述服务器签名生成所述用户登录挑战消息在本发明的一种优选实施例中,所述用户登录挑战消息包括:安全交互流程版本字段、服务器安全配置字段、服务器随机数字段、用户随机数字段、服务器标识字段、服务器对称密钥密文字段和服务器签名字段;
所述客户端用于判断所述用户登录挑战消息中的所述安全交互流程版本字段和所述服务器安全配置字段是否包含对应的预设第二字段内容;
所述客户端还用于在所述用户登录挑战消息中的所述安全交互流程版本字段和所述服务器安全配置字段包含对应的所述预设第二字段内容时,比较所述用户登录挑战消息中的所述用户随机数字段的字段内容是否与所述用户登录请求消息中的所述用户随机数字段的字段内容相同;
所述客户端还用于在所述用户登录挑战消息中的所述用户随机数字段的字段内容与所述用户登录请求消息中的所述用户随机数字段的字段内容相同时,利用所述服务器公钥对所述服务器签名字段的字段内容进行验签操作;
所述客户端还用于利用所述用户私钥对所述服务器对称密钥密文字段的字段内容进行解密操作得到用户解密结果;
所述客户端还用于将所述用户解密结果与所述用户随机数字段的字段内容进行异或操作得到用户异或结果。
在本发明的一种优选实施例中,所述用户登录响应消息包括:安全交互流程版本字段、用户安全配置字段、服务器随机数字段、用户新随机数字段、服务器标识字段、用户名字段、用户口令密文字段和用户签名字段;
其中,所述用户口令密文字段的字段内容包括所述客户端利用所述用户异或结果对用户口令和所述服务器随机数字段的字段内容的异或值进行加密操作得到的用户加密结果;
所述用户签名字段的字段内容包括所述客户端利用所述用户私钥对所述用户登录响应消息的所述安全交互流程版本字段的字段内容、所述用户安全配置字段的字段内容、所述服务器随机数字段的字段内容、所述用户新随机数字段的字段内容、所述服务器标识字段的字段内容、所述用户名字段的字段内容和所述用户口令密文字段的字段内容进行签名操作得到的用户签名结果。
所述判断子模块521,还用于判断所述用户登录响应消息中的所述安全交互流程版本字段和所述用户安全配置字段是否包含对应的预设第三字段内容;
所述验证模块52,还包括:
比较子模块524,用于在所述用户登录响应消息中的所述安全交互流程版本字段和所述用户安全配置字段包含对应的所述预设第三字段内容时,比较所述用户登录响应消息中的所述服务器随机数字段的字段内容和所述服务器标识字段的字段内容是否对应地与所述用户登录挑战消息中的所述服务器随机数字段的字段内容和所述服务器标识字段的字段内容相同;
所述查找子模块522,还用于在所述用户登录响应消息中的所述服务器随机数字段的字段内容和所述服务器标识字段的字段内容对应地与所述用户登录挑战消息中的所述服务器随机数字段的字段内容和所述服务器标识字段的字段内容相同时,根据所述用户名字段的字段内容查找到对应的用户公钥;
验签子模块525,用于利用所述对应的用户公钥对所述用户签名字段的字段内容进行验签操作;
解密子模块526,用于利用所述服务器对称密钥对所述用户口令密文字段的字段内容进行解密操作得到服务器解密结果;
异或子模块527,用于将所述服务器解密结果与所述服务器随机数字段的字段内容进行异或操作得到所述用户口令;
所述比较子模块524,还用于将所述用户口令与所述密码进行比较;
所述生成子模块523,还用于根据比较结果生成并返回所述用户登录应答消息至所述客户端。
在本发明的一种优选实施例中,所述用户登录应答消息包括:安全交互流程版本字段、服务器安全配置字段、登录结果字段和服务器签名字段;
所述客户端还用于判断所述用户登录应答消息中的所述安全交互流程版本字段和所述服务器安全配置字段是否包含对应的预设第四字段内容;
所述客户端还用于在所述用户登录应答消息中的所述安全交互流程版本字段和所述服务器安全配置字段包含对应的所述预设第四字段内容时,利用所述服务器公钥对所述服务器签名字段的字段内容进行验签操作;
所述客户端还用于在所述登录结果字段的字段内容表示登录成功时,允许所述客户端的用户登录至所述节点服务器,在所述登录结果字段的字段内容表示登录失败时,禁止所述客户端的用户登录至所述节点服务器;
其中,当所述比较结果为所述用户口令与所述密码相同时,所述登录结果字段的字段内容表示登录成功;当所述比较结果为所述用户口令与所述密码不相同时,所述登录结果字段的字段内容表示登录失败。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本发明实施例还提供了一种装置,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述装置执行如本发明实施例所述的一个或多个的用户的认证方法。
本发明实施例还提供了一种计算机可读存储介质,其存储的计算机程序使得处理器执行如本发明实施例所述的用户的认证方法。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
为使本领域技术人员更好地理解本发明实施例,以下对视联网进行介绍:
视联网是网络发展的重要里程碑,是一个实时网络,能够实现高清视频实时传输,将众多互联网应用推向高清视频化,高清面对面。
视联网采用实时高清视频交换技术,可以在一个网络平台上将所需的服务,如高清视频会议、视频监控、智能化监控分析、应急指挥、数字广播电视、延时电视、网络教学、现场直播、VOD点播、电视邮件、个性录制(PVR)、内网(自办)频道、智能化视频播控、信息发布等数十种视频、语音、图片、文字、通讯、数据等服务全部整合在一个系统平台,通过电视或电脑实现高清品质视频播放。
视联网所应用的部分技术如下所述:
网络技术(Network Technology)
视联网的网络技术创新改良了传统以太网(Ethernet),以面对网络上潜在的巨大视频流量。不同于单纯的网络分组包交换(Packet Switching)或网络电路交换(CircuitSwitching),视联网技术采用Packet Switching满足Streaming需求。视联网技术具备分组交换的灵活、简单和低价,同时具备电路交换的品质和安全保证,实现了全网交换式虚拟电路,以及数据格式的无缝连接。
交换技术(Switching Technology)
视联网采用以太网的异步和包交换两个优点,在全兼容的前提下消除了以太网缺陷,具备全网端到端无缝连接,直通用户终端,直接承载IP数据包。用户数据在全网范围内不需任何格式转换。视联网是以太网的更高级形态,是一个实时交换平台,能够实现目前互联网无法实现的全网大规模高清视频实时传输,将众多网络视频应用推向高清化、统一化。
服务器技术(Server Technology)
视联网和统一视频平台上的服务器技术不同于传统意义上的服务器,它的流媒体传输是建立在面向连接的基础上,其数据处理能力与流量、通讯时间无关,单个网络层就能够包含信令及数据传输。对于语音和视频业务来说,视联网和统一视频平台流媒体处理的复杂度比数据处理简单许多,效率比传统服务器大大提高了百倍以上。
储存器技术(Storage Technology)
统一视频平台的超高速储存器技术为了适应超大容量和超大流量的媒体内容而采用了最先进的实时操作系统,将服务器指令中的节目信息映射到具体的硬盘空间,媒体内容不再经过服务器,瞬间直接送达到用户终端,用户等待一般时间小于0.2秒。最优化的扇区分布大大减少了硬盘磁头寻道的机械运动,资源消耗仅占同等级IP互联网的20%,但产生大于传统硬盘阵列3倍的并发流量,综合效率提升10倍以上。
网络安全技术(Network Security Technology)
视联网的结构性设计通过每次服务单独许可制、设备与用户数据完全隔离等方式从结构上彻底根除了困扰互联网的网络安全问题,一般不需要杀毒程序、防火墙,杜绝了黑客与病毒的攻击,为用户提供结构性的无忧安全网络。
服务创新技术(Service Innovation Technology)
统一视频平台将业务与传输融合在一起,不论是单个用户、私网用户还是一个网络的总合,都不过是一次自动连接。用户终端、机顶盒或PC直接连到统一视频平台,获得丰富多彩的各种形态的多媒体视频服务。统一视频平台采用“菜谱式”配表模式来替代传统的复杂应用编程,可以使用非常少的代码即可实现复杂的应用,实现“无限量”的新业务创新。
视联网的组网如下所述:
视联网是一种集中控制的网络结构,该网络可以是树型网、星型网、环状网等等类型,但在此基础上网络中需要有集中控制节点来控制整个网络。
如图6所示,视联网分为接入网和城域网两部分。
接入网部分的设备主要可以分为3类:节点服务器,接入交换机,终端(包括各种机顶盒、编码板、存储器等)。节点服务器与接入交换机相连,接入交换机可以与多个终端相连,并可以连接以太网。
其中,节点服务器是接入网中起集中控制功能的节点,可控制接入交换机和终端。节点服务器可直接与接入交换机相连,也可以直接与终端相连。
类似的,城域网部分的设备也可以分为3类:城域服务器,节点交换机,节点服务器。城域服务器与节点交换机相连,节点交换机可以与多个节点服务器相连。
其中,节点服务器即为接入网部分的节点服务器,即节点服务器既属于接入网部分,又属于城域网部分。
城域服务器是城域网中起集中控制功能的节点,可控制节点交换机和节点服务器。城域服务器可直接连接节点交换机,也可直接连接节点服务器。
由此可见,整个视联网络是一种分层集中控制的网络结构,而节点服务器和城域服务器下控制的网络可以是树型、星型、环状等各种结构。
形象地称,接入网部分可以组成统一视频平台(虚线圈中部分),多个统一视频平台可以组成视联网;每个统一视频平台可以通过城域以及广域视联网互联互通。
视联网设备分类
1.1本发明实施例的视联网中的设备主要可以分为3类:服务器,交换机(包括以太网网关),终端(包括各种机顶盒,编码板,存储器等)。视联网整体上可以分为城域网(或者国家网、全球网等)和接入网。
1.2其中接入网部分的设备主要可以分为3类:节点服务器,接入交换机(包括以太网网关),终端(包括各种机顶盒,编码板,存储器等)。
各接入网设备的具体硬件结构为:
节点服务器:
如图7所示,主要包括网络接口模块701、交换引擎模块702、CPU模块703、磁盘阵列模块704;
其中,网络接口模块701,CPU模块703、磁盘阵列模块704进来的包均进入交换引擎模块702;交换引擎模块702对进来的包进行查地址表705的操作,从而获得包的导向信息;并根据包的导向信息把该包存入对应的包缓存器706的队列;如果包缓存器706的队列接近满,则丢弃;交换引擎模702轮询所有包缓存器队列,如果满足以下条件进行转发:1)该端口发送缓存未满;2)该队列包计数器大于零。磁盘阵列模块704主要实现对硬盘的控制,包括对硬盘的初始化、读写等操作;CPU模块703主要负责与接入交换机、终端(图中未示出)之间的协议处理,对地址表705(包括下行协议包地址表、上行协议包地址表、数据包地址表)的配置,以及,对磁盘阵列模块704的配置。
接入交换机:
如图8所示,主要包括网络接口模块(下行网络接口模块801、上行网络接口模块802)、交换引擎模块803和CPU模块804;
其中,下行网络接口模块801进来的包(上行数据)进入包检测模块805;包检测模块805检测包的目地地址(DA)、源地址(SA)、数据包类型及包长度是否符合要求,如果符合,则分配相应的流标识符(stream-id),并进入交换引擎模块803,否则丢弃;上行网络接口模块802进来的包(下行数据)进入交换引擎模块803;CPU模块804进来的数据包进入交换引擎模块803;交换引擎模块803对进来的包进行查地址表806的操作,从而获得包的导向信息;如果进入交换引擎模块803的包是下行网络接口往上行网络接口去的,则结合流标识符(stream-id)把该包存入对应的包缓存器807的队列;如果该包缓存器807的队列接近满,则丢弃;如果进入交换引擎模块803的包不是下行网络接口往上行网络接口去的,则根据包的导向信息,把该数据包存入对应的包缓存器807的队列;如果该包缓存器807的队列接近满,则丢弃。
交换引擎模块803轮询所有包缓存器队列,在本发明实施例中分两种情形:
如果该队列是下行网络接口往上行网络接口去的,则满足以下条件进行转发:1)该端口发送缓存未满;2)该队列包计数器大于零;3)获得码率控制模块产生的令牌;
如果该队列不是下行网络接口往上行网络接口去的,则满足以下条件进行转发:1)该端口发送缓存未满;2)该队列包计数器大于零。
码率控制模块808是由CPU模块804来配置的,在可编程的间隔内对所有下行网络接口往上行网络接口去的包缓存器队列产生令牌,用以控制上行转发的码率。
CPU模块804主要负责与节点服务器之间的协议处理,对地址表806的配置,以及,对码率控制模块808的配置。
以太网协转网关
如图9所示,主要包括网络接口模块(下行网络接口模块901、上行网络接口模块902)、交换引擎模块903、CPU模块904、包检测模块905、码率控制模块908、地址表906、包缓存器907和MAC添加模块909、MAC删除模块910。
其中,下行网络接口模块901进来的数据包进入包检测模块905;包检测模块905检测数据包的以太网MAC DA、以太网MAC SA、以太网length or frame type、视联网目地地址DA、视联网源地址SA、视联网数据包类型及包长度是否符合要求,如果符合则分配相应的流标识符(stream-id);然后,由MAC删除模块910减去MAC DA、MAC SA、length or frame type(2byte),并进入相应的接收缓存,否则丢弃;
下行网络接口模块901检测该端口的发送缓存,如果有包则根据包的视联网目地地址DA获知对应的终端的以太网MAC DA,添加终端的以太网MAC DA、以太网协转网关的MACSA、以太网length or frame type,并发送。
以太网协转网关中其他模块的功能与接入交换机类似。
终端:
主要包括网络接口模块、业务处理模块和CPU模块;例如,机顶盒主要包括网络接口模块、视音频编解码引擎模块、CPU模块;编码板主要包括网络接口模块、视音频编码引擎模块、CPU模块;存储器主要包括网络接口模块、CPU模块和磁盘阵列模块。
1.3城域网部分的设备主要可以分为2类:节点服务器,节点交换机,城域服务器。其中,节点交换机主要包括网络接口模块、交换引擎模块和CPU模块;城域服务器主要包括网络接口模块、交换引擎模块和CPU模块构成。
2、视联网数据包定义
2.1接入网数据包定义
接入网的数据包主要包括以下几部分:目的地址(DA)、源地址(SA)、保留字节、payload(PDU)、CRC。
如下表所示,接入网的数据包主要包括以下几部分:
DA SA Reserved Payload CRC
其中:
目的地址(DA)由8个字节(byte)组成,第一个字节表示数据包的类型(例如各种协议包、组播数据包、单播数据包等),最多有256种可能,第二字节到第六字节为城域网地址,第七、第八字节为接入网地址;
源地址(SA)也是由8个字节(byte)组成,定义与目的地址(DA)相同;
保留字节由2个字节组成;
payload部分根据不同的数据报的类型有不同的长度,如果是各种协议包的话是64个字节,如果是单组播数据包话是32+1024=1056个字节,当然并不仅仅限于以上2种;
CRC有4个字节组成,其计算方法遵循标准的以太网CRC算法。
2.2城域网数据包定义
城域网的拓扑是图型,两个设备之间可能有2种、甚至2种以上的连接,即节点交换机和节点服务器、节点交换机和节点交换机、节点交换机和节点服务器之间都可能超过2种连接。但是,城域网设备的城域网地址却是唯一的,为了精确描述城域网设备之间的连接关系,在本发明实施例中引入参数:标签,来唯一描述一个城域网设备。
本说明书中标签的定义和MPLS(Multi-Protocol Label Switch,多协议标签交换)的标签的定义类似,假设设备A和设备B之间有两个连接,那么数据包从设备A到设备B就有2个标签,数据包从设备B到设备A也有2个标签。标签分入标签、出标签,假设数据包进入设备A的标签(入标签)是0x0000,这个数据包离开设备A时的标签(出标签)可能就变成了0x0001。城域网的入网流程是集中控制下的入网过程,也就意味着城域网的地址分配、标签分配都是由城域服务器主导的,节点交换机、节点服务器都是被动的执行而已,这一点与MPLS的标签分配是不同的,MPLS的标签分配是交换机、服务器互相协商的结果。
如下表所示,城域网的数据包主要包括以下几部分:
DA SA Reserved 标签 Payload CRC
即目的地址(DA)、源地址(SA)、保留字节(Reserved)、标签、payload(PDU)、CRC。其中,标签的格式可以参考如下定义:标签是32bit,其中高16bit保留,只用低16bit,它的位置是在数据包的保留字节和payload之间。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种用户的认证方法、装置和一种计算机可读存储介质,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (18)

1.一种用户的认证方法,其特征在于,应用于认证系统,所述认证系统包括:节点服务器和客户端,其中,所述节点服务器和所述客户端设置于视联网中,所述节点服务器与所述客户端通信连接,所述方法包括:
所述节点服务器接收来自所述客户端的用户注册请求消息,所述用户注册请求消息包括:用户名、密码和用户公钥,所述客户端用于为所述用户名和所述密码生成包括所述用户公钥和用户私钥的用户非对称密钥,并存储所述用户私钥;
所述节点服务器对所述用户名和所述密码进行验证操作,在验证通过的情况下存储所述用户名、所述密码和所述用户公钥,并将预先生成的服务器非对称密钥中的服务器公钥发送至所述客户端,以便所述客户端存储所述服务器公钥;
所述节点服务器接收来自所述客户端的用户登录请求消息;
所述节点服务器根据所述用户公钥对所述用户登录请求消息进行验证操作,生成并返回用户登录挑战消息至所述客户端,以便所述客户端根据所述服务器公钥和所述用户私钥对所述用户登录挑战消息进行验证操作,生成并返回用户登录响应消息至所述节点服务器;
所述节点服务器对所述用户登录响应消息进行验证操作,生成并返回用户登录应答消息至所述客户端,以便所述客户端根据所述服务器公钥对所述用户登录应答消息进行验证操作,并在验证通过的情况下将所述客户端的用户登录至所述节点服务器;
其中,所述节点服务器对所述用户登录请求消息进行验证操作包括:
所述节点服务器对用户登录请求消息中的安全交互流程版本字段与用户安全配置字段进行验证;
所述客户端对所述用户登录挑战消息进行验证操作包括:
所述客户端对登录挑战消息中的安全交互流程版本字段与服务器安全配置字段进行验证;
所述节点服务器对所述用户登录响应消息进行验证操作包括:
所述节点服务器对所述登录响应消息中的服务器随机数字段与服务器标识字段进行验证;
所述客户端对所述用户登录应答消息进行验证操作包括:
所述客户端对所述用户登录应答消息中的签名信息进行验签。
2.根据权利要求1所述的用户的认证方法,其特征在于,所述客户端上安装有UKey,所述客户端用于调用所述UKey内的预置算法为所述用户名和所述密码生成所述用户非对称密钥;所述客户端还用于将所述用户私钥和所述服务器公钥存储至所述UKey中。
3.根据权利要求1所述的用户的认证方法,其特征在于,所述用户登录请求消息包括:安全交互流程版本字段、用户安全配置字段、用户名字段和用户随机数字段;
所述节点服务器根据所述用户公钥对所述用户登录请求消息进行验证操作,生成并返回用户登录挑战消息至所述客户端的步骤,包括:
所述节点服务器判断所述安全交互流程版本字段和所述用户安全配置字段是否包含对应的预设第一字段内容;
所述节点服务器在所述安全交互流程版本字段和所述用户安全配置字段包含对应的所述预设第一字段内容时,根据所述用户名字段的字段内容查找所述用户公钥;
所述节点服务器根据所述用户公钥生成所述用户登录挑战消息,并返回所述用户登录挑战消息至所述客户端。
4.根据权利要求3所述的用户的认证方法,其特征在于,所述节点服务器根据所述用户公钥生成所述用户登录挑战消息的步骤,包括:
所述节点服务器生成服务器随机数和服务器对称密钥;
所述节点服务器利用所述用户公钥对所述服务器对称密钥和所述用户随机数字段的字段内容的异或值进行加密操作得到服务器对称密钥密文;
所述节点服务器利用所述服务器非对称密钥中的服务器私钥对所述节点服务器的服务器安全交互流程版本信息、所述节点服务器的服务器安全配置信息、所述用户名字段的字段内容、所述用户随机数字段的字段内容、所述服务器对称密钥密文、所述服务器随机数和所述节点服务器的标识信息进行签名操作得到服务器签名;
所述节点服务器根据所述服务器安全交互流程版本信息、所述服务器安全配置信息、所述服务器随机数、所述用户随机数字段的字段内容、所述节点服务器的标识信息、所述服务器对称密钥密文和所述服务器签名生成所述用户登录挑战消息。
5.根据权利要求4所述的用户的认证方法,其特征在于,所述用户登录挑战消息包括:安全交互流程版本字段、服务器安全配置字段、服务器随机数字段、用户随机数字段、服务器标识字段、服务器对称密钥密文字段和服务器签名字段;
所述客户端用于判断所述用户登录挑战消息中的所述安全交互流程版本字段和所述服务器安全配置字段是否包含对应的预设第二字段内容;
所述客户端还用于在所述用户登录挑战消息中的所述安全交互流程版本字段和所述服务器安全配置字段包含对应的所述预设第二字段内容时,比较所述用户登录挑战消息中的所述用户随机数字段的字段内容是否与所述用户登录请求消息中的所述用户随机数字段的字段内容相同;
所述客户端还用于在所述用户登录挑战消息中的所述用户随机数字段的字段内容与所述用户登录请求消息中的所述用户随机数字段的字段内容相同时,利用所述服务器公钥对所述服务器签名字段的字段内容进行验签操作;
所述客户端还用于利用所述用户私钥对所述服务器对称密钥密文字段的字段内容进行解密操作得到用户解密结果;
所述客户端还用于将所述用户解密结果与所述用户随机数字段的字段内容进行异或操作得到用户异或结果。
6.根据权利要求5所述的用户的认证方法,其特征在于,所述用户登录响应消息包括:安全交互流程版本字段、用户安全配置字段、服务器随机数字段、用户新随机数字段、服务器标识字段、用户名字段、用户口令密文字段和用户签名字段;
其中,所述用户口令密文字段的字段内容包括所述客户端利用所述用户异或结果对用户口令和所述服务器随机数字段的字段内容的异或值进行加密操作得到的用户加密结果;
所述用户签名字段的字段内容包括所述客户端利用所述用户私钥对所述用户登录响应消息的所述安全交互流程版本字段的字段内容、所述用户安全配置字段的字段内容、所述服务器随机数字段的字段内容、所述用户新随机数字段的字段内容、所述服务器标识字段的字段内容、所述用户名字段的字段内容和所述用户口令密文字段的字段内容进行签名操作得到的用户签名结果。
7.根据权利要求6所述的用户的认证方法,其特征在于,所述节点服务器对所述用户登录响应消息进行验证操作,生成并返回用户登录应答消息至所述客户端的步骤,包括:
所述节点服务器判断所述用户登录响应消息中的所述安全交互流程版本字段和所述用户安全配置字段是否包含对应的预设第三字段内容;
所述节点服务器在所述用户登录响应消息中的所述安全交互流程版本字段和所述用户安全配置字段包含对应的所述预设第三字段内容时,比较所述用户登录响应消息中的所述服务器随机数字段的字段内容和所述服务器标识字段的字段内容是否对应地与所述用户登录挑战消息中的所述服务器随机数字段的字段内容和所述服务器标识字段的字段内容相同;
所述节点服务器在所述用户登录响应消息中的所述服务器随机数字段的字段内容和所述服务器标识字段的字段内容对应地与所述用户登录挑战消息中的所述服务器随机数字段的字段内容和所述服务器标识字段的字段内容相同时,根据所述用户名字段的字段内容查找到对应的用户公钥,并利用所述对应的用户公钥对所述用户签名字段的字段内容进行验签操作;
所述节点服务器利用所述服务器对称密钥对所述用户口令密文字段的字段内容进行解密操作得到服务器解密结果,并将所述服务器解密结果与所述服务器随机数字段的字段内容进行异或操作得到所述用户口令;
所述节点服务器将所述用户口令与所述密码进行比较,并根据比较结果生成并返回所述用户登录应答消息至所述客户端。
8.根据权利要求7所述的用户的认证方法,其特征在于,所述用户登录应答消息包括:安全交互流程版本字段、服务器安全配置字段、登录结果字段和服务器签名字段;
所述客户端还用于判断所述用户登录应答消息中的所述安全交互流程版本字段和所述服务器安全配置字段是否包含对应的预设第四字段内容;
所述客户端还用于在所述用户登录应答消息中的所述安全交互流程版本字段和所述服务器安全配置字段包含对应的所述预设第四字段内容时,利用所述服务器公钥对所述服务器签名字段的字段内容进行验签操作;
所述客户端还用于在所述登录结果字段的字段内容表示登录成功时,允许所述客户端的用户登录至所述节点服务器,在所述登录结果字段的字段内容表示登录失败时,禁止所述客户端的用户登录至所述节点服务器;
其中,当所述比较结果为所述用户口令与所述密码相同时,所述登录结果字段的字段内容表示登录成功;当所述比较结果为所述用户口令与所述密码不相同时,所述登录结果字段的字段内容表示登录失败。
9.一种用户的认证装置,其特征在于,应用于认证系统中的节点服务器,所述节点服务器与所述认证系统中的客户端通信连接,所述节点服务器和所述客户端设置于视联网中,所述装置包括:
接收模块,用于接收来自所述客户端的用户注册请求消息,所述用户注册请求消息包括:用户名、密码和用户公钥,所述客户端用于为所述用户名和所述密码生成包括所述用户公钥和用户私钥的用户非对称密钥,并存储所述用户私钥;
验证模块,用于对所述用户名和所述密码进行验证操作;
存储模块,用于在所述验证模块对所述用户名和所述密码验证通过的情况下存储所述用户名、所述密码和所述用户公钥,并将预先生成的服务器非对称密钥中的服务器公钥发送至所述客户端,以便所述客户端存储所述服务器公钥;
所述接收模块,还用于接收来自所述客户端的用户登录请求消息;
所述验证模块,还用于根据所述用户公钥对所述用户登录请求消息进行验证操作,生成并返回用户登录挑战消息至所述客户端,以便所述客户端根据所述服务器公钥和所述用户私钥对所述用户登录挑战消息进行验证操作,生成并返回用户登录响应消息至所述节点服务器;
所述验证模块,还用于对所述用户登录响应消息进行验证操作,生成并返回用户登录应答消息至所述客户端,以便所述客户端根据所述服务器公钥对所述用户登录应答消息进行验证操作,并在验证通过的情况下将所述客户端的用户登录至所述节点服务器;
其中,所述节点服务器对所述用户登录请求消息进行验证操作包括:
所述节点服务器对用户登录请求消息中的安全交互流程版本字段与用户安全配置字段进行验证;
所述客户端对所述用户登录挑战消息进行验证操作包括:
所述客户端对登录挑战消息中的用户名字段与服务器随机数字段进行验证;
所述节点服务器对所述用户登录响应消息进行验证操作包括:
所述节点服务器对所述登录响应消息中的服务器随机数字段与服务器标识字段进行验证;
所述客户端对所述用户登录应答消息进行验证操作包括:
所述客户端对所述用户登录应答消息中的签名信息进行验签。
10.根据权利要求9所述的用户的认证装置,其特征在于,所述客户端上安装有UKey,所述客户端用于调用所述UKey内的预置算法为所述用户名和所述密码生成所述用户非对称密钥;所述客户端还用于将所述用户私钥和所述服务器公钥存储至所述UKey中。
11.根据权利要求9所述的用户的认证装置,其特征在于,所述用户登录请求消息包括:安全交互流程版本字段、用户安全配置字段、用户名字段和用户随机数字段;
所述验证模块,包括:
判断子模块,用于判断所述安全交互流程版本字段和所述用户安全配置字段是否包含对应的预设第一字段内容;
查找子模块,用于在所述安全交互流程版本字段和所述用户安全配置字段包含对应的所述预设第一字段内容时,根据所述用户名字段的字段内容查找所述用户公钥;
生成子模块,用于根据所述用户公钥生成所述用户登录挑战消息,并返回所述用户登录挑战消息至所述客户端。
12.根据权利要求11所述的用户的认证装置,其特征在于,所述生成子模块,包括:
生成单元,用于生成服务器随机数和服务器对称密钥;
加密单元,用于利用所述用户公钥对所述服务器对称密钥和所述用户随机数字段的字段内容的异或值进行加密操作得到服务器对称密钥密文;
签名单元,用于利用所述服务器非对称密钥中的服务器私钥对所述节点服务器的服务器安全交互流程版本信息、所述节点服务器的服务器安全配置信息、所述用户名字段的字段内容、所述用户随机数字段的字段内容、所述服务器对称密钥密文、所述服务器随机数和所述节点服务器的标识信息进行签名操作得到服务器签名;
所述生成单元,还用于根据所述服务器安全交互流程版本信息、所述服务器安全配置信息、所述服务器随机数、所述用户随机数字段的字段内容、所述节点服务器的标识信息、所述服务器对称密钥密文和所述服务器签名生成所述用户登录挑战消息。
13.根据权利要求12所述的用户的认证装置,其特征在于,所述用户登录挑战消息包括:安全交互流程版本字段、服务器安全配置字段、服务器随机数字段、用户随机数字段、服务器标识字段、服务器对称密钥密文字段和服务器签名字段;
所述客户端用于判断所述用户登录挑战消息中的所述安全交互流程版本字段和所述服务器安全配置字段是否包含对应的预设第二字段内容;
所述客户端还用于在所述用户登录挑战消息中的所述安全交互流程版本字段和所述服务器安全配置字段包含对应的所述预设第二字段内容时,比较所述用户登录挑战消息中的所述用户随机数字段的字段内容是否与所述用户登录请求消息中的所述用户随机数字段的字段内容相同;
所述客户端还用于在所述用户登录挑战消息中的所述用户随机数字段的字段内容与所述用户登录请求消息中的所述用户随机数字段的字段内容相同时,利用所述服务器公钥对所述服务器签名字段的字段内容进行验签操作;
所述客户端还用于利用所述用户私钥对所述服务器对称密钥密文字段的字段内容进行解密操作得到用户解密结果;
所述客户端还用于将所述用户解密结果与所述用户随机数字段的字段内容进行异或操作得到用户异或结果。
14.根据权利要求13所述的用户的认证装置,其特征在于,所述用户登录响应消息包括:安全交互流程版本字段、用户安全配置字段、服务器随机数字段、用户新随机数字段、服务器标识字段、用户名字段、用户口令密文字段和用户签名字段;
其中,所述用户口令密文字段的字段内容包括所述客户端利用所述用户异或结果对用户口令和所述服务器随机数字段的字段内容的异或值进行加密操作得到的用户加密结果;
所述用户签名字段的字段内容包括所述客户端利用所述用户私钥对所述用户登录响应消息的所述安全交互流程版本字段的字段内容、所述用户安全配置字段的字段内容、所述服务器随机数字段的字段内容、所述用户新随机数字段的字段内容、所述服务器标识字段的字段内容、所述用户名字段的字段内容和所述用户口令密文字段的字段内容进行签名操作得到的用户签名结果。
15.根据权利要求14所述的用户的认证装置,其特征在于,
所述判断子模块,还用于判断所述用户登录响应消息中的所述安全交互流程版本字段和所述用户安全配置字段是否包含对应的预设第三字段内容;
所述验证模块,还包括:
比较子模块,用于在所述用户登录响应消息中的所述安全交互流程版本字段和所述用户安全配置字段包含对应的所述预设第三字段内容时,比较所述用户登录响应消息中的所述服务器随机数字段的字段内容和所述服务器标识字段的字段内容是否对应地与所述用户登录挑战消息中的所述服务器随机数字段的字段内容和所述服务器标识字段的字段内容相同;
所述查找子模块,还用于在所述用户登录响应消息中的所述服务器随机数字段的字段内容和所述服务器标识字段的字段内容对应地与所述用户登录挑战消息中的所述服务器随机数字段的字段内容和所述服务器标识字段的字段内容相同时,根据所述用户名字段的字段内容查找到对应的用户公钥;
验签子模块,用于利用所述对应的用户公钥对所述用户签名字段的字段内容进行验签操作;
解密子模块,用于利用所述服务器对称密钥对所述用户口令密文字段的字段内容进行解密操作得到服务器解密结果;
异或子模块,用于将所述服务器解密结果与所述服务器随机数字段的字段内容进行异或操作得到所述用户口令;
所述比较子模块,还用于将所述用户口令与所述密码进行比较;
所述生成子模块,还用于根据比较结果生成并返回所述用户登录应答消息至所述客户端。
16.根据权利要求15所述的用户的认证装置,其特征在于,所述用户登录应答消息包括:安全交互流程版本字段、服务器安全配置字段、登录结果字段和服务器签名字段;
所述客户端还用于判断所述用户登录应答消息中的所述安全交互流程版本字段和所述服务器安全配置字段是否包含对应的预设第四字段内容;
所述客户端还用于在所述用户登录应答消息中的所述安全交互流程版本字段和所述服务器安全配置字段包含对应的所述预设第四字段内容时,利用所述服务器公钥对所述服务器签名字段的字段内容进行验签操作;
所述客户端还用于在所述登录结果字段的字段内容表示登录成功时,允许所述客户端的用户登录至所述节点服务器,在所述登录结果字段的字段内容表示登录失败时,禁止所述客户端的用户登录至所述节点服务器;
其中,当所述比较结果为所述用户口令与所述密码相同时,所述登录结果字段的字段内容表示登录成功;当所述比较结果为所述用户口令与所述密码不相同时,所述登录结果字段的字段内容表示登录失败。
17.一种用户的认证装置,其特征在于,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述装置执行如权利要求1至8任一项所述的一个或多个的用户的认证方法。
18.一种计算机可读存储介质,其特征在于,其存储的计算机程序使得处理器执行如权利要求1至8任一项所述的用户的认证方法。
CN201910804681.XA 2019-08-28 2019-08-28 一种用户的认证方法、装置和存储介质 Active CN110661784B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910804681.XA CN110661784B (zh) 2019-08-28 2019-08-28 一种用户的认证方法、装置和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910804681.XA CN110661784B (zh) 2019-08-28 2019-08-28 一种用户的认证方法、装置和存储介质

Publications (2)

Publication Number Publication Date
CN110661784A CN110661784A (zh) 2020-01-07
CN110661784B true CN110661784B (zh) 2022-03-25

Family

ID=69037823

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910804681.XA Active CN110661784B (zh) 2019-08-28 2019-08-28 一种用户的认证方法、装置和存储介质

Country Status (1)

Country Link
CN (1) CN110661784B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111031074B (zh) * 2020-01-09 2022-03-01 中国信息通信研究院 一种认证方法、服务器和客户端
CN111800378B (zh) * 2020-05-21 2023-08-11 视联动力信息技术股份有限公司 一种登录认证方法、装置、系统和存储介质
CN113315764B (zh) * 2021-05-25 2023-03-10 深圳壹账通智能科技有限公司 防arp攻击的数据包发送方法、装置、路由器及存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8543829B2 (en) * 2007-01-05 2013-09-24 Ebay Inc. Token device re-synchronization through a network solution
CN109547451B (zh) * 2018-11-30 2021-05-25 四川长虹电器股份有限公司 基于tee的可信认证服务认证的方法
CN110035071A (zh) * 2019-03-26 2019-07-19 南瑞集团有限公司 一种面向工控系统的远程双因子双向认证方法、客户端及服务端

Also Published As

Publication number Publication date
CN110661784A (zh) 2020-01-07

Similar Documents

Publication Publication Date Title
CN110430043B (zh) 一种认证方法、系统及装置和存储介质
CN108574818B (zh) 一种信息显示的方法、装置和服务器
CN110661784B (zh) 一种用户的认证方法、装置和存储介质
CN109788247B (zh) 一种监控指令识别的方法和装置
CN110012322B (zh) 一种视联网业务发起的方法和系统
CN108965227B (zh) 一种数据处理方法及视联网会议服务器
CN111786778A (zh) 一种密钥更新的方法和装置
CN110535856B (zh) 一种用户的认证方法、装置和存储介质
CN112291072B (zh) 基于管理面协议的安全视频通信方法、装置、设备及介质
CN109347844B (zh) 一种设备接入互联网的方法及装置
CN112203149B (zh) 一种基于国产密码的视联网软件更新方法和装置
CN110719247B (zh) 终端入网方法和装置
CN111107060B (zh) 一种登录请求处理方法、服务器、电子设备及存储介质
CN111556376B (zh) 数字证书签发方法、装置及计算机可读存储介质
CN109376507B (zh) 一种数据安全管理方法和系统
CN110022353B (zh) 一种服务共享的方法和视联网系统
CN110012063B (zh) 一种数据包的处理方法和系统
CN110661783B (zh) 一种终端的注册方法、装置和存储介质
CN110392289B (zh) 一种账号的处理方法和系统
CN108965219B (zh) 一种基于视联网的数据处理方法及装置
CN110049007B (zh) 视联网传输方法和装置
CN112291592B (zh) 基于控制面协议的安全视频通信方法、装置、设备及介质
CN109617858B (zh) 一种流媒体链路的加密方法和装置
CN110620936B (zh) 一种视联网视频的备份方法及装置、电子设备和存储介质
CN109587436B (zh) 视联网会议管理平台登录方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant