掌桥专利:专业的专利平台
掌桥专利
首页

智能门锁的动态密码生成方法及相关设备

文献发布时间:2024-04-18 20:01:23


智能门锁的动态密码生成方法及相关设备

技术领域

本申请涉及智能门锁技术领域,尤其是涉及一种智能门锁的动态密码生成方法及相关设备。

背景技术

智能门锁作为门禁的管理手段,已经广泛应用于长租公寓、短租公寓、学校工厂的宿管系统、政府保障性住房等,该智能门锁均须带联网通讯功能,以便集中管理。

目前,智能门锁的联网通讯方式包括窄带物联网(Narrow Band Internet ofThings,NB-IoT)、WIFI、远距离无线电(Long Range Radio,LoRa)、蓝牙等,智能门锁作为管理的入口,必须确保100%的开锁,但智能门锁与云端的通讯却不可能保证100%通讯连接,因此当智能门锁无法进行正常通讯连接时,用户无法通过预设终端(例如,用户手机)的应用程序连接网络对联网的智能门锁进行远程授权进行开锁,或用户通过刷脸进行开锁操作。因此,当网络出现故障后,导致用户无法正常使用智能门锁,必需修复好网络才可以使用,如果出现网络运营商的网络无法使用,将使整个门锁系统的无法使用。

发明内容

鉴于以上内容,本申请提供一种智能门锁的动态密码生成方法及相关设备,可以有效地避免网络的不稳定性对智能门锁造成的影响。

本申请的第一方面提供一种智能门锁的动态密码生成方法,所述方法包括:

获取智能门锁的标识信息,及获取预先存储的管理用户的管理密码;

根据所述标识信息生成第一加密因子,及根据所述管理密码生成第二加密因子;

获取所述管理用户对应的开始时间戳、结束时间戳和开门次数;

根据所述开始时间戳、所述结束时间戳和所述开门次数生成动态密码明文;

根据所述第一加密因子对所述动态密码明文进行加密,得到动态密码密文;或

根据所述第二加密因子对所述动态密码明文进行加密,得到动态密码密文。

在一个可选的实施方式中,所述根据所述第一加密因子对所述动态密码明文进行加密,得到动态密码密文包括:

将所述动态密码明文与所述标识信息进行整除和取余运算,得到第一整数和第一余数;

根据所述第一整数和所述第一余数生成长整数;

计算所述管理密码的校验和数值;

将所述长整数与所述校验和数值进行整除和取余运算,得到第二整数和第二余数;

根据所述第二整数和所述第二余数确定目标加密数据;

将所述目标加密数据与所述第一加密因子进行或与运算,生成第一动态密码密文;

将所述第一动态密码密文确定为所述动态密码密文。

在一个可选的实施方式中,所述根据所述第二加密因子对所述动态密码明文进行加密,得到动态密码密文包括:

将所述目标加密数据与所述第二加密因子进行或与运算,生成第二动态密码密文;

将所述第二动态密码密文确定为所述动态密码密文。

在一个可选的实施方式中,所述计算所述管理密码的校验和数值包括:

获取所述管理密码的中每个字段信息对应的字段格式,其中所述字段格式包括数字格式和英文格式;

当确定所述字段信息对应的所述字段格式为所述数字格式时,根据每个所述字段信息确定所述校验和数值;

当确定所述字段信息存在所述字段信息对应的所述字段格式为所述英文格式时,将所述字段信息转换为标准代码值,根据所述标准代码值确定所述校验和数值。

在一个可选的实施方式中,所述根据所述第二整数和所述第二余数确定目标加密数据包括:

将所述第二整数转换成对应的第一二进制数值,及将所述第二余数转换成对应的第二二进制数值;

对所述第一二进制数值进行左移操作,得到第一目标二进制数值,及对所述第二二进制数值进行所述左移操作,得到第二目标二进制数值;

根据所述第一目标二进制数值和所述第二目标二进制数值进行或与运算,得到目标二进制数值;

对所述目标二进制数值进行转换,得到所述目标加密数据。

