CN111314366B - 一种基于mqtt协议的安全登录系统及方法 - Google Patents

一种基于mqtt协议的安全登录系统及方法 Download PDF

Info

Publication number
CN111314366B
CN111314366B CN202010117787.5A CN202010117787A CN111314366B CN 111314366 B CN111314366 B CN 111314366B CN 202010117787 A CN202010117787 A CN 202010117787A CN 111314366 B CN111314366 B CN 111314366B
Authority
CN
China
Prior art keywords
information
login
equipment
authentication
mqtt
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
CN202010117787.5A
Other languages
English (en)
Other versions
CN111314366A (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.)
Guangzhou Zhiyuan Electronics Co Ltd
Original Assignee
Guangzhou Zhiyuan Electronics 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 Guangzhou Zhiyuan Electronics Co Ltd filed Critical Guangzhou Zhiyuan Electronics Co Ltd
Priority to CN202010117787.5A priority Critical patent/CN111314366B/zh
Publication of CN111314366A publication Critical patent/CN111314366A/zh
Application granted granted Critical
Publication of CN111314366B publication Critical patent/CN111314366B/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
    • 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/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
    • 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/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • 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/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/26Special purpose or proprietary protocols or architectures
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请实施例公开了一种基于MQTT协议的安全登录系统及方法。本申请实施例提供的技术方案,由设备通过HTTPS协议向认证服务器发送认证信息,由认证服务器对认证信息进行比对认证,并在认证成功后返回加密的标记信息和对应的设备外网IP地址。进一步通过设备以接收到的标记信息及设备外网IP地址作为登录信息,将登录信息通过TCP协议发送至MQTT服务器。最终,MQTT服务器将登录信息中的标记信息通过认证服务器进行解密,并验证解密后的标记信息是否与登录信息中的设备外网IP地址对应,根据验证结果判定设备是否具备登录权限。采用上述技术手段,可以保障设备登录信息上传的安全性,同时通过使用TCP协议进行数据传输,降低数据传输的成本。

Description

