一种密码锁、密码锁控制系统及方法与流程

文档序号:15081671发布日期:2018-08-04 10:38阅读:311来源:国知局

本发明涉及密码锁领域,具体而言,涉及一种密码锁、密码锁控制系统及方法。



背景技术:

密码锁使用方便,不存在钥匙忘带或丢失的问题,被广泛地应用在人们的生活中。传统的密码锁包括机械式密码锁、电子式密码锁等。这些密码锁大多预先设置有固定的数字密码,通过输入该密码开锁,而数字密码较简单,极易被破解,且在输入密码时也容易被别人看到,安全性较差。随着手机的普遍使用,现今出现了通过手机开启密码锁的方法,但这些方法大都利用了蓝牙技术。手机端搜索到密码锁时,输入预先设置的验证码与密码锁进行蓝牙配对,当配对成功时打开锁具。然而,蓝牙的技术协议是比较容易获得的,根据手机端与密码锁之间传输的无线信号以及上述技术协议就能够有较大的几率破解该验证码,降低了密码锁的安全性能。



技术实现要素:

本发明的目的在于提供一种密码锁、密码锁控制系统及方法,以改善上述问题。

为了实现上述目的,本发明采用的技术方案如下:

第一方面,本发明实施例提供了一种密码锁,应用于密码锁控制系统,所述系统还包括用户终端,所述用户终端用于根据当前时间获得动态开锁密码,将所述开锁密码转换为栅格图像,所述开锁密码包括所述用户终端的唯一识别码,所述密码锁包括读屏系统以及解码系统,所述读屏系统包括信号采集装置和第一控制装置,所述解码系统包括第二控制装置,所述信号采集装置与所述第一控制装置电连接,所述第一控制装置与所述第二控制装置通信连接。所述信号采集装置用于采集用户终端上显示的栅格图像所包括的多个栅格的状态信息,将所述状态信息转换为电信号发送给第一控制装置,其中,所述栅格的状态包括所述栅格的点亮/熄灭状态。所述第一控制装置用于根据所述电信号得到开锁密码,将所述开锁密码发送给所述第二控制装置。所述第二控制装置用于对接收到的所述开锁密码进行解码,获得解码数据,对所述解码数据进行验证,当验证通过时,发送开启指令至对应的电子锁具。

优选的,所述信号采集装置包括多个光电传感器,所述光电传感器的数量与所述栅格的数量一致,每一个所述光电传感器与一个所述栅格对应。

优选的,所述解码系统还包括实时时钟模块,所述实时时钟模块与所述第二控制装置电连接。所述第二控制装置具体用于通过所述实时时钟模块获取当前时间,根据所述当前时间产生共同密码,通过所述共同密码对接收到的所述开锁密码进行解码,获得解码数据,对所述解码数据进行验证,当验证通过时,发送开启指令至对应的电子锁具。

优选的,所述读屏系统还包括数据输入装置,所述数据输入装置与所述第一控制装置电连接,所述数据输入装置用于输入密码数据。

优选的,所述读屏系统还包括显示装置,所述显示装置与所述第一控制装置电连接,所述第一控制装置还用于在接收到外部触发指令后发送时钟获取请求至所述第二控制装置,接收到所述第二控制装置发送的当前时间后,将所述当前时间发送至显示装置,所述显示装置用于显示所述当前时间。

第二方面,本发明实施例还提供了一种密码锁控制系统,包括用户终端及上述密码锁,所述用户终端包括显示屏,所述用户终端具有唯一识别码。所述用户终端用于生成开锁密码,根据所述开锁密码生成栅格图像,所述栅格图像包括多个栅格。所述密码锁用于采集所述多个栅格的状态信息,将所述状态信息转换为所述开锁密码,对所述开锁密码进行解码得到解码数据,对所述解码数据进行验证,当验证通过时,发送开启指令至对应的电子锁具。

第三方面,本发明实施例还提供了一种密码锁控制方法,所述方法包括:用户终端获取当前时间,根据所述当前时间计算得到共同密码;获取所述用户终端的唯一识别码;将所述共同密码与所述唯一识别码进行加密计算生成开锁密码;根据所述开锁密码生成栅格图像,所述栅格图像包括多个栅格。

第四方面,本发明实施例还提供了一种密码锁控制方法,所述方法包括:获取用户终端上显示的多个栅格的状态信息数据,根据所述状态信息数据得到开锁密码;获取当前时间,根据所述当前时间计算得到共同密码;根据所述共同密码对所述开锁密码进行解码;若解码成功,获得解码数据,将所述解码数据与预存储的一个或多个识别码进行匹配,其中,所述识别码为与所述密码锁绑定的用户终端的唯一识别码;当所述解码数据与预存储的任意一个识别码匹配成功,则发送开启指令至对应的电子锁具。

