CN113223210B - 电子锁的离线控制方法、离线控制装置及终端设备 - Google Patents

电子锁的离线控制方法、离线控制装置及终端设备 Download PDF

Info

Publication number
CN113223210B
CN113223210B CN202010072099.1A CN202010072099A CN113223210B CN 113223210 B CN113223210 B CN 113223210B CN 202010072099 A CN202010072099 A CN 202010072099A CN 113223210 B CN113223210 B CN 113223210B
Authority
CN
China
Prior art keywords
password
unlocking
electronic lock
offline
serial number
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
CN202010072099.1A
Other languages
English (en)
Other versions
CN113223210A (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.)
Shenzhen Yunhai Internet Of Things Co ltd
Original Assignee
Shenzhen Yunhai Internet Of Things 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 Shenzhen Yunhai Internet Of Things Co ltd filed Critical Shenzhen Yunhai Internet Of Things Co ltd
Priority to CN202010072099.1A priority Critical patent/CN113223210B/zh
Publication of CN113223210A publication Critical patent/CN113223210A/zh
Application granted granted Critical
Publication of CN113223210B publication Critical patent/CN113223210B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • 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

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Telephone Function (AREA)
  • Lock And Its Accessories (AREA)

Abstract

本申请适用于控制技术领域,提供了电子锁的离线控制方法、离线控制装置及终端设备,方法包括:获取用户输入的开锁离线密码,并确定所述开锁离线密码的密码序号;获取所述电子锁的识别码,并根据所述密码序号和所述识别码生成验证离线密码;将所述开锁离线密码和所述验证离线密码进行对比,并根据对比结果对所述电子锁进行开关控制。通过上述方法,当电子锁的电子锁处于离线状态时,仍然能够对用户输入的开锁密码进行验证,进而实现了离线开锁。

Description

