1.一种基于MQTT的安全认证方法,应用于电子装置,其特征在于,所述方法包括:创建步骤:根据客户端发送的注册请求,创建虚拟账号及群体身份,并向客户端返回该虚拟账号及群体身份;
第一接收步骤:接收客户端发送的登录请求,所述登录请求包括客户端标识符、虚拟账号,以及经过预设加密规则加密后得到的密码;
第一认证步骤:根据接收到的客户端标识符、虚拟账号及所述加密后得到的密码,利用预设的认证规则进行认证,若认证通过,则与客户端建立订阅连接;
第二接收步骤:接收客户端发送的主题订阅请求;
第二认证步骤:根据接收到的主题订阅请求,将订阅主题与主题列表进行对比认证,若主题列表中存在所述订阅主题,则认证通过,根据订阅主题向客户端推送订阅信息。
2.根据权利要求1所述的基于MQTT的安全认证方法,其特征在于,所述预设的认证规则包括:记录接收到登录请求时刻的时间戳,记为第二时间戳;
根据所述接收到的密码,利用预设方式进行提取得到所述接收到的密码中的第一时间戳;
根据客户端标识符、虚拟账号及所述提取的第一时间戳,利用算法调用指令调用该客户端对应的加密算法,对所述虚拟账号及所述客户端标识符中代表群体身份的字符进行预设加密规则的加密后得到认证密码;
将所述接收到的密码与所述认证密码进行对比;
若所述接收到的密码与所述认证密码一致,则计算所述提取的第一时间戳与所述第二时间戳之间的时间差值,将所述时间差值与预设时间阈值进行对比,若所述时间差值小于预设时间阈值,则认证通过。
3.根据权利要求1或2所述的基于MQTT的安全认证方法,其特征在于,所述预设的加密规则包括:将所述虚拟账号与所述客户端标识符中代表群体身份的字符拼接生成第一字符串;
将所述第一字符串中的字符进行倒序排列得到第二字符串;
根据算法调用指令,从加密算法组中调用第一加密算法及第二加密算法;
利用第一加密算法对所述第二字符串进行加密得到第一密文;
利用第二加密算法对所述第二字符串进行加密得到第二密文;
将所述第一密文与第二密文进行拼接得到第三密文;
将得到的第三密文、分隔符及第一时间戳进行拼接得到密码并输出。
4.根据权利要求1所述的基于MQTT的安全认证方法,其特征在于,所述第一认证步骤包括:统计预设周期内每个客户端发送登录请求的次数,若登录请求的次数小于预设次数,则认证通过,若登录请求的次数大于预设次数,则认证失败,在预设时间内禁止接收该客户端发送登录请求。
5.根据权利要求1所述的基于MQTT的安全认证方法,其特征在于,该方法还包括:实时统计每个群体身份所连接的设备数,判断每个群体身份所连接的设备数是否大于预设值,若某群体身份所连接的设备数大于预设值,则禁止其他设备接入该群体身份。
6.一种电子装置,其特征在于,所述电子装置包括:存储器、处理器及显示器,所述存储器上存储有安全认证程序,所述安全认证程序被所述处理器执行,可实现如下步骤:创建步骤:根据客户端发送的注册请求,创建虚拟账号及群体身份,并向客户端返回该虚拟账号及群体身份;
第一接收步骤:接收客户端发送的登录请求,所述登录请求包括客户端标识符、虚拟账号,以及经过预设加密规则加密后得到的密码;
第一认证步骤:根据接收到的客户端标识符、虚拟账号及所述加密后得到的密码,利用预设的认证规则进行认证,若认证通过,则与客户端建立订阅连接;
第二接收步骤:接收客户端发送的主题订阅请求;
第二认证步骤:根据接收到的主题订阅请求,将订阅主题与主题列表进行对比认证,若主题列表中存在所述订阅主题,则认证通过,根据订阅主题向客户端推送订阅信息。
7.根据权利要求6所述的电子装置,其特征在于,所述预设的认证规则包括:记录接收到登录请求时刻的时间戳,记为第二时间戳;
根据所述接收到的密码,利用预设方式进行提取得到所述接收到的密码中的第一时间戳;
根据客户端标识符、虚拟账号及所述提取的第一时间戳,利用算法调用指令调用该客户端对应的加密算法,对所述虚拟账号及所述客户端标识符中代表群体身份的字符进行预设加密规则的加密后得到认证密码;
将所述接收到的密码与所述认证密码进行对比;
若所述接收到的密码与所述认证密码一致,则计算所述提取的第一时间戳与所述第二时间戳之间的时间差值,将所述时间差值与预设时间阈值进行对比,若所述时间差值小于预设时间阈值,则认证通过。
8.根据权利要求6或7所述的电子装置,其特征在于,所述预设的加密规则包括:将所述虚拟账号与所述客户端标识符中代表群体身份的字符拼接生成第一字符串;
将所述第一字符串中的字符进行倒序排列得到第二字符串;
根据算法调用指令,从加密算法组中调用第一加密算法及第二加密算法;
利用第一加密算法对所述第二字符串进行加密得到第一密文;
利用第二加密算法对所述第二字符串进行加密得到第二密文;
将所述第一密文与第二密文进行拼接得到第三密文;
将得到的第三密文、分隔符及第一时间戳进行拼接得到密码并输出。
9.根据权利要求6所述的电子装置,其特征在于,所述第一认证步骤包括:统计预设周期内每个客户端发送登录请求的次数,若登录请求的次数小于预设次数,则认证通过,若登录请求的次数大于预设次数,则认证失败,在预设时间内禁止接收该客户端发送登录请求。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中包括安全认证程序,所述安全认证程序被处理器执行时,可实现如权利要求1至5中任一项所述基于MQTT的安全认证方法的步骤。