优选的,所述的将所述解码数据与预存储的一个或多个识别码进行匹配的步骤之前,还包括:判断是否预存储有识别码,当不存在识别码时,存储获得的解码数据,并将所获得的解码数据标记为管理者识别码,发送开启指令至对应的电子锁具,当存在识别码时,执行所述的将所述解码数据与预存储的一个或多个识别码进行匹配的步骤。

优选的,所述判断是否预存储有识别码的步骤,还包括:当所述解码数据与管理者识别码匹配成功时,判断所获取的多个栅格的状态信息数据是否包括操作指令,当所述状态信息数据包括所述操作指令时,执行所述操作指令,当所述状态信息数据不包括所述操作指令时,发送开启指令至对应的电子锁具。

本发明实施例提供的密码锁、密码锁控制系统及方法,摒弃了现有的利用蓝牙技术传输开锁密码的方式,通过在用户终端上显示包括多个栅格的栅格图像,根据生成的动态开锁密码控制每一个栅格的点亮/熄灭状态。密码锁采集上述多个栅格的点亮/熄灭状态信息得到用户终端所生成的动态开锁密码,利用光信号实现了用户终端与密码锁之间的数据传输,有效地提高了密码锁的安全性能,且使得用户输入密码的过程更简便。密码锁进一步对动态开锁密码进行解码得到解码数据,对所述解码数据进行验证,当验证通过时,即可以开启对应的电子锁具。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1是本发明实施例提供的一种密码锁控制系统的结构框图;

图2是用户终端上显示的一帧栅格图像的示意图;

图3是本发明实施例提供的一种密码锁控制系统的一种实施方式的结构示意图;

图4是本发明实施例提供的以用户终端为执行主体的一种密码锁控制方法的方法流程图;

图5是本发明实施例提供的图4所示的密码锁控制方法的一种实施方式的流程图;

图6是本发明实施例提供的以密码锁为执行主体的一种密码锁控制方法的方法流程图;

图7是本发明实施例提供的图6所示的密码锁控制方法的一种实施方式的流程图;

图8是本发明实施例提供的以密码锁为执行主体的一种密码锁控制方法中步骤S681至步骤S683的流程图;

图9是本发明实施例提供的运行于用户终端的一种密码锁控制装置的功能模块图;

图10是本发明实施例提供的运行于密码锁的一种密码锁控制装置的功能模块图。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性或时间先后。

在本发明中,除非另有明确的规定和限定,“连接”等术语应做广义理解,例如,可以是直接连接,也可以通过中间媒介间接连接,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。

如图1所示,是本发明实施例提供的密码锁控制系统的示意图,即用户终端200与密码锁100进行交互的示意图。密码锁100可以与一个或多个用户终端200进行数据交互。其中,所述用户终端200可以是平板电脑、智能手机等。用户终端200包括触控屏幕,在用户终端200与用户之间同时提供一个输出及输入界面。具体地,触控屏幕可以向用户显示视频输出,这些视频输出的内容可包括文字、图形、视频及其任意组合,也可以接收用户的输入指令。用户终端200具有唯一识别码,例如,手机终端的序列号等。密码锁100能够驱动用于控制房门开启和关闭的执行机构执行相应的动作,以控制所对应的房门的开启和关闭。

本实施例提供的密码锁控制系统的开锁原理优选为:用户终端200根据当前时间产生用于解锁的动态开锁密码并发送到密码锁100,密码锁100接收用户终端发送的开锁密码,并对开锁密码进行解码获得解码数据,对解码数据验证通过后打开对应的电子锁具。具体地用户终端200根据当前时间产生用于解锁的动态开锁密码的实施方式可以为:用户终端200获取当前时间,根据所述当前时间计算得到共同密码;获取所述用户终端200的唯一识别码;将所述共同密码与所述唯一识别码进行加密计算生成动态的开锁密码。相应的,密码锁100对开锁密码进行解码开锁的实施方式为:获取密码锁100的当前时间,根据所述当前时间计算得到共同密码;根据所述共同密码对所述开锁密码进行解码,当解码成功时,即可以获得解码数据,当所述解码数据与预存储的任意一个识别码匹配成功,则发送开启指令至对应的电子锁具。

可以理解的是,解码过程也可能失败。例如,如果将所述开锁密码用共同密码解码算出来的用户终端200唯一识别码为3个字节,而若预存储的识别码是2个字节,则认为此时解码失败,不需要进行后续的匹配操作。当然,判断解码失败可能还有其它的实施方式,并不局限于此。解码失败可能是由于用户终端200获取的当前时间与密码锁100获取的当前时间不在同一时间区间所导致的,也可能是开锁密码的传输错误所导致的。当解码失败时,则再次获取当前时间,根据预设规则计算得到共同密码,根据所述共同密码以及所述开锁密码进行解码,若解码成功,获得解码数据;并将所述解码数据与所述预存储的一个或多个识别码进行匹配,若所述解码数据与所述预存储的识别码中的任意一个匹配成功,则开锁成功。若解码还是失败,则本次开锁过程失败,可以在同步用户终端200与密码锁100的时钟后,用户终端200重新获取当前时间生成动态开锁密码,并发送至密码锁100,密码锁100再次进行解码。