电子锁的离线控制方法、离线控制装置及终端设备
技术领域
本申请属于控制技术领域,尤其涉及电子锁的离线控制方法、离线控制装置及终端设备。
背景技术
随着物联网技术的发展,各种物联网设备应运而生,电子锁就是一种应用广泛的物联网设备。常见的电子锁有门锁、车锁等等。在开锁时,用户通过终端设备向电子锁的服务器发送开锁指令;服务器根据开锁指令生成开锁密码,并将开锁密码同时发送给用户的终端设备和电子锁的;当用户输入开锁密码时,电子锁的判断用户输入的开锁密码和从服务器接收到的开锁密码是否一致;若一致,则开锁。
现有技术中,电子锁的服务器需要与电子锁的保持通信,这样服务器才可以向下发开锁密码。但是,当处于离线状态时,即与服务器之间的通信连接处于断开状态时,无法从服务器获取开锁密码,导致无法对用户输入的开锁密码进行验证,进而导致无法开锁。
发明内容
本申请实施例提供了电子锁的离线控制方法、离线控制装置及终端设备,可以解决电子锁的处于离线状态时无法开锁的问题。
第一方面,本申请实施例提供了一种电子锁的离线控制方法,应用于电子锁,所述方法包括:
获取用户输入的开锁离线密码,并确定所述开锁离线密码的密码序号;
获取所述电子锁的识别码,并根据所述密码序号和所述识别码生成验证离线密码;
将所述开锁离线密码和所述验证离线密码进行对比,并根据对比结果对所述电子锁进行开关控制。
在第一方面的一种可能的实现方式中,所述根据所述密码序号和所述识别码生成验证离线密码,包括:
获取预设的随机数矩阵,并根据所述密码序号从所述随机数矩阵中获取目标随机数;
当开锁离线密码和所述验证离线密码匹配时,开锁。
在第一方面的一种可能的实现方式中,所述根据所述密码序号、所述识别码和所述目标随机数生成所述验证离线密码,包括:
将所述密码序号和所述目标随机数按照第一预设顺序排列,得到第一中间码;
将所述识别码中预设位置上的数字组成第二中间码;
将所述第一中间码和所述第二中间码组合生成第三中间码;
将所述第三中间码和所述密码序号按照第二预设顺序排列,得到所述验证离线密码。
第二方面,本申请实施例提供了一种电子锁的离线控制方法,应用于电子锁的服务器,所述方法包括:
在监测到用户终端的开锁指令时,获取所述电子锁的的通信状态;
若所述电子锁的通信状态为离线,则为所述开锁指令分配密码序号;
获取所述电子锁的识别码,根据所述密码序号和所述识别码生成开锁离线密码,并将所述开锁离线密码发送到所述用户终端。
在第二方面的一种可能的实现方式中,所述为所述开锁指令分配密码序号,包括:
获取所述密码序号的取值范围,以及已分配的密码序号;
根据所述已分配的密码序号确定所述取值范围中未分配的密码序号,并从所述未分配的密码序号中选取一个密码序号。
在第二方面的一种可能的实现方式中,所述根据所述密码序号和所述识别码生成开锁离线密码,包括:
获取预设的随机数矩阵,并根据所述密码序号从所述随机数矩阵中获取目标随机数;
根据所述密码序号、所述识别码和所述目标随机数生成所述开锁离线密码。
第三方面,本申请实施例提供了一种电子锁的离线控制装置,应用于电子锁,所述装置包括:
密码序号获取单元,用于获取用户输入的开锁离线密码,并确定所述开锁离线密码的密码序号;
验证密码生成单元,用于获取所述电子锁的识别码,并根据所述密码序号和所述识别码生成验证离线密码;
开锁控制单元,用于当开锁离线密码和所述验证离线密码匹配时,开锁。
第四方面,本申请实施例提供了一种电子锁的离线控制装置,应用于电子锁的服务器,所述装置包括:
通信状态获取单元,用于在监测到用户终端的开锁指令时,获取所述电子锁的通信状态;
密码序号分配单元,用于若所述电子锁的通信状态为离线,则为所述开锁指令分配密码序号;
开锁密码生成单元,用于获取所述电子锁的识别码,根据所述密码序号和所述识别码生成开锁离线密码,并将所述开锁离线密码发送到所述用户终端。
第五方面,本申请实施例提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如上述第一方面中任一项所述的电子锁的离线控制方法或如上述第二方面中任一项所述的电子锁的离线控制方法。
第六方面,本申请实施例提供了一种计算机可读存储介质,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如上述第一方面中任一项所述的电子锁的离线控制方法或如上述第二方面中任一项所述的电子锁的离线控制方法。
第七方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第一方面中任一项所述的电子锁的离线控制方法或执行上述第二方面中任一项所述的电子锁的离线控制方法。
本申请实施例与现有技术相比存在的有益效果是:
本申请实施例中电子锁获取用户输入的开锁离线密码,确定开锁离线密码的密码序号,并获取电子锁的识别码,然后根据密码序号和识别码生成验证离线密码;利用上述方法,处于离线状态的电子锁虽然无法从服务器获取开锁密码,但是可以根据用户输入的开锁离线密码和电子锁的识别码生成验证离线密码,然后利用生成的验证离线密码对用户输入的开锁离线密码进行验证。通过上述方法,处于离线状态的电子锁能够对用户输入的开锁密码进行验证,实现了离线开锁。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例提供的电子锁的离线控制系统的示意图;
图2是本申请一实施例提供的电子锁的离线控制方法的流程示意图;
图3是本申请又一实施例提供的电子锁的离线控制方法的流程示意图;
图4是本申请一实施例提供的离线密码生成方法的方法流程示意图;
图5是本申请一实施例提供的随机数矩阵的示意图;
图6是本申请一实施例提供的电子锁的离线控制装置的结构框图;
图7是本申请又一实施例提供的电子锁的离线控制装置的结构框图;
图8是本申请一实施例提供的终端设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
如在本申请说明书和所附权利要求书中所使用的那样,术语“若”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。
先介绍本申请实施例的一个应用场景。参见图1,为本申请实施例提供的电子锁的离线控制系统的示意图。如图1所示,电子锁的离线控制系统可以包括电子锁的服务器101、至少一个电子锁102以及至少一个用户终端103(需要说明的是,图中仅是示例,并不对电子锁的个数以及用户终端的个数做具体限定)。服务器和各个电子锁之间、服务器和各个用户终端之间均可以通过有线或无线的方式通信连接。电子锁中包括锁体和控制器,锁体和控制器之间还可以电路连接,例如,控制器和锁体可以通过继电器连接,控制器通过继电器控制锁体通电或断电,以此实现开锁或关锁。其中,电子锁可以是门锁、车锁等。用户终端可以是手机、电脑等终端设备。
电子锁可以以一定的频率向电子锁的服务器发送通信请求,以请求建立通信连接;或者服务器可以以一定的频率向电子锁发送通信请求,以建立通信连接。若连接失败,说明电子锁处于离线状态,这时服务器获取到的电子锁的通信状态也为离线状态;若连接成功,说明电子锁处于在线状态,这时服务器获取到的电子锁的通信状态也为在线状态。
当电子锁处于在线状态时,服务器将开锁密码同时发送给用户终端和电子锁;用户通过用户终端查看开锁密码,并将开锁密码输入到电子锁中;电子锁利用服务器发送的开锁密码对用户输入的开锁密码进行验证;若验证通过,则开锁。
当电子锁处于离线状态时,服务器将开锁密码发送给用户终端;用户通过用户终端查看开锁密码,并将开锁密码输入到电子锁中;电子锁利用本申请实施例提供的电子锁的离线控制方法生成验证离线密码,并利用验证离线密码对用户输入的开锁密码进行验证;若验证通过,则开锁。
可选的,一种情况下,当电子锁处于离线状态时,服务器向用户终端发送开锁离线密码;当电子锁处于在线状态时,服务器向用户终端和电子锁发送开锁在线密码。开锁离线密码和开锁在线密码的结构或形式可以不同,这样,当电子锁监测到用户输入的开锁密码后,可以根据开锁密码的结构或形式判断该开锁密码是开锁在线密码还是开锁离线密码。当电子锁监测到开锁离线密码时,利用本申请实施例提供的电子锁侧的电子锁的离线控制方法对用户输入的开锁离线密码进行验证,若验证通过,则控制电子锁打开。
或者,另一种情况下,服务器生成开锁密码时,不受电子锁通信状态的影响。换句话说,不管电子锁处于离线状态还是在线状态,服务器均利用本申请实施例提供的服务器侧的电子锁的离线控制方法生成开锁离线密码,并将生成的开锁离线密码发送给用户终端和电子锁。这种情况下,电子锁无需判断用户输入的开锁密码的结构或形式,只需要判断电子锁当前的通信状态即可。通信状态可以通过判断是否接收到服务器发送的开锁离线密码来判断。若电子锁处于在线状态(即接收到服务器发送的开锁离线密码),则直接利用从服务器接收到的开锁离线密码对用户输入的开锁离线密码进行验证;若电子锁处于离线状态(即未接收到服务器发送的开锁离线密码),则利用本申请实施例提供的电子锁侧的电子锁的离线控制方法对用户输入的开锁离线密码进行验证。
需要说明的是,在服务器一侧生成开锁离线密码的方法,和在电子锁一侧生成验证离线密码的方法相同,这样基于相同的密码序号和电子锁的识别码才可以生成相同的密码,进而才能保证电子锁对用户输入的开锁离线密码验证的有效性。
图2示出了本申请一实施例提供的电子锁的离线控制方法的流程示意图,本申请实施例应用于电子锁且在本申请实施例中电子锁处于离线状态。作为示例而非限定,所述方法可以包括以下步骤:
S201,当监测到用户输入的开锁离线密码时,确定所述开锁离线密码的密码序号。
如图1实施例中所述,若服务器在电子锁在线时发送的为开锁在线密码、在电子锁离线时发送的为开锁离线密码,那么两种密码的结构或形式不同。这种情况下,电子锁监测到用户输入的密码时,需要根据密码的结构或形式判断该密码为开锁离线密码还是开锁在线密码。
若服务器在电子锁在线或离线时均发送的为开锁离线密码,这种情况下,电子锁监测到用户输入的密码时,需要首先判断电子锁与服务器之间当前的通信状态(可以判断预设时间内是否接收到服务器发送的开锁离线密码,若未接收到,则为离线状态)。若为离线状态,则继续后续步骤,即确定开锁离线密码的密码序号。
开锁离线密码可以由多位数字组成,在多位数字中包含有密码序号。密码序号可以由至少一位数字组成,密码序号的位数小于开锁离线密码的位数。示例性的,假设用户输入的开锁离线密码为92015367。在生成开锁离线密码时规定,开锁离线密码的第2、4、6位上的数字分别为密码序号中的第1、2、3位数字。因此,根据开锁离线密码可以确定出密码序号为213。
实际应用中,一个开锁离线密码对应一个密码序号。
S202,获取所述电子锁的识别码,并根据所述密码序号和所述识别码生成验证离线密码。
实际应用中,在生产电子锁时,为每个电子锁都设置了唯一的识别码,即一把锁对应一个识别码。根据密码序号和识别码生成的验证离线密码同样也具有唯一性。
S203,当开锁离线密码和所述验证离线密码匹配时,开锁。
如果开锁离线密码和验证离线密码相同,说明验证通过,此时电子锁开锁。
如果开锁离线密码和验证离线密码不同,说明验证未通过,此时可以控制电子锁上的提示装置向用户发送提示信息,以提示用户输入密码错误。
本申请实施例中电子锁的获取用户输入的开锁离线密码,确定开锁离线密码的密码序号,并获取电子锁的识别码,然后根据密码序号和识别码生成验证离线密码;利用上述方法,处于离线状态的电子锁的虽然无法从服务器获取开锁密码,但是可以根据用户输入的开锁离线密码和电子锁的识别码生成验证离线密码,然后利用生成的验证离线密码对用户输入的开锁离线密码进行验证。通过上述方法,处于离线状态的能够对用户输入的开锁密码进行验证,实现了离线开锁。
图3示出了本申请又一实施例提供的电子锁的离线控制方法的流程示意图,本申请实施例应用于电子锁的服务器,作为示例而非限定,所述方法可以包括以下步骤:
S301,在监测到用户终端的开锁指令时,获取所述电子锁的的通信状态。
服务器可以通过向电子锁发送通信请求的方式,来获取电子锁的通信状态。例如:服务器向电子锁发送通信请求,若在预设时间内未接收到电子锁返回的响应,则说明电子锁处于离线状态。
S302,若所述电子锁的通信状态为离线,则为所述开锁指令分配密码序号。
密码序号可以由多位数字组成。可以随机生成一串数字,作为开锁指令的密码序号。
但是这种随机生成密码序号的方法,没有规律性,不便于密码序号的管理。尤其是还可能出现本次生成的密码序号与之前某次生成的密码序号重复的情况,这种情况下,根据密码序号和识别码生成的开锁离线密码的安全性较低。
为了解决上述问题,本申请实施例中,步骤S302可以包括以下步骤:
S31,获取所述密码序号的取值范围,以及已分配的密码序号。
可以预先设定取值范围,例如000-999。也可以预先设定密码序号的位数,再根据位数确定密码序号的取值范围,例如,位数为2位,相应的取值范围为00-99。
S32,根据所述已分配的密码序号确定所述取值范围中未分配的密码序号,并从所述未分配的密码序号中选取一个密码序号。
可以从未分配的密码序号中随机选取一个密码序号。
还可以是按照预设的顺序进行选取。这种情况下,由于是按照一定的顺序分配密码序号的,因此无需获取全部的已分配的密码序号,只需获取上一次分配的密码序号即可。示例性的,取值范围为00-99,预设顺序为从小到大。获取上一次分配的密码序号为10,说明00-10这些密码序号均已分配,那么按照从小到大的顺序,这次应分配的密码序号为11。
上述只是示例,当然,还可以按照从大到小的顺序等其他顺序进行选取,在此不做具体限定。
通过S31-S32中的方法,可以保证每次分配的密码序号的唯一性,进而保证每次生成的开锁离线密码的唯一性和安全性。
S303,获取所述电子锁的识别码,根据所述密码序号和所述识别码生成开锁离线密码,并将所述开锁离线密码发送到所述用户终端。
电子锁的识别码可以预先存储在电子锁的存储空间中,需要时,直接从存储空间中获取即可。
步骤S303中生成开锁离线密码的方法与步骤S202中生成验证离线密码的方法相同。换句话说,当密码序号和识别码均相同时,步骤S303中生成的开锁离线密码和步骤S202中生成的验证离线密码也是相同的。这样,即使电子锁处于离线状态,也可以得到与服务器相同的开锁离线密码,并利用该开锁离线密码对用户输入的开锁离线密码进行验证。
参见图4,为本申请实施例提供的离线密码生成方法的方法流程示意图。S202中根据所述密码序号和所述识别码生成验证离线密码的过程,和S302中根据所述密码序号和所述识别码生成开锁离线密码的过程相同。如图4所示,对于开锁离线密码或验证离线密码中的任一离线密码,根据密码序号和识别码生成离线密码的过程可以包括以下步骤:
S401,获取预设的随机数矩阵,并根据密码序号从随机数矩阵中获取目标随机数。
矩阵中的每个元素为一个随机数。这个随机数矩阵可以是在电子锁出厂时设置好的,也可以是在使用时用户初始设置的。这个随机数矩阵需要同时存储于电子锁中和服务器中,且保证同步设置,即电子锁和服务器任一方中的随机数矩阵发生变化,另一方中的随机数矩阵也要相应地变化。这样才可以保证电子锁生成的密码和服务器生成的密码是相同的。
示例性的,参见图5,为本申请实施例提供的随机数矩阵的示意图。图5中为二维矩阵。随机数矩阵可以是二维矩阵,也可以是三维矩阵。
在根据密码序号从随机数矩阵中选取目标随机数的时候,可以按照预设的选取规则进行选取。电子锁和服务器中的选取规则也是相同的。
示例性的,对于二维的随机数矩阵,假设密码序号为两位数,选取规则可以为:密码序号的第一位表示矩阵的行,密码序号的第二位表示矩阵的列。假设密码序号为21,那么从图5中选取的目标随机数为0(第2行第1列位置上的数字)。
假设密码序号为三位数,选取规则可以为:密码序号的第一位和第三位数字的和表示矩阵的列,密码序号的第一位和第二位数字的和表示矩阵的行。假设密码序号为123,那么从图5中选取的目标随机数为3(第1+2行、第1+3列)。
需要说明的是,上述只是选取规则的示例,选取规则可以根据实际需要进行设定,本申请实施例中并不对选取规则做具体限定。
另外,可以根据密码序号从随机数矩阵中选取一个目标随机数,也可以选取多个目标随机数。当需要选取多个目标随机数时,可以采用多个选取规则。同样的,不管多少个选取规则,都需要令电子锁和服务器中的选取规则是相同的。
S402,根据密码序号、识别码和目标随机数生成离线密码。
实际应用中,可以将密码序号、识别码和目标随机数按照一定的组合规则进行组合,生成离线密码。电子锁和服务器中的组合规则也需要是相同的。
为了使增加密码的安全性,可以通过增加组合规则的复杂性来实现。
可选的,步骤S402可以包括以下步骤:
S41,将密码序号和目标随机数按照第一预设顺序排列,得到第一中间码。
示例性的,假设密码序号为123,获取到两个目标随机数3和2,可以将这几个数字依次顺序排列得到第一中间码为12332。
S42,将识别码中预设位置上的数字组成第二中间码。
由于电子锁的数量较多,识别码通常包含较多位数的数字。在生成第二中间码的过程中,可以从识别码中选取部分预设位置上的数字。例如:识别码的前几位可能表示生成的年份和地址,而后边几位可能表示生产编号,那么可以选取后边几位用于表示生产编号的数字。
组成第二中间码的规则也可根据实际需要预先设定。例如:假设识别码为19525301010999,直接选取后边4位数字0999作为第二中间码。这样,当识别码较长时,无需使用识别码中的全部数字,只选取能够区分不同电子锁的几位数字即可,有效节约计算成本。
S43,将第一中间码和第二中间码组合生成第三中间码。
组成第三中间码的规则也可根据实际需要预先设定。例如,可以将这些数字依次顺序连接,也可以将这些数字相加等等,在此不做具体限定。
为了提高密码的复杂性,可以对这些数字进行进制的转换,然后再相加。
继续上述示例,将第二中间码0999转换成10进制为02457,然后和第一中间码12332相加组成第三中间码为14789。
S44,将第三中间码和密码序号按照第二预设顺序排列,得到离线密码。
其中,第二预设顺序也可以预先设定。为了增加密码的复杂性,可以使得密码序号中的各个数字穿插在第三中间码的各个数字中。
通过上述方法,生成的离线密码中既包含了密码序号,又包含了经过一系列预设规则生成的数字;使得生成的离线密码既可以作为电子锁获取密码序号的来源,又可以保证唯一性和密码的安全性。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
对应于图2实施例所述的电子锁的离线控制方法,图6示出了本申请实施例提供的电子锁的离线控制装置的结构框图,为了便于说明,仅示出了与本申请实施例相关的部分。
参照图6,该装置应用于电子锁,装置6包括:
密码序号获取单元61,用于获取用户输入的开锁离线密码,并确定所述开锁离线密码的密码序号。
验证密码生成单元62,用于获取所述电子锁的识别码,并根据所述密码序号和所述识别码生成验证离线密码。
开锁控制单元63,用于当开锁离线密码和所述验证离线密码匹配时,开锁。
可选的,验证密码生成单元62包括:
第一获取模块,用于获取预设的随机数矩阵,并根据所述密码序号从所述随机数矩阵中获取目标随机数。
第一生成模块,用于根据所述密码序号、所述识别码和所述目标随机数生成所述验证离线密码。
可选的,第一生成模块还用于:
将所述密码序号和所述目标随机数按照第一预设顺序排列,得到第一中间码。
将所述识别码中预设位置上的数字组成第二中间码。
将所述第一中间码和所述第二中间码组合生成第三中间码。
将所述第三中间码和所述密码序号按照第二预设顺序排列,得到所述验证离线密码。
对应于图3实施例所述的电子锁的离线控制方法,图7示出了本申请实施例提供的电子锁的离线控制装置的结构框图,为了便于说明,仅示出了与本申请实施例相关的部分。
参照图7,该装置应用于电子锁的服务器,装置7包括:
通信状态获取单元71,用于在监测到用户终端的开锁指令时,获取所述电子锁的通信状态。
密码序号分配单元72,用于若所述电子锁的通信状态为离线,则为所述开锁指令分配密码序号。
开锁密码生成单元73,用于获取所述电子锁的识别码,根据所述密码序号和所述识别码生成开锁离线密码,并将所述开锁离线密码发送到所述用户终端。
可选的,密码序号分配单元72包括:
第二获取模块,用于获取所述密码序号的取值范围,以及已分配的密码序号。
分配模块,用于根据所述已分配的密码序号确定所述取值范围中未分配的密码序号,并从所述未分配的密码序号中选取一个密码序号。
可选的,开锁密码生成单元73包括:
第三获取模块,用于获取预设的随机数矩阵,并根据所述密码序号从所述随机数矩阵中获取目标随机数。
第二生成模块,用于根据所述密码序号、所述识别码和所述目标随机数生成所述开锁离线密码。
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
另外,图6/7所示的电子锁的离线控制装置可以是内置于现有的终端设备内的软件单元、硬件单元、或软硬结合的单元,也可以作为独立的挂件集成到所述终端设备中,还可以作为独立的终端设备存在。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
图8为本申请一实施例提供的终端设备的结构示意图。如图8所示,该实施例的终端设备8包括:至少一个处理器80(图8中仅示出一个)处理器、存储器81以及存储在所述存储器81中并可在所述至少一个处理器80上运行的计算机程序82,所述处理器80执行所述计算机程序82时实现上述任意各个电子锁的离线控制方法实施例中的步骤。
所述终端设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。该终端设备可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,图8仅仅是终端设备8的举例,并不构成对终端设备8的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括输入输出设备、网络接入设备等。
所称处理器80可以是中央处理单元(Central Processing Unit,CPU),该处理器80还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器81在一些实施例中可以是所述终端设备8的内部存储单元,例如终端设备8的硬盘或内存。所述存储器81在另一些实施例中也可以是所述终端设备8的外部存储设备,例如所述终端设备8上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器81还可以既包括所述终端设备8的内部存储单元也包括外部存储设备。所述存储器81用于存储操作系统、应用程序、引导装载程序(BootLoader)、数据以及其他程序等,例如所述计算机程序的程序代码等。所述存储器81还可以用于暂时地存储已经输出或者将要输出的数据。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在移动终端上运行时,使得移动终端执行时实现可实现上述各个方法实施例中的步骤。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random AccessMemory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/网络设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/网络设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

