具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本申请各实施例提供的技术方案。
图1为本申请第一实施例提供的锁具控制系统的结构示意图。本实施例中,锁具控制系统用于实现锁具的开锁动作,包括相互通信的移动终端10及锁具20。移动终端10包括信息获取模块11、信息验证模块12及指令发送模块13,锁具20包括指令接收模块21及锁控制模块22,其中,指令发送模块13与指令接收模块21之间进行信息传递。本申请实施例中,移动终端10可为手机、平板电脑等。移动终端10与锁具20之间可通过近场通信(Near FieldCommunication,NFC)、或蓝牙、红外等方式实现信息交互,锁具20可用以安装于房屋门窗、或汽车门、或保险柜门等物体上。
本文将以具备近场通信功能及指纹识别功能的手机为例对本技术方案进行详细介绍,其中,手机上安装有用以实现锁具开锁的应用(Application,APP)。
信息获取模块11用于获取识别信息。本申请实施例中,识别信息包括用户的指纹信息、或语音信息、或人脸图像信息、或数字密码等。以指纹信息为例,手机通过触控显示屏获取到用户的指纹信息。
信息验证模块12用于对识别信息进行验证。以指纹信息为例,用户的指纹信息被预先存储于手机中,信息验证模块12在接收到信息获取模块11获取到的指纹信息后,将当前所获取到的指纹信息与预先存储的指纹信息进行匹配,若匹配一致,则验证通过,否则,验证不通过。
指令发送模块13用于在识别信息验证通过后,向锁具20发送开锁指令。指令接收模块22用于接收移动终端10所发送的开锁指令。沿用以上实例,指令发送模块13与指令接收模块21通过近场通信来实现信息传递。
锁控制模块22用于根据开锁指令执行开锁动作。本申请实施例中,锁控制模块22可为多点控制单元(Micro Controller Unit,MCU)、或可编程逻辑控制器(Programmable Logic Controller,PLC)等。
本实施例中,通过移动终端10向锁具20发送开锁指令的方式实现开锁。锁具无需设置信息获取模块及信息验证模块,从而简化锁具的结构,降低锁具的制造成本。并且,移动终端10与锁具20之间所传递的信息是开锁指令,而非用户的识别信息,一定程度上降低了识别信息被非法窃取的风险,从而提升锁具的安全性。
图2为本申请第二实施例提供的锁具控制系统的结构示意图。本实施例旨在通过信息加密手段来提升锁具的安全系数。本实施例中,移动终端10包括信息获取模块11、信息验证模块12、终端接收单元14、指令发送模块13。指令发送模块13具体包括终端解密单元131及终端发送单元132。锁具20包括信息生成单元23、锁具加密单元24、锁具发送单元25、指令接收模块21及锁控制模块22。锁控制模块22具体包括校验单元220。本实施例中,锁具发送单元25与终端接收单元14之间通过近场通信来实现信息传递;终端发送单元132与指令接收模块21之间通过近场通信来实现信息传递。
信息生成单元23用于生成原始信息。本实施例中,原始信息是随机字符串,沿用以上实例,移动终端10通过近场通信方式向锁具20发送开锁请求,锁具在收到该开锁请求之后,信息生成单元23生成一条随机字符串。
锁具加密单元24用于对原始信息进行加密处理,以得到被加密的第一信息。本实施例中,锁具加密单元24所采取的数据加密方式为非对称加密算法,如:RSA算法(RSA algorithm)。非对称加密算法需要两个密钥:公开密钥和私有密钥。公开密钥与私有密钥是一对,如果通过公开密钥对数据进行加密,则只有通过对应的私有密钥才能解密;如果通过私有密钥对数据进行加密,则只有通过对应的公开密钥才能解密。当然,本申请其他实施例中,锁具加密单元24也可通过对称加密算法实现数据的加密。
本申请实施例中,预先根据非对称加密算法生成第一密钥和第二密钥,并将第一密钥存放于锁具20中,将第二密钥存放于移动终端10中,在锁具20需要对原始信息进行加密时,则从锁具20中取出第一密钥,并采取该第一密钥对原始信息进行加密,本实施例中,第一密钥是私有密钥,第二密钥是公开密钥,当然,在本申请其他实施例中,第一密钥可是公开密钥,第二密钥是私有密钥。
锁具发送单元25用于向移动终端10的终端接收单元14发送第一信息。
终端接收单元14用于接收第一信息。
终端解密单元131用于将第一信息进行解密处理,以得到第二信息。本实施例中,在终端解密单元131需要对第一信息进行加密时,则从移动终端10中取出第二密钥,并采取该第二密钥对原始信息进行解密。
终端发送单元132用于向锁具发送携带有第二信息的开锁指令。
指令接收模块21用于接收终端发送单元132所发送的携带有第二信息的开锁指令。其中,第二信息是字符串。
校验单元220用于校验开锁指令所携带的第二信息是否与原始信息一致;若是,则锁控制模块22执行开锁动作;若否,则锁控制模块22拒绝执行开锁动作。
本实施例中,为了确保开锁指令的合法性,引入了非对称加密算法,通过存放于锁具中的第一密钥(私有密钥)实现数据加密,并通过存放于移动终端中的第二密钥(公开密钥)实现数据解密,极大降低开锁指令被非法窃取或复制的可能性,从而提升锁具的安全系数;此外,由于具备开锁权限的移动终端中所存放的第二密钥(公开密钥)是实现开锁功能的凭证,所以,若具有开锁权限的用户需要将锁具开启功能授权给其他用户时,只需将具有开锁权限的用户的移动终端中所存放的第二密钥(公开密钥)发送到其他用户的移动终端上,其他用户即可实现开锁功能,从而在确保锁具安全性的同时,提升锁具操控的灵活性。
图3为本申请第三实施例提供的锁具控制系统的结构示意图。本实施例中,移动终端10包括密钥生成单元15、密钥发送单元16及终端写入单元17。锁具20包括密钥接收单元26、锁具写入单元27、锁具安全单元29以及开关单元28。基于以上各个单元介绍本申请实施例的锁具控制系统的密钥初始化过程。
密钥生成单元15用于根据非对称加密算法生成第一密钥和第二密钥。沿用以上实例,一个锁具对应于非对称加密算法的两个密钥,用户在手机上安装锁具的开锁应用,首次打开该开锁应用时,手机会根据非对称加密算法自动生成该锁具所对应的第一密钥和第二密钥。
密钥发送单元16用于向密钥接收单元26发送第一密钥及该第一密钥的写入指令。
终端写入单元17用于在识别信息验证通过后,将第二密钥写入到移动终端10中。沿用以上实例,用户输入指纹信息,移动终端验证指纹信息是否通过,若验证通过,则授权将该第二密钥写入到移动终端中,若验证不通过,则拒绝向移动终端写入数据。
对于特定的锁具而言,只能将该特定锁具的开启功能授权给特定的用户群,比如:A公司的锁具B的开启功能只能授权给A公司的100名员工,故如何实现锁具开启功能的授权是本申请的重点。本申请实施例中,接收单元26用于接收移动终端发送的第一密钥及该第一密钥的写入指令,锁具安全单元29用于存储第一密钥。锁具写入单元27与锁具安全单元29之间设置有用以切换锁具安全单元29的状态的开关单元28,通常情况下,锁具安全单元29的状态是只读状态,用以防止信息的非法篡改或者信息的非法写入,当密钥接收单元26接收到第一密钥及该第一密钥的写入指令时,开关单元28将锁具安全单元29的状态切换成可写状态,以确保被授权用户的移动终端所发来的第一密钥可以被写入到该锁具安全单元29中,锁具写入单元27用于执行以上第一密钥的写入动作,当信息写入完成后,开关单元28将锁具安全单元29的状态切换到只读状态,从而关闭锁具的写入功能。
值得注意的是,在本申请实施例中,开关单元28设置于锁具所安装的物体(如房屋门)的内部,在锁具未开启状态时,锁具安全单元29的状态始终是只读状态,且房屋门外的人员无法操控开关单元28来切换锁具安全单元29的状态,从而避免其他未被授权的移动终端进行非法信息写入或信息篡改。也就是说,只有在锁具开启时,房屋门外的人员才能操控锁具20的开关单元28,并通过开关单元28开启锁具安全单元29的可写状态,从而将锁具的开锁功能授权给特定用户。当然,在本申请其他实施例中,也可通过机械或电子方式切换开关单元28的使能或不使能状态,从而可以实现在锁具未开启状态时,不能通过未使能的开关单元28切换锁具安全单元29的状态,锁具安全单元29为只读状态,在锁具开启状态时,则可通过使能的开关单元28切换锁具安全单元29的状态,可将其切换成可写状态。如:通过传感器感应锁具的状态或房屋门的位置,相应切换所述开关单元28的使能或不使能状态。
图4及图5为本申请实施例提供的锁具控制方法的基本过程。基于同样的思路,该方法包括:
S11:移动终端获取识别信息。本申请实施例中,识别信息包括用户的指纹信息、或语音信息、或人脸图像信息、或数字密码等。
S12:对所述识别信息进行验证。若验证通过,则执行步骤S13;若验证不通过,则拒绝向锁具发送开锁指令。
S13:向锁具发送开锁指令。
S21:锁具接收移动终端发送的开锁指令。
S22:锁具根据开锁指令执行开锁动作。
图6及图7为本申请实施例提供的锁具控制方法的具体过程。本实施例中,步骤S21之前,所述方法还包括:
S201:生成原始信息。本实施例中,原始信息是随机字符串。
S202:对原始信息进行加密处理,以得到第一信息。本实施例中,加密方式为非对称加密算法。
S203:锁具向移动终端发送第一信息。
本实施例中,步骤S11之前,所述方法还包括:
S10:移动终端接收锁具发送的第一信息,其中,所述第一信息是将原始信息采取锁具中的第一密钥进行加密所得。
步骤S13具体包括:
S131:将第一信息进行解密处理,以得到第二信息,其中,第二信息是字符串。
S132:向锁具发送携带有第二信息的开锁指令。
则步骤S21具体包括:锁具接收移动终端发送的携带有第二信息的开锁指令,其中,第二信息是将第一信息采取移动终端中的第二密钥进行解密所得。
本实施例中,步骤S22具体包括:校验开锁指令所携带的第二信息是否与原始信息一致;若是,则执行开锁动作;若否,则拒绝执行开锁动作。
图8为本申请实施例提供的锁具控制方法中密钥生成及密钥写入的过程。结合图3及图8所示,本申请实施例中,锁具20包括用于存储所述第一密钥的锁具安全单元29,及用于切换所述锁具安全单元29的状态的开关单元28。则所述方法还包括:
S31:根据非对称加密算法生成第一密钥和第二密钥。
S32:向锁具20发送第一密钥及该第一密钥的写入指令。
S33:开关单元28将锁具安全单元29的状态切换成可写状态,以开启锁具的写入功能。
S34:锁具的锁控制模块控制锁具写入单元27将第一密钥写入到锁具安全单元29中。
S35:锁控制模块判断第一密钥是否写入成功,若写入不成功,则输出异常结果,以提示用户写入异常的原因,如:锁具安全单元29的状态是只读状态。
S36:在识别信息验证通过后,将第二密钥写入到移动终端10中,至此,完成非对称加密密钥的初始化。
本申请各实施例中,移动终端10通过获取用户的识别信息,并对该识别信息进行验证,在验证通过后向锁具20发送开锁指令来实现开锁动作。由于锁具20上并未集成用于获取识别信息及验证识别信息的模块,从而有效简化锁具的结构,降低制造成本;此外,开锁过程中,移动终端与锁具之间所传递的信息是开锁指令,从而降低用户的识别信息被非法窃取的风险,提升锁具的安全性。
值得一提的是,本文所披露的锁具控制方法是基于以上锁具控制系统,按照同样的思路所产生的,故该锁具控制方法可沿用以上锁具控制系统的所有技术特征,本文不再予以赘述。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。