基于上述原理,用户终端200将生成的动态开锁密码便捷地传输到密码锁100是密码锁控制系统实现开锁的一个重要过程。基于此,本实施例提供的密码锁控制系统的具体实施方式如下:

用户终端200用于生成开锁密码,根据所述开锁密码生成栅格图像,所述栅格图像包括多个栅格。其中,多个栅格的状态由生成的开锁密码决定。具体的,用户终端200根据所述开锁密码生成栅格图像的实施方式可以为:用户终端200根据预设的划分规则把生成的开锁密码分割成若干个数据片段,一个数据片段对应一帧的栅格图像。其中,每个数据片段的各数据位与其对应帧栅格图像的各栅格一一对应。根据每个数据位“0”或“1”的值控制对应栅格的状态。

密码锁100用于采集用户终端200显示的多个栅格的状态信息,将采集到的状态信息转换为所述开锁密码,进一步对开锁密码进行解码得到解码数据,对所述解码数据进行验证,当验证通过时,发送开启指令至对应的电子锁具。可以理解的是,密码锁将采集到的多个栅格的状态信息转换为所述开锁密码的过程即为上述用户终端200根据所述开锁密码生成栅格图像的逆过程,具体实施方式可以为:密码锁100根据上述数据位与栅格的对应规则将采集到的每一帧栅格图像所包括的多个栅格的状态转换为一个数据片段,然后根据预设的划分规则将所获得的多个数据片段合并为开锁密码。

作为一种实施方式,栅格的状态可以为栅格的点亮/熄灭状态。用户终端200可以根据预先设置的划分规则将所生成的开锁密码转换为包括“0”和“1”的多个数据片段,每个数据片段包括多个数据位。根据每个数据位控制每个栅格的亮度的变化,如“0”可以用暗条纹表示,即栅格处于熄灭状态,“1”可以用亮条纹表示,即栅格处于点亮状态。密码锁可以检测到多个栅格的点亮/熄灭状态,并根据上述数据位与栅格的对应规则将获取到的每一帧栅格图像转化为包括“0”和“1”的数据片段,如当所检测到的栅格为暗条纹时,表示对应的数据位的值为“0”,当所检测到的栅格为亮条纹时,表示对应的数据位的值为“1”,进而根据获取到的数据片段得到开锁密码。例如,图2示出了用户终端200上显示的一帧栅格图像,该栅格图像包括5个栅格,分别为栅格A、栅格B、栅格C、栅格D和栅格E。其中,带阴影的栅格表示明条纹,不带阴影的栅格表示暗条纹,也就是说,栅格A、栅格C和栅格E为明条纹,栅格B和栅格D为暗条纹,此时,所对应的数据片段为10101。

作为另一种实施方式,栅格的状态也可以为栅格的点亮/熄灭状态及颜色显示状态。用户终端200可以将所生成的开锁密码转换为包括“0”和“1”的多个数据片段,根据每个数据片段的每个数据位控制每个栅格的显示颜色。如以“00”表示熄灭状态,“11”表示红色,“10”表示黄色,“01”表示蓝色。密码锁可以检测到每一帧栅格图像包括的多个栅格的点亮/熄灭状态以及点亮状态下栅格的颜色改变,并相应地将其转化为“0”和“1”的数据片段,如当所检测到的栅格为熄灭状态时,表示对应的数据位的值为“00”,当所检测到的栅格点亮且为红色时,表示对应的数据位的值为“11”,当所检测到的栅格点亮且为黄色时,表示对应的数据位的值为“10”,当所检测到的栅格点亮且为蓝色时,表示对应的数据位的值为“01”,进而根据获取到的数据片段得到开锁密码。当然,对于分辨率要求较高的系统可以取更多的颜色,例如,绿色、紫色等。

相对于现有的蓝牙传输方式或无线网络传输方式,通过检测用户终端200显示的多个栅格的点亮/熄灭状态获取开锁密码的方式有效地提高了密码传输过程的安全性能。

为了有效地检测用户终端200显示的多个栅格的状态,作为一种实施方式,如图3所示,密码锁100包括读屏系统110、解码系统120及电子锁具。读屏系统110用于采集用户终端200显示的多个栅格的状态信息,将采集到的多个栅格的状态信息转换为开锁密码,并发送至解码系统120解码。解码系统120用于对接收到的开锁密码进行解码,解码成功后得到解码数据,对所述解码数据进行验证,当验证通过时,发送开启指令至对应的电子锁具。电子锁具用于根据开启指令而打开。

如图3所示,读屏系统110包括信号采集装置112和第一控制装置111。信号采集装置112与第一控制装置111电连接。

