一种电子锁的一次性密码验证方法技术

技术编号:27410523 阅读:27 留言:0更新日期:2021-02-21 14:25
本发明专利技术公开了一种电子锁的一次性密码验证方法,包括时间模块、密码输入模块以及处理器,处理器内设置有一次性密码生成模块和一次性密码校验模块、锁定计数模块以及统计模块,包括以下步骤:一次性密码生成模块生成一次性密码,处理器在接收到输入密码后锁定计数模块将一次性密码生成模块锁定,并且进入计数模式,当一次性密码校验模块对比发现输入密码与一次性密码比对不通过时,统计模块统计出两个密码中不匹配的数字的个数,并与阈值比较,若大于阈值,则开锁失败,若小于阈值则提示重新输入密码,同时锁定计数模块进行计数,将计得的数与预设值相比,若大于预设值则开锁失败。本发明专利技术在提高了锁安全性的同时也增加了锁的容错率。容错率。容错率。

【技术实现步骤摘要】
一种电子锁的一次性密码验证方法


[0001]本专利技术涉及电子锁领域,尤其涉及一种电子锁的一次性密码验证方法。

技术介绍

[0002]随着科学技术的进步,电子锁已经被普及使用。目前市面上的电子锁的工作方式一般为管理员在锁上设置一组数字密码,然后在关锁状态下,通过输入事先设置好的密码数字,即可通过权限认证并执行开锁。传统的电子锁由于密码值固定,密码有泄露的风险,同时也存在人为暴力破解密码的风险。现有技术中,为了增加电子锁的安全性,部分电子锁选择采用一次性密码验证的方式,但是一次性密码验证方式中密码只能使用一次,即密码在使用过一次之后,需要重新生成密码,或短时间内需要输入准确的密码,但是老年人或者视线模糊的人由于视力问题,在输入密码时,会出现输错,而造成电子锁的一次性密码更新过于频繁,或者输入的过程过慢,导致密码还未输入完成,电子锁就更换了一次性密码,从而出现需输入多次密码才能将电子锁开启的情况,这对于老年人或视线模糊的人来说非常的不友好,且浪费了时间。

技术实现思路