一种基于MQTT协议的安全登录系统及方法
技术领域
本申请实施例涉及数据传输技术领域,尤其涉及一种基于MQTT协议的安全登录系统及方法。
背景技术
消息队列遥测传输(Message Queuing Telemetry Transport,MQTT)是国际商业机器公司(International Business Machines Corporation,IBM)开发的一个即时通讯协议。该协议采用一种轻量级的订阅/发布模式来进行消息的传输,通过对低带宽、低计算能力、以及不稳定的网络环境做了特殊的优化,以适用于对嵌入式智能终端和移动终端的信息推送,从而有效的节省终端的耗电量及流量。
目前,MQTT协议是物联网(IOT)系统中较常使用的协议,在进行数据传输时,设备通过MQTT协议向MQTT服务器上报数据,其它服务器或终端设备通过MQTT协议从MQTT服务器获取数据。MQTT属于应用层协议,根据实际需要,其下传输层的通讯协议可以是加密的TLS协议,也可以是不加密的TCP协议。由于设备则登录MQTT服务器需要传输用户名和对应的密码信息,为了避免信息泄露,会使用TLS协议对这类信息进行加密传输。而对于一些安全性要求不高的数据,则直接使用TCP协议进行数据传输即可。
但是,由于MQTT协议为长连接通信协议,设备与MQTT服务器从建立链接到断开链接,整个数据传输过程要么使用加密的TLS协议,要么使用不加密的TCP协议。而为了保障登录信息的安全性,则需要在这个数据传输过程中全程使用TLS协议进行数据传输。虽然其安全性高,不易受到黑客攻击。但其硬件配置要求也相对较高,设备运行时的功耗较高,传输时更耗流量,花费的成本也相对较高。
发明内容
本申请实施例提供一种基于MQTT协议的安全登录系统、方法及存储介质,能够保障登录信息传输的安全性,且降低数据传输的成本。
在第一方面,本申请实施例提供了一种基于MQTT协议的安全登录系统,包括:相互信号连接的设备、认证服务器和MQTT服务器;
所述设备用于通过HTTPS协议向认证服务器发送认证信息,并接收所述认证服务器比对认证成功后返回的加密的标记信息和对应的设备外网IP地址;所述设备还以所述标记信息及所述设备外网IP地址作为登录信息,将登录信息通过TCP协议发送至所述MQTT服务器;
所述MQTT服务器用于接收所述设备发送的登录信息,将登录信息中的所述标记信息通过认证服务器进行解密,并验证解密后的所述标记信息是否与登录信息中的所述设备外网IP地址对应,根据验证结果判定设备是否具备登录权限。
进一步的,所述认证服务器为独立服务器或所述MQTT服务器的插件。
进一步的,所述标记信息包含加密的设备外网IP地址信息、用户信息、有效期和时间戳信息。
在第二方面,本申请实施例提供了一种基于MQTT协议的安全登录方法,包括:
设备通过HTTPS协议向认证服务器发送认证信息,由认证服务器对所述认证信息进行比对认证,并在认证成功后返回加密的标记信息和对应的设备外网IP地址至所述设备;
所述设备以所述标记信息及所述设备外网IP地址作为登录信息,将登录信息通过TCP协议发送至MQTT服务器;
所述MQTT服务器接收所述设备发送的登录信息,将登录信息中的所述标记信息通过认证服务器进行解密,并验证解密后的所述标记信息是否与登录信息中的所述设备外网IP地址对应,根据验证结果判定设备是否具备登录权限。
进一步的,所述设备以所述标记信息及所述设备外网IP地址作为登录信息,将登录信息通过TCP协议发送至MQTT服务器,包括:
所述设备以所述设备外网IP地址作为第一用户名,以所述标记信息作为第一登录密码,使用所述第一用户名和所述第一登录密码进行MQTT服务器登录。
进一步的,所述标记信息包含加密的设备外网IP地址信息和用户信息;
对应的,所述将登录信息中的所述标记信息通过认证服务器进行解密,并验证解密后的所述标记信息是否与登录信息中的所述设备外网IP地址对应,包括:
将所述标记信息发送至认证服务器进行解密,提取用户信息,判断用户信息是否有效;
若判断用户信息有效则提取解密后的设备外网IP地址信息,比对判断解密后的设备外网IP地址信息与所述第一用户名是否相同。
进一步的,所述将所述标记信息发送至认证服务器进行解密,包括:
通过HTTPS协议将所述标记信息发送至认证服务器。
进一步的,所述根据验证结果判定设备是否具备登录权限,包括:
若比对判断解密后的设备外网IP地址信息与所述第一用户名相同,所述设备具备登录权限;若比对判断解密后的设备外网IP地址信息与所述第一用户名不相同,所述设备不具备登录权限,输出设备伪造提醒。
进一步的,所述认证信息包括第二登录名和第二登录密码;
对应的,所述认证服务器对所述认证信息进行比对认证,包括:
所述认证服务器对所述认证信息进行解密获取所述第二登录名和所述第二登录密码;
将所述第二登录名和所述第二登录密码与预存的用户身份认证信息进行比对,若所述第二登录名和所述第二登录密码与所述用户身份认证信息一致,则认证成功。
在第三方面,本申请实施例提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如第二方面所述的基于MQTT协议的安全登录方法。
本申请实施例由设备通过HTTPS协议向认证服务器发送认证信息,由认证服务器对认证信息进行比对认证,并在认证成功后返回加密的标记信息和对应的设备外网IP地址。进一步通过设备以接收到的标记信息及设备外网IP地址作为登录信息,将登录信息通过TCP协议发送至MQTT服务器。最终,MQTT服务器将登录信息中的标记信息通过认证服务器进行解密,并验证解密后的标记信息是否与登录信息中的设备外网IP地址对应,根据验证结果判定设备是否具备登录权限。采用上述技术手段,可以保障设备登录信息上传的安全性,同时通过使用TCP协议进行数据传输,降低数据传输的成本。
附图说明
图1是本申请实施例一提供的一种基于MQTT协议的安全登录方法的流程图;
图2是本申请实施例一中的基于MQTT协议的安全登录系统的结构示意图;
图3是本申请实施例一中的认证服务器的认证流程图;
图4是本申请实施例一中的信息验证流程图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面结合附图对本申请具体实施例作进一步的详细描述。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部内容。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
本申请提供的基于MQTT协议的安全登录方法,旨在通过HTTPS协议进行用户信息认证,并根据认证结果进行MQTT服务器登录,在进行MQTT服务器登录验证时,MQTT服务器将登录信息中的标记信息通过认证服务器进行解密,并验证解密后的标记信息是否与登录信息中的设备外网IP地址对应,根据验证结果判定设备是否具备登录权限。以此来实现登录信息的安全传输,并同时降低数据传输的成本。相对于现有的数据传输方式,由于MQTT是应用层协议,其下传输层的协议可以是加密的TLS协议,也可以是不加密的TCP协议。在使用不加密的TCP协议进行数据传输时,客户端设备的硬件配置要求低,设备运行时功耗更小,传输时更省流量,服务器也具有更高的吞吐率,同样的配置可以服务更多设备。但是由于数据不加密传输,导致数据传输的安全性低,容易受到黑客的攻击。而使用加密的TLS协议进行数据传输时,其数据传输的安全性相对较高,不易受到黑客攻击。但是其对客户端设备的硬件配置要求较高,设备运行时功耗较高,传输时更耗流量,服务器也具有较低的吞吐率,同样的配置只能服务更少设备。在实际应用中,对应部分设备上报的数据,其对安全性的要求不高,这些数据对黑客没有太大价值,所以不需要使用TLS协议进行加密传输(以此降低成本)。而对应登录MQTT服务器的用户名和密码等相关登录信息,在任何时候都应该使用TLS协议进行加密传输。但由于MQTT协议是一种长连接协议,其从建立链接到断开链接,整个过程要么使用加密的TLS协议进行数据传输,要么使用不加密的TCP协议进行数据传输。其无法在登录时使用加密的TLS协议,又在传输数据时使用不加密的TCP协议,反之亦然。此时使用不加密的TCP协议则无法保证安全性,而使用加密的TLS协议则增加了不必要的成本,导致数据传输时出现一个两难的抉择。可以理解的是,在传统的工作模式下,设备只是通过MQTT协议与MQTT服务器通讯,设备先向MQTT服务器提供用户名和密码进行登录验证,登录成功之后进行数据传输。在整个过程中,只能使用加密的TLS协议或使用不加密的TCP协议,则无论选择哪种数据传输协议,都会出现数据传输安全性低或者数据传输成本高的技术问题。基于此,本申请实施例提供一种基于MQTT协议的安全登录方法,以解决MQTT服务器登录时产生的低安全性问题。
实施例一:
图1给出了本申请实施例一提供的一种基于MQTT协议的安全登录方法的流程图,本实施例中提供的基于MQTT协议的安全登录方法可以由基于MQTT协议的安全登录设备执行,该基于MQTT协议的安全登录设备可以通过软件和/或硬件的方式实现,该基于MQTT协议的安全登录设备可以是两个或多个物理实体构成。一般而言,该基于MQTT协议的安全登录设备可以是相关设备及服务器构成的基于MQTT协议的安全登录系统。
下述以基于MQTT协议的安全登录系统为执行基于MQTT协议的安全登录方法的主体为例,进行描述。参照图1,该基于MQTT协议的安全登录方法具体包括:
S110、设备通过HTTPS协议向认证服务器发送认证信息,由认证服务器对所述认证信息进行比对认证,并在认证成功后返回加密的标记信息和对应的设备外网IP地址至所述设备。
本申请实施例在进行设备登录MQTT服务器时,通过引入一个认证服务的逻辑概念,以解决登录MQTT服务器时的安全性问题。由于在传统的工作模式下,设备需通过MQTT协议与MQTT服务器进行通讯,在进行通讯时,设备先向MQTT服务器提供用于登录服务器的用户名和密码信息,登录成功之后即可进行数据传输。整个过程中,设备只能使用加密的TLS协议或使用不加密的TCP协议进行数据传输。而本申请实施例在传统工作模式下,新增加一个认证服务,在设备登录MQTT服务器时,先通过认证服务器进行登录认证,确定登录身份是否有效。
具体的,参照图2,提供本申请实施例基于MQTT协议的安全登录系统的结构示意图,如图所示,该基于MQTT协议的安全登录系统包括相互信号连接的设备11、认证服务器12和MQTT服务器13。其中,设备11与认证服务器12端基于HTTPS协议进行信息交互,以完成登录认证。另一方面,设备11在与认证服务器12进行登录认证之后,根据认证结果向MQTT服务器13上传登录信息,以登录MQTT服务器13。其中,设备11可以是客户端设备,每一个客户端设备在登录MQTT服务器13时均与认证服务器12进行登录认证,并根据登录认证结果发送登录信息至MQTT服务器13进行登录。认证服务器12可以是独立的服务器设备,也可以是MQTT服务器13的一个插件,根据实际需要设置该认证服务器12,本申请实施例对认证服务器12的具体设置位置不做固定限制。
进一步的,在设备进行登录认证时,基于HTTPS协议向认证服务器发送认证信息,由认证服务器对认证信息进行比对认证,以此来完成设备的登录认证。参照图3,认证服务器的认证流程包括:
S1101、所述认证服务器对所述认证信息进行解密获取所述第二登录名和所述第二登录密码;
S1102、将所述第二登录名和所述第二登录密码与预存的用户身份认证信息进行比对,若所述第二登录名和所述第二登录密码与所述用户身份认证信息一致,则认证成功。
示例性的,设备通过上传用于登录认证的登录名和登录密码信息至认证服务器进行登录认证。定义该登录名为第二登录名,该登录密码为第二登录密码。第二登录名和第二登录密码根据登录认证需要预先进行设置,并将第二登录名和第二登录密码信息存储于认证服务器,作为用户身份认证信息,用于后续认证服务器的比对认证。当认证服务器接收到设备发送的认证信息之后,由于使用HTTPS协议进行认证信息的传输,因此认证服务器接收到认证信息之后需要对认证信息进行解密,得到对应的第二登录名和第二登录密码。进一步根据解密后的第二登录名和第二登录密码与预先存储的用户身份认证信息比对,若用户身份认证信息中存在与第二登录名和第二登录密码相同的信息,则认证成功;若用户身份认证信息中不存在与第二登录名和第二登录密码相同的信息,则认证失败。认证服务器可以根据认证失败的认证结果,返回认证失败提示至设备一端,并进一步提示用户输入正确的认证信息。
而对应认证成功的认证结果,认证服务器返回一个加密的标记信息(token)和对应的设备外网IP地址至设备一端。本申请实施例中,标记信息中包含加密的设备外网IP地址信息、用户信息、有效期和时间戳信息,标记信息用于后续设备登录MQTT服务器时,通过加密的标记信息验证设备上传的登录信息是否有效、是否和一并上传的设备外网IP地址一致。
S120、所述设备以所述标记信息及所述设备外网IP地址作为登录信息,将登录信息通过TCP协议发送至MQTT服务器。
具体的,设备与认证服务器进行登录认证成功之后,接收认证服务器根据认证成功的结果返回的标记信息及设备外网IP地址。根据接收到的这些信息进行MQTT服务器的登录。其中,设备以设备外网IP地址作为用户名,定义为第一用户名,以标记信息作为登录密码,定义为第一登录密码。进一步使用第一用户名和第一登录密码作为登录信息进行MQTT服务器登录。需要说明的是,在将登录信息发送至MQTT服务器进行登录时,是基于TCP协议进行登录信息传输的,也就是说,设备从与MQTT服务器建立链接到之后断开链接,都会基于TCP协议进行数据传输。以此来保障数据传输的低成本。而由于标记信息是预先经过认证服务器加密的,所以当标记信息作为第一登录密码发送至MQTT服务器时,其信息仍然是安全的,不会出现黑客伪造的情况。
S130、所述MQTT服务器接收所述设备发送的登录信息,将登录信息中的所述标记信息通过认证服务器进行解密,并验证解密后的所述标记信息是否与登录信息中的所述设备外网IP地址对应,根据验证结果判定设备是否具备登录权限。
进一步的,在MQTT服务器接收到登录信息之后,对该登录信息进行解析,提取其中的标记信息和设备外网IP地址。根据标记信息和设备外网IP地址进行信息验证,确定对应设备是否具备登录权限。其中,参照图4,信息验证流程包括:
S1301、将所述标记信息发送至认证服务器进行解密,提取用户信息,判断用户信息是否有效;
S1302、若判断用户信息有效则提取解密后的设备外网IP地址信息,比对判断解密后的设备外网IP地址信息与所述第一用户名是否相同。
可以理解的是,由于设备发送的标记信息和设备外网IP地址均来自认证服务器,因此在进行信息验证时,可以借助认证服务器来确定登录信息是来自对应设备还是来自黑客伪造的设备。通过将标记信息发送至认证服务器进行解密,通过对标记信息进行解密可以得到其中的设备外网IP地址信息、用户信息、有效期和时间戳信息。需要说明的是,由于标记信息由认证服务器加密并发送至对应设备,因此,在进行标记信息解密时,可通过认证服务器对应进行解密。进一步的,根据解密后的用户信息,可以与认证服务器此前发送给设备的标记信息的记录进行比对,若发送出去的标记信息中包含了对应的用户信息,则解密得到的用户信息有效,反之则解密的信息无效,可能是信息出错或者出现黑客攻击伪造的情况。对应确定为有效的用户信息,进一步对标记信息解密到的设备外网IP地址信息进行验证,MQTT服务器将解密到的设备外网IP地址信息与接收到的未进行加密的第一用户名(即设备外网IP地址)进行比对,若两者相同,则表示设备外网IP地址(第一用户名)和加密的标记信息(第一登录密码)相对应,且均来自于认证服务器。MQTT服务器与认证服务器可以通过HTTPS协议进行信息交互,以进行对应信息的认证流程。通过HTTPS协议进行信息认证流程,可以保障信息的安全性,避免数据传输链路被攻击,信息被篡改的情况。
进一步的,根据MQTT服务器的信息认证结果,若比对判断解密后的设备外网IP地址信息与第一用户名(设备外网IP地址)相同,则设备具备登录权限;若比对判断解密后的设备外网IP地址信息与第一用户名(设备外网IP地址)不相同,则设备不具备登录权限,输出设备伪造提醒。通过设备登录权限的判定,输出对应的验证结果,完成设备登录。
此外,本申请实施例在设置标记信息时,还可以将该标记信息设置成与设备外网IP地址关联的标识,在登录认证时,由认证服务器将该标识加密成标记信息并将标记信息与设备外网IP地址一并发送至设备一端。认证服务器进一步将该标识与设备外网IP地址关联存储,以用于后续信息的验证。当MQTT服务器接收到标记信息和设备外网IP地址之后,通过认证服务器对标记信息进行解密,提取其中的标识。并进一步根据该标识与设备外网IP地址查询认证服务器,验证认证服务器是否存储有对应关联的标识和设备外网IP地址。若是,则表示信息验证成功,设备具备登录权限。若否,则表示信息验证失败,设备不具备登录权限。本申请实施例对标记信息所包含的信息不做固定限制,具体以能够实现信息验证功能为依据确定。可以理解的是,由于标记信息是经过加密的,其在传输过程中不会被篡改,且需要认证服务器进一步进行信息解密得到标记信息中包含的相关信息。因此,MQTT服务器只需要借助认证服务器验证接收到的标记信息和设备外网IP地址是否对应即可。对于信息的具体表现方式本申请实施例不做固定限制,在此不多赘述。
最终,本申请实施例通过两阶段登录认证与验证,把MQTT服务器的登录分离出来,从而实现登录信息加密,而其他数据传输不加密的数据传输方式,以此可在保障数据传输安全性的同时降低数据传输的成本。此外,本申请实施例通过以设备外网IP地址为用户名,以加密的标记信息为登录密码,在进行MQTT服务器信息验证时,方便MQTT服务器区分登录信息是否来源于黑客伪造的设备。
上述,由设备通过HTTPS协议向认证服务器发送认证信息,由认证服务器对认证信息进行比对认证,并在认证成功后返回加密的标记信息和对应的设备外网IP地址。进一步通过设备以接收到的标记信息及设备外网IP地址作为登录信息,将登录信息通过TCP协议发送至MQTT服务器。最终,MQTT服务器将登录信息中的标记信息通过认证服务器进行解密,并验证解密后的标记信息是否与登录信息中的设备外网IP地址对应,根据验证结果判定设备是否具备登录权限。采用上述技术手段,可以保障设备登录信息上传的安全性,同时通过使用TCP协议进行数据传输,降低数据传输的成本。
实施例二:
本申请实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种基于MQTT协议的安全登录方法,该基于MQTT协议的安全登录方法包括:设备通过HTTPS协议向认证服务器发送认证信息,由认证服务器对所述认证信息进行比对认证,并在认证成功后返回加密的标记信息和对应的设备外网IP地址至所述设备;所述设备以所述标记信息及所述设备外网IP地址作为登录信息,将登录信息通过TCP协议发送至MQTT服务器;所述MQTT服务器接收所述设备发送的登录信息,将登录信息中的所述标记信息通过认证服务器进行解密,并验证解密后的所述标记信息是否与登录信息中的所述设备外网IP地址对应,根据验证结果判定设备是否具备登录权限。
存储介质——任何的各种类型的存储器设备或存储设备。术语“存储介质”旨在包括:安装介质,例如CD-ROM、软盘或磁带装置;计算机系统存储器或随机存取存储器,诸如DRAM、DDR RAM、SRAM、EDO RAM,兰巴斯(Rambus)RAM等;非易失性存储器,诸如闪存、磁介质(例如硬盘或光存储);寄存器或其它相似类型的存储器元件等。存储介质可以还包括其它类型的存储器或其组合。另外,存储介质可以位于程序在其中被执行的第一计算机系统中,或者可以位于不同的第二计算机系统中,第二计算机系统通过网络(诸如因特网)连接到第一计算机系统。第二计算机系统可以提供程序指令给第一计算机用于执行。术语“存储介质”可以包括驻留在不同位置中(例如在通过网络连接的不同计算机系统中)的两个或更多存储介质。存储介质可以存储可由一个或多个处理器执行的程序指令(例如具体实现为计算机程序)。
当然,本申请实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的基于MQTT协议的安全登录方法,还可以执行本申请任意实施例所提供的基于MQTT协议的安全登录方法中的相关操作。
上述实施例中提供的基于MQTT协议的安全登录系统、存储介质可执行本申请任意实施例所提供的基于MQTT协议的安全登录方法,未在上述实施例中详尽描述的技术细节,可参见本申请任意实施例所提供的基于MQTT协议的安全登录方法。
上述仅为本申请的较佳实施例及所运用的技术原理。本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行的各种明显变化、重新调整及替代均不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,而本申请的范围由权利要求的范围决定。