其中,信号采集装置112用于采集用户终端200上显示的栅格图像所包括的多个栅格的状态信息,将采集到的状态信息转换为电信号发送给第一控制装置111。本实施例中,信号采集装置112优选采用多个光电传感器,且光电传感器的数量与用户终端200显示的栅格的数量一致,每一个光电传感器与一个栅格对应。当然,信号采集装置112也可以采用成像装置,例如CCD图像采集阵列等。需要说明的是,采用光电传感器相对于其他成像装置能够有效地降低密码锁的成本。例如,可以通过多个光电传感器采集每一条栅格的点亮/熄灭状态,并将采集到的栅格的点亮/熄灭状态转换为电信号发送至第一控制装置111。需要说明的是,由于光电传感器输出的电信号一般比较微弱,使得第一控制装置111的信号读取难度较大,因此可以在每一个光电传感器与第一控制装置111之间设置一个信号放大器113,即一个光电传感器的输出端与一个信号放大器113的输入端电连接,信号放大器113的输出端与第一控制装置111电连接。

第一控制装置111用于将信号采集装置112发送的电信号转换成开锁密码。基于以上对用户终端200产生栅格图像的过程说明,第一控制装置111获取到信号采集装置112发送的电信号后,可以根据预设的划分规则逆向解析出开锁密码。本实施例中,第一控制装置111可以包括单片机、ARM、DSP或FPGA等具有数据处理功能的芯片。

如图3所示,解码系统120包括第二控制装置121、实时时钟模块122和电池管理模块124。实时时钟模块122和电池管理模块124均与第二控制装置121电连接。

具体的,第二控制装置121与第一控制装置111通信连接,第一控制装置111还用于将根据信号采集装置112传来的电信号转换成的开锁密码发送给第二控制装置121。第二控制装置121用于对接收到的所述开锁密码进行解码,获得解码数据,对所述解码数据进行验证,当验证通过时,发送开启指令至对应的电子锁具。作为一种实施方式,解码系统120还可以包括存储器,存储器与第二控制装置121电连接,用于存储与密码锁100绑定的一个或多个用户终端200的唯一识别码。需要说明的是,用户终端200发送的开锁密码为根据共同密码及用户终端200的唯一识别码进行加密得到。此时,对所述解码数据进行验证的实施方式为:第二控制装置121将对开锁密码解码得到的解码数据与预先存储的唯一标识码进行匹配,当匹配到与解码数据一致的唯一标识码时,表示该开锁密码为与密码锁100预先绑定的用户终端200发出的,发送开启指令至对应的电子锁具。本实施例中,第二控制装置121也可以包括单片机、ARM、DSP或FPGA等具有数据处理功能的芯片。

此外,基于本实施例提供的密码锁控制系统的开锁原理,为了获取解码系统120的当前时间,解码系统120中设置有实时时钟模块122,为第二控制装置121提供当前的时间。此时,第二控制装置121可以通过所述实时时钟模块122获取当前时间,根据所述当前时间产生共同密码,通过所述共同密码对接收到的所述开锁密码进行解码,获得解码数据,对所述解码数据进行验证,当验证通过时,发送开启指令至对应的电子锁具。

为防止外力破坏锁具,读屏系统110和解码系统120是分开的。例如,读屏系统110设置在门外,而解码系统120设置在门内。因此,读屏系统110还包括第一通信模块116,第一通信模块116与第一控制装置111电连接。相应的,解码系统120包括第二通信模块126,第二通信模块126与第二控制装置121电连接。第一通信模块116与第二通信模块126建立通信连接,从而使得读屏系统110与解码系统120之间能够进行数据交互。本实施例中,第一通信模块116和第二通信模块126优选为红外通信模块或射频通信模块。也就是说,读屏系统110与解码系统120之间通过红外信号或射频信号进行数据交互。

进一步的,所述读屏系统110还包括显示装置114,所述显示装置114与所述第一控制装置111电连接。显示装置114可以用于显示密码锁100的解码系统120的解码结果。具体的,当解码完成时,解码系统120发送指示信息至读屏系统110,读屏系统110通过显示装置114显示该指示信息,以便于用户知道解码结果。例如,当解码成功时,显示“开锁成功”;当解码失败时,显示“开锁失败”。

另外,显示装置114还可以用于显示密码锁100的当前时间。具体的,第一控制装置111在接收到外部触发指令后可以发送时钟获取请求至第二控制装置121。第二控制装置121通过实时时钟模块122获取密码锁100的当前时间,并获取到的当前时间发送至第一控制装置111。第一控制装置111将接收到的当前时间发送至显示装置114显示。需要说明的是,密码锁100还可以包括语音提示模块,语音提示模块与第一控制装置111电连接。第一控制装置111除了将获取到的当前时间发送到显示装置114显示外,还可以通过语音提示模块播报密码锁100的当前时间。当然,第一控制装置111也可以通过语音提示模块播报密码锁100的解码结果等信息。