在一个可选的实施方式中,所述方法包括:

当接收到所述管理用户输入的所述动态密码密文时,对所述动态密码密文进行解密,得到目标开锁密码;

验证所述目标开锁密码和所述动态密码明文是否一致;

当所述目标开锁密码和所述动态密码明文一致时,确定所述动态密码密文有效,允许所述管理用户利用所述动态密码密文开锁;

当所述目标开锁密码和所述动态密码明文不一致时,确定所述动态密码密文无效,不允许所述管理用户利用所述动态密码密文开锁。

在一个可选的实施方式中,所述对所述动态密码密文进行解密,得到目标开锁密码包括:

将所述动态密码密文与所述第一加密因子进行或与运算,生成第三整数和第三余数;

根据所述第三整数、第三余数和所述标识信息确定第一目标开锁密码;

将所述动态密码密文与所述第二加密因子进行或与运算,生成第四整数和第四余数;

根据所述第四整数、第四余数和所述管理密码确定第二目标开锁密码;

将所述第一目标开锁密码和所述第二目标开锁密码确定为所述目标开锁密码。

本申请第二方面提供一种智能门锁的动态密码生成装置,所述装置包括:

第一获取模块,用于获取智能门锁的标识信息,及获取预先存储的管理用户的管理密码;

第一生成模块,用于根据所述标识信息生成第一加密因子,及根据所述管理密码生成第二加密因子;

第二获取模块,用于获取所述管理用户对应的开始时间戳、结束时间戳和开门次数;

第二生成模块,用于根据所述开始时间戳、所述结束时间戳和所述开门次数生成动态密码明文;

第一加密模块,用于根据所述第一加密因子对所述动态密码明文进行加密,得到动态密码密文;

第二加密模块,用于根据所述第二加密因子对所述动态密码明文进行加密,得到动态密码密文。

本申请第三方面提供一种智能门锁,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述智能门锁的动态密码生成方法的步骤。

本申请第四方面提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述智能门锁的动态密码生成方法的步骤。

综上所述,本申请提供的智能门锁的动态密码生成方法及相关设备,通过获取标识信息和管理密码,并根据标识信息生成第一加密因子,及根据管理密码生成第二加密因子,进一步获取管理用户对应的开始时间戳、结束时间戳和开门次数,并根据开始时间戳、结束时间戳和开门次数生成动态密码明文,进一步根据第一加密因子对动态密码明文进行加密,得到动态密码密文;或根据第二加密因子对动态密码明文进行加密,得到动态密码密文。生成动态密码密文的过程是不需要智能门锁联网通信,且生成动态密码密文后,用户可以直接利用动态密码密文开锁,也无需智能门锁联网通讯,可以有效地避免网络的不稳定性对智能门锁密码有效期管理带来的影响,同时保障管理方的运营效率。

附图说明

图1是本申请实施例示出的一种智能门锁的动态密码生成方法的流程图;

图2是本申请实施例示出的另一种智能门锁的动态密码生成方法的流程图;

图3是本申请实施例示出的动态密码明文的加密方法的流程图;

图4是本申请实施例示出的动态密码密文的解密方法的流程图;

图5是本申请实施例示出的智能门锁的动态密码生成装置的功能模块图;

图6是本申请实施例示出的智能门锁的结构示意图。

具体实施方式

本申请以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本申请的限制。如在本申请的说明书中所使用的那样,单数表达形式“一个”、“一种”、“所述”、“上述”、“该”和“这一”旨在也包括复数表达形式,除非其上下文中明确地有相反指示。还应当理解,本申请中使用的术语“及/或”是指包含一个或多个所列出项目的任何或所有可能组合。

以下,术语“第一”、“第二”仅用于描述目的,而不能理解为暗示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征,在本申请实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。

参照图1所示,为本申请实施例示出的一种智能门锁的动态密码生成方法的流程图,所述智能门锁的动态密码生成方法包括以下步骤。

S11,获取智能门锁的标识信息。

每个智能门锁都具有唯一的标识信息,即唯一的字符串标识符,例如10101010。