[0003]针对现有技术中的不足,本专利技术提供一种电子锁的一次性密码验证方法,来解决现有的电子锁中一次性密码的容错率太低而给老年人或视线模糊的人带来的不便。
[0004]本专利技术通过以下技术方案实现。
[0005]一种电子锁的一次性密码验证方法,包括时间模块、密码输入模块以及处理器,所述处理器内设置有一次性密码生成模块、一次性密码校验模块、锁定计数模块以及统计模块,所述一次性密码校验模块控制驱动模块,包括以下步骤:A)所述一次性密码生成模块依据所述时间模块提供的时间信息产生一次性密码;B)所述处理器在接收到所述密码输入模块传输的第一个数字后,所述锁定计数模块使所述一次性密码生成模块处于锁定状态,并进入计数模式;C)所述一次性密码校验模块将所述输入密码与所述一次性密码生成模块生成的密码进行比对,若所述输入密码与所述一次性密码生成模块生成的密码比对成功,则执行D步骤,若比对不成功,则执行E步骤;D)驱动开锁,所述锁定计数模块解除锁定;E)所述统计模块统计出所述输入密码与所述一次性密码生成模块生成的密码中每一位上不匹配的数字的个数,若统计出的个数值大于预设值时,则执行G步骤;若统计出的个数小于预设值时,则执行F步骤;F)提示重新输入密码,且所述锁定计数模块进行计数,将计数得到的值与阈值比较,若所述锁定计数模块的数值小于阈值时,执行步骤C,若所述锁定计数模块的数值大于阈值,则执行步骤G;G)开锁失败,发出警报,所述锁定计数模块解除锁定。
[0006]作为优选,所述一次性密码生成模块包括计数器T和存储模块,工作过程为:利用所述时间模块和所述处理器生成4字节的系统秘钥ID;系统秘钥ID与计数器T作为分散因子,用DES加密,生成8字节密文,前4字节为滚动码A,后4字节为加密密文A;所述8字节密文存储在存储模块中,所述计数器T提取出8字节密文并与所述计数器T重组,生成一组9位数
的数字密码。
[0007]作为优选,所述一次性密码校验模块包括比较模块与反向推理模块,工作步骤为:输入密码通过所述反向推理模块进行反向推理,得出滚动码B和加密密文B,所述比较模块先判断滚动码B是否大于滚动码A,若否,则执行步骤E;若是,则判断加密密文B与加密密文A是否一致。
[0008]作为优选,所述系统秘钥ID的生成公式是系统秘钥ID=当前时间戳+ 处理器。
[0009]作为优选,所述8字节密文与所述计数器T重组的过程为,前4字节为滚动码A,后4字节为加密密文A,在末尾插入一位0~9之间的随机数,该随机数为整数,该随机数根据二进制变为4为数字,4位数字都为0或1,根据这4位数字,按照顺序,依次提取滚动码A和加密密文A,当数字为0时,分别按照从左到右的顺序提取滚动码A的二个字节,依次顺延,形成8个数字密码后在末尾加入该随机数,形成9个数字的密码。
[0010]作为优选,所述的步骤E中,所述预设值可根据用户实际情况进行设置。
[0011]作为优选,所述步骤F中的阈值可根据用户需要自行设置。
[0012]与现有技术相比:所述处理器在接收到第一个数字后,所述锁定计数模块将所述一次性密码生成模块锁定,并进入计数模式,使其在用户设置的次数内,不会更新密码,从而增加了电子锁的容错率,有效避免了当密码未完整输入,所述一次性密码生成模块就产生新的密码,或是每输错一次密码,所述一次性密码生成模块就要产生新的密码的情况发生,在增加了安全性的同时也方便了人们的操作,使用户的使用体验更好。
附图说明
[0013]图1为本专利技术的流程图。
[0014]图2为本专利技术的结构示意图。
具体实施方式
[0015]下面结合附图与具体实施方式,对本专利技术做进一步描述。
[0016]一种电子锁的一次性密码验证方法,包括时间模块、密码输入模块以及处理器,所述处理器内设置有一次性密码生成模块、一次性密码校验模块、锁定计数模块以及统计模块,所述一次性密码校验模块控制驱动模块,包括以下步骤:A)所述一次性密码生成模块依据所述时间模块提供的时间信息产生一次性密码;B)所述处理器在接收到输入密码后,所述锁定计数模块使所述一次性密码生成模块处于锁定状态,并进入计数模式;C)所述一次性密码校验模块将所述输入密码与所述一次性密码生成模块生成的密码进行比对,若所述输入密码与所述一次性密码生成模块生成的密码比对成功,则执行D步骤,若比对不成功,则执行E步骤;D)驱动开锁,所述锁定计数模块解除锁定;E)所述统计模块统计出所述输入密码与所述一次性密码生成模块生成的密码中每一位上不匹配的数字的个数,若统计出的个数值大于预设值时,则执行G步骤;若统计出的个数小于预设值时,则执行F步骤;F)提示重新输入密码,且所述锁定计数模块进行计数,将计数得到的值与阈值比较,若所述锁定计数模块的数值小于阈值时,执行步骤C,若所述锁定计数模块的数值大于阈值,则执行步骤G;G)开锁失败,发出警报,所述锁定计数模块解除锁定。
[0017]一次性密码生成模块使用时间模块提供的时间信息以及处理器来生成系统秘钥
ID,具体的生成公式为系统秘钥ID=当前时间戳+处理器。举个例子,首先时间模块和处理器形成了一个1234的系统秘钥ID,然后系统秘钥ID与计数器T作为分散因子,用DES加密,生成8字节密文,前4字节为滚动码A,后4字节为加密密文A,那么滚动码A为1234,加密密文A为5678。
[0018]处理器随机插入一个随机数5,5的二进制数为0101,那么二进制数的第一位是0,密码生成过程中,前两位是1、5,然后第二位是1,所以之后的两位是2、3,然后第三位是0,之后的两位是4、6,因此最后的两位是7、8,因此8位密码为15234678,加上随机数5,最终的9位密码为152346785。
[0019]假设随机数为8,8的二进制数为1000,那么二进制的第一位是1,密码生成过程中,前两位是1、2,然后第二是0,所以之后的两位是3、5,然后第三位是1,之后的两位是4,6本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种电子锁的一次性密码验证方法,其特征在于,包括时间模块、密码输入模块以及处理器,所述处理器内设置有一次性密码生成模块、一次性密码校验模块、锁定计数模块以及统计模块,所述一次性密码校验模块控制驱动模块,包括以下步骤:A)所述一次性密码生成模块依据所述时间模块提供的时间信息产生一次性密码;B)所述处理器在接收到所述密码输入模块传输的第一个数字后,所述锁定计数模块使所述一次性密码生成模块处于锁定状态,并进入计数模式;C)所述一次性密码校验模块将所述输入密码与所述一次性密码生成模块生成的密码进行比对,若所述输入密码与所述一次性密码生成模块生成的密码比对成功,则执行D步骤,若比对不成功,则执行E步骤;D)驱动开锁,所述锁定计数模块解除锁定;E)所述统计模块统计出所述输入密码与所述一次性密码生成模块生成的密码中每一位上不匹配的数字的个数,若统计出的个数值大于预设值时,则执行G步骤;若统计出的个数小于预设值时,则执行F步骤;F)提示重新输入密码,且所述锁定计数模块进行计数,将计数得到的值与阈值比较,若所述锁定计数模块的数值小于阈值时,执行步骤C,若所述锁定计数模块的数值大于阈值,则执行步骤G;G)开锁失败,发出警报,所述锁定计数模块解除锁定。2.根据权利要求1所述的一种电子锁的一次性密码验证方法,其特征在于,所述一次性密码生成模块包括计数器T和存储模块,工作过程为:利用所述时间模块和所述处理器生成4字节的系统秘钥ID;系统秘钥ID与计数器T作为分散因子,用DES加密,生成...

【专利技术属性】
技术研发人员:沈哲明黄智杨友喜
申请(专利权)人:宁波久婵物联科技有限公司
类型:发明
国别省市:

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

1