上述外部触发指令可以由设置在读屏系统110中的一个触发按键发出。开锁时,将用户终端200的显示屏的预设区域靠在触发按键上,一方面可以使得触发按键产生外部触发指令,另一方面,也可以保证用户终端200上显示的多个栅格与多个光电传感器一一对应。

考虑到可能出现由于用户终端200的时间与密码锁100的时间相差较大,不在预设的同一时间区间,导致密码锁100开启失败的情况。据此,密码锁100的读屏系统110还包括数据输入装置115,所述数据输入装置115与所述第一控制装置111电连接,所述数据输入装置115用于输入密码数据。本实施例中,数据输入装置115可以是键盘,也可以是触控屏幕。此时,用户可以将读屏系统110的显示装置114上显示的当前时间输入用户终端200的开锁界面。用户终端200能够根据用户输入的当前时间获取一个一次性的开锁密码。可以根据该开锁密码生成新的栅格图像,实现开锁。也可以通过数据输入装置115输入该一次性的开锁密码,实现开锁。需要说明的是,除了上述触发按键外,也可以通过数据输入装置115触发上述外部触发指令,以使得读屏系统110向解码系统120发出时钟获取请求,从而获取密码锁100的当前时间显示在显示装置114上。

此外,这样设计也方便了有亲友上门,但家里没人时,亲友可以自行打开密码锁100进入。具体地,可以通过触发按键或数据输入装置115发出外部触发指令,进而获取密码锁100的当前时间。将密码锁100的当前时间告知本密码锁100的用户,用户可以在用户终端200上输入密码锁100的当前时间生成一个一次性开锁密码,告知亲友。此时,亲友就可以通过数据输入装置115输入该一次性开锁密码打开门锁。

此外,本实施例中,密码锁100可采用电池供电。为了避免电池电量不足影响密码锁100的开启,解码系统120还包括电池管理模块124,电池管理模块124与第二控制装置121电连接。电池管理模块124用于检测密码锁100的电池电量,将所检测到的电量发送至第二控制装置121。所述第二控制装置121将接收到的电池电量与预设值进行比较,当电池电量小于预设值时,发出电量报警信息至读屏系统110的显示装置114显示。其中,预设值可以根据密码锁100的耗电量设置,例如,可以设置为密码锁100能够持续使用10天的电量。

需要说明的是,为了节省密码锁100的电池电量,第二控制装置121待接收到第一控制装置111发送的时钟获取请求后,再将电量报警信息发送至读屏系统110的显示装置114显示。以确保显示的电量报警信息能够被用户看到。

进一步的,为了避免与密码锁100绑定的管理者用户终端丢失造成的安全隐患。上述解码系统120还包括复位按键123,复位按键123与第二控制装置121电连接。当按下复位按键123时,密码锁100回复出厂设置,解除该密码锁100与所有用户终端200的绑定关系。

另外,本发明实施例还提供了一种密码锁控制方法,应用于上述密码锁控制系统。如图4所示,密码锁控制方法至少包括:步骤S410至步骤S440。本实施例描述的是用户终端200生成并发送开锁密码的过程。下面将以用户终端200为执行主体对本实施例的方法所包含的步骤详细说明。

步骤S410,用户终端获取当前时间,根据所述当前时间计算得到共同密码。

其中,用户终端200可以通过用户终端200内部的时钟模块获取当前时间。为了确保用户终端200获取到的当前时间与密码锁100获取的当前时间一致,可以将用户终端200中的时钟与密码锁100中的时钟同步,例如,可以定时通过管理者用户终端发送时钟同步指令至密码锁100,使得密码锁100中的时钟与管理者用户终端的时钟同步。

用户终端200中预先存储有预设模型,预设口令及预设密码表。当然,密码锁100中也预先存储有相同的预设模型,预设口令及预设密码表。具体的,如图5所述,步骤S410可以包括步骤S401至步骤S403。

步骤S401,用户终端获取当前时间,根据所述当前时间以及预设模型,计算第一加密数据。

其中,所述预设模型可以是多个预设的函数,例如用来做除法的函数,用来做开方的函数,用来做乘方的函数,或者多种函数的组合构成的预设模型,用户可以自定义选择某种预设模型,将所述当前时间输入预设模型中,即能够获取到第一加密数据。

步骤S402,将所述第一加密数据与预设口令进行加密运算,获取第二加密数据。

作为一种实施方式,所述预设口令可以取长度为16字节的预设口令。若所述第一加密数据为长度为20字节的数据,此处可以截取其中16字节,将截取后的16字节与预设口令进行加密运算,获取到第二加密数据,可以理解的是,所述第二加密数据也是16个字节。

其中,截取的实施方式有多种,例如,可以通过去掉前面2个字节以及后面2个字节,来获取中间16个字节。

步骤S403,根据所述第二加密数据,查询预设密码表,获取所述共同密码。