Claims (10)

1.一种电子锁的离线控制方法,其特征在于,应用于电子锁,所述方法包括:
当电子锁处于在线状态时,获取服务器发送的开锁在线密码以及用户输入的密码;当所述服务器发送的开锁在线密码以及用户输入的密码匹配时,开锁;
当电子锁处于离线状态时,获取用户输入的开锁离线密码,并确定所述开锁离线密码的密码序号;所述开锁离线密码和所述开锁在线密码的结构或形式不同;
根据用户输入的密码的所述结构或形式,判断所述用户输入的密码是开锁在线密码还是开锁离线密码;当监测到为所述开锁离线密码时,获取所述电子锁的识别码,并根据所述密码序号和所述识别码生成验证离线密码;
当开锁离线密码和所述验证离线密码匹配时,开锁。
2.如权利要求1所述的电子锁的离线控制方法,其特征在于,所述根据所述密码序号和所述识别码生成验证离线密码,包括:
获取预设的随机数矩阵,并根据所述密码序号从所述随机数矩阵中获取目标随机数;
根据所述密码序号、所述识别码和所述目标随机数生成所述验证离线密码。
3.如权利要求2所述的电子锁的离线控制方法,其特征在于,所述根据所述密码序号、所述识别码和所述目标随机数生成所述验证离线密码,包括:
将所述密码序号和所述目标随机数按照第一预设顺序排列,得到第一中间码;
将所述识别码中预设位置上的数字组成第二中间码;
将所述第一中间码和所述第二中间码组合生成第三中间码;
将所述第三中间码和所述密码序号按照第二预设顺序排列,得到所述验证离线密码。
4.一种电子锁的离线控制方法,其特征在于,应用于服务器,所述方法包括:
在监测到用户终端的开锁指令时,获取所述电子锁的通信状态;
若所述电子锁的通信状态为在线,则将开锁在线密码同时发送给所述用户终端和所述电子锁;当所述电子锁接收到用户输入的密码与所述开锁在线密码匹配时,开锁;
若所述电子锁的通信状态为离线,则为所述开锁指令分配密码序号;
获取所述电子锁的识别码,根据所述密码序号和所述识别码生成开锁离线密码,并将所述开锁离线密码发送到所述用户终端;所述开锁离线密码和所述开锁在线密码的结构或形式不同,以使所述电子锁根据用户输入的密码的所述结构或形式,判断所述用户输入的密码是开锁在线密码还是开锁离线密码。
5.如权利要求4所述的电子锁的离线控制方法,其特征在于,所述为所述开锁指令分配密码序号,包括:
获取所述密码序号的取值范围,以及已分配的密码序号;
根据所述已分配的密码序号确定所述取值范围中未分配的密码序号,并从所述未分配的密码序号中选取一个密码序号。
6.如权利要求4所述的电子锁的离线控制方法,其特征在于,所述根据所述密码序号和所述识别码生成开锁离线密码,包括:
获取预设的随机数矩阵,并根据所述密码序号从所述随机数矩阵中获取目标随机数;
根据所述密码序号、所述识别码和所述目标随机数生成所述开锁离线密码。
7.一种电子锁的离线控制装置,其特征在于,应用于电子锁,所述装置包括:
密码序号获取单元,用于当电子锁处于在线状态时,获取服务器发送的开锁在线密码以及用户输入的密码;当所述服务器发送的开锁在线密码以及用户输入的密码匹配时,开锁;当电子锁处于离线状态时,获取用户输入的开锁离线密码,并确定所述开锁离线密码的密码序号;所述开锁离线密码和所述开锁在线密码的结构或形式不同;
验证密码生成单元,用于根据用户输入的密码的所述结构或形式,判断所述用户输入的密码是开锁在线密码还是开锁离线密码;当监测到为所述开锁离线密码时,获取所述电子锁的识别码,并根据所述密码序号和所述识别码生成验证离线密码;
开锁控制单元,用于当开锁离线密码和所述验证离线密码匹配时,开锁。
8.一种电子锁的离线控制装置,其特征在于,应用于服务器,所述装置包括:
通信状态获取单元,用于在监测到用户终端的开锁指令时,获取所述电子锁的通信状态;
密码序号分配单元,用于若所述电子锁的通信状态为在线,则将开锁在线密码同时发送给所述用户终端和所述电子锁;当所述电子锁接收到用户输入的密码与所述开锁在线密码匹配时,开锁;若所述电子锁的通信状态为离线,则为所述开锁指令分配密码序号;
开锁密码生成单元,用于获取所述电子锁的识别码,根据所述密码序号和所述识别码生成开锁离线密码,并将所述开锁离线密码发送到所述用户终端;所述开锁离线密码和所述开锁在线密码的结构或形式不同,以使所述电子锁根据用户输入的密码的所述结构或形式,判断所述用户输入的密码是开锁在线密码还是开锁离线密码。
9.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至3任一项所述的方法或如权利要求4至6任一项所述的方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至3任一项所述的方法或如权利要求4至6任一项所述的方法。
CN202010072099.1A 2020-01-21 2020-01-21 电子锁的离线控制方法、离线控制装置及终端设备 Active CN113223210B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010072099.1A CN113223210B (zh) 2020-01-21 2020-01-21 电子锁的离线控制方法、离线控制装置及终端设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010072099.1A CN113223210B (zh) 2020-01-21 2020-01-21 电子锁的离线控制方法、离线控制装置及终端设备