S12,根据所述标识信息生成第一加密因子。

在一些实施例中,首先可以将标识信息转换成二进制数值,然后再将二进制数值转换成十进制数值,将十进制数值确定为标识信息对应的第一加密因子。例如,假设标识信息为123456,将123456转换成二进制数值可以得到11110001001000000,进一步将11110001001000000转换成十进制数值可以得到99936,即99936为根据标识信息生成的第一加密因子。

S13,获取管理用户对应的开始时间戳、结束时间戳和开门次数。

其中,开始时间戳和接收时间戳是一种时间标记,开始时间戳可以是第一次使用智能门锁进行开锁的时间,结束时间戳可以是本次使用智能门锁的前一次使用智能门锁进行开锁的时间。开门次数是指开始时间戳与结束时间戳之间使用智能门锁进行开锁的累计次数。

在一些实施例中,可以将开始时间戳和结束时间戳转换为UNIX时间戳。Unix时间戳是指从格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至开始时间戳和结束时间戳对应的时刻的总秒数。示例性的,假设开始时间戳为2023年11月30日 08:00:00,对应的 UNIX时间戳为1672070400;又假设结束时间戳为2023年12月05日 20;00:00,对应的UNIX时间戳为1672605600。

S14,根据所述开始时间戳、所述结束时间戳和所述开门次数生成动态密码明文。

在一些实施例中,可以将开始时间戳、结束时间戳和开门次数进行加法运算可以得到动态密码明文。例如,假设开始时间戳为1672070400,结束时间戳为1672605600,开门次数为10次,则动态密码明文=开始时间戳+结束时间戳+开门次数=1672070400+1672605600+10=3344676010。

S15,根据所述第一加密因子对所述动态密码明文进行加密,得到动态密码密文。

因为结束时间戳和开门次数是变化的,导致生成的动态密码明文是发生变化的,后续不管是根据第一加密因子还是第二加密因子对动态密码明文进行加密生成动态密码密文都是变化的,降低了密码被破解的风险,提高了动态密码密文的安全性。

参考图3,为本申请实施例示出的动态密码明文的加密方法的一个流程图,所述动态密码密文的加密方法具体包括以下步骤。

S151,将所述动态密码明文与所述标识信息进行整除和取余运算,得到第一整数和第一余数。

整除是指一个数能够被另一个数整除,即一个数除以另一个数的余数为0。取余运算是指在整数除法中,当被除数不能被除尽时,所剩下的未被除尽部分就是余数,余数的取值范围为0到除数之间(不包括除数)的整数。其中,标识信息作为除数,动态密码明文作为被除数,根据动态密码明文和标识信息进行整除,可以得到一个商值,当动态密码明文除于标识信息可以除尽时,余数为0,当动态密码明文除于标识信息不可以除尽时,可以得到一个余数。因此,将动态密码明文除于标识信息得到的商值称为第一整数,得到的余数称为第一余数。

S152,根据所述第一整数和所述第一余数生成长整数;

在一些实施例中,可以将第一整数和第一余数进行连续排列组合形成一个字符串,将组合形成的字符串称为长整数。例如,假设第一整数为331,第一余数为1241700,组合形成的长整数为3311241700。

S153,计算所述管理密码的校验和数值;

在一个可选的实施方式中,所述计算所述管理密码的校验和数值包括:

获取所述管理密码的中每个字段信息对应的字段格式,其中所述字段格式包括数字格式和英文格式;

当确定所述字段信息对应的所述字段格式为所述数字格式时,根据每个所述字段信息确定所述校验和数值;

当确定所述字段信息存在所述字段信息对应的所述字段格式为所述英文格式时,将所述字段信息转换为标准代码值,根据所述标准代码值确定所述校验和数值。

其中,数字格式是指管理密码中存在的字段信息是阿拉伯数字,即0至9中任意一个数字;英文格式是指英文字母表中的26个字母中任意一个英文。