所述预设密码表的实施方式有多种,可以是一对多,也可以是一对一,即根据所述第二加密数据可以查表获取另一个数据,也就说,如果无法获取所述预设密码表,则没有办法逆向破解,若采用一对多的密码表,就算获取到预设密码表,也无法逆向破解。进一步增加了开锁密码的安全性。

作为一种实施方式,所述步骤S403的具体过程可以为:

将所述第二加密数据分解成包含16个元素的数组,其中每个元素对应所述第二加密数据的16个字节中的其中一个字节。分别根据各个元素的值查找所述预设密码表中对应的值,获取16个16进制的数。可以理解是,所述预设密码表可以设置为一个字节的数据与一个4bit的16进制数进行对应,这样将16个元素查表后就能获取到16个16进制的数,每个16进制的数的长度为4bit。将所述16个16进制的数组合成一个长度为8字节的数,将所述长度为8字节的数作为所述共同密码。可以理解的是,一个16进制的数对应4个bit,将这16个数按照预设的顺序进行组合,刚好形成8个字节。

步骤S420,获取所述用户终端的唯一识别码。

用户终端200的唯一识别号的实施方式可以有多种,例如,可以是用户终端200的序列号、MAC地址或SIM卡号等。为了避免信息泄漏,可以进一步将所述唯一识别码进行加密,其中,加密算法的实施方式有多种,例如HASH算法等。例如,可以将用户终端200的唯一识别码通过HASH算法压缩为2个字节的哈希值。此时,用户终端200的唯一识别码即表示为哈希值。

步骤S430,将所述共同密码与所述唯一识别码进行加密计算生成开锁密码。

具体的,将上述的8个字节的共同密码与所述2个字节的用户终端200密码再次进行加密,获得开锁密码,其中,所述开锁密码的长度可以取值为16个字节,使得破解难度增加,提高安全性。

步骤S440,根据所述开锁密码生成栅格图像,所述栅格图像包括多个栅格。

用户终端200可以预先存储栅格图像转换模型。用户终端200生成开锁密码后,可以将所生成的开锁密码转换为包括“0”和“1”的多个数据片段,然后控制栅格图像转换模型根据每个数据片段生成多帧栅格图像,每一帧栅格图像包括多个栅格,每个数据片段的各数据位与其对应帧栅格图像的各栅格一一对应。用户终端200生成的每一帧栅格图像所包括的多个栅格的点亮/熄灭状态由开锁密码转换的数据片段控制,如数据片段中“0”可以用暗条纹表示,“1”可以用亮条纹表示。用户终端200生成的开锁密码不同,则生成的栅格图像包括的多个栅格的明暗分布则不同。作为一种实施方式,栅格图像包括5条不同颜色的栅格,与读屏系统110设置的5个光电传感器一一对应。当然,也可以根据开锁密码转换的数据片段控制上述多个栅格的显示颜色,具体实施方式可以参照上述系统实施例,此处不再赘述。

密码锁100可以通过上述读屏系统110获取所述开锁密码,对开锁密码进行解码,若解码成功,则得到解码数据,进一步对所述解码数据进行验证,当验证通过时,发送开启指令至对应的电子锁具。

另外,第一个开启密码锁100的用户终端200被密码锁100标记为管理者终端。作为一种实施方式,密码锁100可以对所存储的管理者终端的识别码进行标记。管理者终端具有修改密码锁100时钟的权限,还具有增删密码锁100中存储的用户终端200的识别码的权限,即增减与密码锁100绑定的用户终端200的权限,另外,还具有修改密码锁100中存储的预设模型,预设口令及预设密码表的权限。

具体的,作为一种实施方式,管理者终端接收用户输入的操作指令。将接收到的操作指令与生成的开锁密码均转换为栅格图像,以使密码锁100可以通过上述读屏系统110得到开锁密码及操作指令。需要说明的是,用户终端200将操作指令转换为栅格图像的原理与将开锁密码转换为栅格图像的原理相同,此处不再赘述。将对开锁密码进行解码得到的解码数据与预先标记的管理者终端的识别码进行匹配。若解码数据与预先标记的管理者终端的识别码匹配成功,根据操作指令修改相应的内容。若解码数据与预先标记的管理者终端的识别码匹配不成功,再将解码数据与除管理者识别码的其余识别码匹配,有任一识别码匹配成功时,打开电子锁具。其中,操作指令可以包括时钟同步指令、识别码增删指令和预设模型、预设口令及预设密码表修改指令。

本发明实施例提供的一种密码锁控制方法,用户终端200根据当前时间计算共同密码,将唯一识别码与所述共同密码进行加密计算,生成动态开锁密码,最终生成的动态开锁密码是经过多次加密的,其不易破解,更加安全。并进一步将生成的开锁密码转换为栅格图像,实现开锁密码的传递,有效地提高了密码锁100的安全性能。