Publications (2)

Publication Number Publication Date
CN113223210A CN113223210A (zh) 2021-08-06
CN113223210B true CN113223210B (zh) 2023-01-03

Family

ID=77085425

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010072099.1A Active CN113223210B (zh) 2020-01-21 2020-01-21 电子锁的离线控制方法、离线控制装置及终端设备

Country Status (1)

Country Link
CN (1) CN113223210B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114338131A (zh) * 2021-12-24 2022-04-12 北京京东振世信息技术有限公司 终端的离线使用方法、管理方法、终端、管理端及系统
CN114333115B (zh) * 2021-12-29 2023-04-21 广州商景网络科技有限公司 基于动态密码的解锁方法及装置、电子锁装置及控制系统
CN114882619A (zh) * 2022-04-02 2022-08-09 吴雪松 离线密码生成、验证方法及可离线密码锁
CN116543486B (zh) * 2023-07-05 2023-09-26 深圳市旭子科技有限公司 密码锁的离线控制方法及密码锁系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101294463B (zh) * 2008-06-18 2011-05-18 大连交通大学 基于电子密码锁的动态加密和开启方法
CN106952378A (zh) * 2017-04-11 2017-07-14 徐士兰 开锁方法及装置、电子锁
CN109215178A (zh) * 2017-07-04 2019-01-15 华为技术有限公司 密码生成方法、装置、存储介质、电子锁、服务器及终端
CN108986278B (zh) * 2018-07-13 2022-01-21 深圳市欧瑞博科技股份有限公司 一种智能门锁脱机密码授权方法及授权系统