管理密码中包括的每个字段信息的字段格式可以均是数字格式,也可以均是英文格式,或者即包括数字格式也包括英文格式。当管理密码中的字段信息是数字格式时,表示该字段信息本身就是标准代码值,将每个字段信息进行加法运算得到校验和数值;当管理密码中的字段信息是英文格式时,表示该字段信息不是标准代码值,需要将该字段信息转换成标准代码值,将标准代码值进行加法运算得到校验和数值。其中,标准代码值是指美国信息交换标准代码(American Standard Code for Information Interchange,ASCII)。

S154,将所述长整数与所述校验和数值进行整除和取余运算,得到第二整数和第二余数;

根据步骤S151相同的实施例,可以将长整数除于校验和数值得到第二整数和第二余数。

S155,根据所述第二整数和所述第二余数确定目标加密数据;

当计算得到第二整数和第二余数时,可以进一步根据第二整数和第二余数计算目标加密数据。

在一个可选的实施方式中,所述根据所述第二整数和所述第二余数确定目标加密数据包括:

将所述第二整数转换成对应的第一二进制数值,及将所述第二余数转换成对应的第二二进制数值;

对所述第一二进制数值进行左移操作,得到第一目标二进制数值,及对所述第二二进制数值进行所述左移操作,得到第二目标二进制数值;

根据所述第一目标二进制数值和所述第二目标二进制数值进行或与运算,得到目标二进制数值;

对所述目标二进制数值进行转换,得到所述目标加密数据。

在一些实施例中,分别将第二整数和第二余数转换成对应的二进制值,将第二整数对应的二进制值称为第一二进制值,第二余数对应的二进制值称为第二二进制值。当将第二整数和第二余数都转换成对应的二进制值时,将转换后的二进制值进行左移操作,其中左移操作是指左移一个位置。将第一二进制数值进行左移一个位置后的二进制数值称为第一目标二进制数值;将第二二进制数值进行左移一个位置后的二进制数值称为第二目标二进制数值,进一步根据第一目标二进制数值和第二目标二进制数值进行或与运算后可以得到目标二进制数值。其中或与运算可以包括按位或运算和按位与运算。按位或运算的运算逻辑是对应位中存在任意一位为1时,结果为1,对应位都为0时,结果为0。按位与运算的逻辑是对应位都为1时,结果为1,对应位中存在任意一位为0时,结果为0。将目标二进制数值进行转换可以得到目标加密数据,例如,将二进制数值转换成十进制数值。

S156,将所述目标加密数据与所述第一加密因子进行或与运算,生成所述第一动态密码密文。

根据上述S155步骤中或与运算相同的实施例,可以根据目标加密数据和第一加密因子得到第一动态密码密文。

S157,将所述第一动态密码密文确定为所述动态密码密文。

其中,当根据目标加密数据与第一加密因子计算得到第一动态密码密文,即得到了根据第一加密因子对动态密码明文进行加密得到的动态密码密文。

参照图2所示,为本申请实施例示出的另一种智能门锁的动态密码生成方法的流程图,所述智能门锁的动态密码生成方法还可以包括以下步骤。

S21,获取预先存储的管理用户的管理密码。

用户可以通过用户管理系统中进行身份信息的授权认证登录,将利用用户管理系统进行身份信息验证通过的用户确定为管理用户,每个管理用户在进行身份信息验证是需要添加管理密码,每个管理用户对应一个管理密码。其中,所述管理密码可以是阿拉伯数字和英文的一种或多种组合。

S22,根据所述管理密码生成第二加密因子。

根据步骤S12中相同的实施例方式,可以确定管理密码对应的第二加密因子。

S23,获取所述管理用户对应的开始时间戳、结束时间戳和开门次数。

S24,根据所述开始时间戳、所述结束时间戳和所述开门次数生成动态密码明文。

S25,根据所述第二加密因子对所述动态密码明文进行加密,得到动态密码密文。

根据步骤S15中相同的实施例,可以根据目标加密数据和第二加密因子进行或与运算得到第二动态密码密文,即得到了根据第二加密因子对动态密码明文进行加密得到的动态密码密文。

