CN110443927A - 访客密码生成方法、验证方法、服务器及智能门锁 - Google Patents

访客密码生成方法、验证方法、服务器及智能门锁 Download PDF

Info

Publication number
CN110443927A
CN110443927A CN201910741013.7A CN201910741013A CN110443927A CN 110443927 A CN110443927 A CN 110443927A CN 201910741013 A CN201910741013 A CN 201910741013A CN 110443927 A CN110443927 A CN 110443927A
Authority
CN
China
Prior art keywords
visitors
passwords
coding
days
poor
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.)
Granted
Application number
CN201910741013.7A
Other languages
English (en)
Other versions
CN110443927B (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.)
Beijing Baiyou Technology Co Ltd
Original Assignee
Beijing Baiyou 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 Beijing Baiyou Technology Co Ltd filed Critical Beijing Baiyou Technology Co Ltd
Priority to CN201910741013.7A priority Critical patent/CN110443927B/zh
Publication of CN110443927A publication Critical patent/CN110443927A/zh
Application granted granted Critical
Publication of CN110443927B publication Critical patent/CN110443927B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C9/00Individual registration on entry or exit
    • G07C9/00174Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys
    • G07C9/00571Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated by interacting with a central unit
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C9/00Individual registration on entry or exit
    • G07C9/00174Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys
    • G07C9/00817Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys where the code of the lock can be programmed
    • 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
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C9/00Individual registration on entry or exit
    • G07C9/00174Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys
    • G07C9/00817Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys where the code of the lock can be programmed
    • G07C2009/00825Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys where the code of the lock can be programmed remotely by lines or wireless communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Lock And Its Accessories (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种访客密码生成方法、验证方法、服务器及智能门锁,所述生成方法包括:获取起始时间、结束时间、使用次数及设备标识;对所述起始时间、所述结束时间及所述使用次数进行第一编码运算得到第一编码;将所述第一编码及所述设备标识进行签名运算得到第一签名值;将所述第一签名值及所述第一编码进行第二编码运算得到第二编码,将该第二编码作为访客密码。本发明的技术方案可根据起始时间、结束时间、使用次数及设备标识进行一系列编码运算生成唯一且具有时效性的访客密码。

Description

访客密码生成方法、验证方法、服务器及智能门锁
技术领域
本发明涉及密码生成技术领域,具体而言,涉及一种访客密码生成方法、验证方法、服务器及智能门锁。
背景技术
随着智能小区的全面建设,智能门锁在智能小区中的应用也越来越广泛,针对访客而言,通常以访客密码的方式进行开锁。
现有访客密码通常是在智能门锁连接上网络的情况下,服务器生成访客密码,然后下发到用户终端及智能门锁上,访客获取到访客密码后通过按键输入到智能门锁上,智能门锁将访客输入的访客密码与服务器下发的密码进行对比,在两个密码一致时开门。
然而,该种方案是基于智能门锁能连接上网络且网络畅通的情况下才可以实现,如果智能门锁脱离了网络,那么服务器无法下发访客密码到智能门锁,此时,即便访客输入访客密码,智能门锁也不能判定该访客密码的正确定,无法正常开门。另外,即使在智能门锁能连接上网络的情况下,由于每次生成的访客密码均需要下发到智能门锁,增大了访客密码被截获或盗取的风险,存在安全性的问题。
发明内容
鉴于上述问题,本发明实施例的目的在于提供一种访客密码生成方法、验证方法、服务器及智能门锁,以解决现有技术的不足。
根据本发明的一个实施方式,提供一种访客密码生成方法,该生成方法包括:
获取起始时间、结束时间、使用次数及设备标识;
对所述起始时间、所述结束时间及所述使用次数进行第一编码运算得到第一编码;
将所述第一编码及所述设备标识进行签名运算得到第一签名值;
将所述第一签名值及所述第一编码进行第二编码运算得到第二编码,将该第二编码作为访客密码。
在上述的访客密码生成方法中,所述对所述起始时间、所述结束时间及所述使用次数进行第一编码运算得到第一编码包括:
将所述起始时间拆分为起始小时单元及起始年月日单元;
将所述结束时间拆分为结束小时单元及结束年月日单元;
根据所述起始年月日单元计算所述起始时间与当年开始时间的第一天数差;
根据所述结束年月日单元计算所述结束时间在与当年开始时间的第二天数差;
根据所述起始年月日单元及所述结束年月日单元计算年差;
将所述起始小时单元及所述结束小时单元进行第三编码运算得到第三编码;
将所述第一天数差、所述第二天数差、所述年差、所述起始年月日单元、所述第三编码及所述使用次数进行所述第一编码运算得到所述第一编码。
在上述的访客密码生成方法中,所述第一编码运算包括:
将所述第一天数差、所述第二天数差、所述年差、所述起始年月日单元、所述第三编码及所述使用次数分别拆分多个独立的数字,将所述多个独立的数字按照预设排列位置进行排列得到第一编码。
在上述的访客密码生成方法中,所述第二编码运算包括:
将所述第一签名值拆分为至少一个独立值,并为每一个独立值设置插入位置;
按照所述插入位置将所述独立值插入到所述第一编码中。
在上述的访客密码生成方法中,所述第三编码运算包括:
分别将一天划分为第一预设数量的时间段,每一时间段对应设置第一预设数量的数值;
根据所述起始小时单元所在的时间段确定第一预设数量的数值;
将所述结束小时单元所在时间段的排序作为选择下标,在所述第一预设数量的数值中选取该选择下标对应的数值作为第一位值;
计算所述起始小时单元相对于预设基数的摩尔值得到第二位值;
计算所述结束小时单元相对于所述预设基数的摩尔值得到第三位值;
将所述第一位值、所述第二位值及所述第三位值作为第三编码。
根据本发明的另一个实施方式,提供一种访客密码验证方法,该验证方法包括:
将访客密码进行第二解码运算得到第一签名值及第一编码;
将所述第一编码及设备标识进行签名运算得到第二签名值,将所述第二签名值与所述第一签名值进行对比;
若所述第二签名值与所述第一签名值一致,将第一编码进行第一解码运算得到起始时间、结束时间及使用次数;
判断当前时刻是否处于所述起始时间与所述结束时间之间及判断当前解码次数是否小于或等于所述使用次数;
若当前时刻处于所述起始时间与所述结束时间之间且当前解码次数小于或等于所述使用次数,则判定访客密码验证成功。
在上述的访客密码验证方法中,所述将第一编码进行第一解码运算得到起始时间、结束时间及使用次数包括:
将所述第一编码进行第一解码运算得到第一天数差、第二天数差、年差、起始年月日单元、第三编码及使用次数;
将所述第三编码进行第三解码运算得到起始小时单元及结束小时单元;
根据所述第一天数差、所述第二天数差、所述起始年月日单元及所述年差得到结束年月日单元;
根据所述起始年月日单元、所述结束年月日单元、所述起始小时单元及所述结束小时单元得到起始时间及结束时间。
根据本发明的又一个实施方式,提供一种服务器,所述服务器包括第一存储器和第一处理器,所述第一存储器用于存储计算机程序,所述第一处理器运行所述计算机程序以使所述服务器执行上述的访客密码生成方法。
根据本发明的又一个实施方式,提供一种智能门锁,所述智能门锁包括第二存储器和第二处理器,所述第二存储器用于存储计算机程序,所述第二处理器运行所述计算机程序以使所述智能门锁执行上述的访客密码验证方法。
根据本发明的再一个实施方式,提供一种计算机可读存储介质,其存储有上述的服务器中所使用的所述计算机程序。
根据本发明的再一个实施方式,提供另一种计算机可读存储介质,其存储有上述的智能门锁中所使用的所述计算机程序。
根据本发明的又一个实施方式,提供一种离线开锁系统,包括上述的服务器及上述的智能门锁:
所述服务器根据密码申请请求生成访客密码,并将所述访客密码下发至用户终端;
所述智能门锁对用户输入的所述访客密码进行验证并在验证成功后开锁。
本公开的实施例提供的技术方案可以包括如下有益效果:
本发明中一种访客密码生成方法、验证方法、服务器及智能门锁,根据起始时间、结束时间及使用次数进行第一编码运算得到第一编码,为了进一步地提高访客密码的安全性,还将第一编码及设备标识进行签名运算得到第一签名值,并将第一签名值与第一编码进行第二编码运算得到第二编码,将该第二编码作为访客密码,快速生成唯一且具有时效性的访客密码;在解码时,无需预先知晓该访客密码并进行对比,而是将访客密码进行与第二编码运算对应的第二解码运算,得到第一编码,并将该第一编码与设备标识进行与访客密码生成方法中相同的签名运算得到第二签名值,在第二签名值与第一签名值一致时,在执行后续的将第一编码通过与第一编码运算对应的第一解码运算得到起始时间、结束时间及使用次数,在当前时刻处于起始时间与结束时间之间且当前解码次数小于或等于该使用次数时,判定访客密码验证成功,无需进行访客密码的对比,而是通过起始时间、结束时间及使用次数来判断当前时刻的访客密码是否有效,可实现离线状态下对该访客密码进行验证,提高访客密码安全性。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对本发明保护范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本发明第一实施例提供的一种访客密码生成方法的流程示意图。
图2示出了本发明第二实施例提供的一种访客密码验证方法的流程示意图。
图3示出了本发明第三实施例提供的一种访客密码生成装置的结构示意图。
图4示出了本发明第四实施例提供的一种访客密码验证装置的结构示意图。
图5示出了本发明第五实施例提供的一种离线开锁系统的结构示意图。
主要元件符号说明:
300-访客密码生成装置;310-获取模块;320-第一编码模块;330-第一签名模块;340-第二编码模块;
400-访客密码验证装置;410-第二解码模块;420-第二签名模块;430-第一判断模块;440-第一解码模块;450-第二判断模块;460-判定模块;
500-离线开锁系统;510-服务器;520-智能门锁;530-用户终端。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合附图,对本发明的具体实施方式作详细说明。
实施例1
图1示出了本发明第一实施例提供的一种访客密码生成方法的流程示意图。
该访客密码生成方法包括如下步骤:
在步骤S110中,获取起始时间、结束时间、使用次数及设备标识。
具体地,该访客密码生成方法可应用于服务器。用户终端发送访客密码申请至服务器,其中,所述访客密码申请中包括起始时间、结束时间、使用次数及访客想要开门的智能门锁的设备标识。
在步骤S120中,对所述起始时间、所述结束时间及所述使用次数进行第一编码运算得到第一编码。
进一步地,步骤S120包括:
将所述起始时间拆分为起始小时单元及起始年月日单元;将所述结束时间拆分为结束小时单元及结束年月日单元;根据所述起始年月日单元计算所述起始时间与当年开始时间的第一天数差;根据所述结束年月日单元计算所述结束时间在与当年开始时间的第二天数差;根据所述起始年月日单元及所述结束年月日单元计算年差;将所述起始小时单元及所述结束小时单元进行第三编码运算得到第三编码;将所述第一天数差、所述第二天数差、所述年差、所述起始年月日单元、所述第三编码及所述使用次数进行所述第一编码运算得到所述第一编码。
具体地,所述服务器在接收到访客密码申请后,解析出所述起始时间、结束时间、使用次数及设备标识。
比如,起始时间为2019年08月02日8:00,结束时间为2021年05月01日18:00,使用次数为50次。
将起始时间2019年08月02日8:00拆分为起始小时单元8:00及起始年月日单元20190802,将结束时间2021年05月01日18:00拆分为结束小时单元18:00及结束年月日单元20210501。
根据起始年月日单元20190802计算该起始时间距离当年开始时间的第一天数差Day1:
Day1=31+28+31+30+31+30+31+31+2=245
根据结束年月日单元20210501计算该结束时间距离当年开始时间的第二天数差Day2:
Day2=31+28+31+30+31+1=152
根据所述起始年月日单元20190802及所述结束年月日单元20210501计算年差Year:
Year=2021-2019=2
将所述起始小时单元8:00及所述结束小时单元18:00进行第三编码运算得到第三编码,将所述第一天数差、所述第二天数差、所述年差、所述起始年月日单元、所述第三编码及所述使用次数进行所述第一编码运算得到所述第一编码。
进一步地,所述第三编码运算包括:
分别将一天划分为第一预设数量的时间段,每一时间段对应设置第一预设数量的数值;根据所述起始小时单元所在的时间段确定第一预设数量的数值;将所述结束小时单元所在时间段的排序作为选择下标,在所述第一预设数量的数值中选取该选择下标对应的数值作为第一位值;计算所述起始小时单元相对于预设基数的摩尔值得到第二位值;计算所述结束小时单元相对于所述预设基数的摩尔值得到第三位值;将所述第一位值、所述第二位值及所述第三位值作为第三编码。
具体地,可将一天24个小时划分为三个时间段:第一个时间段0:00~9:00,第二个时间段9:01~19:00,第三个时间段19:01~24:00。其中,第一个时间段0:00~9:00对应设置三个数值0、1、2,第二个时间段9:01~19:00对应设置三个数值3、4、5,第三个时间段19:01~24:00对应设置三个数值6、7、8。
由于起始小时单元8:00处于第一个时间段0:00~9:00,第一位值在0、1、2中进行选择,由于结束小时单元18:00处于第二个时间段9:01~19:00,而时间段9:01~19:00,在0、1、2中选择第二个值1作为第一位值。
将所述起始小时单元8:00相对于预设基数10的摩尔值8作为第二位值。
将所述结束小时单元18:00相对于所述预设基数10的摩尔值8作为第三位值。
那么,得到的第三编码为188。
进一步地,第一编码运算包括:
将所述第一天数差、所述第二天数差、所述年差、所述起始年月日单元、所述第三编码及所述使用次数分别拆分多个独立的数字,将所述多个独立的数字按照预设排列位置进行排列得到第一编码。
具体地,将第一天数差245拆分为三个独立的数字2、4、5,将第二天数差152拆分为三个独立的数字1、5、2,将起始年月日单元20190802拆分为八个独立的数字2、0、1、9、0、8、0、2。年差2为一位,不拆分。第三编码188拆分为三个独立的数字1、8、8。
将第一天数差的三个独立数字的排列位置预先设置为第1位、第4位及第7位。
将第二天数差的三个独立数字的排列位置预先设置为第2位、第5位及第8位。
将年差的排列位置预先设置为第10位。
将第三编码的三个独立数字的排列位置预先设置为第3位、第6位及第9位。
将起始年月日单元的八个独立的数字的排列位置预先设置为:第11~第18位。
那么,得到的第一编码为211458528220190802。
进一步地,在进行第一编码运算的过程中,还可以在起始年月日单元中取年的值的最后一位数字作为起始值,将所述第一天数差、所述第二天数差、所述年差、所述起始值、所述第三编码及所述使用次数分别拆分多个独立的数字,将所述多个独立的数字按照预设排列位置进行排列得到第一编码。
比如,在上述的例子中,将起始年月日单元20190802中表示年的值2019中的最后一位9作为起始值,将起始值的排列位置预先设置为第11位,那么得到的第一编码为21145852829。
当然,在一些其他的实施例中,还可以将所述第一天数差、所述第二天数差、所述年差、所述结束年月日单元、所述第三编码及所述使用次数进行所述第一编码运算得到所述第一编码。
所述结束年月日单元还可以选择年的值的最后以为作为结束值,将所述第一天数差、所述第二天数差、所述年差、所述结束值、所述第三编码及所述使用次数进行所述第一编码运算得到所述第一编码。
在步骤S130中,将所述第一编码及所述设备标识进行签名运算得到第一签名值。
具体地,将上述得到的第一编码结合设备标识进行签名运算得到第一签名值。
本实施例中,所述签名运算可以为哈希签名。在一些其他的实施例中,所述签名运算还可以为DSA签名或者RSA签名。
在步骤S140中,将所述第一签名值及所述第一编码进行第二编码运算得到第二编码,将该第二编码作为访客密码。
进一步地,所述第二编码运算包括:
将所述第一签名值拆分为至少一个独立值,并为每一个独立值设置插入位置;按照所述插入位置将所述独立值插入到所述第一编码中。
具体地,将得到的第一签名值拆分为多个独立值,并将该多个独立值按照预先设置的插入位置插入到第一编码中。
例如,第一签名值为256,第一编码为21145852829。将第一签名值拆分为2、5、6三个独立值,分别为三个独立值设置插入位置:第3位、第7位及第9位。
那么得到的第二编码为21214558652829。
实施例2
图2示出了本发明第二实施例提供的一种访客密码验证方法的流程示意图。
该访客密码验证方法可应用于智能门锁,适用于对实施例1中的访客密码生成方法进行解密运算。
本实施例中的第一解码运算是对应于实施例1中的第一编码运算的逆运算,第二解码运算是对应于实施例1中的第二编码运算的逆运算,第三解码运算是对应于实施例1中的第三编码运算的逆运算。
该访客密码验证方法包括如下步骤:
在步骤S210中,将访客密码进行第二解码运算得到第一签名值及第一编码。
具体地,服务器生成访客密码后,将该访客密码发送到用户终端,用户将获取的访客密码输入到智能门锁中。
智能门锁获取到访客密码后,将访客密码进行与上述的第二编码运算对应的第二解码运算得到第一签名值及第一编码。
例如,第二解码运算可以为第3位、第7位及第9位的值为第一签名值,剩余值为第一编码。
例如,第二编码为21214558652829,在第二编码中查找到第3位、第7位及第9位的值2、5、6,那么256为第一签名值,21145852829为第一编码。
在步骤S220中,将所述第一编码及设备标识进行签名运算得到第二签名值。
具体地,将得到的第一编码结合设备标识进行与实施例1中的相同的签名运算,得到第二签名值。
例如,将第一编码21145852829结合设备标识201809063277进行哈希运算得到第二签名值。
在步骤S230中,判断第二签名值与第一签名值是否一致。
具体地,判断第二签名值和第一签名值是否一致,若一致则说明当前阶段解码正确,前进至步骤S240,继续进行解码;若不一致则说明当前阶段解码不正确,前进至步骤S250。
在步骤S240中,将第一编码进行第一解码运算得到起始时间、结束时间及使用次数。
进一步地,步骤S240包括:
将所述第一编码进行第一解码运算得到第一天数差、第二天数差、年差、起始年月日单元、第三编码及使用次数;将所述第三编码进行第三解码运算得到起始小时单元及结束小时单元;根据所述第一天数差、所述第二天数差、所述起始年月日单元及所述年差得到结束年月日单元;根据所述起始年月日单元、所述结束年月日单元、所述起始小时单元及所述结束小时单元得到起始时间及结束时间。
具体地,在得到第一编码后,将第一编码进行与上述的第一编码运算相反的第一解码运算得到起始时间、结束时间及使用次数。
例如,第一解码运算可以为:第1位、第4位及第7位的值为第一天数差,第2位、第5位及第8位的值为第二天数差,第10位的值为年差,第3位、第6位及第9位的值为第三编码,第11~第18位的值为起始年月日单元。
比如,第一编码为211458528220190802,第一天数差为245,第二天数差为152,年差为2,起始年月日单元为20190802,第三编码为188。
根据第二天数差、年差及起始年月日单元可以得到结束年月日单元。比如,根据第二天数差得到月日为05月01日,根据起始年月日单元及年差得到结束年2021年,因此,结束年月日单元为2021年05月01日。
对第三编码进行第三解码运算得到起始小时单元及结束小时单元。
第三解码运算可以为:根据第一位值确定起始小时单元所在的时间段及结束小时单元所在的时间段。
根据第二位值及起始小时单元所在的时间段确定起始小时单元,根据第三位值及结束小时单元所在的时间段确定结束小时单元。
比如,第三编码为188,根据1可以确定起始小时单元所在的时间段为第一个时间段0:00~9:00,结束小时单元所在的时间段为第二个时间段9:01~19:00。
在第一个时间段0:00~9:00,只有8:00与10的摩尔值为第二位值8,在第二个时间段内,只有18:00与10的摩尔值为第三位值8。
因此,根据起始年月日单元及起始小时单元得到起始时间2019年08月02日8:00,根据结束年月日单元及结束小时单元得到结束时间2021年05月01日18:00。
另外,第一解码运算还可以为:第1位、第4位及第7位的值为第一天数差,第2位、第5位及第8位的值为第二天数差,第10位的值为年差,第3位、第6位及第9位的值为第三编码,第11位的值为起始值,起始值为起始年月日单元中年的值的最后以为数字。
具体地,与上述方式相同,只是在得到起始值9的时候,根据距离当前时间最近的尾数为9的年比如2019作为起始年。
在得到起始年之后,根据第一天数差得到起始月日,根据第二天数差得到结束月日,根据年差及起始年得到结束年,根据起始月日及起始年得到起始年月日单元,根据结束年及结束月日得到结束年月日单元。
对第三编码进行与上述相同的第三解码运算得到起始小时单元和结束小时单元,根据起始年月日单元及起始小时单元得到起始时间,根据结束年月日单元及结束小时单元得到结束时间。
当然,在一些其他的实施例中将所述第一天数差、所述第二天数差、所述年差、所述结束年月日单元、所述第三编码及所述使用次数进行所述第一编码运算得到所述第一编码时,可以根据第一天数差得到起始月日,根据结束年月日单元及年差得到起始年,根据起始月日及起始年得到起始年月日单元。对第三编码进行与上述相同的第三解码运算得到起始小时单元和结束小时单元,根据起始年月日单元及起始小时单元得到起始时间,根据结束年月日单元及结束小时单元得到结束时间。
在又一些其他的实施例中将所述第一天数差、所述第二天数差、所述年差、所述结束值、所述第三编码及所述使用次数进行所述第一编码运算得到所述第一编码时,在得到结束值1的时候,将当前时间之后且距离当前时间最近的尾数为1的年(比如2021)作为结束年。根据第一天数差得到起始月日,根据第二天数差得到结束月日,根据年差及结束年得到起始年,根据起始月日及起始年得到起始年月日单元,根据结束年及结束月日得到结束年月日单元。对第三编码进行与上述相同的第三解码运算得到起始小时单元和结束小时单元,根据起始年月日单元及起始小时单元得到起始时间,根据结束年月日单元及结束小时单元得到结束时间。
在步骤S250中,判定访客密码验证不成功。
在步骤S260中,判断当前时刻是否处于起始时间与结束时间之间及判断当前解码次数是否小于或等于使用次数。
具体地,在得到起始时间、结束时间及使用次数后,进行两次判断操作:A.判断当前时刻是否处于起始时间与结束时间之间;B.判断当前解码次数是否小于或等于使用次数。
若上述判断A及判断B均为是时,前进至步骤S270,访客密码验证成功,否则,在上述判断A及判断B至少一个为否时,返回至步骤S250,访客密码验证不成功。
以上,实现了服务器和智能门锁无法通信的情况下,对访客密码进行验证的过程,提高访客密码的安全性。
在步骤S270中,判定访客密码验证成功。
实施例3
图3示出了本发明第三实施例提供的一种访客密码生成装置的结构示意图。
该访客密码生成装置300应对于实施例1中的访客密码生成方法,实施例1中的各选项也适用于本实施例中。
访客密码生成装置300包括获取模块310、第一编码模块320、第一签名模块330及第二编码模块340。
获取模块310,用于获取起始时间、结束时间、使用次数及设备标识。
第一编码模块320,用于对所述起始时间、所述结束时间及所述使用次数进行第一编码运算得到第一编码。
第一签名模块330,用于将所述第一编码及所述设备标识进行签名运算得到第一签名值。
第二编码模块340,用于将所述第一签名值及所述第一编码进行第二编码运算得到第二编码,将该第二编码作为访客密码。
本发明另一实施例还提供了一种服务器,所述服务器包括第一存储器以及第一处理器,所述第一存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据手机的使用所创建的数据等。此外,第一存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
所述第一处理器用于运行所述第一存储器中所存储的计算机程序以使所述服务器执行上述的实施例中的访客密码生成方法或访客密码生成装置中各模块的功能。
可选的,第一处理器可包括一个或多个处理单元;优选的,第一处理器可集成应用处理器,应用处理器主要处理操作系统、用户界面和应用程序等。第一处理器可以集成调制解调处理器,调制解调处理器也可以不集成到处理器中。
本领域技术人员可以理解,上述的服务器的结构并不构成对服务器的限定,可以包括更多或更少的部件,或者组合某些部件,或者不同的部件布置。
本发明再一实施例还提供了一种计算机可读存储介质,用于储存上述服务器中使用的所述计算机程序。
实施例4
图4示出了本发明第四实施例提供的一种访客密码验证装置的结构示意图。
该访客密码验证装置400应对于实施例2中的访客密码验证方法,实施例2中的各选项也适用于本实施例中。
访客密码验证装置400包括第二解码模块410、第二签名模块420、第一判断模块430、第一解码模块440、第二判断模块450及判定模块460。
第二解码模块410,用于将访客密码进行第二解码运算得到第一签名值及第一编码。
第二签名模块420,用于将所述第一编码及设备标识进行签名运算得到第二签名值。
第一判断模块430,用于判断所述第二签名值与所述第一签名值是否一致。
第一解码模块440,用于在所述第二签名值与所述第一签名值一致时,将第一编码进行第一解码运算得到起始时间、结束时间及使用次数。
第二判断模块450,用于判断当前时刻是否处于所述起始时间与所述结束时间之间及判断当前解码次数是否小于或等于所述使用次数。
判定模块460,用于在当前时刻处于所述起始时间与所述结束时间之间且当前解码次数小于或等于所述使用次数时,判定访客密码验证成功。
本发明另一实施例还提供了一种智能门锁,所述智能门锁包括第二存储器以及第二处理器,所述第二存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据手机的使用所创建的数据等。此外,第二存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
所述第二处理器用于运行所述第二存储器中所存储的计算机程序以使所述智能门锁执行上述的实施例中的访客密码验证方法或访客密码验证装置中各模块的功能。
可选的,第二处理器可包括一个或多个处理单元;优选的,第二处理器可集成应用处理器,应用处理器主要处理操作系统、用户界面和应用程序等。第二处理器可以集成调制解调处理器,调制解调处理器也可以不集成到处理器中。
本领域技术人员可以理解,上述的智能门锁的结构并不构成对智能门锁的限定,可以包括更多或更少的部件,或者组合某些部件,或者不同的部件布置。
本发明再一实施例还提供了一种计算机可读存储介质,用于储存上述智能门锁中使用的所述计算机程序。
实施例5
图5示出了本发明第五实施例提供的一种离线开锁系统的结构示意图。
所述离线开锁系统500包括服务器510及智能门锁520。
该服务器510包括第一存储器和第一处理器,所述第一存储器用于存储计算机程序,所述第一处理器运行所述计算机程序以使所述服务器510执行上述的访客密码生成方法或访客密码生成装置300中各模块的功能。
所述智能门锁包括第二存储器和第二处理器,所述第二存储器用于存储计算机程序,所述第二处理器运行所述计算机程序以使所述智能门锁520执行上述的访客密码验证方法或访客密码验证装置400中各模块的功能。
所述服务器510根据密码申请请求生成访客密码,并将所述访客密码下发至用户终端530。
所述智能门锁520对用户输入的所述访客密码进行验证并在验证成功后开锁。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和结构图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,结构图和/或流程图中的每个方框、以及结构图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块或单元可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或更多个模块集成形成一个独立的部分。所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是智能手机、个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。

Claims (10)

1.一种访客密码生成方法,其特征在于,该生成方法包括:
获取起始时间、结束时间、使用次数及设备标识;
对所述起始时间、所述结束时间及所述使用次数进行第一编码运算得到第一编码;
将所述第一编码及所述设备标识进行签名运算得到第一签名值;
将所述第一签名值及所述第一编码进行第二编码运算得到第二编码,将该第二编码作为访客密码。
2.根据权利要求1所述的访客密码生成方法,其特征在于,所述对所述起始时间、所述结束时间及所述使用次数进行第一编码运算得到第一编码包括:
将所述起始时间拆分为起始小时单元及起始年月日单元;
将所述结束时间拆分为结束小时单元及结束年月日单元;
根据所述起始年月日单元计算所述起始时间与当年开始时间的第一天数差;
根据所述结束年月日单元计算所述结束时间在与当年开始时间的第二天数差;
根据所述起始年月日单元及所述结束年月日单元计算年差;
将所述起始小时单元及所述结束小时单元进行第三编码运算得到第三编码;
将所述第一天数差、所述第二天数差、所述年差、所述起始年月日单元、所述第三编码及所述使用次数进行所述第一编码运算得到所述第一编码。
3.根据权利要求2所述的访客密码生成方法,其特征在于,所述第一编码运算包括:
将所述第一天数差、所述第二天数差、所述年差、所述起始年月日单元、所述第三编码及所述使用次数分别拆分多个独立的数字,将所述多个独立的数字按照预设排列位置进行排列得到第一编码。
4.根据权利要求1所述的访客密码生成方法,其特征在于,所述第二编码运算包括:
将所述第一签名值拆分为至少一个独立值,并为每一个独立值设置插入位置;
按照所述插入位置将所述独立值插入到所述第一编码中。
5.根据权利要求2所述的访客密码生成方法,其特征在于,所述第三编码运算包括:
分别将一天划分为第一预设数量的时间段,每一时间段对应设置第一预设数量的数值;
根据所述起始小时单元所在的时间段确定第一预设数量的数值;
将所述结束小时单元所在时间段的排序作为选择下标,在所述第一预设数量的数值中选取该选择下标对应的数值作为第一位值;
计算所述起始小时单元相对于预设基数的摩尔值得到第二位值;
计算所述结束小时单元相对于所述预设基数的摩尔值得到第三位值;
将所述第一位值、所述第二位值及所述第三位值作为第三编码。
6.一种访客密码验证方法,其特征在于,该验证方法包括:
将访客密码进行第二解码运算得到第一签名值及第一编码;
将所述第一编码及设备标识进行签名运算得到第二签名值,将所述第二签名值与所述第一签名值进行对比;
若所述第二签名值与所述第一签名值一致,将第一编码进行第一解码运算得到起始时间、结束时间及使用次数;
判断当前时刻是否处于所述起始时间与所述结束时间之间及判断当前解码次数是否小于或等于所述使用次数;
若当前时刻处于所述起始时间与所述结束时间之间且当前解码次数小于或等于所述使用次数,则判定访客密码验证成功。
7.根据权利要求6所述的访客密码验证方法,其特征在于,所述将第一编码进行第一解码运算得到起始时间、结束时间及使用次数包括:
将所述第一编码进行第一解码运算得到第一天数差、第二天数差、年差、起始年月日单元、第三编码及使用次数;
将所述第三编码进行第三解码运算得到起始小时单元及结束小时单元;
根据所述第一天数差、所述第二天数差、所述起始年月日单元及所述年差得到结束年月日单元;
根据所述起始年月日单元、所述结束年月日单元、所述起始小时单元及所述结束小时单元得到起始时间及结束时间。
8.一种服务器,其特征在于,包括第一存储器和第一处理器,所述第一存储器用于存储计算机程序,所述第一处理器运行所述计算机程序以使所述服务器执行权利要求1至5任一项所述的访客密码生成方法。
9.一种智能门锁,其特征在于,包括第二存储器和第二处理器,所述第二存储器用于存储计算机程序,所述第二处理器运行所述计算机程序以使所述智能门锁执行权利要求6或7所述的访客密码验证方法。
10.一种离线开锁系统,其特征在于,包括权利要求8所述的服务器及权利要求9所述的智能门锁:
所述服务器根据密码申请请求生成访客密码,并将所述访客密码下发至用户终端;
所述智能门锁对用户输入的所述访客密码进行验证并在验证成功后开锁。
CN201910741013.7A 2019-08-12 2019-08-12 访客密码生成方法、验证方法、服务器及智能门锁 Active CN110443927B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910741013.7A CN110443927B (zh) 2019-08-12 2019-08-12 访客密码生成方法、验证方法、服务器及智能门锁

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910741013.7A CN110443927B (zh) 2019-08-12 2019-08-12 访客密码生成方法、验证方法、服务器及智能门锁

Publications (2)

Publication Number Publication Date
CN110443927A true CN110443927A (zh) 2019-11-12
CN110443927B CN110443927B (zh) 2021-04-27

Family

ID=68434702

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910741013.7A Active CN110443927B (zh) 2019-08-12 2019-08-12 访客密码生成方法、验证方法、服务器及智能门锁

Country Status (1)

Country Link
CN (1) CN110443927B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113470229A (zh) * 2021-07-19 2021-10-01 启北公司 开锁控制方法及装置、设备及存储介质
CN113936371A (zh) * 2021-09-18 2022-01-14 青岛海信智慧生活科技股份有限公司 一种权限管理方法及装置
CN114726573A (zh) * 2022-02-28 2022-07-08 新华三技术有限公司 一种管理密码的方法、云平台和终端设备

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103516525A (zh) * 2013-10-22 2014-01-15 天地融科技股份有限公司 一种动态口令生成方法和系统
CN103986572A (zh) * 2014-04-15 2014-08-13 苏州太游信息科技有限公司 密码系统及其基于空间变化的一次性随机密码生成方法与应用
CN105591737A (zh) * 2016-01-27 2016-05-18 浪潮(北京)电子信息产业有限公司 一种数据加密方法、解密方法、传输方法及系统
CN107295012A (zh) * 2017-08-01 2017-10-24 贝氏科技有限公司 加解密系统与方法
CN109362075A (zh) * 2018-10-23 2019-02-19 广州创想云科技有限公司 基于加密的无线电子钥匙授权管理的方法
JP2019068392A (ja) * 2017-10-03 2019-04-25 利和 石崎 証明書発行及び認証システム
CN109756343A (zh) * 2019-01-31 2019-05-14 平安科技(深圳)有限公司 数字签名的认证方法、装置、计算机设备和存储介质
CN109964445A (zh) * 2016-11-18 2019-07-02 佩尔曼恩特私人有限公司 针对未经授权的复制的保护(防克隆)方法和系统
CN110098923A (zh) * 2019-04-08 2019-08-06 浙江大华技术股份有限公司 一种生成和验证临时密码的方法及设备

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103516525A (zh) * 2013-10-22 2014-01-15 天地融科技股份有限公司 一种动态口令生成方法和系统
CN103986572A (zh) * 2014-04-15 2014-08-13 苏州太游信息科技有限公司 密码系统及其基于空间变化的一次性随机密码生成方法与应用
CN105591737A (zh) * 2016-01-27 2016-05-18 浪潮(北京)电子信息产业有限公司 一种数据加密方法、解密方法、传输方法及系统
CN109964445A (zh) * 2016-11-18 2019-07-02 佩尔曼恩特私人有限公司 针对未经授权的复制的保护(防克隆)方法和系统
CN107295012A (zh) * 2017-08-01 2017-10-24 贝氏科技有限公司 加解密系统与方法
JP2019068392A (ja) * 2017-10-03 2019-04-25 利和 石崎 証明書発行及び認証システム
CN109362075A (zh) * 2018-10-23 2019-02-19 广州创想云科技有限公司 基于加密的无线电子钥匙授权管理的方法
CN109756343A (zh) * 2019-01-31 2019-05-14 平安科技(深圳)有限公司 数字签名的认证方法、装置、计算机设备和存储介质
CN110098923A (zh) * 2019-04-08 2019-08-06 浙江大华技术股份有限公司 一种生成和验证临时密码的方法及设备

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113470229A (zh) * 2021-07-19 2021-10-01 启北公司 开锁控制方法及装置、设备及存储介质
CN113936371A (zh) * 2021-09-18 2022-01-14 青岛海信智慧生活科技股份有限公司 一种权限管理方法及装置
CN114726573A (zh) * 2022-02-28 2022-07-08 新华三技术有限公司 一种管理密码的方法、云平台和终端设备

Also Published As

Publication number Publication date
CN110443927B (zh) 2021-04-27

Similar Documents

Publication Publication Date Title
CN110443927A (zh) 访客密码生成方法、验证方法、服务器及智能门锁
CN110942154B (zh) 基于联邦学习的数据处理方法、装置、设备及存储介质
CN102281539B (zh) 移动终端及其应用程序登录方法
CN110224811B (zh) 物联网加密处理方法、装置及系统
CN113095510A (zh) 一种基于区块链的联邦学习方法及装置
US20160314469A1 (en) Method for generating off-line authentication credentials by intelligent card
JP2016045811A5 (zh)
CN108460262B (zh) 密码管理方法、装置、终端设备及存储介质
CN103152401B (zh) 移动终端及通过其进行登录的方法、系统和云端服务器
CN111260220B (zh) 群控设备识别方法、装置、电子设备和存储介质
CN104112116A (zh) 一种云服务器
CN105281898B (zh) 密钥生成装置及方法
CN103945430A (zh) 一种移动终端类型推荐方法及装置
CN110166238A (zh) 量子密钥的生成方法及装置
CN104899525A (zh) 改进动态操作的云数据完整性证明方案
CN113935010A (zh) 基于区块链和5g消息的手机银行登录方法及装置
CN109472906A (zh) 数字钥匙生成方法、应用方法、装置、系统、终端及介质
CN107231330B (zh) 一种密码确定、登录验证方法和设备
CN115829064B (zh) 一种联邦学习加速方法、装置、设备及存储介质
CN105959350B (zh) 分布式数据存储方法及装置
CN113706150B (zh) 一种区块确认方法及装置
CN114528377A (zh) Pdf电子签章批量签署的方法、设备及存储介质
CN113592630A (zh) 基于区块链的信用卡面签方法及装置
CN111309756B (zh) 一种数据库脚本编码、解码方法及装置
CN107564161A (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