相应的,本发明实施例还提供了另一种密码锁控制方法,应用于上述密码锁控制系统。如图6所示,密码锁控制方法至少包括:步骤S600至步骤S680。本实施例描述的是密码锁100获取开锁密码和解码开锁的过程。下面将以密码锁100为执行主体对本实施例的方法所包含的步骤详细说明。

步骤S600,获取用户终端上显示的多个栅格的状态信息数据,根据所述状态信息数据得到开锁密码。

具体地,密码锁100可以通过读屏系统110采集用户终端200上显示的多个栅格的状态信息,进而根据采集到的状态信息得到对应的数据片段。基于以上对用户终端200产生栅格图像的过程说明,密码锁100获取到携带开锁密码的多帧栅格图像对应的多个数据片段后,可以根据获取到的多个数据片段逆向解析出开锁密码。例如,当栅格处于点亮状态时,对应的数据为“1”,当栅格处于熄灭状态时,对应的数据为“0”,根据当前帧栅格图像包括的多个栅格点亮/熄灭状态即可以得到与当前帧栅格图像对应的数据片段。具体实施方式可以参照上述系统实施例,此处不再赘述。

步骤S620,获取当前时间,根据所述当前时间计算得到共同密码。

根据上述系统及装置实施例的描述,密码锁100内设置有实时时钟模块,通过实时时钟模块可以获取密码锁100的当前时间。

步骤S620中所述的根据所述当前时间计算得到共同密码的实施方式与上一实施例中步骤S410所述的根据所述当前时间计算得到共同密码的实施方式完全一致,此处不再赘述。当然,密码锁100中也需要预先存储预设模型,预设口令以及预设密码表。

步骤S640,根据所述共同密码对所述开锁密码进行解码。

可以理解的是,将所述开锁密码以及共同密码采用加密算法的逆运算进行解码。

需要说明的是,解码过程可能成功,也可能失败。例如,在上述实施例的步骤S420中如果将所述开锁密码用共同密码解码算出来的用户终端200唯一识别码为3个字节,而若预存储的识别码是2个字节,则判定此时解码失败,不需要进行后续的匹配操作。当然,判断解码失败可能还有其它的实施方式,并不局限于此。

若解码失败,则说明用户终端200的时钟与密码锁100的时钟不在同一时间区间,或者是用户终端200与密码锁100存储的预设模型,预设口令及预设密码表中的任一项不相同。此时,可以反馈解码失败信息至密码锁100包括的显示装置进行显示。用户可以在同步用户终端200与密码锁100的时钟后,再通过用户终端200重新获取当前时间生成动态开锁密码,并发送至密码锁100进行解码开锁,也可以直接在用户终端200中输入密码锁100的当前时间,获得一次性开锁密码,利用一次性开锁密码开锁。若还是不成功,则该用户终端200非该密码锁100的用户终端200。

步骤S660,若解码成功,获得解码数据,将所述解码数据与预存储的一个或多个识别码进行匹配,其中,所述识别码为与所述密码锁绑定的用户终端的唯一识别码。

密码锁100中预先存储有一个或多个识别码,这些识别码即为与密码锁100绑定的用户终端200的唯一识别码。当然,基于上述实施例,此处获取的解码数据为2个字节的哈希值,将这个2个字节的哈希值与预存储的识别码进行匹配。

可以理解是,所述多个识别码分别是根据多个用户终端200的唯一识别码根据相同的方式加密,例如HASH算法获取的,若此处的解码数据为2个字节的哈希值,则此时多个识别码也为多个2字节的哈希值,将加密获得的多个2字节的哈希值预存储在密码锁100中。其中,匹配2个字节的哈希值的算法很多,此处不再赘述。

步骤S680,当所述解码数据与预存储的任意一个识别码匹配成功,则发送开启指令至对应的电子锁具。

作为一种实施方式,第一个成功开启密码锁100的用户终端200被密码锁100标记为管理者终端。可以理解的是,要使出厂状态下密码锁100被成功打开,用户终端200与密码锁100的共同密码必须一致。由管理者终端发送操作指令给密码锁100添加其他用户终端200的识别码,以将其他用户终端200与密码锁100绑定。因此,如图7所示,上述步骤S660将所述解码数据与预存储的一个或多个识别码进行匹配的步骤之前,所述密码锁控制方法还包括步骤S650。

步骤S650,判断是否预存储有识别码?

当不存在识别码时,执行步骤S651,当存在识别码时,执行步骤S660。

步骤S651,存储获得的解码数据,并将所获得的解码数据标记为管理者识别码,发送开启指令至对应的电子锁具。

当不存在识别码时即表示该密码锁100第一次使用,因此需要将第一个开启密码锁100的用户终端200被密码锁100标记为管理者终端,也就是将此时获得的解码数据标记为管理者识别码。可以理解的是,密码锁100第一次获取到密码数据时,密码锁100中还没有存储有识别码,因此,将此时获得的解码数据标记为管理者识别码后,直接发送开启指令至对应的电子锁具,以打开电子锁具。