图1和图2均是智能门锁的动态密码生成方法的流程图,不同的是,图1是基于第一加密因子生成的动态密码密文的流程图,图2是基于第二加密因子生成的动态密码密文的流程图。

参考图4,为本申请实施例示出的动态密码密文的解密方法的流程图,所述动态密码密文的解密方法具体包括以下步骤。

S41,当接收到所述管理用户输入的所述动态密码密文时,对所述动态密码密文进行解密,得到目标开锁密码。

由于动态密码明文是根据开始时间戳、结束时间戳和开门次数生成的,每当用户进行开门时,结束时间戳和开门次数都是会相应发生改变的,因此动态密码明文也会发生改变,同样动态密码密文也会发生改变。

对于智能门锁而言,由于智能门锁是包括键盘的,键盘仅有0至9这10个数字,当管理用户通过智能门锁的键盘输入动态密码密文时,智能门锁会对输入的动态密码密文进行解密,以判断管理用户输入的动态密码密文是否正确。

在一个可选的实施方式中,所述对所述动态密码密文进行解密,得到目标开锁密码包括:

将所述动态密码密文与所述第一加密因子进行或与运算,生成第三整数和第三余数;

根据所述第三整数、第三余数和所述标识信息确定第一目标开锁密码;

将所述动态密码密文与所述第二加密因子进行或与运算,生成第四整数和第四余数;

根据所述第四整数、第四余数和所述管理密码确定第二目标开锁密码;

将所述第一目标开锁密码和所述第二目标开锁密码确定为所述目标开锁密码。

基于第一加密因子生成的动态密码密文和基于第二加密因子生成的动态密码密文是不一致的。在一些实施例中,管理用户可以在第一次使用智能门锁时,在与智能门锁通讯连接的用户端的用户管理系统中选择使用第一加密因子对动态密码明文进行加密,还是使用第二加密因子对动态密码明文进行加密。在其他实施例中,管理用户可以不选择第一加密因子或第二加密因子中的任意一种加密因子对动态密码明文进行加密,智能门锁可以根据第一加密因子对动态密码明文进行加密,生成第一动态密码密文,及根据第二加密因子动态密码明文进行加密,生成第二动态密码密文。管理用户在输入动态密码密文时,既可以选择输入第一动态密码密文,也可以选择输入第二动态密码密文。

因为管理管理用户在输入动态密码密文时,智能门锁并不明确用户输入的动态密码密文时基于第一加密因子生成的,还是基于第二加密因子生成的。智能门锁首先将动态密码密文和第一加密因子进行或与运算,得到两个字节的整数和一个字节的余数,将这两个字节的整数确定为第三整数,和将这一个字节的余数确定为第三余数。因为第一加密因子是根据智能门锁的标识信息生成的,因此根据第三整数、第三余数和标识信息确定管理用户输入的动态密码密文解密后的第一目标开锁密码。在一些实施例中,智能门锁可以将第三整数与标识信息进行乘法运算后,再与第三余数进行加法运算,以得到第一目标开锁密码。

进一步智能门锁将动态密码密文和第二加密因子进行或与运算,得到一个新的两个字节的整数和一个字节的余数,将这重新得到的两个字节的整数确定为第四整数,和将重新得到的一个字节的余数确定为第四余数。因为第二加密因子是根据管理用户的管理密码生成的,因此根据相同的实施例,可以根据第四整数、第四余数和管理密码确定管理用户输入的动态密码密文解密后的第二目标开锁密码。

S42,验证所述目标开锁密码和所述动态密码明文是否一致。

因为动态密码明文是根据开始时间戳、结束时间戳和开门次数生成的,因此不受第一加密因子和第二加密因子影响。智能门锁可以将解密得到的第一目标开锁密码和动态密码明文进行比较,或将第二目标动态密码和动态密码明文进行比较,以确定第一目标开锁密码和第二目标开锁密码中的任意一种目标开锁密码是否与动态密码明文一致。

S43,当所述目标开锁密码和所述动态密码明文一致时,确定所述动态密码密文有效,允许所述管理用户利用所述动态密码密文开锁。