Claims (9)

1.一种基于MQTT协议的安全登录系统,其特征在于,包括:相互信号连接的设备、认证服务器和MQTT服务器;
所述设备用于通过HTTPS协议向认证服务器发送认证信息,并接收所述认证服务器比对认证成功后返回的加密的标记信息和对应的设备外网IP地址,其中,所述标记信息包含加密的设备外网IP地址信息、用户信息、有效期和时间戳信息;所述设备还以所述标记信息及所述设备外网IP地址作为登录信息,将登录信息通过TCP协议发送至所述MQTT服务器;
所述MQTT服务器用于接收所述设备发送的登录信息,将登录信息中的所述标记信息通过认证服务器进行解密,并验证解密后的所述标记信息是否与登录信息中的所述设备外网IP地址对应,根据验证结果判定设备是否具备登录权限。
2.根据权利要求1所述的基于MQTT协议的安全登录系统,其特征在于:所述认证服务器为独立服务器或所述MQTT服务器的插件。
3.一种基于MQTT协议的安全登录方法,其特征在于,包括:
设备通过HTTPS协议向认证服务器发送认证信息,由认证服务器对所述认证信息进行比对认证,并在认证成功后返回加密的标记信息和对应的设备外网IP地址至所述设备,其中,所述标记信息包含加密的设备外网IP地址信息、用户信息、有效期和时间戳信息;
所述设备以所述标记信息及所述设备外网IP地址作为登录信息,将登录信息通过TCP协议发送至MQTT服务器;
所述MQTT服务器接收所述设备发送的登录信息,将登录信息中的所述标记信息通过认证服务器进行解密,并验证解密后的所述标记信息是否与登录信息中的所述设备外网IP地址对应,根据验证结果判定设备是否具备登录权限。
4.根据权利要求3所述的基于MQTT协议的安全登录方法,其特征在于,所述设备以所述标记信息及所述设备外网IP地址作为登录信息,将登录信息通过TCP协议发送至MQTT服务器,包括:
所述设备以所述设备外网IP地址作为第一用户名,以所述标记信息作为第一登录密码,使用所述第一用户名和所述第一登录密码进行MQTT服务器登录。
5.根据权利要求4所述的基于MQTT协议的安全登录方法,其特征在于,所述标记信息包含加密的设备外网IP地址信息和用户信息;
对应的,所述将登录信息中的所述标记信息通过认证服务器进行解密,并验证解密后的所述标记信息是否与登录信息中的所述设备外网IP地址对应,包括:
将所述标记信息发送至认证服务器进行解密,提取用户信息,判断用户信息是否有效;
若判断用户信息有效则提取解密后的设备外网IP地址信息,比对判断解密后的设备外网IP地址信息与所述第一用户名是否相同。
6.根据权利要求5所述的基于MQTT协议的安全登录方法,其特征在于,所述将所述标记信息发送至认证服务器进行解密,包括:
通过HTTPS协议将所述标记信息发送至认证服务器。
7.根据权利要求5所述的基于MQTT协议的安全登录方法,其特征在于,所述根据验证结果判定设备是否具备登录权限,包括:
若比对判断解密后的设备外网IP地址信息与所述第一用户名相同,所述设备具备登录权限;若比对判断解密后的设备外网IP地址信息与所述第一用户名不相同,所述设备不具备登录权限,输出设备伪造提醒。
8.根据权利要求3所述的基于MQTT协议的安全登录方法,其特征在于,所述认证信息包括第二登录名和第二登录密码;
对应的,所述认证服务器对所述认证信息进行比对认证,包括:
所述认证服务器对所述认证信息进行解密获取所述第二登录名和所述第二登录密码;
将所述第二登录名和所述第二登录密码与预存的用户身份认证信息进行比对,若所述第二登录名和所述第二登录密码与所述用户身份认证信息一致,则认证成功。
9.一种包含计算机可执行指令的存储介质,其特征在于,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求4-8任一所述的基于MQTT协议的安全登录方法。
CN202010117787.5A 2020-02-25 2020-02-25 一种基于mqtt协议的安全登录系统及方法 Active CN111314366B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010117787.5A CN111314366B (zh) 2020-02-25 2020-02-25 一种基于mqtt协议的安全登录系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010117787.5A CN111314366B (zh) 2020-02-25 2020-02-25 一种基于mqtt协议的安全登录系统及方法