接上一实施例,密码锁100对管理者终端的识别码进行标记后,可以接收管理者终端发送的操作指令,以对密码锁100进行管理。此时,密码锁100通过读屏系统110获取到的多个栅格的状态信息数据除了包括开锁密码外,还包括操作指令。因此,如图8所示,作为一种实施方式,执行上述步骤S660之后还包括步骤S681和步骤S683。

步骤S681,当所获得解码数据与管理者识别码匹配成功时,判断所获取的多个栅格的状态信息数据是否包括操作指令?

当密码锁100通过上述读屏系统110获取到的多个栅格的状态信息数据包括所述操作指令时,执行步骤S682;当密码锁100通过上述读屏系统110获取到的多个栅格的状态信息数据不包括所述操作指令时,执行步骤S683。

步骤S682,执行所述操作指令。

其中,操作指令可以包括时钟同步指令、识别码增删指令和预设模型、预设口令及预设密码表修改指令。当操作指令为时钟同步指令时,以使得密码锁100可以根据时钟同步指令同步密码锁100内的时钟,以使得密码锁100的时钟与管理者终端的时钟一致。当操作指令为识别码增删指令时,识别码增删指令中应包括需要增加的识别码或需要删除的识别码,以使得密码锁100可以根据识别码增删请求增加或删除预先存储的识别码,即增加或删除与密码锁100绑定的用户终端200。当操作指令为预设模型、预设口令及预设密码表修改指令时,预设模型、预设口令及预设密码表修改指令中应该包括修改后的预设模型、预设口令及预设密码表,以使得密码锁100可以根据预设模型、预设口令及预设密码表修改指令修改密码锁100中预先存储的预设模型、预设口令及预设密码表。

步骤S683,发送开启指令至对应的电子锁具。

需要说明的是,由于管理者终端具有上述权限设置,当管理者终端不慎丢失后,应该通过密码锁100上设置的复位按键,对密码锁100进行复位,使密码锁100恢复出厂设置,即删除所存储的识别码,恢复出厂时的预设模型、预设口令及预设密码表。此时,用户可以重新设置管理者终端。并通过重新设置的管理者终端重新设置预设模型,预设口令及预设密码表,以保证密码锁100的安全性能。

本发明实施例提供的密码锁控制方法,密码锁100通过获取多个栅格的点亮/熄灭状态获得用户终端200生成的动态开锁密码,提高了动态开锁密码传输的安全性,有利于提高密码锁100的安全性能。并进一步根据与用户终端200相同的预先规则计算共同密码,进行解码,并与预存储的识别码进行匹配,匹配成功后打开电子锁具,即只有与密码锁100预先绑定的用户终端200才能匹配成功打开密码锁100,进一步提高了密码锁100的安全性能。

请参阅图9,是本发明第实施例提供的一种密码锁控制装置310的功能模块示意图。该密码锁控制装置310运行于上述用户终端200。所述密码锁控制装置包括第一计算单元311、第一获取单元312、第二计算单元313及生成单元314。

第一计算单元311,用于用户终端获取当前时间,根据所述当前时间计算得到共同密码;

第一获取单元312,用于获取所述用户终端的唯一识别码;

第二计算单元313,用于将所述共同密码与所述唯一识别码进行加密计算生成开锁密码;

生成单元314,用于根据所述开锁密码生成栅格图像,所述栅格图像包括多个栅格。

以上各单元可以是由软件代码实现,此时,上述的各单元可存储于用户终端200的存储器内。以上各单元同样可以由硬件例如集成电路芯片实现。

请参阅图10,是本发明实施例提供的另一种密码锁控制装置320的功能模块示意图。所述另一种密码锁控制装置320运行于上述密码锁100。所述密码锁控制装置320包括第二获取单元321、第三计算单元322、第四计算单元323、匹配单元324及发送单元325。

第二获取单元321,用于获取用户终端上显示的多个栅格的状态信息数据,根据所述状态信息数据得到开锁密码;

第三计算单元322,用于获取当前时间,根据所述当前时间计算得到共同密码;

第四计算单元323,用于根据所述共同密码对所述开锁密码进行解码,获得解码数据;

匹配单元324,用于将所述解码数据与预存储的一个或多个识别码进行匹配,其中,所述识别码为与所述密码锁绑定的用户终端的唯一识别码;

发送单元325,用于当所述解码数据与预存储的任意一个识别码匹配成功,则发送开启指令至对应的电子锁具。

以上各单元可以是由软件代码实现,此时,上述的各单元可存储于密码锁的解码系统内。以上各单元同样可以由硬件例如集成电路芯片实现。

需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。

本发明实施例所提供的密码锁控制装置,其实现原理及产生的技术效果和前述相应的方法实施例相同,为简要描述,装置实施例部分未提及之处,可参考前述方法实施例中相应内容。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1