但凡第一目标开锁密码和第二目标开锁密码中存在任意一种目标开锁密码与动态密码明文一致时,都可以确定管理用户通过智能门锁的键盘输入的动态密码密文是有效的,即正确的,开启智能门锁。

S44,当所述目标开锁密码和所述动态密码明文不一致时,确定所述动态密码密文无效,不允许所述管理用户利用所述动态密码密文开锁。

当第一目标开锁密码和第二目标开锁密码中所有的目标开锁密码均存与动态密码明文不一致时,确定管理用户通过智能门锁的键盘输入的动态密码密文是无效,即不正确的,不开启智能门锁。

相比于传统的智能门锁开锁方法,本申请实施例中动态密码密文生成的过程不需要智能门锁联网通信,可以有效地避免网络的不稳定性对智能门锁密码有效期管理带来的影响,同时保障管理方的运营效率。其次相较于传统加解密方法,例如高级加密系统(Advanced Encryption System,AES)或密码散列函数(例如,MD5信息摘要算法)方式对智能门锁密码进行加密,得到智能门锁在网络无法使用的情况下对应的开锁密码,本申请是基于管理用户的特定信息,例如开始时间戳、结束时间戳和开门次数,加密得到的,而加密因子则根据智能门锁的标识多或管理密码生成,降低了动态密码密文被破解的风险,提高智能门锁的安全性。而且AES或MD5都是按16个字节为一个加密单元,从明文到密文,产生的开锁密码长度很长,超过10位以上,超过10位的开始密码很难记忆,而本申请加密得到的动态密码为6至8位数,动态密码密文长度能更满足智能门锁行业的使用要求。

参照图5所示,为本申请实施例示出的智能门锁的动态密码生成装置的功能模块图。

在一些实施例中,所述智能门锁的动态密码生成装置50可以包括多个由计算机程序段所组成的功能模块。所述智能门锁的动态密码生成装置50的各个程序段的计算机程序可以存储于智能门锁的存储器中,并由至少一个处理器所执行,以执行(详见图1和图2描述)智能门锁的动态密码生成的功能。

本实施例中,所述智能门锁的动态密码生成装置50根据其所执行的功能,可以被划分为多个功能模块。所述功能模块可以包括:第一获取模块501、第一生成模块502、第二获取模块503、第二生成模块504、第一加密模块505、第二加密模块506、计算模块507及解密模块508。本申请所称的模块是指一种能够被至少一个处理器所执行并且能够完成固定功能的一系列计算机程序段,其存储在存储器中。在本实施例中,关于各模块的功能将在后续的实施例中详述。

第一获取模块501,用于获取智能门锁的标识信息,及获取预先存储的管理用户的管理密码。

所述第一生成模块502,用于根据所述标识信息生成第一加密因子,及根据所述管理密码生成第二加密因子。

所述第二获取模块503,用于获取所述管理用户对应的开始时间戳、结束时间戳和开门次数。

所述第二生成模块504,用于根据所述开始时间戳、所述结束时间戳和所述开门次数生成动态密码明文。

所述第一加密模块505,用于根据所述第一加密因子对所述动态密码明文进行加密,得到动态密码密文。

所述第一加密模块505,还具体用于:

将所述动态密码明文与所述标识信息进行整除和取余运算,得到第一整数和第一余数;

根据所述第一整数和所述第一余数生成长整数;

计算所述管理密码的校验和数值;

将所述长整数与所述校验和数值进行整除和取余运算,得到第二整数和第二余数;

根据所述第二整数和所述第二余数确定目标加密数据;

将所述目标加密数据与所述第一加密因子进行或与运算,生成第一动态密码密文;

将所述第一动态密码密文确定为所述动态密码密文。

所述第二加密模块506,用于根据所述第二加密因子对所述动态密码明文进行加密,得到动态密码密文。

所述第二加密模块506,还具体用于:

将所述目标加密数据与所述第二加密因子进行或与运算,生成第二动态密码密文;

将所述第二动态密码密文确定为所述动态密码密文。

所述计算模块507,用于:

获取所述管理密码的中每个字段信息对应的字段格式,其中所述字段格式包括数字格式和英文格式;

当确定所述字段信息对应的所述字段格式为所述数字格式时,根据每个所述字段信息确定所述校验和数值;

当确定所述字段信息存在所述字段信息对应的所述字段格式为所述英文格式时,将所述字段信息转换为标准代码值,根据所述标准代码值确定所述校验和数值。

所述计算模块507,还用于:

将所述第二整数转换成对应的第一二进制数值,及将所述第二余数转换成对应的第二二进制数值;

对所述第一二进制数值进行左移操作,得到第一目标二进制数值,及对所述第二二进制数值进行所述左移操作,得到第二目标二进制数值;

根据所述第一目标二进制数值和所述第二目标二进制数值进行或与运算,得到目标二进制数值;

对所述目标二进制数值进行转换,得到所述目标加密数据。

所述解密模块508,用于:

当接收到所述管理用户输入的所述动态密码密文时,对所述动态密码密文进行解密,得到目标开锁密码;

验证所述目标开锁密码和所述动态密码明文是否一致;

当所述目标开锁密码和所述动态密码明文一致时,确定所述动态密码密文有效,允许所述管理用户利用所述动态密码密文开锁;

当所述目标开锁密码和所述动态密码明文不一致时,确定所述动态密码密文无效,不允许所述管理用户利用所述动态密码密文开锁。

所述解密模块508,还具体用于:

将所述动态密码密文与所述第一加密因子进行或与运算,生成第三整数和第三余数;

根据所述第三整数、第三余数和所述标识信息确定第一目标开锁密码;

将所述动态密码密文与所述第二加密因子进行或与运算,生成第四整数和第四余数;

根据所述第四整数、第四余数和所述管理密码确定第二目标开锁密码;

将所述第一目标开锁密码和所述第二目标开锁密码确定为所述目标开锁密码。

应当理解的是,上述实施例提供的智能门锁的动态密码生成方法中的各种变化方式和具体实施例同样适用于本实施例的智能门锁的动态密码生成装置,通过前述对智能门锁的动态密码生成方法的详细描述,本领域技术人员可以清楚的知道本实施例中的智能门锁的动态密码生成装置的实施方法,为了说明书的简洁,在此不再详述。

参阅图6所示,本申请实施例示出的智能门锁的结构示意图。在本申请较佳实施例中,所述智能门锁6包括存储器61、至少一个处理器62及至少一条通信总线63。

本领域技术人员应该了解,图6示出的智能门锁的结构并不构成本申请实施例的限定,所述智能门锁6还可以包括比图示更多或更少的其他硬件或者软件,或者不同的部件布置。

需要说明的是,所述智能门锁6仅为举例,其他现有的或今后可能出现的电子产品如可适应于本申请,也应包含在本申请的保护范围以内,并以引用方式包含于此。

在一些实施例中,所述存储器61中存储有计算机程序,所述计算机程序被所述至少一个处理器62执行时实现如上述的智能门锁的动态密码生成方法中的全部或者部分步骤。在一些实施例中,所述至少一个处理器62是所述智能门锁6的控制核心(ControlUnit),利用各种接口和线路连接整个智能门锁6的各个部件,通过运行或执行存储在所述存储器61内的程序或者模块,以及调用存储在所述存储器61内的数据,以执行智能门锁6的各种功能和处理数据。例如,所述至少一个处理器62执行所述存储器中存储的计算机程序时实现本申请实施例中上述的智能门锁的动态密码生成方法的全部或者部分步骤;或者实现智能门锁的动态密码生成装置的全部或者部分功能。所述至一个处理器62可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能 或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing Unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。

在一些实施例中,所述至少一条通信总线63被设置为实现所述存储器61以及所述至少一个处理器62等之间的连接通信。在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。

所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,既可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。

以上均为本申请的较佳实施例,并非依此限制本申请的保护范围,故:凡依本申请的结构、形状、原理所做的等效变化,均应涵盖于本申请的保护范围之内。

技术分类

06120116546862