Publications (2)

Publication Number Publication Date
CN111314366A CN111314366A (zh) 2020-06-19
CN111314366B true CN111314366B (zh) 2022-07-08

Family

ID=71152947

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010117787.5A Active CN111314366B (zh) 2020-02-25 2020-02-25 一种基于mqtt协议的安全登录系统及方法

Country Status (1)

Country Link
CN (1) CN111314366B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111787125B (zh) * 2020-08-05 2021-09-28 安徽江淮汽车集团股份有限公司 信息交互系统及方法
CN113098863B (zh) * 2021-03-31 2022-03-11 郑州信大捷安信息技术股份有限公司 一种基于tls+mqtt协议的物联网双认证方法和系统
CN113285807B (zh) * 2021-05-14 2022-10-11 广东美房智高机器人有限公司 一种智能设备入网鉴权的方法和系统
CN113612605B (zh) * 2021-08-02 2023-09-26 中电信量子科技有限公司 使用对称密码技术增强mqtt协议身份认证方法、系统和设备
CN113992735B (zh) * 2021-11-23 2024-05-24 康佳集团股份有限公司 一种mqtt连接系统及其连接方法、服务器和存储介质
CN116095164B (zh) * 2023-01-06 2023-12-12 东方合智数据科技(广东)有限责任公司 基于通信协议的设备连接入网方法、设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109672675A (zh) * 2018-12-20 2019-04-23 成都三零瑞通移动通信有限公司 一种基于OAuth2.0的密码服务中间件的WEB认证方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2629488B1 (en) * 2012-02-17 2015-12-16 OSAN Technology Inc. Authentication system, authentication method, and network storage appliance
CN103716285A (zh) * 2012-09-29 2014-04-09 西门子公司 一种单点登录方法、代理服务器及系统
CN104767731B (zh) * 2015-03-12 2017-11-03 江苏中天科技软件技术有限公司 一种Restful移动交易系统身份认证防护方法
US10943005B2 (en) * 2017-11-22 2021-03-09 Aeris Communications, Inc. Secure authentication of devices for internet of things
CN107968745A (zh) * 2018-01-17 2018-04-27 北京慧正博兴科技服务有限公司 一种基于动态令牌双因子二维码开门系统及实现方法
CN109040098A (zh) * 2018-08-23 2018-12-18 四川长虹电器股份有限公司 一种基于jwt实现mqtt协议认证的方法
CN109639642B (zh) * 2018-11-12 2022-04-12 平安科技(深圳)有限公司 基于mqtt的安全认证方法、装置及存储介质
CN109743170B (zh) * 2018-11-30 2021-12-10 视联动力信息技术股份有限公司 一种流媒体登录以及数据传输加密的方法和装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109672675A (zh) * 2018-12-20 2019-04-23 成都三零瑞通移动通信有限公司 一种基于OAuth2.0的密码服务中间件的WEB认证方法