Also Published As

Publication number Publication date
CN113223210A (zh) 2021-08-06

Similar Documents

Publication Publication Date Title
CN113223210B (zh) 电子锁的离线控制方法、离线控制装置及终端设备
US11023875B2 (en) Electronic credential management system
CN107113175B (zh) 多用户强认证令牌
US9350728B2 (en) Method and system for generating and authorizing dynamic password
CN110138562B (zh) 智能设备的证书签发方法、装置及系统
CN109191649B (zh) 一种智能门锁控制权限分享的方法及装置
CN102449631A (zh) 用于执行管理操作的系统和方法
US11792013B2 (en) Cyber physical key
CN111213170B (zh) 资产托管方法,存储介质,区块链系统及区块链节点
CN114117376B (zh) 身份认证的方法、分配动态密码的方法及相应的设备
CN112468497B (zh) 区块链的终端设备授权认证方法、装置、设备及存储介质
CN112600744A (zh) 权限控制方法和装置、存储介质及电子装置
CN110912703A (zh) 一种基于网络安全的多级密钥管理方法、装置及系统
CN111783071A (zh) 基于密码、基于隐私数据的验证方法、装置、设备及系统
CN108390892B (zh) 一种远程存储系统安全访问的控制方法和装置
CN115935391A (zh) Ic卡的制卡、发卡方法以及装置、介质和程序产品
US10181229B2 (en) Method and system for implementing a universal key card
CN112637160A (zh) 登陆验证方法、装置、设备和存储介质
CN108574572B (zh) 一种卡片洗卡发行的方法及装置
CN110535657B (zh) 一种多个私钥管理设备相互身份认证的方法及装置
CN110502963B (zh) 指纹认证方法、指纹认证装置及终端
KR102656577B1 (ko) Rsa를 방지하는 전자 장치 및 그 동작 방법
CN116628746A (zh) 设备参数授权修改方法、系统、电子设备及存储介质
US11728985B2 (en) Fault tolerant provisioning verification for cryptographic keys
CN113312651B (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