Also Published As

Publication number Publication date
CN111314366A (zh) 2020-06-19

Similar Documents

Publication Publication Date Title
CN111314366B (zh) 一种基于mqtt协议的安全登录系统及方法
US10382485B2 (en) Blockchain-assisted public key infrastructure for internet of things applications
CN100580610C (zh) 动态网络中的安全链路管理方法
CN107659406B (zh) 一种资源操作方法及装置
KR100980831B1 (ko) 일회용 패스워드를 이용한 신뢰성 있는 통신 시스템 및방법
EP1551149B1 (en) Universal secure messaging for remote security tokens
US7669229B2 (en) Network protecting authentication proxy
US20070089163A1 (en) System and method for controlling security of a remote network power device
CN108769007B (zh) 网关安全认证方法、服务器及网关
KR20060045440A (ko) 패스워드 보호 비밀 데이터의 노출 없이 통신 네트워크을통해 이 비밀 데이터를 복구하는 방법 및 시스템
US9998287B2 (en) Secure authentication of remote equipment
CN111355695B (zh) 一种安全代理方法和装置
CN111629012B (zh) 通信方法、装置及门禁系统、设备、存储介质
EP4037250A1 (en) Message transmitting system with hardware security module
EP4260587A1 (en) Key provisioning method and related products
CN109583154A (zh) 一种基于Web中间件访问智能密码钥匙的系统及方法
CN113766450A (zh) 车辆虚拟钥匙共享方法及移动终端、服务器、车辆
US12047494B2 (en) Protected protocol for industrial control systems that fits large organizations
CN118174948A (zh) 一种多通道安全信息传输组网方法
JPH10242957A (ja) ユーザ認証方法およびシステムおよびユーザ認証用記憶媒体
CN111953683A (zh) 一种设备的认证方法、装置、存储介质及认证系统
CN111356132B (zh) 蓝牙访问控制方法、系统、电子设备及存储介质
CN110912857B (zh) 移动应用间共享登录的方法、存储介质
CN108989302B (zh) 一种基于密钥的opc代理连接系统和连接方法
CN107682380B (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
CP03 Change of name, title or address

Address after: 510000 room 306, 3rd floor, 43 Sicheng Road, software park, Tianhe District, Guangzhou City, Guangdong Province

Patentee after: GUANGZHOU ZHIYUAN ELECTRONICS Co.,Ltd.

Address before: 510000 room 517, 1023 Gaopu Road, Tianhe Software Park, Tianhe District, Guangzhou City, Guangdong Province

Patentee before: GUANGZHOU ZHIYUAN ELECTRONICS Co.,Ltd.

CP03 Change of name, title or address