WO2021023164A1 - 一种智能锁具控制方法和系统 - Google Patents

一种智能锁具控制方法和系统 Download PDF

Info

Publication number
WO2021023164A1
WO2021023164A1 PCT/CN2020/106653 CN2020106653W WO2021023164A1 WO 2021023164 A1 WO2021023164 A1 WO 2021023164A1 CN 2020106653 W CN2020106653 W CN 2020106653W WO 2021023164 A1 WO2021023164 A1 WO 2021023164A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
smart
smart lock
input
lock
Prior art date
Application number
PCT/CN2020/106653
Other languages
English (en)
French (fr)
Inventor
李涛
彭炳辉
易奇
刘豫川
李先仓
Original Assignee
云丁网络技术(北京)有限公司
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
Priority claimed from CN201910711989.XA external-priority patent/CN112399410A/zh
Priority claimed from CN201910716929.7A external-priority patent/CN112330847A/zh
Priority claimed from CN201910721490.7A external-priority patent/CN112348996A/zh
Priority claimed from CN201910736714.1A external-priority patent/CN112446982A/zh
Priority claimed from CN201910743893.1A external-priority patent/CN112446984A/zh
Priority claimed from CN201922029811.5U external-priority patent/CN212642357U/zh
Application filed by 云丁网络技术(北京)有限公司 filed Critical 云丁网络技术(北京)有限公司
Publication of WO2021023164A1 publication Critical patent/WO2021023164A1/zh
Priority to US17/454,048 priority Critical patent/US11417159B2/en
Priority to US17/818,718 priority patent/US11928904B2/en

Links

Images

Classifications

    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B7/00Signalling systems according to more than one of groups G08B3/00 - G08B6/00; Personal calling systems according to more than one of groups G08B3/00 - G08B6/00
    • G08B7/06Signalling systems according to more than one of groups G08B3/00 - G08B6/00; Personal calling systems according to more than one of groups G08B3/00 - G08B6/00 using electric transmission, e.g. involving audible and visible signalling through the use of sound and light sources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0478Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload applying multiple layers of encryption, e.g. nested tunnels or encrypting the content with a first key and then with at least a second key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/062Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • 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/00309Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated with bidirectional data transmission between data carrier and locks
    • G07C2009/00412Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated with bidirectional data transmission between data carrier and locks the transmitted data signal being encrypted
    • 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/00309Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated with bidirectional data transmission between data carrier and locks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/062Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying encryption of the keys

Definitions

  • This application relates to the technical field of smart device control, and in particular to a smart lock control method and system.
  • One of the embodiments of the present application provides a smart lock control method, the method includes: establishing a secure connection with the network; obtaining security control information through the secure connection; obtaining operation input; based on the security control information and the operation input Perform security verification; when the security verification is passed, perform corresponding operations based on the operation input.
  • the establishing a secure connection with the network includes: sending characteristic information of the smart lock through the network; acquiring an encryption key through the network, the encryption key being related to the characteristic information; The encryption key performs an encryption operation on the characteristic information sent through the network.
  • the method further includes: receiving a binding request; obtaining control device information of the control device based on the binding request; based on the control device information, sending to the control device when the security verification fails Alarm information.
  • At least part of the content of the operation input is encrypted; the performing security verification based on the security control information and the operation input includes: based on the at least partially encrypted operation input and the security control Information is verified for security.
  • the operation input includes at least first verification information composed of multiple characters; the performing security verification based on the security control information and the operation input includes: obtaining second verification based on the security control information Information; when the second verification information and the first verification information meet the preset conditions, the security verification passes.
  • the obtaining operation input includes obtaining one or more of the following inputs: obtaining character input; obtaining biometric input; obtaining wireless input.
  • the corresponding operation includes an unlocking operation; the method further includes: performing an unlocking verification operation; and performing one or more of a locking operation and a prompt operation according to the verification result.
  • the system includes: a storage device storing a set of instructions; and one or more processors in communication with the storage device, wherein when the instructions are executed, The one or more processors are configured to enable the system to: establish a secure connection with the network; obtain security control information through the secure connection; obtain operation input; perform security verification based on the security control information and the operation input; When the security verification is passed, corresponding operations are performed based on the operation input.
  • the one or more processors are configured to cause the system to: send characteristic information of the smart lock through the network; obtain an encryption key through the network, The encryption key is related to the characteristic information; and the characteristic information sent through the network is encrypted based on the encryption key.
  • the one or more processors are further configured to cause the system to: receive a binding request; obtain control device information of a control device based on the binding request; and based on the control device information, When the security verification fails, an alarm information is sent to the control device.
  • the operation input includes encrypted input information; in order to perform security verification based on the security control information and the operation input, the one or more processors are configured to cause the system to: The encrypted input information and the security control information are subjected to security verification.
  • the operation input is first verification information composed of multiple characters; in order to perform security verification based on the security control information and the operation input, the one or more processors are configured to enable the System: Obtain second verification information based on the security control information; when the second verification information and the first verification information meet a preset condition, the security verification passes.
  • the obtaining operation input includes obtaining one or more of the following inputs: obtaining character input; obtaining biometric input; obtaining wireless input.
  • the corresponding operation includes an unlocking operation; the one or more processors are further configured to cause the system to: perform an unlocking verification operation after performing the unlocking operation; perform a locking operation and prompt according to the verification result One or more of operations.
  • One of the embodiments of the present application provides an intelligent lock control system, including: a processing module, used to establish a secure connection with the network; a communication module, used to obtain security control information through the secure connection; an input/output module, used to obtain Operation input; a security module for performing security verification based on the security control information and the operation input; a control module for performing corresponding operations based on the operation input when the security verification is passed.
  • One of the embodiments of the present application provides a computer-readable storage medium that stores computer instructions. After the computer reads the computer instructions in the storage medium, the computer executes any of the implementations in this application. The method described by the method.
  • One of the embodiments of the present application provides a method for secure communication, the method includes: obtaining a secure connection request of a smart lock, the secure connection request includes characteristic information of the smart lock; based on the secure connection request , Determine the encryption key corresponding to the smart lock; send the encryption key corresponding to the smart lock to the smart lock; wherein, the encryption key corresponding to the smart lock uses the
  • the hash value corresponding to the smart lock is obtained by encrypting the original network secret key; the hash value corresponding to the smart lock is obtained by hashing the characteristic information of the smart lock.
  • the method further includes: receiving application layer key request information sent by the smart lock; The smart lock allocates the original application layer secret key unique to the smart lock; the original application layer secret key unique to the smart lock is encrypted by using the hash value corresponding to the smart lock to obtain the same Corresponding encrypted application layer secret key; sending the encrypted application layer secret key corresponding to the smart lock to the smart lock.
  • the method further includes: receiving an encrypted data packet sent by the smart lock; wherein, the The encrypted data packet includes: network layer data encrypted by the original network secret key and application layer data encrypted by the original application layer secret key unique to the smart lock; using the original network secret key and the smart lock unique Decrypt the encrypted data packet with the original application layer secret key of.
  • One of the embodiments of the present application provides a method for binding a smart lock.
  • the method includes: receiving a binding request.
  • the binding request carries the device information of the smart lock and the device information of the user terminal.
  • the device information of the lock is obtained by scanning the smart lock by the user terminal; binding the smart lock and the user terminal to obtain binding information; sending the binding information to the smart device and The user terminal.
  • the method further includes: performing time synchronization processing on the user terminal and the smart lock; and/ Or obtain the state information of the smart lock, and send the state information to the user terminal.
  • the method further includes: obtaining operation information generated by the user terminal, and sending the operation information To the smart lock; obtain the operation result of the smart lock, and send the operation result to the user terminal.
  • One of the embodiments of the present application provides a method for controlling a smart lock, the method includes: obtaining operation input, the operation input includes encrypted input information; decrypting the encrypted input information to obtain decryption Determine whether the decrypted input information matches the security control information: if so, the security verification is passed, and corresponding operations are performed based on the operation input.
  • the process of encrypting the input information includes: encrypting the input information based on an encryption password; and if the operation input is received from a user terminal, the obtaining operation input includes: receiving the input information.
  • the decrypting the encrypted input information to obtain the decrypted input information includes: decrypting the encrypted input information based on the encrypted password.
  • the obtaining operation input includes: encrypting the encrypted password based on a secret key to obtain an encrypted encrypted password; encrypting the operation input based on the encrypted encrypted password; and Decrypting the encrypted input information to obtain the decrypted input information includes: encrypting the encrypted password based on a secret key to obtain an encrypted encrypted password; based on the encrypted encrypted password pair The encrypted input information is decrypted.
  • the decrypted input information includes an associated information tag
  • the method further includes: sending associated information corresponding to the associated information tag to the server.
  • One of the embodiments of the present application provides an unlocking method, the method includes: obtaining operation input, and parsing the operation input; determining whether the operation input includes end flag information: if so, obtaining the operation input The first verification information; determine whether the first verification information and the preset second verification information meet the preset conditions: if so, perform corresponding operations based on the operation input.
  • the preset condition includes a preset time condition and the first verification information matches the second verification information.
  • the method before the obtaining operation input, includes: detecting whether the input device of the operation input is in a working state; if so, obtaining the operation input; if not, clearing the operation enter.
  • the determining whether the operation input includes end flag information includes: if not, determining that the operation input is invalid.
  • the determining whether the first verification information and the preset second verification information meet a preset condition includes: obtaining a network time protocol time; and calibrating the local time based on the network time protocol time.
  • a smart lock control circuit including: a control unit; a display unit for displaying information of the smart lock; the display unit is in communication connection with the control unit; an unlocking unit, the unlocking unit
  • the unit includes: a touch input module for receiving character input information of a user; a biometric input module for receiving biometric input information of a user; at least one or more wireless communication modules for establishing communication with another wireless communication module , And obtain the safety control information stored therein; the control unit performs safety verification according to the character input information, the biometric input information, and the safety control information.
  • the smart lock control circuit further includes a state detection unit that includes at least one detection sensor for detecting the state of the smart lock and transmitting the detected state of the smart lock to the control unit .
  • the state detection unit further includes an infrared detection sensor connected to the control unit, which is used to quickly wake up the control unit and switch it from the sleep mode to the working mode.
  • the state detection unit further includes a noise detection sensor connected to the control unit, the noise detection sensor is used to detect noise in the surrounding environment of the smart lock, and the control unit is based on the detected noise Adjust the volume of the doorbell in real time.
  • the smart lock control circuit further includes a safety detection unit; the safety detection unit is used to detect whether the smart lock is picked, and when the smart lock is picked, the control The unit sends an alarm signal; or is used to detect whether the user opens the door through the inner panel handle, if the user opens the door through the inner panel handle, the door can be opened normally, otherwise the door cannot be opened.
  • a safety detection unit is used to detect whether the smart lock is picked, and when the smart lock is picked, the control The unit sends an alarm signal; or is used to detect whether the user opens the door through the inner panel handle, if the user opens the door through the inner panel handle, the door can be opened normally, otherwise the door cannot be opened.
  • the smart lock control circuit further includes a wireless communication unit and an encryption unit, the control unit communicates with a server through the wireless communication unit, and uploads the smart lock related information to the server; the encryption The unit is used to encrypt the related information of the smart lock before uploading to the server, and to encrypt the information transmitted in the communication process; the related information of the smart lock includes unlocking information, smart lock status information, Smart lock safety information, battery power information.
  • One of the embodiments of the present application provides a smart lock control method.
  • the method includes: performing an unlocking verification operation on the smart lock; determining whether the verification result is a successful unlocking: if so, recording and reporting the unlocking information, and performing the locking operation and / Or prompt operation; if not, perform prompt operation.
  • performing an unlocking verification operation on the smart lock includes: detecting whether the potential of the input and output IO interface of the preset component of the smart lock has changed: if so, determining that the target of the smart lock is detected Unlock operation.
  • the performing an unlocking verification operation on the smart lock includes: detecting whether an operation input is received, the operation input includes an operation instruction and/or operation information: if so, it is determined that the smart lock is detected The target unlock operation.
  • performing the locking operation after determining that the verification result is successful unlocking includes: after determining that the verification result is successful unlocking, detecting whether the door body installed with the smart lock is in a closed state: if so, controlling the The smart lock implements a locking operation.
  • the performing the locking operation after determining that the verification result is successful unlocking includes: starting timing after determining that the verification result is successful unlocking; when the timing of the timing is greater than a preset duration, controlling the smart The lock implements a locking operation.
  • the method further includes: generating an associated device linkage instruction, the associated device linkage instruction being used to control the opening of the camera device associated with the smart lock; The associated device linkage instruction is sent to the camera device.
  • the method further includes: recording the locking information and reporting the locking information.
  • One of the embodiments of the present application provides a method for secure communication.
  • the method includes: a gateway receives a network access request sent by a smart device; wherein the network access request carries address information of the smart device; the gateway according to the address information of the smart device, The encrypted network key corresponding to the smart device is sent to the smart device, and the smart device is assigned a network address; among them, the encrypted network key corresponding to the smart device is used by the gateway to use the hash value corresponding to the smart device to compare the original network secret The key is encrypted and obtained; the hash value corresponding to the smart device is obtained by the gateway performing a hash operation on the specific installation code information sent by the smart device.
  • the gateway after the gateway sends the encrypted network key corresponding to the smart device to the smart device according to the address information of the smart device, and allocates a network address to the smart device, it further includes: the gateway receives the application layer secret sent by the smart device. Key request information; the gateway allocates the original application layer secret key unique to the smart device; the gateway uses the hash value corresponding to the smart device to encrypt the original application layer secret key unique to the smart device to obtain the corresponding smart device Encrypted application layer secret key; the gateway sends the encrypted application layer secret key corresponding to the intelligent device to the smart device.
  • the gateway after the gateway sends the encrypted application layer secret key corresponding to the smart device to the smart device, it further includes: the gateway receives an encrypted data packet sent by the smart device; wherein the encrypted data packet includes: encrypted by the original network key The network layer data and the application layer data encrypted by the original application layer secret key unique to the smart device; the gateway uses the original network secret key and the original application layer secret key unique to the smart device to decrypt the encrypted data packet.
  • the gateway after the gateway receives the network access request sent by the smart device, it further includes: judging whether the smart device has the network access permission according to the address information of the smart device; if the smart device has the network access permission, the gateway executes according to the address information of the smart device , The step of sending the encrypted network key corresponding to the smart device to the smart device and assigning a network address to the smart device.
  • the method further includes: the gateway detects the packet loss rate when communicating with the smart device and the environmental noise floor of the environment in which the gateway is located according to a preset time period; the gateway determines whether the packet loss rate is greater than the first Threshold and determine whether the environmental noise floor is greater than the second threshold; if the gateway determines that the packet loss rate is greater than the first threshold, and/or the environmental noise floor is greater than the second threshold, the gateway switches to other idle channels to create a network and sends it to the smart device Send switching channel notification information; wherein the switching channel notification information carries identification information of the switched channel.
  • One of the embodiments of the present application provides a method for secure communication, including: a smart device sends a network access request to a gateway; wherein the network access request carries address information of the smart device; the smart device receives the encryption corresponding to the smart device sent by the gateway The network secret key and the network address assigned by the gateway are obtained; among them, the encrypted network secret key corresponding to the smart device is obtained by the gateway using the hash value corresponding to the smart device to encrypt the original network secret key; The hope value is obtained by the gateway's hash operation on the smart device-specific installation code information sent by the smart device; the smart device uses the hash value corresponding to the smart device to decrypt the encrypted network key corresponding to the smart device to obtain the original Network secret key.
  • the smart device after the smart device receives the encrypted network key corresponding to the smart device sent by the gateway and obtains the network address assigned by the gateway, it further includes: the smart device sends request information for the application layer key to the gateway; the smart device Receive the encrypted application layer secret key corresponding to the smart device assigned by the gateway; among them, the encrypted application layer secret key is obtained by the gateway using the hash value corresponding to the smart device to encrypt the original application layer password unique to the smart device; the smart device uses The hash value corresponding to the smart device decrypts the encrypted application layer secret key corresponding to the smart device to obtain the original application layer secret key unique to the smart device.
  • the smart device uses the hash value corresponding to the smart device to decrypt the encrypted application layer secret key corresponding to the smart device, and after obtaining the original application layer secret key unique to the smart device, it further includes: The device uses the original network key to encrypt the network layer data in the data packet to obtain the encrypted network layer data; the smart device uses the original application layer key unique to the smart device to encrypt the application layer data in the data packet to obtain the encrypted application layer data; The smart device sends an encrypted data packet to the gateway; the encrypted data packet includes encrypted network layer data and encrypted application layer data.
  • the device includes: a first receiving unit for receiving a network access request sent by a smart device; wherein the network access request carries address information of the smart device ;
  • the first sending unit is used to send the encrypted network key corresponding to the smart device to the smart device according to the address information of the smart device, and assign a network address to the smart device; wherein, the encrypted network key corresponding to the smart device is determined by
  • the gateway uses the hash value corresponding to the smart device to encrypt the original network secret key; the hash value corresponding to the smart device is obtained by the gateway hash operation on the smart device-specific installation code information sent by the smart device.
  • the above-mentioned apparatus further includes: a second receiving unit, configured to receive application-layer secret key request information sent by the smart device; and an allocating unit, configured to allocate an original application-layer secret key unique to the smart device to the smart device;
  • the encryption unit is used to use the hash value corresponding to the smart device to encrypt the original application layer secret key unique to the smart device to obtain the encrypted application layer secret key corresponding to the smart device;
  • the second sending unit is used to send the smart device to the Send the encrypted application layer key corresponding to the smart device.
  • the device includes: a first sending unit, configured to send a network access request to a gateway; wherein the network access request carries address information of the smart device;
  • the first receiving unit is configured to receive the encrypted network key corresponding to the smart device sent by the gateway, and obtain the network address assigned by the gateway; wherein the encrypted network key corresponding to the smart device is used by the gateway and the hash corresponding to the smart device Hope value is obtained by encrypting the original network secret key; the hash value corresponding to the smart device is obtained by the gateway's hash operation on the installation code information specific to the smart device sent by the smart device; the first decryption unit is used to use the smart device The corresponding hash value decrypts the encrypted network key corresponding to the smart device to obtain the original network key.
  • the above-mentioned apparatus further includes: a second sending unit, configured to send application layer secret request information to the gateway; and a second receiving unit, configured to receive an encrypted application layer secret corresponding to the smart device assigned by the gateway.
  • the encrypted application layer secret key is obtained by the gateway using the hash value corresponding to the smart device to encrypt the original application layer password unique to the smart device; the second decryption unit is used to use the hash value corresponding to the smart device, Decrypt the encrypted application layer secret key corresponding to the smart device to obtain the original application layer secret key unique to the smart device.
  • One of the embodiments of the present application provides a computer-readable medium on which a computer program is stored, where the program is executed by a processor to implement the method described in any implementation manner in the present application.
  • One of the embodiments of the present application provides a processor, which is used to run a program, where the program implements the method described in any implementation manner of the present application when the program runs.
  • One of the embodiments of the present application provides a device including: one or more processors; a storage device on which one or more programs are stored; when the one or more programs are executed by the one or more processors , So that the one or more processors implement the method described in any implementation manner in this application.
  • One of the embodiments of the present application provides a device binding method, including: scanning a device to be bound; sending a device information acquisition request to the scanned device to be bound; obtaining the device to be bound returned by the device to be bound Device information of the device; sending a device binding request to the server, the device binding request carrying the device information of the device to be bound and the device information of the first device; receiving the server to bind the device
  • the binding information returned after the device is bound with the first device enables the device to be bound and the first device to obtain at least part of the information in the binding information respectively.
  • the method is applied to a first device, the first device is a user terminal, the device to be bound is an electronic lock, and the receiving server connects the device to be bound to the
  • the binding information returned after the first device is bound enables the device to be bound and the first device to obtain at least part of the information in the binding information, including: receiving the server to lock the electronic lock
  • the binding information returned after binding with the user terminal obtains and saves part of the information corresponding to the electronic lock from the binding information; obtains the information corresponding to the user terminal from the binding information Part of the information is sent to the electronic lock.
  • the method is applied to a first device, the first device is a user terminal, the device to be bound is an electronic lock, and the server connects the device to be bound with After the binding information returned after the first device is bound, after the device to be bound and the first device obtain at least part of the information in the binding information, the method further includes: the user The terminal performs time synchronization processing with the electronic lock; and/or, the user terminal obtains the power information of the electronic lock.
  • the method is applied to a first device, the first device is a user terminal, the device to be bound is an electronic lock, and the server connects the device to be bound with After the binding information returned after the first device is bound, after the device to be bound and the first device obtain at least part of the information in the binding information, the method further includes: the user The terminal issues an unlocking password to the electronic lock; the user terminal receives a notification that the unlocking password returned by the electronic lock has become effective.
  • the method is applied to a user terminal, the first device is an electronic lock, the device to be bound is a keyboard device, and the receiving server connects the device to be bound to the
  • the binding information returned after the first device is bound enables the device to be bound and the first device to obtain at least part of the information in the binding information, including: receiving the server to connect the keyboard device with The binding information returned after the electronic lock is bound is obtained from the binding information and the part of the information corresponding to the keyboard device is sent to the electronic lock; the binding information is obtained from the binding information and the electronic lock Part of the information corresponding to the lock is sent to the keyboard device.
  • the server and the keyboard device both pre-store the device identification of the keyboard device and the preset key, and the obtaining of the device identification of the device to be bound returned by the device to be bound
  • the device information includes: obtaining the encrypted device identification returned by the keyboard device after encrypting its device identification using the preset key; the sending the device binding request to the server, in the device binding request Carrying the device information of the device to be bound and the device information of the first device includes: sending a device binding request to a server, so that the server uses the stored preset key to pair the encrypted
  • the device identification is decrypted to obtain the device identification of the keyboard device and determine whether the obtained device identification of the keyboard device is one of the pre-stored device identifications, and the device binding request carries the encrypted device identification And the device information of the electronic lock; the receiving the binding information returned after the server binds the keyboard device and the electronic lock includes: receiving the device of the keyboard device obtained by the server after determining If the identifier is one of the pre-stored device identifiers, binding
  • One of the embodiments of the present application provides a device binding method, which is applied to a device to be bound.
  • the method includes: sending a broadcast message to obtain a device information acquisition request returned by a user terminal after receiving the broadcast message;
  • the device information of the device to be bound is sent to the user terminal so that the user terminal sends a device binding request to the server, and the device binding request carries the device information of the device to be bound and the first Device information of the device; obtaining at least part of the binding information returned after the server binds the device to be bound with the first device, wherein the first device obtains at least the binding information Part of the information in.
  • the first device is a user terminal
  • the device to be bound is an electronic lock
  • at least part of the binding information obtained by the electronic lock is: the binding information and the Part of information corresponding to the user terminal
  • at least part of the binding information obtained by the user terminal is: part of the information corresponding to the electronic lock in the binding information.
  • the first device is an electronic lock
  • the device to be bound is a keyboard device
  • at least part of the binding information obtained by the electronic lock is: the binding information and the Part of information corresponding to the keyboard device
  • at least part of the binding information obtained by the keyboard device is: part of the information corresponding to the electronic lock in the binding information.
  • the server and the keyboard device both pre-store the device identification and preset key of the keyboard device, and the device information of the device to be bound is sent to the user terminal So that the user terminal sends a device binding request to the server.
  • the device binding request carries the device information of the device to be bound and the device information of the first device, including: the keyboard device uses the A preset key encrypts its device identification to obtain an encrypted device identification, and sends the encrypted device identification to the user terminal so that the user terminal sends a device binding request to the server, so that the The server decrypts the encrypted device identification using the stored preset key to obtain the device identification of the keyboard device and determines whether the obtained device identification of the keyboard device is one of the pre-stored device identifications,
  • the device binding request carries the encrypted device identification and the device information of the electronic lock; the obtaining server binds the device to be bound with the first device and returns At least part of the binding information in the binding information includes: obtaining that the server determines that the obtained device identifier of the
  • One of the embodiments of the present application provides a user terminal, including: a processor, a memory, and a program stored in the memory and running on the processor.
  • the processor executes the program, the following steps are implemented: scanning the device to be bound; The device to be bound sends a device information acquisition request; obtains the device information of the device to be bound returned by the device to be bound; sends the device binding request to the server, and the device binding request carries The device information of the device to be bound and the device information of the first device; receiving the binding information returned by the server after binding the device to be bound with the first device, so that the device to be bound and The first device obtains at least part of the information in the binding information respectively.
  • One of the embodiments of the present application provides a device to be bound, including: a processor, a memory, and a program stored on the memory and running on the processor.
  • the processor executes the program, the following steps are implemented: send a broadcast message to obtain a user
  • the device information acquisition request returned by the terminal after receiving the broadcast message is sent to the user terminal so that the user terminal sends the device binding request to the server, and the device
  • the binding request carries the device information of the device to be bound and the device information of the first device; obtain the binding information returned by the server after binding the device to be bound with the first device At least part of the information.
  • One of the embodiments of the present application provides a user terminal, including: a device scanning unit, a first request sending unit, a first information obtaining unit, a binding request unit, and an information receiving unit.
  • the device scanning unit is configured to scan for binding
  • the first request sending unit is configured to send a device information acquisition request to the scanned device to be bound
  • the first information acquiring unit is configured to obtain the to-be-bound device returned
  • the binding request unit is configured to send a device binding request to the server, and the device binding request carries the device information of the device to be bound and the device information of the first device
  • the information receiving unit is configured to receive binding information returned by the server after binding the device to be bound with the first device, so that the device to be bound and the first device obtain at least Part of the information in the binding information.
  • One of the embodiments of the present application provides a device to be bound, including: a broadcast sending unit, a second request sending unit, and a second information obtaining unit.
  • the broadcast sending unit is configured to send broadcast messages to obtain information received by the user terminal.
  • the device information acquisition request returned after the broadcast message;
  • the second request sending unit is configured to send the device information of the device to be bound to the user terminal so that the user terminal sends the device binding request
  • the device binding request carries the device information of the device to be bound and the device information of the first device;
  • the second information obtaining unit is configured to obtain that the server will bind the device to be bound At least part of the binding information returned after binding with the first device.
  • One of the embodiments of the present application provides a method for controlling a smart lock.
  • the method includes: receiving a control instruction; if the control instruction includes an encrypted password encrypted by a preset encryption algorithm, performing the encryption on the encrypted password Decryption to obtain a decrypted password; if the decrypted password matches a pre-stored password, the control operation corresponding to the control instruction is executed.
  • the encryption process of the preset encryption algorithm includes: encrypting the password to be encrypted based on the encrypted password; and if the control instruction is received from the user, and the control instruction includes the encryption Password, before the receiving the control instruction, the method further includes: receiving an encrypted password generation request sent by the user terminal; based on the encrypted password generation request, randomly generating an encrypted password; returning the randomly generated encrypted password to the The user side, so that the user side encrypts the password to be encrypted based on the randomly generated encrypted password to obtain the encrypted password.
  • the decrypting the encrypted password includes: decrypting the encrypted password based on the randomly generated encrypted password.
  • the encryption process of the preset encryption algorithm further includes: encrypting the encrypted password with a secret key to obtain the encrypted password; and encrypting the password to be encrypted with the encrypted password
  • the decrypting the encrypted password based on the randomly generated encrypted password includes: encrypting the randomly generated encrypted password with a secret key to obtain an encrypted encrypted password; using the encrypted password The latter encrypted password decrypts the encrypted password.
  • the method further includes: if the decrypted password belongs to biometric information, performing identity authentication based on the decrypted password; and executing the corresponding control instruction After the control operation, the method further includes: sending the control operation execution result and the identity authentication result to the first designated device.
  • the method further includes: sending to the server a message for prompting the user to be hijacked Information, so that the server sends alarm information to the second designated device.
  • control instruction is any one of an unlock instruction, a lock instruction, an information view instruction, and an information update instruction.
  • One of the embodiments of the present application provides a device for controlling a smart lock.
  • the device includes: a receiving module for receiving a control instruction; a decryption module for if the control instruction includes a password encrypted by a preset encryption algorithm The encrypted password is decrypted to obtain the decrypted password; the execution module is used to execute the control corresponding to the control command if the decrypted password matches the pre-stored password operating.
  • One of the embodiments of the present application provides a computer-readable medium on which a computer program is stored, wherein the program is executed by a processor to implement the method for controlling a smart lock as described in any embodiment of the present application.
  • One of the embodiments of the present application provides a processor, the processor is used to run a program, wherein the method for controlling a smart lock as described in any embodiment of the present application is executed when the program is running.
  • One of the embodiments of the present application provides a device that includes: one or more processors; a storage device on which one or more programs are stored; when the one or more programs are used by the one or more processors When executed, the one or more processors are caused to implement the method for controlling a smart lock as described in any embodiment of the present application.
  • One of the embodiments of the present application provides a method for unlocking, which is applied to a smart device.
  • the method includes: obtaining a first unlocking password, and parsing the first unlocking password; End flag information to obtain the second unlocking password in the first unlocking password; if the second unlocking password matches the preset real password and the current time meets the set time condition, then based on the second unlocking password
  • the unlock password performs the unlock operation.
  • the time condition includes that the current time is within a specified effective time range
  • the specified effective time range includes any of the following: a preset allowable unlocking time range, based on the effective time corresponding to the real password and the effective time corresponding to the real password The valid time range calculated from the expiration time.
  • the first unlocking password is input through the keyboard; and before acquiring the first unlocking password, the method further includes: in response to detecting the first unlocking password input by the user through the keyboard, determining whether the keyboard is currently Working state; and acquiring the first unlocking password includes: in response to determining that the keyboard is currently in the working state, acquiring the first unlocking password.
  • the method further includes: in response to determining that the keyboard is not currently in a working state, clearing the first unlock password.
  • parsing the first unlocking password includes: finding whether the first unlocking password carries end flag information indicating the end of the password input, and if the first unlocking password does not carry end flag information, determining the first unlocking password Is an invalid password.
  • the smart device includes a clock chip; and the process of obtaining the current time includes: obtaining the local time of the clock chip, and using the local time as the current time.
  • the method further includes: obtaining NTP time; and calibrating the local time of the clock chip based on the NTP time.
  • the smart device communicates with the user terminal; and obtaining the NTP time includes: receiving the NTP time sent by the user terminal, and the NTP time is obtained by the user terminal from the server.
  • One of the embodiments of the present application provides a device for unlocking, which is applied to a smart device.
  • the device includes: a processing unit for obtaining a first unlocking password and analyzing the first unlocking password; and an obtaining unit for obtaining End flag information for indicating the end of the password input, to obtain the second unlocking password in the first unlocking password; the unlocking unit is used for if the second unlocking password matches the preset real password and the current time meets the set time Condition, the unlocking operation is performed based on the second unlocking password.
  • the first unlocking password is input through a keyboard; and the device further includes: a determining unit configured to determine whether the keyboard is currently in a working state in response to detecting the first unlocking password input by the user through the keyboard; And the processing unit is further configured to: in response to the determining unit determining that the keyboard is currently in a working state, obtain the first unlocking password.
  • the processing unit is further configured to find whether the first unlocking password carries end flag information for indicating the end of the password input, and if the first unlocking password does not carry end flag information, determine the first unlocking password Is an invalid password.
  • the door lock control circuit includes a control unit, a display unit and an unlocking unit that are electrically connected to the control unit; the display unit is used to display the door lock Information, the unlocking unit includes a touch input module, a biometric input module, and at least one or more wireless communication modules; the touch input module is used to receive a digital password input by a user; the biometric input module is used to input a user The biometric information; the wireless communication module is used to establish communication with another wireless communication module, and obtain the password information stored therein, the control unit according to the entered digital password, the entered biometric information, and the obtained The password information determines whether to unlock.
  • the door lock control circuit further includes a state detection unit, and the state detection unit includes a plurality of detection sensors for detecting the state of the door lock and transmitting the detected state of the door lock to the control unit .
  • the state detection unit includes a bolt detection sensor, a handle detection sensor, and a key detection sensor connected to the control unit
  • the door lock state includes a door lock body state, a handle state, and a mechanical key unlocking state.
  • the bolt detection sensor, the handle detection sensor and the key detection sensor are respectively used to detect the lock body state, the handle state, and the mechanical key unlock state of the door lock, and to unlock the lock body state, the handle state, and the mechanical key The status is transmitted to the control unit.
  • the state detection unit further includes an infrared detection sensor connected to the control unit, which is used to quickly wake up the control unit and switch it from the sleep mode to the working mode.
  • the infrared detection sensor is also used to detect the brightness of the light surrounding the door lock, and to adjust the brightness of the display unit in real time according to the detected brightness.
  • the state detection unit further includes a noise detection sensor connected to the control unit, the noise detection sensor is used to detect noise in the surrounding environment of the door lock, and the control unit according to the detected noise Adjust the volume of the doorbell in real time.
  • the door lock control circuit further includes a safety detection unit, the safety detection unit includes a first tamper-proof sensor, and the first tamper-proof sensor is used to detect whether the door lock is picked, and When the door lock is picked, an alarm signal is sent to the control unit.
  • the safety detection unit includes a first tamper-proof sensor, and the first tamper-proof sensor is used to detect whether the door lock is picked, and When the door lock is picked, an alarm signal is sent to the control unit.
  • the safety detection unit further includes a second tamper-proof sensor for detecting whether the user opens the door through the inner panel handle. If the user opens the door through the inner panel handle, the door can be opened normally , Otherwise the door cannot be opened.
  • the door lock control circuit further includes a power management unit.
  • the power management unit includes a battery, a power output module, and a charging module.
  • the battery is connected to the control unit through the power output module to Power is supplied to the control unit, and the battery is connected to a power source for charging through the charging module.
  • the power management unit further includes a power collection module configured to obtain the battery power in real time and transmit the obtained battery power to the control unit.
  • the door lock control circuit further includes a wireless communication unit and an encryption unit.
  • the control unit communicates with a server through the wireless communication unit, and uploads unlocking information, door lock status information, and door lock information to the server.
  • Security information, battery power information, the encryption unit is used to encrypt the above-mentioned information before uploading, and the encryption unit is also used to encrypt the information transmitted in the communication process.
  • One of the embodiments of the present application provides a door lock, which includes a door lock and a door lock control circuit disposed therein, and the door lock control circuit is the door lock control circuit according to any embodiment of the application.
  • One of the embodiments of the present application provides a smart door lock control method.
  • the method includes: detecting a target unlocking operation of the smart door lock, where the target unlocking operation is a preset unlocking method that needs to be detected; After the target unlocking operation of the smart door lock, the unlocking operation information is recorded and the unlocking operation information is reported; after the successful unlocking is confirmed, the smart door lock is controlled to perform the automatic locking operation.
  • the detecting the target unlocking operation of the smart door lock includes: detecting whether the potential of the input and output IO interface of the preset component of the smart door lock has changed; If the potential changes, it is determined that the target unlocking operation of the smart door lock is detected.
  • the detecting whether the potential of the IO interface of the preset component of the smart door lock has changed includes: detecting whether the potential of the IO interface of the key lock cylinder has changed; or, detecting the lock of the smart door lock Whether the potential of the IO interface of the control mechanism has changed.
  • the detecting the target unlocking operation of the smart door lock includes: detecting whether an unlocking instruction sent by a target terminal device is received, and the target terminal device is a terminal device associated with the smart door lock; When the unlocking instruction is reached, it is determined that the target unlocking operation of the smart door lock is detected.
  • the detecting whether the unlocking instruction sent by the target terminal device is received includes: detecting whether the Bluetooth unlocking instruction sent by the target terminal device is received; or, detecting whether the remote unlocking instruction sent by the target terminal device is received; Or, detect whether the NFC unlock command sent by the target terminal device is received.
  • the detecting the target unlocking operation of the smart door lock includes: detecting whether a password unlocking instruction is received; if the password unlocking instruction is detected, determining that the target unlocking operation of the smart door lock is detected.
  • the detecting whether a password unlocking instruction is received includes: detecting whether a digital password unlocking instruction is received; or, detecting whether a biometric password unlocking instruction is received.
  • controlling the smart door lock to perform an automatic locking operation includes: after confirming the successful unlocking, detecting whether the door body on which the smart door lock is installed is in a closed state; When it is detected that the door body is in a closed state, the smart door lock is controlled to perform an automatic locking operation.
  • the smart door lock is provided with a first sensor and a second sensor
  • the detecting whether the door body installed with the smart door lock is in a closed state includes: acquiring data collected by the first sensor; Determine the acceleration of the door body according to the collected data of the first sensor; when the acceleration is greater than a preset threshold, obtain the data collected by the second sensor; determine the acceleration according to the data collected by the second sensor Whether the door is closed or open.
  • the smart door lock is further provided with a first timer, and when the acceleration is greater than a preset threshold, acquiring data collected by the second sensor includes: when the acceleration is greater than a preset threshold When the threshold is set, the data collected by the second sensor before the timing duration of the first timer reaches the first preset duration is acquired, and after the timing duration of the first timer reaches the first preset duration, Controlling the second sensor to be in a sleep state.
  • the second sensor is a geomagnetic sensor
  • the acquiring the data collected by the second sensor includes: acquiring the geomagnetic flux collected by the geomagnetic sensor; the data collected according to the second sensor
  • Determining whether the door is in a closed state or an open state includes: determining that the door is in a closed state when the geomagnetic flux is within a preset geomagnetic flux interval; when the geomagnetic flux is outside the preset geomagnetic flux interval When, it is determined that the door is in an open state.
  • the smart door lock is further provided with a second timer. After confirming that the unlocking is successful, controlling the smart door lock to perform an automatic locking operation includes: after confirming the successful unlocking, triggering the The second timer starts timing; when the timing duration of the second timer is greater than a second preset duration, the smart door lock is controlled to perform an automatic locking operation.
  • the method further includes: generating an associated device linkage instruction, and the associated device linkage instruction is used to control the opening of the smart door lock.
  • Associated camera device sending the associated device linkage instruction to the camera device.
  • the method further includes: recording automatic locking information and reporting the automatic locking information.
  • One of the embodiments of the present application provides a smart door lock control device, the device includes: an unlocking operation detection unit for detecting a target unlocking operation of the smart door lock, and the target unlocking operation is a preset unlocking to be detected Means; a recording unit, used to record the unlocking operation information and report the unlocking operation information after detecting the target unlocking operation of the smart door lock; an automatic locking unit, used to control the smart door lock after confirming the successful unlocking The door lock performs an automatic locking operation.
  • the automatic locking unit specifically includes: a door body state detection subunit, which is used to detect whether the door body on which the smart door lock is installed is in a closed state after confirming that the unlocking is successful;
  • the sub-unit is used to control the smart door lock to perform an automatic locking operation when it is detected that the door body is in the closed state.
  • the device further includes: a linkage unit configured to generate an associated device linkage instruction after controlling the smart door lock to perform an automatic locking operation, and the associated device linkage instruction is used to control the opening and The camera device associated with the smart door lock; sending the associated device linkage instruction to the camera device.
  • a linkage unit configured to generate an associated device linkage instruction after controlling the smart door lock to perform an automatic locking operation, and the associated device linkage instruction is used to control the opening and The camera device associated with the smart door lock; sending the associated device linkage instruction to the camera device.
  • One of the embodiments of the present application provides a computer-readable medium on which a computer program is stored, wherein the program is executed by a processor to implement the method described in any embodiment of the present application.
  • One of the embodiments of the present application provides a processor, the processor is used to run a program, wherein the program executes the method as described in any embodiment of the present application when the program runs.
  • One of the embodiments of the present application provides a device that includes: one or more processors; a storage device on which one or more programs are stored; when the one or more programs are used by the one or more processors When executed, the one or more processors are caused to implement the method described in any embodiment of the present application.
  • Fig. 1 shows a schematic diagram of an application scenario of a smart lock control system according to some embodiments of the present application
  • Figure 2 is a schematic diagram of exemplary hardware and/or software of a smart lock control device according to some embodiments of the present application
  • Fig. 3 is a schematic diagram of exemplary hardware and/or software of a computing device according to some embodiments of the present application.
  • Fig. 4 shows an exemplary flow chart of a smart lock control method according to some embodiments of the present application
  • FIG. 5 shows an exemplary flowchart of a smart lock control method 500 according to some embodiments of the present application
  • Fig. 6 shows an exemplary flowchart of a secure communication method according to some embodiments of the present application
  • Fig. 7 shows an exemplary system architecture diagram that can be applied thereto according to some embodiments of the present application
  • FIG. 8 shows a schematic flowchart of an embodiment of a method for secure communication according to some embodiments of the present application
  • FIG. 9 shows a schematic flowchart of another embodiment of a method for secure communication according to some embodiments of the present application.
  • FIG. 10 shows a schematic flowchart of another embodiment of a method for secure communication according to some embodiments of the present application.
  • FIG. 11 shows a schematic flowchart of another embodiment of a method for secure communication according to some embodiments of the present application.
  • Fig. 12 shows a schematic structural diagram of an embodiment of an apparatus for secure communication according to some embodiments of the present application
  • FIG. 13 shows a schematic structural diagram of another embodiment of an apparatus for secure communication according to some embodiments of the present application.
  • FIG. 14 shows an exemplary flowchart of a smart lock control method 1400 according to some embodiments of the present application
  • Fig. 15 shows an exemplary flowchart of a method for device binding according to some embodiments of the present application
  • Fig. 16 shows a device binding method according to some embodiments of the present application
  • Figure 17 shows a schematic diagram of a keyboard device according to some embodiments of the present application.
  • FIG. 18 shows a flowchart of another device binding method according to some embodiments of the present application.
  • Figure 19 shows a flowchart of another device binding method according to some embodiments of the present application.
  • Fig. 20 shows a flowchart of another device binding method according to some embodiments of the present application.
  • FIG. 21 shows a flowchart of another device binding method according to some embodiments of the present application.
  • Fig. 22 shows a flowchart of another device binding method according to some embodiments of the present application.
  • FIG. 23 shows a flowchart of another device binding method according to some embodiments of the present application.
  • Fig. 24 shows a flowchart of another device binding method according to some embodiments of the present application.
  • FIG. 25 shows a schematic structural diagram of a user equipment according to some embodiments of the present application.
  • Fig. 26 shows a schematic structural diagram of a device to be bound according to some embodiments of the present application.
  • Fig. 27 is an exemplary flowchart of a smart lock control method provided according to some embodiments of the present application.
  • Figure 28 is a flowchart of a method for controlling a smart lock provided according to some embodiments of the present application.
  • Figure 29 is a schematic diagram of an application scenario of a method for controlling a smart lock provided according to some embodiments of the present application.
  • FIG. 30 is a flowchart of a method for controlling a smart lock according to some embodiments of the present application.
  • FIG. 31 is a schematic diagram of a process in which a user enters anti-hijacking fingerprint information in advance according to some embodiments of the present application.
  • Figure 32 is a schematic structural diagram of a system for controlling a smart lock provided according to some embodiments of the present application.
  • Figure 33 is a schematic structural diagram of a device for controlling a smart lock provided according to some embodiments of the present application.
  • Figure 34 is a schematic structural diagram of a control device provided according to some embodiments of the present application.
  • FIG. 35 is an exemplary flowchart of a smart lock control method provided according to some embodiments of the present application.
  • FIG. 36 is a flowchart of a method for unlocking according to some embodiments of the present application.
  • FIG. 37 is a schematic flowchart of a method for unlocking according to some embodiments of the present application.
  • FIG. 38 is a structural block diagram of a device for unlocking according to some embodiments of the present application.
  • FIG. 39 is a structural block diagram of a device for unlocking according to some embodiments of the present application.
  • FIG. 40 is a structural block diagram of a device for unlocking according to some embodiments of the present application.
  • FIG. 41 is an exemplary flowchart of a method for obtaining operation instructions and/or operation information of the smart lock 130 according to some embodiments of the present application;
  • FIG. 42 is an exemplary structure diagram of a control circuit of the smart lock 130 according to some embodiments of the present application.
  • FIG. 43 is an exemplary flowchart of a method for controlling a smart lock according to some embodiments of the present application.
  • FIG. 44 is an exemplary system architecture diagram that can be applied to some embodiments of the present application.
  • FIG. 45 is a flowchart of an embodiment of a smart door lock control method according to the present application.
  • FIG. 46 is a flowchart of another embodiment of a smart door lock control method according to the present application.
  • Figure 47 is a structural diagram of an embodiment of a smart door lock according to the present application.
  • FIG. 48 is a flowchart of another embodiment of a method for controlling a smart door lock according to the present application.
  • Figure 49 is a flowchart of another embodiment of a smart door lock control method according to the present application.
  • Fig. 50 is a structural diagram of an embodiment of a smart door lock control device according to the present application.
  • system is a method for distinguishing different components, elements, parts, parts or assemblies of different levels.
  • the words can be replaced by other expressions.
  • Fig. 1 shows a schematic diagram of an application scenario of a smart lock control system according to some embodiments of the present application.
  • the intelligent lock control system 100 can be widely used in various production and life fields such as residential houses, office buildings, factories, warehouses, shopping malls, schools, hospitals, hotels, rental houses, airports, railway stations, subway stations, etc.
  • the smart lock control system 100 may include a server 110, a network 120, a smart lock 130 and a user terminal 140.
  • the smart lock control system 100 can obtain security control information, perform security verification on the user's operation input of the smart lock 130, and perform corresponding operations on the smart lock 130 after confirming that the security verification is passed (such as unlocking, locking, or reminding operations).
  • the operation input may include operation instructions and/or operation information.
  • the smart lock control system 100 can be applied to various different scenarios. For example, the smart lock control system 100 may be applied to an access control device (for example, a door lock, a gate), and the smart lock 130 may be an access control device in this scenario. According to the user's operating instructions and/or operating information, security verification can be performed to determine whether the user is permitted to pass through the access control device.
  • the smart lock control system 100 can control the access control device to unlock.
  • the smart lock control system 100 may be applied to an attendance device (for example, an attendance machine). Security verification can be performed according to the user's operating instructions and/or operating information, and it can be determined whether the user's identity information exists in the database corresponding to the attendance device. Further, if the user's identity information exists in the database corresponding to the attendance device, the smart lock control system 100 can record the current moment as the user's attendance information.
  • the smart lock control system 100 may be applied to transportation equipment (for example, bicycles, electric vehicles, automobiles, etc.).
  • the transportation device can be a private transportation device (for example, a private car) or a shared transportation device (for example, a shared car, a shared bicycle).
  • security verification can be performed to determine whether the user is the owner or the current renter of the transportation equipment, and then determine whether to unlock the transportation equipment.
  • the smart lock control system 100 may be an online service platform for Internet services, such as an online payment platform (such as an online shopping platform) that requires identity authentication, online banking, an online car-hailing platform, an online meal ordering platform, etc. .
  • the smart lock control system 100 can search for and associate related accounts in the platform for security verification to determine whether the user's service request is permitted.
  • the smart lock control system 100 can also be applied to electronic devices (for example, mobile phones, notebook computers, and tablet computers) that require identity authentication. According to the user's operating instructions and/or operating information, the smart lock control system 100 can perform security verification to determine whether the electronic device itself is allowed to switch on and off, enter the system, download software, and other operating requests, as well as the application permissions.
  • the smart lock control system 100 may also be applied to electrical equipment or smart electrical equipment (for example, washing machine, refrigerator, air conditioner, air purifier, television, heating equipment). According to the user's operating instructions and/or operating information, security verification can be performed to determine whether the user is the owner or legal user of the electrical equipment, and then to determine whether to open the switch lock of the electrical equipment.
  • smart lock control system 100 can also be applied to other devices, scenarios, and applications that require security verification, which is not limited here, and any device, scenario, and/or that can use the identity verification method included in this application Or applications are within the scope of protection of this application.
  • the server 110 may be used to process information and/or data related to determining user identity.
  • the server 110 may process the identity confirmation information of the user in the identity confirmation device 130, and complete the confirmation of the user's identity according to the identity confirmation information.
  • the identity confirmation information may include first identification information and second identification information.
  • the server 110 may compare and match the user identity confirmation information acquired from the identity confirmation device 130 with pre-stored user identity confirmation information to confirm the identity of the user.
  • the server 110 may generate an instruction to control the identity confirmation device 130 according to the confirmation result of the user identity.
  • the server 110 may be an independent server or a server group.
  • the server group may be centralized or distributed (for example, the server 110 may be a distributed system).
  • the server 110 may be regional or remote.
  • the server 110 may access the information and/or data stored in the identity confirmation device 130 and the user terminal 140 through the network 120.
  • the server 110 may directly connect with the identity confirmation device 130 and the user terminal 140 to access the information and/or data stored therein.
  • the server 110 may be located in the identity confirmation device 130 or directly connected to the identity confirmation device 130.
  • the server 110 may be executed on a cloud platform.
  • the cloud platform may include one or any combination of private cloud, public cloud, hybrid cloud, community cloud, decentralized cloud, internal cloud, etc.
  • the server 110 may include a processing device.
  • the processing device may process data and/or information related to the control of the smart lock 130 to perform one or more functions described in this application.
  • the processing device may receive operation instructions and/or operation information signals sent by the user terminal 140, and send the operation instructions to the smart lock 130.
  • the processing device may obtain the execution status of the operation instruction and/or operation information of the smart lock 130, and send the execution status to the user terminal 140, or perform subsequent operations according to the execution status (e.g. Perform a blocking operation).
  • the processing device may include one or more sub-processing devices (for example, a single-core processing device or a multi-core and multi-core processing device).
  • the processing device may include a central processing unit (CPU), an application specific integrated circuit (ASIC), an application specific instruction processor (ASIP), a graphics processing unit (GPU), a physical processor (PPU), a digital signal processor (DSP) ), Field Programmable Gate Array (FPGA), Editable Logic Circuit (PLD), Controller, Microcontroller Unit, Reduced Instruction Set Computer (RISC), Microprocessor, etc. or any combination of the above.
  • CPU central processing unit
  • ASIC application specific integrated circuit
  • ASIP application specific instruction processor
  • GPU graphics processing unit
  • PPU physical processor
  • DSP digital signal processor
  • FPGA Field Programmable Gate Array
  • PLD Editable Logic Circuit
  • Controller Microcontroller Unit
  • RISC Reduced Instruction Set Computer
  • the network 120 can facilitate the exchange of data and/or information in the smart lock control system 100.
  • one or more components in the smart lock control system 100 can send data and/or information to the smart lock control system 100 via the network 120 Other components.
  • the operation input information of the smart lock 130 may be transmitted to the server 110 via the network 120.
  • the result of the security verification in the server 110 may be transmitted to the user terminal 140 via the network 120.
  • the network 120 may be any type of wired or wireless network.
  • the network 120 may include a cable network, a wired network, an optical fiber network, a telecommunications network, an internal network, an Internet network, a local area network (LAN), a wide area network (WAN), a wireless local area network (WLAN), and a metropolitan area network (MAN) , Public Switched Telephone Network (PSTN), Bluetooth network, ZigBee network, Near Field Communication (NFC) network, etc. or any combination of the above.
  • the network 120 may include one or more network entry and exit points.
  • the network 120 may include wired or wireless network access points, such as base stations and/or Internet switching points 120-1, 120-2, ..., through these access points, one or more components of the identity verification system 100 can be Connect to the network 120 to exchange data and/or information.
  • wired or wireless network access points such as base stations and/or Internet switching points 120-1, 120-2, ..., through these access points, one or more components of the identity verification system 100 can be Connect to the network 120 to exchange data and/or information.
  • the smart lock 130 can obtain safety control information and user operation instructions and/or operation information, and perform safety verification on the user operation instructions and/or operation information according to the safety control information. After the security verification is passed, the corresponding operation (such as unlocking operation or locking operation) can be performed according to the user's operation instruction and/or operation information.
  • the smart lock 130 may include a door lock device 130-1, an attendance device 130-2, a gate device 130-3, a transportation device 130-4, and a communication device 130-5. For example, when the smart lock 130 is the door lock device 130-1, it can be determined whether the user is permitted to open the door lock device 130-1 according to the user's operation instruction and/or operation information.
  • the door lock device 130-1 unlocks.
  • the door lock device 130-1 can be applied to door bodies, parking lot locks, safes, luggage boxes, etc.
  • the door lock device 130-1 may include a button type door lock, a dial type door lock, an electronic key type door lock, a touch type door lock, a password recognition type door lock, and a remote control type door.
  • the smart lock 130 when the smart lock 130 is the attendance device 130-2, it can be determined whether the user's identity information exists in the storage device corresponding to the attendance device 130-2 according to the user's operation instruction and/or operation information. Further, if the user’s identity information exists in the storage device corresponding to the attendance device, the attendance device 130-2 can record the user’s identity information and the current moment as the user’s attendance information (for example, the user’s name, work Number, attendance time, geographic location). In some embodiments, the time attendance device 130-2 may include a biometric time attendance device and a mobile time attendance device.
  • the biometric time attendance device may include a fingerprint time attendance device, a finger vein time attendance device, a palm print time attendance device, a face time attendance device, a voice time attendance device, an iris time attendance device, a retina time attendance device, etc., or any combination thereof.
  • the mobile time attendance device may refer to a mobile terminal (for example, a mobile phone, a computer, a smart watch, a wearable device, etc.) that is installed with a corresponding time and attendance client (for example, software, a mobile phone APP, etc.) to complete the time attendance.
  • the smart lock 130 is the gate device 130-3
  • security verification is performed according to the user's operation instruction and/or operation information, and it can be determined whether the user is allowed to pass the gate device 130-3. Further, if the result of the judgment is that the user is permitted to pass the gate device 130-3, the gate device 130-3 unlocks and releases the user; otherwise, the gate device 130-3 does not unlock.
  • the gate device 130-3 can be applied to entrances or exits where the user's identity needs to be determined, such as airports, subway stations, light rail stations, bus passenger stations, railway stations, office buildings, residential areas, and so on.
  • the gate device 130-3 may include a swing gate device, a wing gate device, a three-roll gate device, a rotary gate device, a translation gate device, etc., or any combination thereof.
  • the transportation device 130-4 may be a private transportation device (such as a private car) or a shared transportation device (For example, car sharing, bicycle sharing). According to the user's operating instructions and/or operating information for security verification, it can be determined whether the user is the owner of the transportation equipment or the current renter, and then whether to open the lock of the transportation equipment.
  • the transportation device 130-4 After the transportation device 130-4 passes the safety verification of the user's operation instruction and/or operation information, the transportation device 130-4 can be unlocked or activated.
  • the security verification is performed according to the user's operation instruction and/or operation information, and the communication device 130-5 can determine whether to allow the electronic device itself to switch, enter the system, download software, etc. Request and use permissions of the application (eg, online payment platform).
  • the application eg, online payment platform
  • the smart lock 130 is not limited to the door lock device 130-1, the attendance device 130-2, the gate device 130-3, the transportation device 130-4 and the communication device 130-5 shown in FIG. It can be applied to other devices that need to be unlocked or locked, and is not limited here. Any device that can use the smart lock control method included in this application is within the protection scope of this application.
  • the user terminal 140 can obtain information or data in the smart lock control system 100. In some embodiments, the user terminal 140 can obtain push information about the state of the smart lock 130. In some embodiments, the push information may include switch status information of the smart lock 130, user pass information, user usage information, alarm information, and the like. In some embodiments, the user may obtain the user's operation instruction and/or operation information through the user terminal 140.
  • the user terminal 140 may be connected to the smart lock 130 through the network 120 (for example, wired connection, wireless connection), and the user may obtain the user's operation instruction and/or operation information through the user terminal 140, and the user's operation instruction and/or operation The information can be transmitted to the server 110 through the user terminal 140.
  • the user terminal 140 may include one of a mobile device 140-1, a tablet computer 140-2, a notebook computer 140-3, etc., or any combination thereof.
  • the mobile device 140-1 may include a smart home device, a wearable device, a smart mobile device, a virtual reality device, an augmented reality device, etc., or any combination thereof.
  • the smart furniture device may include a smart lighting device, a control device of a smart electrical appliance, a smart monitoring device, a smart TV, a smart camera, a walkie-talkie, etc., or any combination thereof.
  • the wearable device may include a smart bracelet, smart footwear, smart glasses, smart helmets, smart watches, smart clothes, smart backpacks, smart accessories, etc., or any combination thereof.
  • the smart mobile device may include a smart phone, a personal digital assistant (PDA), a game device, a navigation device, a POS device, etc., or any combination thereof.
  • the virtual reality device and/or augmented reality device may include a virtual reality helmet, virtual reality glasses, virtual reality goggles, augmented reality helmets, augmented reality glasses, augmented reality goggles, etc. or Any combination of the above.
  • the smart lock control system 100 may further include a control device.
  • the control device is a device or device that can issue instructions to control the smart lock 130 to perform corresponding operations.
  • the control device and the user terminal may be the same device.
  • the control device may establish a binding relationship with the smart lock 130 and send operation instructions to the smart lock 130 to control the smart lock 130 to perform operations such as unlocking and locking.
  • the smart lock control system 100 may also include an input device.
  • An input device is a device or device that receives one or more types of input information. For example, password keyboard, image acquisition device, voice acquisition device, biometric acquisition device, Bluetooth device, NFC device, etc.
  • the input device and the user terminal may be the same device.
  • the input device can receive various input information and send it to the smart lock 130.
  • Various input information may include, but are not limited to, text input information, image input information, voice input information, biometric input information, network data input information, and so on.
  • the smart lock control system 100 may also include a storage device.
  • the storage device may store data (for example, security control information) and/or instructions (for example, open/close lock instructions, alarm instructions).
  • the storage device may store information obtained from the smart lock 130 and/or the user terminal 140.
  • the storage device may store information and/or instructions for execution or use by the server 110 to perform the exemplary methods described in this application.
  • the storage device may include mass memory, removable memory, volatile read-write memory (for example, random access memory RAM), read-only memory (ROM), etc., or any combination thereof.
  • the storage device may be implemented on a cloud platform.
  • the cloud platform may include private cloud, public cloud, hybrid cloud, community cloud, distributed cloud, internal cloud, etc. or any combination of the above.
  • the storage device may be connected to the network 120 to communicate with one or more components of the smart lock control system 100 (for example, the server 110, the smart lock 130, the user terminal 140, etc.).
  • One or more components of the smart lock control system 100 can access data or instructions stored in the storage device through the network 120.
  • the storage device may directly connect or communicate with one or more components (eg, the server 110, the smart lock 130, and the user terminal 140) in the smart lock control system 100.
  • the storage device may be part of the server 110.
  • the server 110 and the smart lock 130 can be installed independently.
  • the server 110 may also be located in the smart lock 130.
  • Fig. 2 is a schematic diagram of exemplary hardware and/or software of a smart lock control device according to some embodiments of the present application.
  • the smart lock control device 200 may include a communication module 210, a security module 220, a processing module 230 (also called a processor), a control module 240 (also called a control unit), a reminder module 250, and an input module. /Output module 260, drive module 270 (also called automatic locking unit), mechanical structure 280, detection module 290, and so on. It should be noted that the modules, units, and subunits mentioned in this application can be implemented by hardware, software, or a combination of software and hardware.
  • the hardware implementation may include the use of circuits or structures composed of physical components; the software implementation may include storing the corresponding operations of the modules, units, and sub-units in the form of codes in the memory, using appropriate hardware, for example, The microprocessor executes.
  • the modules, units, and subunits mentioned in this article perform their operations, if there is no special description, it can mean that the software code containing the function is executed, or the hardware with the function is used.
  • the modules, units, and subunits mentioned in this article do not limit the structure of the corresponding hardware when corresponding to the hardware, as long as the hardware that can realize its functions is within the protection scope of this application.
  • the different modules, units, and sub-units mentioned in this article can correspond to the same hardware structure.
  • the same module, unit, or sub-unit mentioned in this article can also correspond to multiple independent hardware structures.
  • the communication module 210 may be used for information or data exchange.
  • the communication module 210 may be used for various components of the smart lock control device 200 (for example, the security module 220, the processing module 230, the control module 240, the reminder module 250, the input/output module 260, the drive module 270, etc. ) Data transfer between.
  • the reminder module 250 may send reminder information to the input/output module 260 through the communication module 210 for output.
  • the control module 240 may send control information to the drive module 270 through the communication module 210 to perform corresponding operations.
  • the communication module 210 may also be used for data transmission between various components of the smart lock control system 100 (for example, the smart lock 130, the network 120, the control device, the input device, the storage device, and the server 110).
  • the control device may send the operation instruction to the network 120 through the communication module 210.
  • the smart lock 130 may obtain data or information (for example, operation instructions or operation information) from the network 120 through the communication module 210.
  • the communication module 210 may be used to obtain security control information through a secure connection.
  • the communication module 210 may obtain the identity verification information sent by the server 110 from the network 120.
  • the communication module 210 may adopt wired, wireless, and wired/wireless hybrid technologies.
  • Wired technology can be based on a combination of one or more optical cables such as metal cables, hybrid cables, and optical cables.
  • Wireless technologies can include Bluetooth, Wi-Fi, ZigBee, Near Field Communication (NFC), Radio Frequency Identification (RFID), cellular networks (including GSM) , CDMA, 3G, 4G, 5G, etc.), cellular-based Narrow Band Internet of Things (NBIoT), etc.
  • the communication module 210 may use one or more encoding methods to encode the transmitted information.
  • the encoding method may include phase encoding, non-return-to-zero code, and differential Manchester code.
  • the communication module 210 may select different transmission and encoding modes according to the type of data to be transmitted or the type of network.
  • the communication module 210 may include one or more communication interfaces for different communication methods.
  • the various components of the smart lock control system 100 (the smart lock 130, the network 120, the control device, the input device, the storage device, and the server 110) may be scattered on multiple devices. In this case, Each module may respectively include one or more communication modules 210 to transmit information between the modules.
  • the communication module 210 may include a receiver and a transmitter. In other embodiments, the communication module 210 may be a transceiver.
  • a unit or module having a function of receiving (obtaining) or sending information and/or data can be regarded as the communication module 210 or its sub-modules.
  • the security module 220 may be used to perform security processing on data (for example, data encryption, data decryption, security verification, etc.). In some embodiments, the security module 220 may perform security processing on information or data in some other modules (for example, the communication module 210, the input/output module 260, etc.) in the smart lock control device 200. In some embodiments, the security module 220 can perform security processing on the data exchange of various components in the smart lock control system 100. For example, the security module 220 may encrypt data transmitted in the network 120, so that the data transmission security is higher. In some embodiments, the security module 220 may be used to perform security verification based on security control information and operation inputs. For example, the security module 220 may perform security verification on the operation information and/or operation instructions in the smart lock control system 100 based on the security control information.
  • data for example, data encryption, data decryption, security verification, etc.
  • the security module 220 may perform security processing on information or data in some other modules (for example, the communication module 210
  • all units or modules with data encryption, data decryption, or security verification functions can be considered as the security module 220 or its sub-modules.
  • encryption unit, decryption unit, decryption module, identity authentication module and so on can be considered as the security module 220 or its sub-modules.
  • the processing module 230 can process data from various components of the smart lock control device 200 (for example, the communication module 210, the security module 220, the control module 240, the reminder module 250, the input/output module 260, etc.). For example, the processing module 230 may process the security verification information from the security module 220. For another example, the processing module 230 may process operation information or operation instructions from the input/output module 260. In some embodiments, the processed data can be stored in a memory or hard disk. In some embodiments, the processing module 230 may transmit the processed data to one or more components of the smart lock control system 100 through the communication module 210 or the network 120.
  • the processing module 230 may transmit the processed data to one or more components of the smart lock control system 100 through the communication module 210 or the network 120.
  • the processing module 230 may send the judgment result of the operation instruction to the control module 240, and the control module 240 may execute subsequent operations or instructions according to the judgment result. For example, when the judgment result of the operation instruction and/or operation information is passed successfully, the control module 240 may send the instruction to the driving module 270 to control the smart lock 130 to unlock.
  • the processing module 230 may be used to establish a secure connection with the network. For example, the processing module 230 may establish a secure connection between the smart lock 130 and the network 120. For another example, the processing module 230 may establish a secure connection between the server 110 and the network 120.
  • the control module 240 can be used to manage the data processing process and control the operating state of the device.
  • the control module 240 may be associated with other modules in the smart lock control device 200.
  • the control module 240 can control the operation of some other modules in the smart lock control device 200 (for example, the communication module 210, the security module 220, the reminder module 250, the input/output module 260, the drive module 270, etc.) status.
  • the control module 240 may control the driving module 270 to start or stop.
  • the control module 240 may manage the data acquisition or transmission process in the communication module 210.
  • the control module 240 may control the reminder module 250 to send reminder information.
  • the control module 240 may be used to perform corresponding operations based on the operation input when the security verification is passed.
  • the control module 240 may control the smart lock 130 to perform an unlocking operation after the user's identity verification is passed.
  • the module or unit having the function of managing data processing and controlling the running status of the device can be regarded as the control module 240 or its sub-modules.
  • the control module 240 or its sub-modules.
  • switching units, execution modules, and so on can be regarded as the control module 240 or its sub-modules.
  • the reminder module 250 can be used to generate and send reminder or alarm information.
  • the reminder module 250 may send the generated reminder or alarm information to some other modules (for example, the input/output module 260, etc.) in the smart lock control device 200 through the communication module 210.
  • the reminder module 250 can also send the generated reminder or alarm information to each component in the smart lock control system 100.
  • the warning mode may include sound warning, light warning, remote warning, etc., or any combination thereof.
  • the reminder module 250 can send reminder information or alarm information to the associated control device through the communication module 210, and the communication module 210 can also establish communication between the smart lock 130 and the associated control device ( For example, voice communication, video communication).
  • the reminding module 250 may also send reminding information to the control device through the communication module 210.
  • the reminder module 250 may send reminder information related to successful identity confirmation to the control device.
  • the input/output module 260 can acquire, transmit, and send signals. Other modules in the smart lock control device 200 can be connected or communicated through the input/output module 260. The input/output module 260 can also be connected or communicated with other components in the smart lock control system 100. In some embodiments, the input/output module 260 may be used to obtain operation inputs (for example, operation instructions and/or operation information). In some embodiments, the input/output module 260 may be a module located in the field of the smart lock 130 for data input or output on the smart lock 130 field. In some embodiments, the manner of data input from the field may include, but is not limited to: touch input, scan input, voice input, short-range communication input, and the like.
  • input data through a keyboard on site.
  • input data by scanning the user's biometrics.
  • data is input through a Bluetooth device or the like.
  • the input/output module 260 may perform data output on site through an output device (for example, a display device, a microphone, etc.) on the smart lock 130.
  • the display device of the smart lock 130 may display information about whether the smart lock 130 is successfully unlocked.
  • the input/output module 260 may also be a remote module for remotely inputting or outputting data through the network 120.
  • the input/output module 260 may obtain data (for example, operation instructions) from a remote device (for example, control device, server 110) through the network 120, and transmit the acquired data to the smart lock control device 200 through the communication module 210. In other modules.
  • the input/output module 260 may output the control result of the control module 240 to a remote device (for example, a control device).
  • the input/output module 260 may be a wired USB interface, a serial communication interface, a parallel communication port, or a wireless Bluetooth, infrared, radio frequency identification (RFID), wireless local area network authentication and security infrastructure (Wlan Authentication and Privacy Infrastructure, WAPI), General Packet Radio Service (General Packet Radio Service, GPRS), Code Division Multiple Access (Code Division Multiple Access, CDMA), etc., or any combination thereof.
  • RFID radio frequency identification
  • WAPI Wired Authentication and Privacy Infrastructure
  • GPRS General Packet Radio Service
  • CDMA Code Division Multiple Access
  • the input/output module 260 may include VCC, GND, RS-232, RS-485 (eg, RS485-A, RS485-B), general network interface, etc., or any combination thereof.
  • the input/output module 260 may transmit the acquired operation information to the security module 220 via the network 120.
  • the input/output module 260 may use one or more encoding methods to encode the transmitted signal.
  • the encoding method may include phase encoding, non-return-to-zero code, differential Manchester code, etc., or any combination thereof.
  • the driving module 270 may be used to drive the mechanical structure 280 to perform corresponding actions or operations.
  • the driving module 270 can operate under the control of the control module 240.
  • the driving module 270 may include one or more driving force sources.
  • the driving force source may include a driving motor driven by electric power.
  • the driving motor may be one or a combination of DC motors, AC induction motors, permanent magnet motors, switched reluctance motors, and the like.
  • the driving module 270 may include one or more driving motors.
  • the drive source of the drive module 270 is configured according to the content of the electrical signal (for example, the drive motor in the drive module 270 rotates at a specific speed per minute for a specific time), and the rotation of the drive motor drives the state of the mechanical structure 280 connected to it to change (Such as unlocking, closing the lock, starting).
  • the mechanical structure 280 may be used to perform actions or operations.
  • the mechanical structure 280 may be connected to the driving module 270 and perform actions or operations under the driving force of the driving module 270.
  • the mechanical structure 280 may be a lock structure in the smart lock 130, and the driving module 270 may drive the mechanical structure 280 to perform an unlocking or locking operation.
  • the detection module 290 can be used to detect the working status of other modules.
  • the detection module 290 may include various sensors, and various sensors may include, but are not limited to, force sensors, infrared sensors, visible light sensors, displacement sensors, acoustic sensors, time sensors, and so on.
  • the detection module 290 may include a bolt detection sensor, and the bolt detection sensor may detect the position of the bolt to determine whether the smart lock is in the unlocked state or the locked state.
  • the detection module 290 may include a noise sensor, and the noise sensor may determine that the smart door lock is in the unlocked state or the locked state by detecting the unlocking noise signal.
  • the detection module 290 can detect the unlocking time or the locking time of the smart lock, and send the time information to the control module 240 to determine whether the smart door lock needs to be automatically locked.
  • the detection module 290 may be connected to the mechanical structure 280 to detect the working state of the mechanical structure 280 (for example, the unlocked state, the locked state, etc.).
  • the detection module 290 may be connected to the driving module 270 to detect the working status of the driving module 270 (for example, whether it is activated, etc.).
  • the detection module 290 may send the detection information to the control module 240 through the communication module 210.
  • the detection module 290 may also record the working status of the module to be detected, and send the recorded information to other modules (such as the control module 240) through the communication module 210.
  • a third-party device with a detection function is also regarded as a detection module, and its detection information can be transmitted to other modules through the communication module 210.
  • the third-party equipment with detection functions can be video detection equipment, ultrasonic detection equipment, and so on.
  • a module or unit with a function of detecting the working status of other modules can be considered as the detection module 290 or its sub-modules, for example, a status detection unit, a safety detection unit, an unlocking operation detection unit, and so on.
  • the smart lock control device 200 may also include other modules to maintain its operation.
  • the power supply module is used for other modules in the smart lock control device 200 (for example, the communication module 210, the security module 220, the processing module 230, the control module 240, the reminder module 250, the input/output module 260, the drive module 270, The mechanical structure 280 and the detection module 290) provide power, which will not be repeated here.
  • each module in the smart lock control device 200 can be applied to each module in the smart lock control system 100.
  • the control module 240 may be a function module in the server 110, may also be a function module in the control device, or may be a function module in the smart lock 130.
  • the security module 220 can be implemented in the server 110, can also be implemented in the control device, and can also be implemented in the smart lock 130.
  • system and its modules shown in FIG. 2 can be implemented in various ways.
  • the system and its modules may be implemented by hardware, software, or a combination of software and hardware.
  • the hardware part can be implemented using dedicated logic;
  • the software part can be stored in a memory and executed by an appropriate instruction execution system, such as a microprocessor or dedicated design hardware.
  • an appropriate instruction execution system such as a microprocessor or dedicated design hardware.
  • the above-mentioned methods and systems can be implemented using computer-executable instructions and/or included in processor control code, for example on a carrier medium such as a disk, CD or DVD-ROM, such as a read-only memory (firmware Such codes are provided on a programmable memory or a data carrier such as an optical or electronic signal carrier.
  • the system and its modules of one or more embodiments of this specification may include not only such devices as VLSI or gate arrays, semiconductors such as logic chips, transistors, etc., or field programmable gate arrays, programmable logic devices, etc.
  • the hardware circuit implementation of the programming hardware device can also be implemented by software executed by various types of processors, or can also be implemented by a combination of the above-mentioned hardware circuit and software (for example, firmware).
  • the above description of the smart lock control device 200 and its modules is only for convenience of description, and does not limit one or more embodiments of this specification to the scope of the embodiments. It can be understood that for those skilled in the art, after understanding the principle of the system, they may arbitrarily combine various modules without departing from this principle, or form subsystems connected to other modules, or One or more of the modules are omitted.
  • the reminder module 250 in FIG. 2 may be omitted.
  • the smart lock control device 200 may only perform operations in the field device without sending reminders.
  • the driving module 270 and the detecting module 290 may be one module, and the module may have the function of detecting and driving the mechanical structure 280. Such deformations are all within the protection scope of one or more embodiments of this specification.
  • Fig. 3 is a schematic diagram of exemplary hardware and/or software of a computing device according to some embodiments of the present application.
  • the server 110 and/or the user terminal 140 may be implemented on the computing device 300.
  • the processing device may implement and execute the functions of the processing device disclosed in this application on the computing device 300.
  • the computing device 300 may include an internal communication bus 310, a processor 320, a read-only memory 330, a random access memory 340, a communication port 350, an input/output interface 360, a hard disk 370, and a user interface 380.
  • the internal communication bus 310 can implement data communication between components in the computing device 300.
  • the processor 320 may send data to other hardware such as the memory or the input/output port 360 through the internal communication bus 310.
  • the internal communication bus 310 may be an industry standard (ISA) bus, an extended industry standard (EISA) bus, a video electronics standard (VESA) bus, an external component interconnection standard (PCI) bus, etc.
  • the internal communication bus 310 may be used to connect the various modules in the smart lock control system 100 shown in FIG. 1 (for example, the detection module 290, the processing module 230, the control module 240, the communication module 210, the input/output Module 260, drive module 270).
  • the processor 320 can execute calculation instructions (program code) and execute the functions of the smart lock control system 100 described in this application.
  • the computing instructions may include programs, objects, components, data structures, procedures, modules, and functions (the functions refer to specific functions described in this application).
  • the processor 320 may process operation inputs (for example, operation instructions and/or operation information) obtained from the smart lock 130 or/or the user terminal 140 of the smart lock control system 100, and perform security verification according to the operation input to determine whether Perform corresponding operations on the smart lock 130 (for example, unlocking, locking, or reminding operations).
  • the processor 320 may include a microcontroller, a microprocessor, a reduced instruction set computer (RISC), an application specific integrated circuit (ASIC), an application specific instruction set processor (ASIP), a central processing unit (CPU) , Graphics Processing Unit (GPU), Physical Processing Unit (PPU), Microcontroller Unit, Digital Signal Processor (DSP), Field Programmable Gate Array (FPGA), Advanced Reduced Instruction Set Computer (ARM), Programmable Logic Device And any circuits and processors that can perform one or more functions, or any combination thereof.
  • RISC reduced instruction set computer
  • ASIC application specific integrated circuit
  • ASIP application specific instruction set processor
  • CPU central processing unit
  • GPU Graphics Processing Unit
  • PPU Physical Processing Unit
  • Microcontroller Unit Microcontroller Unit
  • DSP Digital Signal Processor
  • FPGA Field Programmable Gate Array
  • ARM Advanced Reduced Instruction Set Computer
  • Programmable Logic Device any circuits and processors that can perform one or more functions, or any combination thereof.
  • the computing device 300 in FIG. 3 only describes one processor
  • the memory of the computing device 300 can store data/information acquired from any other components of the smart lock control system 100.
  • the memory of the computing device 300 may be located in the smart lock 130 or in the server 110.
  • Exemplary ROMs may include mask ROM (MROM), programmable ROM (PROM), erasable programmable ROM (PEROM), electrically erasable programmable ROM (EEPROM), compact disk ROM (CD-ROM) and digital Universal disk ROM, etc.
  • Exemplary RAMs may include dynamic RAM (DRAM), double-rate synchronous dynamic RAM (DDR SDRAM), static RAM (SRAM), thyristor RAM (T-RAM), zero capacitance (Z-RAM), and the like.
  • the input/output interface 360 may be used to input or output signals, data or information.
  • the input/output interface 360 may allow the user to interact with the smart lock control system 100.
  • the input/output interface 360 may include a communication module 210 to realize the function of the smart lock control system 100 to obtain safety control information.
  • the input/output interface 360 may include an input device and an output device.
  • Exemplary input devices may include a keyboard, mouse, touch screen, microphone, etc., or any combination thereof.
  • Exemplary output devices may include display devices, speakers, printers, projectors, etc., or any combination thereof.
  • Exemplary display devices may include liquid crystal displays (LCD), light emitting diode (LED)-based displays, flat panel displays, curved displays, television equipment, cathode ray tubes (CRT), etc., or any combination thereof.
  • the communication port 350 can be connected to a network for data communication.
  • the connection may be a wired connection, a wireless connection, or a combination of both.
  • Wired connections can include cables, optical cables, or telephone lines, etc., or any combination thereof.
  • the wireless connection may include Bluetooth, Wi-Fi, WiMax, WLAN, ZigBee, mobile networks (for example, 3G, 4G, or 5G, etc.), etc., or any combination thereof.
  • the communication port 350 may be a standardized port, such as RS232, RS485, and so on.
  • the communication port 350 may be a specially designed port.
  • the hard disk 370 may be used to store information and data generated by or received from the server 110.
  • the hard disk 370 may store the user's operation input.
  • the hard disk 370 may include a mechanical hard disk (HDD), a solid state hard disk (SSD), or a hybrid hard disk (HHD).
  • the hard disk 370 may be installed in the server 110 or the smart lock 130.
  • the user interface 380 can implement interaction and information exchange between the computing device 300 and the user.
  • the user interface 380 may be used to present information and data generated by the smart lock control system 100 to the user.
  • the user interface 380 may present the safety verification result of the smart lock control system 100 (for example, the safety verification succeeded, the safety verification failed) to the user.
  • the user interface 380 may include a physical display, such as a display with speakers, LCD display, LED display, OLED display, electronic ink display (E-Ink), and the like.
  • Fig. 4 shows an exemplary flow chart of a method for controlling a smart lock according to some embodiments of the present application.
  • the process 400 may include the following steps:
  • Step S111 establish a secure connection with the network 120.
  • step S111 may be implemented by the processing module 230.
  • a secure connection is a data channel that can ensure the safe transmission of data.
  • encrypted data transmission HTTPS (Hypertext Transfer Protocol over Secure Socket Layer), VPN (Virtual Private Network), etc.
  • the processing module 230 may establish a secure connection between the network 120 and other components in the smart lock control system 100 (for example, the server 110, the smart lock 130, etc.).
  • the processing module 230 can establish a secure connection between the smart lock 130 and the network 120.
  • the smart lock 130 can obtain an encryption key, and transmit data in an encrypted manner based on the encryption key during network transmission, thereby establishing a secure connection.
  • the smart lock 130 can obtain the encryption key through the network 120.
  • the smart lock 130 may obtain a preset encryption key from local storage, or may obtain a preset encryption key from a network storage device or other storage device connected to the smart lock 130.
  • the smart lock 130 can safely transmit data with one or more of the control device, the storage device, and the server 110.
  • Step S112 Obtain security control information.
  • step S112 may be implemented by the communication module 210.
  • the security control information refers to information that can perform security control on the operation of the smart lock 130.
  • the security information may be encrypted verification information. For example, digital passwords, biometric information, Bluetooth keys, NFC passwords, etc. encrypted by encryption algorithms.
  • the communication module 210 can obtain security control information from the network 120.
  • the smart lock 130 may also obtain security control information locally through the communication module 210.
  • the smart lock 130 can obtain user identity information from the security control information, authenticate the user, and determine whether to perform the operation required in the operation instruction issued by the user through the control device.
  • the smart lock 130 may obtain the second verification information from the security control information, and perform security verification on the second verification information and the operation information under preset conditions to determine whether the operation information passes the security verification.
  • security verification For more specific content of the second verification information, refer to the description of FIG. 36.
  • Step S113 Obtain operation input.
  • step S113 may be implemented by the input/output module 260.
  • the operation input is information or instructions input by the user when performing an operation in the smart lock control system 100.
  • the operation input may include operation instructions and operation information.
  • the operation instruction is instruction information for controlling the smart lock 130 to perform corresponding operations. For example, unlock command, lock command, unlock detection command, etc.
  • the operation instruction may also be instruction information for setting the smart lock 130, for example, configuring the state of the smart lock 130, enabling or disabling certain functions.
  • the operation information is related input information required by the smart lock 130 to perform a corresponding operation. For example, unlock password information, preset password information, etc.
  • the user may perform operation input to the components (for example, control device, input device, etc.) in the smart lock control system 100 through the input/output module 260.
  • the user can input operation instructions in the control device.
  • the way for the user to input the operation instruction may include, but is not limited to, touch input, biometric input, keyboard input, and the like.
  • the operation instruction may be encrypted through the network 120 and then transmitted to the smart lock 130 securely.
  • the user can input operation information in the input device, and the smart lock 130 can directly obtain the operation information input by the user in the input device.
  • the way for the user to input operation information may include, but is not limited to, touch input, biometric input, keyboard input, etc.
  • the operation information may include encrypted input information.
  • the input device may encrypt the user's input information.
  • the operation information may include first verification information composed of multiple characters. For more specific content of the first verification information, refer to the description of FIG. 36.
  • Step S114 Perform security verification based on security control information and operation input.
  • step S114 may be implemented by the security module 220.
  • the security verification is to improve the security of the smart lock 130 performing corresponding operations. For example, identity verification, timeliness verification, authorization verification, etc.
  • the security module 220 may perform security verification based on encrypted operation inputs (for example, operation instructions and/or operation information) and security control information. In some embodiments, the security module 220 may perform security verification based on the first verification information of the operation information and the second verification information of the security control information. In some embodiments, the security module 220 may determine whether to perform a corresponding operation based on the result of the security verification.
  • Step S115 Perform corresponding operations based on the operation input according to the result of the security verification.
  • step S115 may be implemented by the control module 240.
  • the corresponding operation refers to the operation performed by the smart lock 130 corresponding to the safety verification result.
  • the corresponding operations performed by the smart lock 130 may include, but are not limited to, an unlocking operation, a locking operation, an unlocking detection operation, and the like.
  • the control module 240 may control the smart lock 130 to perform an unlocking operation.
  • the smart lock 130 can detect the target unlocking operation, and the control module 240 can control the smart lock 130 to record and report the unlocking operation information, and perform an automatic locking operation.
  • the target unlocking operation may be an unlocking operation of a specific user determined based on the user's identity verification information, or an unlocking operation that meets other preset conditions.
  • the smart lock control method may further include: the smart lock 130 establishes a binding relationship with the control device.
  • the binding relationship is to establish a corresponding relationship between at least two devices or devices, so that certain information transmission or operations can only be performed between the corresponding devices or devices. For example, Bluetooth pairing, MAC address binding, etc.
  • the smart lock 130 and/or the control device can obtain the counterpart's device information and send a device binding request carrying the counterpart's device information, thereby establishing a binding relationship.
  • the smart lock 130 can receive operation instructions or information sent by the control device that has established a binding relationship, and perform corresponding operations.
  • step S111 can be omitted, that is, the smart lock control device 200 can work in an offline state and obtain safety control information locally.
  • step S112 and step S113 can be interchanged.
  • step S112 and step S113 can also be performed simultaneously.
  • the processing module 230 can establish a secure connection with the network 120, which reduces the probability of the network key being cracked and improves the security of wireless communication.
  • the network 120 will transmit an encryption key to the smart lock. Since the network 120 sends the same encryption key to all smart locks, all smart locks in the network also use this encryption key. The encryption key encrypts data, so there is a problem of communication security. Based on this, in order to improve communication security, the network 120 may perform calculations on the characteristic information of the smart lock sent by the smart lock 130 to obtain a calculated value (such as a hash value) of the characteristic information of the smart lock, and then use the calculated value to encrypt the original network.
  • a calculated value such as a hash value
  • the key is encrypted to obtain an encryption key, and the encryption key is sent to the smart lock. Since the network 120 uses the calculated value of the characteristic information of the smart lock to encrypt the original network key, and the calculated value is calculated from the characteristic information of the smart lock, the only way to decrypt the encryption key is the corresponding smart lock. It can only be known to 130, and therefore cannot be captured by the packet capturer and cracked the encryption key, which improves the security of wireless communication.
  • FIG. 5 is an exemplary flowchart of a method 500 for controlling a smart lock according to some embodiments of the present application.
  • the processing module 230 may establish a secure connection with the network in the following methods:
  • S501 Send characteristic information of the smart lock through the network. This step can be executed by the processing module 230.
  • the characteristic information is information that is unique to the smart lock and represents the identity of the smart lock, for example, installation code, MAC address, serial number, etc.
  • the processing module 230 may send one or more characteristic information of the installation code and MAC address of the smart lock through the network 120.
  • the smart lock can send the installation code and MAC address of the smart lock to the smart phone via the network. For specific embodiments, refer to steps S601 and S602 in FIG. 6.
  • S502 Obtain an encryption key through the network, where the encryption key is related to the characteristic information.
  • the processing module 230 obtains the encryption key through the network 120.
  • the encryption key may be obtained by encrypting the original network key.
  • the encryption key may be a calculated value based on the characteristic information of the smart lock, for example, the hash value of the characteristic information of the smart lock. Hope value.
  • the smart phone may use an encryption algorithm to encrypt the original key, and the encryption use key may be the hash value of the smart lock installation code, and the smart lock may receive the encryption key sent by the smart phone via the network.
  • the encryption use key may be the hash value of the smart lock installation code
  • the smart lock may receive the encryption key sent by the smart phone via the network.
  • S503 Perform an encryption operation on the characteristic information sent through the network based on the encryption key.
  • the control module 230 uses the original network key to encrypt the characteristic information sent over the network, where the original network key can be obtained by decrypting the encryption key.
  • the decryption key may be a calculated value based on the characteristic information of the smart lock, for example, a hash value of the characteristic information of the smart lock.
  • the smart lock can decrypt the encryption key to obtain the original network key, use the original network key to encrypt the serial number of the smart device, and send it to the smart phone via the network. For specific embodiments, refer to step S604 in FIG. 6.
  • Fig. 6 shows an exemplary flow chart of a secure communication method according to some embodiments of the present application.
  • the smart lock may be a smart lock 130, and the network may also be a network 120.
  • the smart lock 130 and the network 120 can establish a secure connection.
  • the network 120 receives the network access request of the smart lock 130; according to the address information of the smart lock 130, the encryption key corresponding to the smart device is sent to the smart lock 130, and the smart lock 130 is assigned a network address; where, The encryption key corresponding to the smart lock 130 is obtained by the network 120 using the calculated value of the characteristic information of the smart lock 130 to encrypt the original network key; the calculated value is calculated by the network 120 on the characteristic information of the smart lock 130 sent by the smart lock 130 get.
  • the network 120 may be a gateway.
  • some embodiments of the present application propose a method 600 for secure communication, which includes the following steps:
  • Step S601 the network obtains the characteristic information of the smart lock.
  • the network may be a gateway, and the smart lock may be the smart lock 130.
  • the smart lock 130 may send characteristic information of the smart lock 130 to the gateway.
  • the characteristic information of the smart lock 130 may be a unique installation code and a MAC address of the smart lock 130.
  • Step S602 The smart lock sends a request to carry the characteristic information of the smart lock to the network.
  • the smart lock 130 may send a request to carry the characteristic information of the smart lock 130 to the gateway.
  • the smart lock 130 may send a network access request carrying the MAC address of the smart lock 130 to the gateway.
  • Step S603 The network encrypts the second key using the first key obtained based on the characteristic information of the smart lock, and sends the encrypted second key to the smart lock.
  • the first key may be a key obtained by calculating the characteristic information of the smart lock 130
  • the second key may be an original network key.
  • the gateway may also assign a network address to the smart lock 130 when sending the encrypted second key to the smart lock 130.
  • the gateway may use the result of processing based on one or more characteristic information of the smart lock 130 as the first key, for example, use a hash algorithm to calculate the hash value of the installation code of the smart lock 130, and use the The hash value is used as the first key to encrypt the original network key.
  • the original network key may be distributed by the gateway or obtained by the gateway from other places.
  • Step S604 The smart lock uses the first key to decrypt the encrypted second key to obtain the second key.
  • the smart lock 130 may use the first key calculated based on the characteristic information of the smart lock 130 to decrypt the encrypted second key received from the gateway to obtain the original network key.
  • the smart lock 130 may use a hash algorithm to calculate the hash value of the installation code of the smart lock 130, and use the hash value as the decryption key (ie, the first key) to decrypt the encrypted second key .
  • the smart lock 130 after the smart lock 130 obtains the corresponding original network key, it can use the original network key as an encryption key to encrypt the communication data sent to the gateway to realize secure communication.
  • FIG. 7 shows an exemplary system architecture diagram that can be applied thereto according to some embodiments of the present application.
  • an embodiment of the present application discloses a system 700 for secure communication, including a gateway 701 and a smart device 702.
  • the gateway 701 and the smart device 702 are connected through wireless communication.
  • the smart device 702 may be an electronic device with a communication function such as a computer, a mobile phone, or a smart door lock.
  • the network may include a gateway 701, and the smart lock may be referred to as a smart device 702.
  • This embodiment illustrates a method for sending the characteristic information of the smart lock through the network, and obtaining it through the network An encryption key, the encryption key being related to the characteristic information.
  • the gateway 701 will send the encrypted network key corresponding to the smart device 702 to the smart device 702, which is the smart device 702 assigns network addresses.
  • the encrypted network key corresponding to the smart device 702 is obtained by encrypting the original network key with the hash value corresponding to the smart device 702.
  • the hash value corresponding to the smart device 702 is obtained by hashing according to the unique installation code information of the smart device 702.
  • the smart device 702 After the smart device 702 receives the encrypted network key, it can perform a hash operation according to its own unique installation code information to obtain the hash value corresponding to the smart device 702, and use the hash value to decrypt the encrypted network key to achieve The network key sent by the gateway 701 is successfully received.
  • the encrypted network key sent by the gateway 701 is obtained by the gateway 701 using the hash value corresponding to the smart device 702 to encrypt the original network key, and the The hash value corresponding to the device 702 is obtained by the gateway 701 performing a hash operation on the specific installation code information of the smart device 702 sent by the smart device 702. Therefore, the only hash value that can decrypt the encrypted network key is the gateway 701 and The smart device 702 knows that it is difficult to capture and crack by a packet grabber, thereby improving the security of the system 700 for secure communication.
  • FIG. 8 shows a schematic flowchart of an embodiment of a method for secure communication according to some embodiments of the present application
  • an embodiment of the present application discloses a method for secure communication, including the following steps:
  • the network may include a gateway, and the smart lock may be called a smart device.
  • This embodiment illustrates a method for obtaining an encryption key through the network, and the encryption key is related to the characteristic information. .
  • S801 The smart device sends a network access request to the gateway.
  • the network access request of the smart device carries the address information of the smart device.
  • the address information of the smart device refers to the Media Access Control (MAC) information of the smart device.
  • the MAC address is used to describe the location of the smart device in the network.
  • the MAC address is unique, that is, the MAC address of each smart device is unique in the network, and the MAC address can be regarded as the identification of the smart device.
  • the network access request sent by the smart device to the gateway through the wireless channel carries the address information of the smart device, so that the gateway can query whether the smart device has the permission to access the network based on the address information of the smart device. Perform operations such as assigning network addresses to smart devices.
  • step S801 can also be regarded as the gateway receiving the network access request of the smart device.
  • the gateway sends the encrypted network key corresponding to the smart device to the smart device according to the address information of the smart device, and assigns a network address to the smart device.
  • the encrypted network key corresponding to the smart device is obtained by the gateway using the hash value corresponding to the smart device to encrypt the original network key.
  • the hash value corresponding to the smart device is obtained by the gateway performing a hash operation on the specific installation code information sent by the smart device.
  • the original network key refers to the key that has not been encrypted.
  • the original network key is generated by the gateway.
  • the gateway sends the original network key to the smart device, and the smart device uses the original network key to encrypt the data packets that need to be sent. ,
  • the gateway then uses the original network key to decrypt, so as to realize the secure communication between the gateway and the smart device.
  • the encrypted network key corresponding to the smart device is obtained by the gateway according to the address information sent by the smart device and the specific installation code information of the smart device after the gateway and the smart device are bound. Since the installation code information of the smart device is unique information of the smart device, the hash value calculated from the installation code information is also unique information of the smart device. The hash value corresponding to the smart device can only be obtained by the smart device itself by hashing its own installation code information. Therefore, in the network, the hash value corresponding to the smart device is only known by the gateway and the smart device itself , Other devices in the network do not know the hash value corresponding to the smart device.
  • the gateway judges whether the smart device has access to the network, that is, whether the MAC address of the smart device is legal and whether it has been bound with the gateway. If the smart device and the gateway have been bound, the gateway can obtain the encrypted network key corresponding to the smart device according to the address information of the smart device, and send the encrypted network key corresponding to the smart device to the smart device and send it to the The smart device assigns network addresses.
  • the encrypted network key obtained by encrypting the hash value corresponding to the smart device only the smart device and the gateway have a decryptable hash value, so when the gateway executes step S802, the encrypted network key corresponding to the smart device is If caught by the packet capture device during transmission, the encrypted network key cannot be cracked because there is no hash value required for decryption, thereby improving the security of communication between the gateway and the smart device.
  • step S802 can also be regarded as the smart device receiving the encrypted network key corresponding to the smart device sent by the gateway and obtaining the network address assigned by the gateway.
  • FIG. 9 shows a schematic flowchart of another embodiment of a method for secure communication according to some embodiments of the present application.
  • the network may include a gateway, and the smart lock may be referred to as a smart device.
  • This embodiment illustrates the feature information used to send the smart lock through the network.
  • the method for the gateway to obtain the encrypted network key corresponding to the smart device includes:
  • the smart device sends the unique installation code information of the smart device and the address information of the smart device to the gateway.
  • the specific installation code information of the smart device refers to an installation code information with a certain number of bytes stored inside the smart device.
  • the installation code information is unique, that is, the installation code information stored in each smart device is unique and not repeated.
  • the installation code information of the smart device is not known to smart devices in other networks except for the smart device itself.
  • the installation code information can be written into the internal storage by the manufacturer when the device leaves the factory.
  • the installation code information can be generated by the device according to specific conditions when the user uses it for the first time, for example, using the device serial number or MAC address, combined with the current time, using a preset algorithm, and written into the smart device storage.
  • an implementation manner of performing step S901 includes:
  • the smart device sends the unique installation code information of the smart device and the address information of the smart device to the gateway in an out-of-band manner.
  • the gateway's access to the network is usually closed. After receiving the smart device-specific installation code information and smart device address information sent by the smart device, or obtain it in other ways (for example, from the manufacturer's database) the new smart device-specific After the installation code information and the address information of the smart device, the network access permission can be opened, and then the smart device can send a network access request to join the network.
  • the out-of-band mode refers to the use of different protocols and different communication channels to achieve communication instead of the established communication channels of the smart device and the gateway.
  • the smart device uses the out-of-band method to transmit the unique installation code information of the smart device and the address information of the smart device to the gateway, which will be more secure, and the interference during the transmission will be lower.
  • information such as the installation code information and MAC address of the smart device may be pre-stored in a database, for example, a database of a manufacturer, and the gateway may periodically send a request to obtain the installation code of a new smart device from the database. And the address information of the smart device.
  • the gateway's network access permission is usually closed, after receiving the smart device-specific installation code information and the smart device address information sent by the smart device, or obtaining it in other ways (for example, from the manufacturer database) After the unique installation code information of the new smart device and the address information of the smart device, the network access authority can be opened, and then the smart device can send a network access request to join the network.
  • the gateway performs a hash operation on the unique installation code information of the smart device to obtain a hash value corresponding to the smart device.
  • the gateway may also perform calculations on other characteristics unique to the smart device to obtain calculated values.
  • Other features may include, but are not limited to, one of the feature information such as the MAC address of the smart device, installation code information, and serial number, or a combination of multiple features.
  • other calculation algorithms may also be used for the operations performed.
  • Other arithmetic algorithms may include but are not limited to DES algorithm, 3DES algorithm, etc.
  • the hash value corresponding to the smart device refers to the unique hash value of the smart device. Since the installation code information of the smart device is unique information of the smart device, the hash value calculated from the installation code information is also unique information of the smart device. The hash value corresponding to the smart device can only be obtained by the smart device itself by hashing its own installation code information. Therefore, in the network, the hash value corresponding to the smart device is only known by the gateway and the smart device itself , Other devices in the network do not know the hash value corresponding to the smart device.
  • the hash value is calculated from the installation code information of the smart device through a hash algorithm (that is, a hash operation).
  • the hash algorithm is obtained before calculating the hash value.
  • the hash algorithm may be preset when the smart device leaves the factory and stored in the built-in storage of the smart device.
  • the hash algorithm can be updated by connecting to a gateway or server, and the transmission can be performed in an out-of-band or other manner. The update can be understood as updating the parameters in the hash algorithm to prevent possible leakage risks caused by long-term use of the same parameters.
  • the hash algorithm may be pre-stored in the internal storage of the gateway, or it may be obtained through external storage and written into the internal storage.
  • the gateway may update the hash algorithm through the server.
  • step S902 can be executed after step S801 shown in FIG. 8 is executed, that is, the gateway can pre-store the association relationship between the address information of the smart device and the installation code information of the smart device until the smart device executes step S801 , And then check whether there is specific installation code information of the associated smart device according to the address information of the smart device, and if it exists, it has the network access authority. After the gateway finds the installation code information of the smart device, it then executes step S902.
  • Step S902 can also be executed before step S801 shown in FIG. 8 is executed, that is, after the hash value corresponding to the smart device is calculated, the gateway can store the address information of the smart device and the association relationship corresponding to the smart device until the smart device After the device executes step S801, the gateway can check whether there is a hash value of the associated smart device according to the address information of the smart device, if it exists, it has the network access right, and then executes step S903.
  • the gateway uses the hash value corresponding to the smart device to encrypt the original network key to obtain an encrypted network key corresponding to the smart device.
  • the original network key is the key that is uniquely corresponding to the smart device and used for network secure transmission.
  • the gateway may generate the original network key after receiving the network access request of the smart device (that is, after step S801).
  • the original network key is obtained using an algorithm based on one or more characteristic information of the smart device.
  • the characteristic information may include, but is not limited to, the installation code of the smart device, the MAC address, or a combination of both.
  • the original network key can be obtained by using an algorithm based on the characteristic information of the smart device in combination with other conditions such as the current time.
  • the algorithm may be the binary sum of the smart device installation code and the MAC address.
  • step S903 since the hash value corresponding to the smart device obtained in step S902 is not known to other smart devices in the network, when step S903 is performed, the hash value corresponding to the smart device is used to perform the calculation on the original network key.
  • the encrypted network key corresponding to the smart device obtained after encryption can only be decrypted by the corresponding smart device, thus reducing the possibility of malicious cracking of the encrypted network key.
  • the gateway uses the hash value corresponding to the smart device to encrypt the original network key
  • there are many encryption algorithms that can be used either asymmetric encryption algorithm or symmetric encryption algorithm can be used. , Does not affect the implementation of the embodiments of this application.
  • the encryption algorithm is obtained before encrypting/decrypting the original network key.
  • the encryption algorithm may be preset when the smart device leaves the factory, and stored in the built-in storage of the smart device.
  • the encryption algorithm can be updated by connecting to a gateway or a server, and the transmission can be performed in an out-of-band mode or other modes.
  • the encryption algorithm may be pre-stored in the internal storage of the gateway, or may be obtained through external storage and written into the internal storage.
  • the gateway may update the encryption algorithm through the server.
  • step S903 can be performed before step S801 shown in FIG. 8, that is, after the gateway calculates the encrypted network key corresponding to the smart device, the address information of the smart device and the encrypted network key corresponding to the smart device Stored until the smart device executes step S801 shown in FIG. 8, the encrypted network key corresponding to the smart device is found according to the address information of the smart device.
  • Step S903 can also be executed after step S801 shown in FIG. 8 is executed, that is, after the smart device sends a network access request, the hash value corresponding to the smart device is found according to the pre-stored association relationship, and step S903 is executed again.
  • step S901 is executed before step S801 shown in FIG. 8 is executed, and step S902 and step S903 can be It is executed before S801, and it may be executed after step S801.
  • the smart device uses the hash value corresponding to the smart device to decrypt the encrypted network key corresponding to the smart device to obtain the original network key.
  • the hash value corresponding to the smart device is obtained by the smart device using the unique installation code information of the smart device to perform a hash operation. It should be noted that the hash value corresponding to the smart device can be calculated before step S803 is executed, or it can be calculated after the smart device receives the encrypted network key corresponding to the smart device. None of the manners affects the implementation of the embodiments of the present application.
  • the smart device may perform a hash operation on one or more characteristics unique to the smart device to obtain a hash value. See the related description of step S902.
  • the smart device After the smart device obtains the original network key, it can use the original network key to encrypt the data packet to be transmitted, and send the encrypted data packet to the gateway. The gateway then uses the original network key for decryption to complete the smart device and Wireless communication between gateways.
  • the smart device after the smart device performs step S803, it can also publish the association relationship between its own address information and the assigned network address to the network, so that other devices in the network know the association relationship between the smart device.
  • the gateway cannot be used due to special reasons, the smart device can send a network access request to other devices in the network that are similar to the gateway. Since the smart device has announced the relationship between its own address information and the assigned network address to the entire network, Other gateway-like devices in the network can know that the smart device has access to the network, and therefore can pass the network access request of the smart device.
  • the gateway may close the network access right after receiving the association relationship between the address information of the smart device and the allocated network address published by the smart device.
  • FIG. 10 shows a schematic flowchart of another embodiment of a method for secure communication according to some embodiments of the present application.
  • the network may include a gateway, and the smart lock may be referred to as a smart device.
  • the method for secure communication shown in FIG. 7 may further include:
  • the gateway detects the packet loss rate when communicating with the smart device and the environmental noise floor of the environment where the gateway is located according to a preset time period.
  • the gateway periodically detects the packet loss rate when communicating with the smart device and the environmental noise floor of the environment where the gateway is located according to a preset time period.
  • the time period can be set manually. The shorter the time period, the more frequent the detection and the higher the security of the communication between the gateway and the smart device.
  • the gateway After the gateway is powered on and started, it will first determine whether a network has been created. If the network has been created, the created network will be turned on, and step S1001 will be executed. Before performing step S801 shown in FIG. 8, the smart device scans the channel, and after finding the channel where the gateway is located, sends a network access request to the gateway, that is, performs step S801. Among them, the network access request refers to a request to join the network created by the gateway. If the gateway has not created a network, it scans the channels, selects an idle channel to join and creates the network, and executes step S1001 after the network is created.
  • the gateway determines whether the packet loss rate is greater than a first threshold and determines whether the environmental noise floor is greater than a second threshold.
  • step S1003 is executed. If the gateway determines that the packet loss rate is less than the first threshold and the environmental noise floor is greater than the second threshold, it continues to perform step S1001.
  • step S1003 If the packet loss rate is greater than the first threshold, it proves that the current communication process between the gateway and the smart device is not secure, and there may be data captured by the packet capturer in the channel, so the gateway will perform step S1003. If the environmental noise floor is greater than the second threshold, it means that the current environment where the gateway is located is highly disruptive and affects the communication between the gateway and the smart device. Therefore, step S1003 also needs to be performed.
  • the gateway switches to other idle channels to create a network, and sends channel switching notification information to the smart device.
  • the switching channel notification information carries identification information of the switched channel. After the smart device receives the switching channel notification information, it will find the gateway according to the identification information of the switched channel, and then send a network access request to the gateway again. If the smart device does not receive the switching channel notification information, it will scan the channels again, find the channel where the gateway is located, and send the switching channel notification information to the gateway.
  • step S1001 After the gateway switches to other channels, it will return to step S1001 to ensure communication security.
  • the communication security between the gateway and the smart device is further improved.
  • the gateway receives a network access request; wherein, the network access request carries the address information of the smart device.
  • the gateway sends the encrypted network key corresponding to the smart device to the smart device and assigns a network address to the smart device.
  • the encrypted network key corresponding to the smart device is obtained by the gateway using the hash value corresponding to the smart device to encrypt the original network key; the hash value corresponding to the smart device is unique to the smart device sent by the gateway to the smart device
  • the installation code information is obtained by hashing.
  • the gateway uses the hash value corresponding to the smart device to encrypt the original network key, and the hash value corresponding to the smart device is obtained through the hash calculation of the unique installation code information of the smart device, the encryption The decryption method of the network key can only be known by the corresponding smart device. Since other smart devices do not know the installation code information of the smart device, the encrypted network key cannot be captured and cracked by the packet capturer, thereby improving the wireless communication safety.
  • Fig. 11 shows a schematic flowchart of another embodiment of a method for secure communication according to some embodiments of the present application.
  • the network may include a gateway, and the smart lock may be referred to as a smart device.
  • This embodiment illustrates the method for sending the characteristic information of the smart lock through the network, and obtaining the encrypted secret through the network.
  • the encryption key is related to the characteristic information, and the characteristic information sent through the network is encrypted based on the encryption key.
  • the embodiment of the present application discloses another method for secure communication, which specifically includes the following steps:
  • the smart device sends a network access request to the gateway.
  • step S1101 The execution principle and process of step S1101 are the same as that of step S801 shown in FIG.
  • the gateway determines whether the smart device has network access rights according to the address information of the smart device.
  • judging whether the smart device has network access rights refers to judging whether the MAC address of the smart device is legal. If the smart device and the gateway have been bound, the MAC address of the smart device is legal and has access to the network. Further, if the smart device and the gateway have been bound, then the smart device has sent address information and unique installation code information to the gateway, and the gateway can obtain the encrypted network key corresponding to the smart device according to the address information of the smart device , And send the encrypted network key corresponding to the smart device to the smart device, and assign a network address to the smart device.
  • step S1103 is executed.
  • the gateway sends the encrypted network key corresponding to the smart device to the smart device according to the address information of the smart device, and assigns a network address to the smart device.
  • step S1103 are the same as that of step S802 shown in FIG. 8, which can be referred to, and will not be repeated here.
  • the smart device decrypts the encrypted network key corresponding to the smart device by using the hash value corresponding to the smart device to obtain the original network key.
  • step S1104 is the same as that of step S803 shown in FIG.
  • the smart device sends the application layer key request information to the gateway.
  • the smart device may use a separate key to encrypt each type of network data. For example, use key one to encrypt network layer data, and use key two to encrypt application layer data, where key one is different from key two.
  • the smart device may request multiple keys from the gateway, for example, request key one and key two from the gateway.
  • the data packet transmitted by the smart device to the gateway contains both network layer data and application layer data.
  • the application layer key is a key used to encrypt application layer data.
  • the original network key obtained in step S1104 is the key used to encrypt network layer data.
  • the smart device In order to further improve the security in the wireless communication process, the smart device not only uses the original network key for encryption, but also requests the application layer key for encryption from the gateway.
  • the network layer data and the application layer data may be encrypted using a network layer key or an application layer key in a unified manner.
  • the application layer key can also be pre-configured in the gateway and smart devices. That is, the same application layer key is stored in the gateway and the smart device, so there is no need to request the gateway to issue the application layer key.
  • the network key stored in the gateway and the smart device can be updated by sending a request to the server, or the server can actively issue and update it.
  • step S1105 can also be regarded as the gateway receiving the request information for the application layer key sent by the smart device.
  • the gateway allocates the original application layer key unique to the smart device to the smart device.
  • the original application layer key unique to the smart device is unique and is a key exclusive to the smart device.
  • the original application layer key unique to the smart device can be a key randomly generated by the gateway after receiving the application layer key request of the smart device, or it can be the original application layer key that the gateway has generated in advance, and is After the request to the smart device, select one of the keys that has not been assigned to other smart devices as the original application layer key unique to the smart device.
  • the original application layer key refers to a key that has not been encrypted.
  • the gateway uses the hash value corresponding to the smart device to encrypt the original application layer key unique to the smart device to obtain an encrypted application layer key corresponding to the smart device.
  • the hash value mentioned in step S1107 and corresponding to the smart device is the same value as the hash value used to encrypt the original network key in step S1103, which is performed through the unique installation code information of the smart device. Greek calculations.
  • the encrypted application layer key corresponding to the smart device can only be decrypted by the hash value corresponding to the smart device .
  • the hash value corresponding to the smart device is calculated by the unique installation code of the smart device, so only the corresponding smart device and gateway know it.
  • the gateway sends an encrypted application layer key corresponding to the smart device to the smart device.
  • the packet capturer will also be unable to crack because it does not have a hash value corresponding to the smart device.
  • the hash value corresponding to the smart device is calculated based on the specific installation code information of the smart device.
  • the specific installation code information of the smart device will not be disclosed to other smart devices in the network, which reduces the malicious cracking of third-party applications.
  • the probability of the layer key is calculated based on the specific installation code information of the smart device.
  • the smart device uses the hash value corresponding to the smart device to decrypt the encrypted application layer key corresponding to the smart device to obtain the original application layer key unique to the smart device.
  • the hash value corresponding to the smart device can be pre-calculated and stored in the smart device, or it can be calculated after receiving the encrypted application layer key corresponding to the smart device. .
  • the smart device uses the original network key to encrypt the network layer data in the data packet to obtain encrypted network layer data.
  • the data packet that the smart device needs to send to the gateway includes application layer data and network layer data.
  • the smart device encrypts the network layer data in the data packet by using the original network key obtained in step S1104 to obtain encrypted network layer data.
  • the smart device uses the original application layer key unique to the smart device to encrypt the application layer data in the data packet to obtain encrypted application layer data.
  • the smart device uses the original application layer key obtained in step S1109 to encrypt the application layer data in the data packet to obtain an encrypted application layer key.
  • step S1110 and step S1111 does not affect the implementation of the embodiment of the present application. And in step S1110 and step S1111, only one of the steps may be executed, that is, only the network layer data is encrypted, or only the application layer data is encrypted. If both the network layer data and the application layer data in the data packet are encrypted, the probability of the data packet being cracked will be lower, and the security of communication will be improved.
  • the smart device sends an encrypted data packet to the gateway.
  • the encrypted data packet includes encrypted network layer data and encrypted application layer data. Since the encrypted application layer data is encrypted with the original application layer key unique to the smart device, only the corresponding smart device and the gateway have the key, even if the encrypted data packet is captured and the original network key encryption is cracked The network layer data of the smart device will also not be able to completely crack the data packet because there is no original application layer key unique to the smart device, which can further improve the security of the communication between the smart device and the gateway.
  • the gateway uses the original network key and the original application layer key unique to the smart device to decrypt the encrypted data packet.
  • the gateway obtains the data packet sent by the smart device.
  • the data packet includes application layer data and network layer data, and the gateway and the smart device realize wireless communication.
  • the smart device after the smart device sends the application layer key request information to the gateway, what is received is the encrypted application layer key corresponding to the smart device assigned by the gateway.
  • the encrypted application layer key corresponding to the smart device is obtained by the gateway encrypting the original application layer key unique to the smart device through the hash value corresponding to the smart device. Therefore, the smart device can use the hash value corresponding to the smart device to decrypt the encrypted application layer key corresponding to the smart device to obtain the original application layer key unique to the smart device.
  • the smart device uses the original application layer key unique to the smart device to encrypt the application layer data in the data packet, uses the original network key to encrypt the network layer data in the data packet, and sends the encrypted data packet to the gateway. Since the original application layer key is unique to the smart device, even if the network layer data in the encrypted data packet is cracked, it will be impossible to crack the application layer data because there is no original application layer key unique to the smart device. Improve the security of wireless communication.
  • Fig. 12 shows a schematic structural diagram of an embodiment of an apparatus for secure communication according to some embodiments of the present application
  • the network may include a gateway, and the smart lock may be called a smart device.
  • This embodiment illustrates a method for obtaining an encryption key through the network, and the encryption key is related to the characteristic information. , Performing an encryption operation on the characteristic information sent through the network based on the encryption key.
  • the embodiment of the present invention also correspondingly discloses an apparatus 1200 for secure communication, which is applied to a gateway, and the apparatus 1200 for secure communication includes: The first receiving unit 1201 and the first sending unit 1202.
  • the first receiving unit 1201 is configured to receive a network access request sent by a smart device. Among them, the network access request carries the address information of the smart device.
  • the first sending unit 1202 is configured to send the encrypted network key corresponding to the smart device to the smart device according to the address information of the smart device, and assign a network address to the smart device.
  • the encrypted network key corresponding to the smart device is obtained by the gateway using the hash value corresponding to the smart device to encrypt the original network key; the hash value corresponding to the smart device is unique to the smart device sent by the gateway to the smart device
  • the installation code information is obtained by hashing.
  • the apparatus 1200 for secure communication further includes: a second receiving unit, a distribution unit, an encryption unit, and a second sending unit.
  • the second receiving unit is used to receive the application layer key request information sent by the smart device.
  • the distribution unit is used to distribute the original application layer key unique to the smart device to the smart device.
  • the encryption unit is used to encrypt the original application layer key unique to the smart device by using the hash value corresponding to the smart device to obtain the encrypted application layer key corresponding to the smart device.
  • the second sending unit is used to send the encrypted application layer key corresponding to the smart device to the smart device.
  • the apparatus 1200 for secure communication further includes: a third receiving unit and a decrypting unit.
  • the third receiving unit is used to receive encrypted data packets sent by the smart device.
  • the encrypted data packet includes: network layer data encrypted by the original network key and application layer data encrypted by the original application layer key unique to the smart device.
  • the decryption unit is used to decrypt the encrypted data packet using the original network key and the original application layer key unique to the smart device.
  • the apparatus 1200 for secure communication further includes:
  • the first judging unit is used for judging whether the smart device has network access rights according to the address information of the smart device. If the first judging unit determines that the smart device has network access rights, the first sending unit sends the encrypted network key corresponding to the smart device to the smart device according to the address information of the smart device, and assigns a network address to the smart device.
  • the apparatus 1200 for secure communication further includes:
  • the detection unit is used to detect the packet loss rate when communicating with the smart device and the environmental noise floor of the environment where the gateway is located according to a preset time period.
  • the second judgment unit is used to judge whether the packet loss rate is greater than the first threshold and whether the environmental noise floor is greater than the second threshold.
  • the switching unit is configured to switch to another idle channel to create a network if the second determining unit determines that the packet loss rate is greater than the first threshold, and/or the environmental noise floor is greater than the second threshold.
  • the third sending unit is used to send channel switching notification information to the smart device.
  • the switching channel notification information carries identification information of the switched channel.
  • the device 1200 for secure communication may include a processor and a memory.
  • the first receiving unit 1201 and the first sending unit 1202 are all stored as program units in the memory, and the processor executes the above-mentioned stored in the memory. Program unit to realize the corresponding function.
  • the processor may contain a kernel, and the kernel will call the corresponding program unit from the memory.
  • One or more kernels can be set, and the security of communication can be improved by adjusting kernel parameters.
  • the memory may include non-permanent memory in computer-readable media, random access memory (RAM) and/or non-volatile memory, such as read-only memory (ROM) or flash memory (flash RAM), and the memory includes at least one Memory chip.
  • RAM random access memory
  • ROM read-only memory
  • flash RAM flash random access memory
  • the memory may be local storage, or network storage, cloud storage, or other storage connected in a wired or wireless manner.
  • the memory may store the feature information of the smart device such as the installation code and MAC address of the smart device, and the corresponding relationship.
  • the memory may store a hash algorithm, an encryption algorithm, etc.
  • the memory may store the hash value of the characteristic information of the smart device, for example, the hash value of the installation code of the smart device.
  • the memory may store one or more network transmission keys corresponding to the smart device, for example, the original network key, the original application layer key, and so on.
  • the memory may store the network address corresponding to the smart device and the corresponding relationship of other information associated with the storage device. For example, the relationship between smart devices and network transmission keys.
  • the network access request is received through the first receiving unit 1201; wherein, the network access request carries address information of the smart device.
  • the first sending unit 1202 sends the encrypted network key corresponding to the smart device to the smart device according to the address information of the smart device, and assigns a network address to the smart device.
  • the encrypted network key corresponding to the smart device is obtained by the gateway using the hash value corresponding to the smart device to encrypt the original network key; the hash value corresponding to the smart device is unique to the smart device sent by the gateway to the smart device
  • the installation code information is obtained by hashing.
  • the gateway uses the hash value corresponding to the smart device to encrypt the original network key, and the hash value corresponding to the smart device is obtained through the hash calculation of the unique installation code information of the smart device, the encryption The decryption method of the network key can only be known by the corresponding smart device. Since other smart devices do not know the installation code information of the smart device, they cannot capture and crack the encrypted network key with a packet capturer, thereby improving the security of wireless communication .
  • Fig. 13 shows a schematic structural diagram of another embodiment of an apparatus for secure communication according to some embodiments of the present application.
  • the network may include a gateway, and the smart lock may be called a smart device.
  • This embodiment illustrates a method for obtaining an encryption key through the network, and the encryption key is related to the characteristic information. , Performing an encryption operation on the characteristic information sent through the network based on the encryption key.
  • the embodiment of the present invention also correspondingly discloses an apparatus 1300 for secure communication, which is applied to a smart device, and includes: a first sending unit 1301 The first receiving unit 1302 and the first decrypting unit 1303.
  • the first sending unit 1301 and the first receiving unit 1302 correspond to the communication module 210
  • the first decryption unit 1303 corresponds to the processing module 230.
  • the first sending unit 1301 is configured to send a network access request to the gateway.
  • the network access request carries the address information of the smart device.
  • the first receiving unit 1302 is configured to receive the encrypted network key corresponding to the smart device sent by the gateway and obtain the network address allocated by the gateway. Among them, the encrypted network key corresponding to the smart device is obtained by the gateway using the hash value corresponding to the smart device to encrypt the original network key; the hash value corresponding to the smart device is unique to the smart device sent by the gateway to the smart device.
  • the installation code information is obtained by hashing.
  • the first decryption unit 1303 is configured to decrypt the encrypted network key corresponding to the smart device by using the hash value corresponding to the smart device to obtain the original network key.
  • the apparatus 1300 for secure communication further includes: a second sending unit, a second receiving unit, and a second decryption unit.
  • the second sending unit is used to send application layer key request information to the gateway.
  • the second receiving unit is configured to receive the encrypted application layer key corresponding to the smart device distributed by the gateway.
  • the encrypted application layer key is obtained by the gateway using the hash value corresponding to the smart device to encrypt the original application layer password unique to the smart device.
  • the second decryption unit is configured to use the hash value corresponding to the smart device to decrypt the encrypted application layer key corresponding to the smart device to obtain the original application layer key unique to the smart device.
  • the apparatus 1300 for secure communication further includes: a first encryption unit, a second encryption unit, and a third sending unit.
  • the first encryption unit is used to encrypt the network layer data in the data packet by using the original network key to obtain encrypted network layer data.
  • the second encryption unit is used to encrypt the application layer data in the data packet with the original application layer key unique to the smart device to obtain encrypted application layer data.
  • the third sending unit is used to send encrypted data packets to the gateway.
  • the encrypted data packet includes encrypted network layer data and encrypted application layer data.
  • the device 1300 for secure communication may include a processor and a memory.
  • the first sending unit 1301, the first receiving unit 1302, and the first decryption unit 1303 are all stored in the memory as program units and executed by the processor.
  • the above-mentioned program units stored in the memory implement the corresponding functions.
  • the processor may contain a kernel, and the kernel will call the corresponding program unit from the memory.
  • One or more kernels can be set, and the security of communication can be improved by adjusting kernel parameters.
  • the memory may include non-permanent memory in computer-readable media, random access memory (RAM) and/or non-volatile memory, such as read-only memory (ROM) or flash memory (flash RAM), and the memory includes at least one Memory chip.
  • RAM random access memory
  • ROM read-only memory
  • flash RAM flash random access memory
  • the memory may be local storage, or network storage, cloud storage, or other storage connected in a wired or wireless manner.
  • the memory may store the feature information of the smart device such as the installation code and MAC address of the smart device.
  • the memory may store a hash algorithm, an encryption algorithm, etc.
  • the memory may store the hash value of the characteristic information of the smart device, for example, the hash value of the installation code of the smart device.
  • the memory may store one or more network transmission keys corresponding to the smart device, for example, the original network key, the original application layer key, and so on.
  • the memory may store the network address corresponding to the gateway and the corresponding relationship of other information associated with the gateway, for example, the relationship between the gateway and the network transmission key.
  • the first sending unit 1301 sends a network access request to the gateway.
  • the network access request carries the address information of the smart device.
  • the first receiving unit 1302 receives the encrypted network key corresponding to the smart device sent by the gateway, and obtains the network address assigned by the gateway.
  • the encrypted network key corresponding to the smart device is obtained by the gateway using the hash value corresponding to the smart device to encrypt the original network key; the hash value corresponding to the smart device is unique to the smart device sent by the gateway to the smart device
  • the installation code information is obtained by hashing.
  • the first decryption unit 1303 uses the hash value corresponding to the smart device to decrypt the encrypted network key corresponding to the smart device to obtain the original network key. Since the encrypted network key corresponding to the smart device is obtained by the gateway using the hash value corresponding to the smart device to encrypt the original network key, the hash value corresponding to the smart device is unique to the smart device sent by the gateway to the smart device.
  • the installation code information is obtained by the hash operation, so the decryption method of the encrypted network key can only be known by the corresponding smart device, and other smart devices cannot be captured and cracked by the packet grabber because they do not know the installation code information of the smart device Encrypt the network key, thereby improving the security of wireless communication.
  • the processing module 230 can establish a binding relationship between the control device and the smart lock 130, and can realize the control of the smart lock 130 through the control device.
  • the relevant identification of the smart lock 130 can be scanned by the control device, and the device information of the smart lock 130 can be read and sent to the processing module 230.
  • the processing module 230 determines whether the binding is allowed If binding is allowed, the binding information is sent to the control device and the smart lock. After the binding is successful, the control device and the smart lock will interact according to the binding information, which improves the efficiency of data transmission, shortens the binding time, and improves User experience.
  • FIG. 14 is an exemplary flowchart of a smart lock control method 1400 according to some embodiments of the present application.
  • the smart lock can establish a binding relationship with the control device in the following ways:
  • the smart lock 130 receives the binding request sent by the control device through the processing module 230 to establish a binding relationship with the control device.
  • the binding request is an application for establishing a corresponding relationship between devices, for example, an application for establishing a corresponding relationship between a smart lock and a control device.
  • the binding relationship may be stored in the smart lock 130, and it may be that the control device directly sends a binding request to the smart lock.
  • the control device directly sends a binding request to the smart lock.
  • control device information of the control device based on the binding request The processing module 230 may obtain the control device information of the control device based on the binding request.
  • the control device information is the information of the control device itself, for example, the device identification of the control device, operating system information, and device hardware information.
  • the processor in the smart lock 130 may obtain the control device information directly based on the binding request. For specific embodiments, refer to step S1504 in FIG. 15.
  • the processing module 230 can obtain the device information of the smart lock 130 and the control device information of the control device based on the control device information sent by the control device, perform security verification, and send alarm information if it fails.
  • the security verification may be to confirm whether the device information is in the permission list, for example, whether the device information of the smart lock and/or the control device is in the information list of the devices that are allowed to connect.
  • the processor in the smart lock may directly perform security verification based on the information of the control device, and if it fails, send alarm information to the control device. For specific embodiments, refer to steps S1505 and 1506 in FIG. 15.
  • Fig. 15 shows an exemplary flowchart of a method for device binding according to some embodiments of the present application.
  • the smart lock may also be the smart lock 130.
  • the control device may scan the device to be bound; send a device information acquisition request to the scanned device to be bound (the smart lock 130); obtain the return of the smart lock 130 Device information of the smart lock; the control device sends a device binding request to the server 110, and the pending device binding request carries the device information of the smart lock 130 and the device information of the control device; the smart lock 130 and the control device receive server 110
  • the binding information returned after binding the smart lock 130 and the control device, the smart lock 130 and the control device respectively obtain at least part of the information related to the other party in the binding information.
  • some embodiments of the present application propose a method 1500 for device binding, which includes the following steps:
  • Step S1501 The first device scans the device to be bound.
  • the first device may be a control device, and the device to be bound may be a device similar to the smart lock 130 or the like.
  • the control device may scan surrounding devices to obtain the device to be bound.
  • Step S1502 The second device receives the information acquisition request sent by the first device, and sends the device information of the second device.
  • the second device may be the smart lock 130
  • the information acquisition request may be a request for acquiring second device information
  • the device information may be the device identification of the second device, operating system information, device hardware information, and the like.
  • the control device may send a device information acquisition request to the smart lock 130 to obtain the device identification, operating system information, and device hardware information of the smart lock 130 returned by the smart lock 130.
  • Step S1503 The third device receives the binding request sent by the first device.
  • the third device may be the server 110, and the binding request may be a device binding request, which is a request to establish a corresponding relationship between the first device and the second device.
  • the device binding request carries the device information of the first device and the device information of the second device.
  • the device information of the first device may be the device identification of the first device, operating system information, device hardware information, identity information of a user who uses the first application program of the first device, and the like.
  • the control device may send a device binding request to the server 110, and the device binding request carries the device information of the smart lock 130 and the device information of the control device.
  • Step S1504 The third device obtains the device information of the first device and the device information of the second device.
  • the device information may obtain the device information of the first device and the device information of the second device based on the binding request.
  • the server 110 may obtain the device information of the smart lock 130 and the device information of the control device based on the device binding request.
  • Step S1505 The third device verifies the device information and establishes a binding relationship. Specifically, the third device may check whether the device information of the first device meets the binding requirement, and if it is satisfied, establish a corresponding binding relationship between the first device and the second device. In some embodiments, the server 110 can check whether the device identification in the device information of the smart lock 130 has been saved and the binding relationship has not been established. If the verification is passed, the device information of the smart lock 130 can be combined with the device information of the control device. Save correspondingly to bind the smart lock 130 with the control device.
  • Step S1506 The first device and the second device receive the binding information returned by the third device.
  • the binding information may be information including device information of the bound device.
  • the binding information is returned by the third device after binding the first device and the second device, and the smart lock 130 and the control device respectively obtain at least part of the information related to the other party in the binding information.
  • the server 110 may send part of the binding information to the smart lock 130 and the control device after establishing the binding relationship between the smart lock 130 and the control device, and part of the binding information received by the smart lock 130 may be It includes information related to the control device, and the binding information received by the control device may include information related to the smart lock 130.
  • Fig. 16 shows a device binding method according to some embodiments of the present application
  • the user terminal may include a control device.
  • This embodiment describes the method for receiving a binding request; based on the binding request, the control device information of the control device is obtained; based on the control device information, in the security verification When it fails, an alarm message is sent to the control device.
  • the device binding method of the present invention can bind multiple different devices, for example, bind a user terminal with an electronic lock.
  • binding a keyboard device with a controllable smart device where the controllable smart device may include any one of a camera, an electrical switch, a TV, an air conditioner, an electronic lock, and other devices.
  • the two devices that need to be bound can communicate wirelessly via communication methods such as Bluetooth and Wi-Fi, or perform wired communication via communication methods such as USB.
  • the distance between the two devices that need to be bound may be less than a certain preset distance, that is, the distance between the two devices that need to be bound is relatively close.
  • the device that needs to be bound can communicate wirelessly through Near Field Communication (NFC), ZigBee network, etc., for example, a mobile phone uses NFC to bind to an electronic lock, and an IC card to bind to an electronic lock.
  • NFC Near Field Communication
  • ZigBee network ZigBee network
  • the devices that need to be bound can communicate through other wired networks.
  • These wired networks can transmit data through transmission media such as coaxial cables, twisted pairs, and optical fibers.
  • the wired networks can be local area networks (LAN) or metropolitan areas. Network (MAN), Wide Area Network (WAN), Internet (Internet), etc.
  • LAN local area networks
  • MAN Network
  • WAN Wide Area Network
  • Internet Internet
  • the keyboard device and the TV can be connected to the same home LAN with a twisted pair cable, and communicate through the LAN.
  • the method shown in FIG. 16 of the embodiment of the present invention can be applied to a user terminal, and the user terminal may include, but is not limited to, a desktop computer, a notebook computer, a smart phone, a personal digital assistant (Personal Digital Assistant, PDA), a tablet computer, and a handheld game Machines, smart glasses, smart watches, wearable devices, virtual display devices, display enhancement devices, etc.
  • an application program for controlling the electronic lock may be installed in the above-mentioned user terminal. The user can register on the application that controls the electronic lock through the mobile phone number, user name, email address, third-party application account, etc., thereby becoming a legitimate user.
  • the user can upload the user's identity information (such as name, mobile phone number, ID number, etc.) to the server through an application program that controls the electronic lock.
  • the server may be a device for providing electronic lock management services, and the server may pre-store the device information of each electronic lock that has been sold or produced, such as the device identification of the electronic lock.
  • the device identification may be Product serial number (SN, Serial Number).
  • the server may be a single server or a server group.
  • the server group may be centralized or distributed (for example, the server may be a distributed system).
  • the server may be local or remote. For example, the server can access the device to be bound and/or the user terminal through the network.
  • the server may be directly connected to the device to be bound and/or the user terminal to access the stored information and/or data.
  • the server can be implemented on a cloud platform.
  • the cloud platform may include private cloud, public cloud, hybrid cloud, community cloud, distributed cloud, inter-cloud, multiple clouds, etc., or any combination of the foregoing examples.
  • the server may be implemented on a computing device.
  • the server may be implemented on a mobile device.
  • the server can be a node in the blockchain network, and the user identity information and/or device information can be stored in the blockchain ledger.
  • the user can select any node in the blockchain network as the server to save The user’s identity information.
  • the electronic lock may be provided with a Bluetooth module, a Wi-Fi module, a USB interface, etc., and the electronic lock may perform wireless or wired communication with the user terminal through the Bluetooth, Wi-Fi, and USB interfaces.
  • the electronic lock can also communicate with the user terminal through other wireless networks or wired networks, which can be referred to the foregoing content, which will not be repeated here.
  • Fig. 17 shows a schematic diagram of a keyboard device according to some embodiments of the present application.
  • the device to be bound may be an electronic lock or a keyboard device.
  • the keyboard device corresponds to the input/output module 260.
  • the keyboard device in this embodiment may be an independent electronic device
  • FIG. 17 is an optional schematic diagram of the keyboard device.
  • the keyboard device in this embodiment may include multiple physical keys, and the user can input the unlock password by pressing the physical keys.
  • the keyboard device in this embodiment may also include other buttons, such as the unlock button and the lock button as shown in FIG. 17.
  • the keyboard device can be provided with a Bluetooth module, Wi-Fi module, USB interface, etc., and the keyboard device can perform wireless or wired communication with the user terminal and the electronic lock through the Bluetooth, Wi-Fi, and USB interface.
  • the keyboard device may further include a fingerprint input device, a voice input device, and so on. The user can unlock the lock by entering the unlocking password through a fingerprint input device, a voice input device, etc.
  • the keys of the keyboard device may be virtual keys, for example, a virtual keyboard displayed on the screen, which can be clicked and input by means of a mouse, a pointing stick, a touchpad, a trackball, or the like.
  • the screen may be a touch screen, and input may be made through touch.
  • the keyboard device may also be a projection keyboard, the keys of the keyboard device may be projection buttons, and the user can input by clicking the projection buttons.
  • the keyboard device may also include other biological feature collection devices such as an iris collection device or a facial recognition device that records a person's facial structure. The user can enter the unlock code by iris scanning or face recognition to unlock.
  • other biological feature collection devices such as an iris collection device or a facial recognition device that records a person's facial structure. The user can enter the unlock code by iris scanning or face recognition to unlock.
  • the keyboard device can be integrated in the electronic lock as a part of the electronic lock.
  • step S1600 may scan the device to be bound by receiving a broadcast message sent by the device to be bound. If a broadcast message sent by a device to be bound is received, it may be determined that the device to be bound is scanned.
  • a device to be bound can automatically send a broadcast message after power on, or when a button of a device to be bound is pressed a predetermined number of times or is pressed for no less than a preset time after power on Send a broadcast message. It is understandable that, in order to receive the broadcast message sent by the device to be bound, the user terminal may be located around the device to be bound, so that the surrounding devices to be bound can be scanned.
  • the device to be bound may receive an external instruction to trigger the sending of a broadcast message, for example, receive an instruction from the server to start the binding process.
  • the aforementioned broadcast message may carry the device identifier of the device to be bound.
  • the user terminal can establish a communication connection with the device to be bound through a broadcast message so as to interact with the device to be bound through the communication connection. Further, the user terminal may send the device identification of the device to be bound to the server so that the server can determine whether the device to be bound can be bound.
  • the server may store the device identification of each device that has been bound. When the device identification of the device to be bound sent by the user terminal is the device identification of the device that has been bound, the server may return to the user terminal Error message to inform the user terminal that the device to be bound cannot be bound.
  • the server may return an error message to the user terminal to inform the user that the device to be bound is unavailable.
  • the user terminal after the user terminal establishes a communication connection with the device to be bound, it can send an administrator password query request to the device to be bound.
  • the device to be bound returns a response of "the administrator password already exists" , It means that the device to be bound has been bound with other devices, and the user terminal cannot be bound with the device to be bound.
  • the device to be bound returns a response of "the administrator password does not exist"
  • it means that the device to be bound is not bound with other devices, and the user terminal can be bound with the device to be bound.
  • the device to be bound can be bound to multiple user terminals.
  • the user terminal sends a binding request, it can be bound to the device to be bound as long as it does not exceed the preset limit on the number of devices to be bound.
  • Establish a binding relationship for the specified device For example, an electronic lock can establish a binding relationship with the mobile phones of multiple family members in the same family.
  • one or more of the user terminals may have administrator authority, and the user terminal with administrator authority may manage the devices bound to the device to be bound.
  • Other user terminals For example, a user terminal with administrator authority can delete other user terminals bound to the device to be bound.
  • S1700 Send a device information acquisition request to the scanned device to be bound
  • the device information of the device to be bound may include at least one of the following information:
  • the above-mentioned device identification may include: product serial number, device name, or device type.
  • the above operating system information may be the type and version number of the operating system, and the operating system may be an embedded operating system.
  • the foregoing device hardware information may include at least one of the CPU model, GPU model, memory size, motherboard model and other information in the device.
  • the device identification may also include the device MAC address, IPv6 address, and so on.
  • this embodiment can encrypt the above-mentioned device information of the device to be bound by a variety of encryption methods, one of which is encryption using a challenge code.
  • the challenge code refers to a set of encrypted passwords generated following the handshake authentication protocol (CHAP).
  • a preset encryption algorithm may be used to encrypt the above device information of the device to be bound, where the encryption key may be a network key previously obtained from the server.
  • the device information of the first device may include at least one of the following information:
  • Device identification operating system information, device hardware information, identity information of the user who uses the first application program of the first device, etc.
  • the first application program may be an application program installed on the user terminal that can control the electronic lock, and the first device may be the user terminal.
  • the identity information of the user who uses the first application of the first device may be one or more of a mobile phone number, a user name, an email address, an account of a third-party application, and a password.
  • the user's identity information may be one or more biological characteristics of the user, for example, one or more of fingerprints, voiceprints, iris, facial structure and other biological characteristics.
  • the user's identity information may be an audio file that reads a specified text. In some embodiments, the user's identity information may be the user's real-name authentication information.
  • the present invention can bind the user terminal with the electronic lock, or bind the electronic lock with the keyboard device.
  • the device that executes the method shown in FIG. 16 of the present invention and/or the two bound devices may first send a binding information acquisition request to the server so that the server returns the binding information.
  • the server after the server binds the device to be bound with the first device, it can also send to the device (such as the user terminal) that executes the method shown in FIG. 16 of the present invention and/or the two bound devices Notification message of successful binding.
  • the user terminal can issue an unlocking password to the electronic lock after receiving a notification message of successful binding, and the electronic lock saves the unlocking password.
  • the electronic lock can perform processing such as unlocking according to the unlocking code. For example: a user terminal sends an unlocking instruction to an electronic lock, and the unlocking instruction carries the first password.
  • the electronic lock compares the first password with the stored unlocking password, and when the two are the same, the unlocking process is executed, otherwise the unlocking process is not executed.
  • the user terminal can also send the administrator password to the electronic lock to manage the electronic lock through the administrator password, such as updating the unlocking password and managing the validity period of the unlocking password.
  • the user terminal can also upload the administrator password to the server, which is not limited in the present invention.
  • the user terminal may issue multiple unlocking codes with different unlocking permissions to the electronic lock, and the electronic lock stores each unlocking password according to the unlocking permissions.
  • the aforementioned unlocking authority can be divided into: all-weather unlocking authority, single unlocking authority, and timing multiple unlocking authority.
  • the user terminal may also perform time synchronization processing with the electronic lock to synchronize the time of the two devices and prevent problems caused by time inconsistency.
  • the process of the time synchronization processing is as follows: the user terminal sends the time of the machine to the electronic lock, so that the electronic lock starts counting the received time as the current time. It is understandable that since electronic locks are often powered by batteries, when the battery is dead, the time in the electronic lock will often stop, and the time in the user terminal will be updated regularly or irregularly. Therefore, the user terminal of this embodiment will The time of this machine is sent to the electronic lock to ensure that the time in the electronic lock is correct and effective.
  • the user terminal may also obtain the power information of the electronic lock.
  • the user terminal may also issue an unlocking password to the electronic lock; the user terminal receives a notification that the unlocking password returned by the electronic lock has become effective.
  • the user can enter a new unlocking password in the user terminal, and then the user terminal will issue the unlocking password to the electronic lock.
  • the electronic lock After receiving the unlocking password, the electronic lock saves it and adds a valid identification to it, and then the electronic lock returns to the user terminal Notification that the unlock code has taken effect.
  • the user terminal may also query the log records of the electronic lock, and the log records may include unlocking history records, user operation records, abnormal information, etc.
  • the unlocking history record may include unlocking time, unlocking method (for example, password, fingerprint, Bluetooth key, etc.), user information (for example, user name for unlocking operation, user authority, etc.).
  • the user operation record may include the instruction sent by the user, the time when the instruction was sent, the operation result (for example, success or failure), and the like.
  • the abnormal information may include abnormal unlocking operations (for example, the number of consecutively inputting incorrect passwords exceeds a limit value), abnormal switching operations, abnormal information about electronic lock programs, and the like.
  • the devices involved in the method shown in FIG. 16 of the present invention may communicate through Bluetooth protocol 4.2 technology.
  • the devices involved in the method shown in FIG. 16 of the present invention may also communicate with other versions of Bluetooth protocol technology, near field communication (NFC) technology, and ZigBee network.
  • Bluetooth protocol technology near field communication (NFC) technology
  • ZigBee network ZigBee network
  • the device binding method provided by the present invention can scan the device to be bound; send a device information acquisition request to the scanned device to be bound; obtain the device information of the device to be bound returned by the device to be bound Sending a device binding request to the server, the device binding request carrying the device information of the device to be bound and the device information of the first device; receiving the server to connect the device to be bound with the The binding information returned after the first device is bound enables the device to be bound and the first device to obtain at least part of the information in the binding information respectively.
  • the device binding technology provided by the present invention can quickly and efficiently bind devices.
  • Fig. 18 shows a flowchart of another device binding method according to some embodiments of the present application.
  • the user terminal may include a control device.
  • This embodiment illustrates that based on the control device information, alarm information is sent to the control device when the security verification fails.
  • step S2000 Can specifically include:
  • the server may bind the electronic lock with the user terminal by storing the device information of the electronic lock corresponding to the device information of the user terminal.
  • the server when it saves device information, it can calculate part or all of the device information using a preset algorithm, and then save the calculation result and part of the device information, so that only necessary information can be stored, thereby saving storage space.
  • verifying information It is also more efficient. For example, a hash value is obtained by calculating all device information of the electronic lock using a hash algorithm, and the hash value and the serial number of the electronic lock are stored.
  • a hash value is obtained by calculating all device information of the user terminal using a hash algorithm, and the hash value, mobile phone number, and user name are stored.
  • the partial information corresponding to the electronic lock includes: device information of the electronic lock or a calculation result obtained by calculating the device information of the electronic lock using a preset algorithm.
  • the preset algorithm in the present invention may be a hash algorithm or an encryption algorithm.
  • part of the information corresponding to the user terminal includes: device information of the user terminal, a calculation result obtained by calculating the device information of the user terminal using a preset algorithm, and the first application using the user terminal At least one of the identity information of the user of the program and the calculation result obtained by calculating the identity information of the user who uses the first application program of the user terminal by using a preset algorithm.
  • Figure 19 shows a flowchart of another device binding method according to some embodiments of the present application.
  • step S2000 Can specifically include:
  • the server may bind the electronic lock and the keyboard device by correspondingly saving the device information of the electronic lock and the device information of the keyboard device.
  • the server when the server saves the device information, it may calculate part or all of the device information using a preset algorithm, and then save the calculation result and part of the device information. For details, see the related content of FIG. 16, which will not be repeated here.
  • the partial information corresponding to the keyboard device includes: device information of the keyboard device or a calculation result obtained by calculating the device information of the keyboard device using a preset algorithm.
  • the partial information corresponding to the electronic lock includes: device information of the electronic lock or a calculation result obtained by calculating the device information of the electronic lock using a preset algorithm.
  • this embodiment may first obtain part of the information corresponding to the keyboard device from the binding information and send it to the electronic lock, and then obtain the information corresponding to the electronic lock from the binding information. Part of the information is sent to the keyboard device.
  • Another embodiment of the present invention may first obtain part of the information corresponding to the electronic lock from the binding information and send it to the keyboard device, and then obtain the information corresponding to the keyboard device from the binding information Part of the information is sent to the electronic lock.
  • part of the information corresponding to the electronic lock and part of the information corresponding to the keyboard device can also be obtained from the binding information, and then sent to the keyboard device and the electronic lock at the same time.
  • the present invention is not limited here.
  • the present invention may also send complete binding information to the device to be bound and the first device. ⁇ The first equipment.
  • Fig. 20 shows a flowchart of another device binding method according to some embodiments of the present application.
  • this other device binding method may include:
  • step S1601 is a specific execution manner of step S1600 shown in FIG. 16, and step S1701 is a specific execution manner of step S1700 shown in FIG. 16.
  • Step S1810 is a specific implementation of step S1800 shown in FIG. 19.
  • Step S1910 is a specific implementation of step S1900 shown in FIG. 19.
  • the server may pre-store the device identification of multiple legal keyboard devices, so that after the device identification of a certain keyboard device is obtained by decryption, it is determined whether the obtained device identification of the keyboard device is one of the pre-stored device identifications. If yes, determine that the keyboard device is a legitimate device, otherwise determine that the keyboard device is an illegal device.
  • the server can only bind legal devices. For illegal devices, the server can return error messages.
  • Step S2031 is a specific implementation of step S2030 shown in FIG. 19.
  • the present invention can effectively improve the security in the device binding process.
  • the methods shown in the above embodiments of the present invention are device binding methods applied to user terminals.
  • the present invention also provides a method for binding The device binding method of the device.
  • FIG. 21 shows a flowchart of another device binding method according to some embodiments of the present application.
  • the user terminal may include a control device.
  • This embodiment describes the method for receiving a binding request; based on the binding request, the control device information of the control device is obtained; based on the control device information, in the security verification When it fails, an alarm message is sent to the control device.
  • a device binding method provided by an embodiment of the present invention is applied to a device to be bound, and the method includes:
  • S2120 Send the device information of the device to be bound to the user terminal so that the user terminal sends a device binding request to the server, where the device binding request carries the device of the device to be bound Information and device information of the first device;
  • the first device is a user terminal
  • the device to be bound is an electronic lock
  • at least part of the binding information obtained by the electronic lock may be: the binding information and the user Part of the information corresponding to the terminal.
  • At least part of the binding information obtained by the user terminal may be: part of the information corresponding to the electronic lock in the binding information.
  • the first device is an electronic lock
  • the device to be bound is a keyboard device
  • at least part of the binding information obtained by the electronic lock may be: the binding information and the keyboard Part of the information corresponding to the device.
  • At least part of the binding information obtained by the keyboard device may be: part of the information corresponding to the electronic lock in the binding information.
  • Fig. 22 shows a flowchart of another device binding method according to some embodiments of the present application.
  • both the server and the keyboard device are stored in advance Having the device identification of the keyboard device and the preset key, the method may include:
  • the keyboard device uses the preset key to encrypt its device identification to obtain an encrypted device identification, and sends the encrypted device identification to the user terminal so that the user terminal binds the device
  • the request is sent to the server so that the server uses the stored preset key to decrypt the encrypted device identification to obtain the device identification of the keyboard device and determine whether the obtained device identification of the keyboard device is One of the pre-stored device identifiers, wherein the device binding request carries the encrypted device identifier and the device information of the electronic lock;
  • step S2121 is a specific implementation manner of step S2120 shown in FIG. 21.
  • the server binds the device to be bound with the first device and returns At least part of the information in the binding information, wherein the first device obtains at least part of the information in the binding information.
  • step S2131 is a specific implementation manner of step S2130 shown in FIG. 21.
  • FIG. 21 and FIG. 22 of the present invention have been described in the embodiments shown in FIG. 16, FIG. 18, FIG. 19, and FIG. 20, and will not be repeated.
  • the device binding method of the present invention may be executed first to bind the user terminal and the electronic lock, and then the device binding method of the present invention may be executed to bind the keyboard device and the electronic lock.
  • the present invention does not limit the sequence of binding between the aforementioned devices.
  • FIG. 23 shows a flowchart of another device binding method according to some embodiments of the present application.
  • the user terminal may include a control device.
  • This embodiment describes the method for receiving a binding request; based on the binding request, the control device information of the control device is obtained; based on the control device information, in the security verification When it fails, an alarm message is sent to the control device.
  • the binding process in this specific embodiment may include:
  • the electronic lock continues to send broadcast messages after being powered on.
  • the server returns a notification of successful registration to the user terminal.
  • S2303 The user terminal scans the electronic lock by receiving the broadcast message.
  • the user terminal sends an administrator password query request to the scanned electronic lock.
  • the electronic lock returns a response of "the administrator password does not exist" to the user terminal.
  • S2306 The user terminal sends a device information acquisition request to the electronic lock.
  • the electronic lock returns the device information of the electronic lock to the user terminal.
  • the user terminal sends a device binding request to the server.
  • the device binding request carries the device information of the user terminal and the device information of the electronic lock.
  • the server binds the user terminal to the electronic lock.
  • the electronic lock sends a binding information return request to the user terminal.
  • the user terminal sends a binding information return request to the server.
  • the server returns binding information to the user terminal.
  • the user terminal obtains and saves part of the information corresponding to the electronic lock from the binding information.
  • the user terminal obtains part of the information corresponding to the user terminal from the binding information and sends it to the electronic lock.
  • the server returns a binding success notification to the user terminal.
  • S2316 The user terminal returns a notification of successful binding to the electronic lock.
  • S2317 The user terminal and the electronic lock perform time synchronization processing.
  • S2318 The user terminal sends a request for obtaining the power of the electronic lock to the electronic lock.
  • the electronic lock sends the power of the electronic lock to the user terminal.
  • the user terminal issues an unlocking code to the electronic lock.
  • the electronic lock returns a notification to the user terminal that the unlocking password has become effective.
  • Fig. 24 shows a flowchart of another device binding method according to some embodiments of the present application.
  • each step in FIG. 24 can be executed after any one of steps S2316 to S2322 in FIG. 23.
  • the SN and preset key of the keyboard device can be written in the server and the keyboard device in advance.
  • the binding process in this specific embodiment may include:
  • the user terminal scans the keyboard device by receiving the broadcast message.
  • the user terminal and the keyboard device are paired through Bluetooth, and a communication connection is established between the user terminal and the keyboard device.
  • S2326 The user terminal sends a device information acquisition request to the scanned keyboard device.
  • the keyboard device uses the preset key to encrypt its device identification and then returns the encrypted device identification to the user terminal.
  • the user terminal sends a device binding request to the server.
  • the device binding request carries the encrypted device information of the keyboard device and the device information of the electronic lock.
  • the server uses the stored preset key to decrypt the encrypted device identification to obtain the device identification of the keyboard device.
  • the server determines whether the obtained device identifier of the keyboard device is one of the pre-stored device identifiers.
  • the server binds the keyboard device to the electronic lock and executes the subsequent steps.
  • the server returns binding information to the user terminal.
  • the user terminal obtains part of the information corresponding to the electronic lock from the binding information and sends it to the keyboard device.
  • the keyboard device saves part of the information corresponding to the electronic lock.
  • S2336 The keyboard device returns a response that the binding information has been received to the user terminal.
  • S2337 The user terminal disconnects the communication connection with the keyboard device.
  • the user terminal establishes a communication connection with the electronic lock.
  • the user terminal obtains part of the information corresponding to the keyboard device from the binding information and sends it to the electronic lock.
  • the electronic lock saves part of the information corresponding to the keyboard device.
  • the electronic lock returns a response that the binding information has been received.
  • the user terminal sends a binding success notification to the server.
  • FIG. 25 shows a schematic structural diagram of a user equipment according to some embodiments of the present application.
  • the user terminal may include a control device.
  • This embodiment describes the method for receiving a binding request; based on the binding request, the control device information of the control device is obtained; based on the control device information, in the security verification When it fails, an alarm message is sent to the control device.
  • the present invention also provides a user terminal.
  • the user terminal may include: a device scanning unit 2501, a first request The sending unit 2502, the first information obtaining unit 2503, the binding request unit 2504, and the information receiving unit 2505.
  • the first request sending unit 2502, the first information obtaining unit 2503, the binding request unit 2504, and the information receiving unit 2505 correspond to the communication module 210.
  • the device scanning unit 2501 corresponds to the control module 240.
  • the device scanning unit 2501 is configured to scan the device to be bound
  • the first request sending unit 2502 is configured to send a device information acquisition request to the scanned device to be bound;
  • the first information obtaining unit 2503 is configured to obtain the device information of the device to be bound returned by the device to be bound;
  • the binding request unit 2504 is configured to send a device binding request to a server, where the device binding request carries the device information of the device to be bound and the device information of the first device;
  • the information receiving unit 2505 is configured to receive binding information returned by the server after binding the device to be bound with the first device, so that the device to be bound and the first device are at least Part of the information in the binding information is obtained.
  • the first device may be a user terminal
  • the device to be bound may be an electronic lock
  • the information receiving unit 2505 may be specifically configured to: receive that the server associates the electronic lock with the user terminal
  • the binding information returned after binding obtains and saves part of the information corresponding to the electronic lock from the binding information; obtains the partial information corresponding to the user terminal from the binding information and sends it to The electronic lock.
  • the first device may be an electronic lock
  • the device to be bound may be a keyboard device
  • the information receiving unit 2505 may be specifically configured to: receive that the server connects the keyboard device to the electronic lock For the binding information returned after binding, obtain part of the information corresponding to the keyboard device from the binding information and send it to the electronic lock; obtain the part corresponding to the electronic lock from the binding information Information and sent to the keyboard device.
  • the server and the keyboard device may both pre-store the device identification and preset key of the keyboard device
  • the first information obtaining unit 2503 may be specifically configured to: obtain the keyboard The encrypted device identification returned by the device after encrypting its device identification using the preset key.
  • the binding request unit 2504 may be specifically configured to send a device binding request to a server, so that the server uses the stored preset key to decrypt the encrypted device identification to obtain the keyboard device And determine whether the obtained device ID of the keyboard device is one of the pre-stored device IDs, and the device binding request carries the encrypted device ID and the device information of the electronic lock.
  • the information receiving unit 2505 may be specifically configured to: receive the connection between the keyboard device and the electronic lock when the server determines that the obtained device identifier of the keyboard device is one of the pre-stored device identifiers.
  • the binding information returned after binding enables the keyboard device and the electronic lock to obtain at least part of the binding information respectively.
  • Fig. 26 shows a schematic structural diagram of a device to be bound according to some embodiments of the present application.
  • the user terminal may include a control device.
  • This embodiment describes the method for receiving a binding request; based on the binding request, the control device information of the control device is obtained; based on the control device information, in the security verification When it fails, an alarm message is sent to the control device.
  • the present invention also provides a device to be bound.
  • the device to be bound may include: a broadcast sending unit 2601 , A second request sending unit 2602 and a second information obtaining unit 2603.
  • the broadcast sending unit 2601, the second request sending unit 2602, and the second information obtaining unit 2603 correspond to the communication module 210.
  • the broadcast sending unit 2601 is configured to send a broadcast message and obtain a device information acquisition request returned by the user terminal after receiving the broadcast message;
  • the second request sending unit 2602 is configured to send the device information of the device to be bound to the user terminal so that the user terminal sends a device binding request to the server, and the device binding request carries There is the device information of the device to be bound and the device information of the first device;
  • the second information obtaining unit 2603 is configured to obtain at least part of the binding information returned by the server after binding the device to be bound with the first device.
  • the first device is a user terminal
  • the device to be bound is an electronic lock
  • at least part of the binding information obtained by the electronic lock is: the binding information and the user terminal Corresponding part of the information
  • at least part of the binding information obtained by the user terminal is: part of the binding information corresponding to the electronic lock.
  • the first device is an electronic lock
  • the device to be bound is a keyboard device
  • at least part of the binding information obtained by the electronic lock is: the binding information and the keyboard device Corresponding part of information
  • at least part of the binding information obtained by the keyboard device is: part of the binding information corresponding to the electronic lock.
  • the server and the keyboard device both pre-store the device identification of the keyboard device and a preset key
  • the second request sending unit 2602 is specifically configured to: use the preset password.
  • the key encrypts its device identification to obtain an encrypted device identification, and sends the encrypted device identification to the user terminal so that the user terminal sends the device binding request to the server, so that the server uses the storage
  • the preset key decrypts the encrypted device identification to obtain the device identification of the keyboard device and determines whether the obtained device identification of the keyboard device is one of the pre-stored device identifications, wherein
  • the device binding request carries the encrypted device identifier and the device information of the electronic lock.
  • the second information obtaining unit 2603 is specifically configured to: in the case where the server determines that the obtained device identifier of the keyboard device is one of the pre-stored device identifiers, the server transfers the device to be bound At least part of the binding information returned after binding with the first device.
  • the present invention also provides a user terminal, which may include: a processor, a memory, and a device stored in the memory and running on the processor.
  • Program the processor implements the following steps when executing the program:
  • the device binding request carries the device information of the device to be bound and the device information of the first device
  • the first device is a user terminal
  • the device to be bound is an electronic lock
  • the receiving binding information returned after the server binds the device to be bound with the first device Enabling the device to be bound and the first device to obtain at least part of the binding information respectively includes:
  • Part of the information corresponding to the user terminal is obtained from the binding information and sent to the electronic lock.
  • the first device is an electronic lock
  • the device to be bound is a keyboard device
  • the receiving binding information returned after the server binds the device to be bound with the first device Enabling the device to be bound and the first device to obtain at least part of the binding information respectively includes:
  • Part of the information corresponding to the electronic lock is obtained from the binding information and sent to the keyboard device.
  • the present invention also provides a device to be bound, which may include: a processor, a memory, and a device stored on the memory and on the processor
  • the running program, the processor implements the following steps when executing the program:
  • the device information of the device to be bound is sent to the user terminal so that the user terminal sends a device binding request to the server, and the device binding request carries the device information of the device to be bound and Device information of the first device;
  • the first device is a user terminal
  • the device to be bound is an electronic lock
  • at least part of the binding information obtained by the electronic lock is: the binding information and the user terminal Corresponding part of the information
  • at least part of the binding information obtained by the user terminal is: part of the binding information corresponding to the electronic lock.
  • the first device is an electronic lock
  • the device to be bound is a keyboard device
  • at least part of the binding information obtained by the electronic lock is: the binding information and the keyboard device Corresponding part of information
  • at least part of the binding information obtained by the keyboard device is: part of the binding information corresponding to the electronic lock.
  • the keyboard device can be integrated into the electronic lock, as a part of the electronic lock, a binding relationship has been established between the two in advance, and the user can directly perform safe input through the keyboard device on the electronic lock.
  • the electronic lock can be directly bound to the user terminal, and does not need to be bound to the keyboard device.
  • the user terminal and the device to be bound both include a processor and a memory.
  • the device scanning unit, the first request sending unit, the first information obtaining unit, the binding request unit, the information receiving unit, the broadcast sending unit, and the second request sending unit are described above.
  • the unit, the second information obtaining unit, etc. are all stored in the memory as a program unit, and the above-mentioned program unit stored in the memory is executed by the processor to realize the corresponding function.
  • the processor contains the kernel, which calls the corresponding program unit from the memory.
  • the kernel can set one or more, and realize device binding by adjusting kernel parameters.
  • the memory may include non-permanent memory in computer-readable media, random access memory (RAM) and/or non-volatile memory, such as read-only memory (ROM) or flash memory (flash RAM), and the memory includes at least one Memory chip.
  • RAM random access memory
  • ROM read-only memory
  • flash RAM flash random access memory
  • the embodiment of the present invention provides a storage medium on which a program is stored, and when the program is executed by a processor, the device binding method is implemented.
  • the embodiment of the present invention provides a processor, the processor is used to run a program, wherein the device binding method is executed when the program is running.
  • the embodiment of the present invention provides a device.
  • the device includes a processor, a memory, and a program stored on the memory and running on the processor, and the processor implements the following steps when the program is executed:
  • the device information of the device to be bound is sent to the user terminal so that the user terminal sends a device binding request to the server, and the device binding request carries the device information of the device to be bound and Device information of the first device;
  • the embodiment of the present invention provides another device.
  • the device includes a processor, a memory, and a program that is stored on the memory and can run on the processor.
  • the processor executes the program, the following steps are implemented:
  • the device binding request carries the device information of the device to be bound and the device information of the first device
  • the devices in this article can be servers, PCs, PADs, mobile phones, etc.
  • This application also provides a computer program product, which when executed on a data processing device, is suitable for executing a program that initializes the following method steps:
  • the device binding request carries the device information of the device to be bound and the device information of the first device
  • This application also provides another computer program product, which when executed on a data processing device, is suitable for executing a program that initializes the following method steps:
  • the device information of the device to be bound is sent to the user terminal so that the user terminal sends a device binding request to the server, and the device binding request carries the device information of the device to be bound and Device information of the first device;
  • the security module 220 decrypts at least part of the encrypted operation input, and performs security verification with the security control information, so as to realize the management of corresponding operations on the smart lock.
  • the input/output module 260 receives user operation input, and the operation input may include operation instructions and/or operation information.
  • the operation input can be encrypted or partially encrypted, for example, the operation information in the operation input can be encrypted.
  • the security module 220 may decrypt at least part of the encrypted operation input to obtain the decrypted operation input, and perform security verification on the decrypted operation input and the security control information. If the relevant information matches the security control information, the security verification is passed.
  • the control module 240 performs corresponding control operations (such as unlocking operations) to ensure the safety of the operation input during the transmission process.
  • corresponding control operations such as unlocking operations
  • an anti-hijacking flag may be associated, and based on corresponding control operations, the security module 220 may send information about the user being hijacked to the server via the network 120.
  • the server after receiving the information about the user being hijacked, the server sends alarm information to the designated device (for example, the binding device of the smart lock, or the device used by the public security department), which improves the user’s personal and Property safety.
  • Fig. 27 is an exemplary flowchart of a method for controlling a smart lock according to some embodiments of the present application.
  • Step 2701 Encrypt at least part of the content of the operation input.
  • the input/output module 260 obtains operation input, and the operation input may include operation instructions and/or operation information.
  • the operation input can be encrypted or partially encrypted, for example, the operation information in the operation input can be encrypted.
  • Operation input can also be referred to as input information.
  • the input information refers to information input by the user, such as a password.
  • the input information (for example, password) may be encrypted using a preset encryption algorithm.
  • the encryption algorithm can be a conventional or customized encryption algorithm, for example, the AES-ECB-128 encryption algorithm.
  • the password involved in this application can be a character password, such as numbers, words, symbols, and any combination of them, or a voice password, or biometric information, such as fingerprint information, facial images, and iris.
  • Information DNA (Deoxyribonucleic acid, deoxyribonucleic acid), etc.
  • the voice password may be voice information input by the user.
  • the voice password may include the language information input by the user and the user's voiceprint characteristics.
  • the user may use the voice information of the phrase "Open Ampang" as the voice password, which includes both "Ampangs”.
  • the language information of this phrase also includes the voiceprint characteristics of the user reading this phrase.
  • the input information may include biometric information (fingerprints, palm prints, finger veins, voice, iris, retina, human face), password information, user ID information, etc., or any combination thereof.
  • User ID information may refer to information used to indicate user identity and/or authority, and user ID information may be stored in a magnetic card.
  • the input/output module 260 may include a fingerprint collector, a palmprint collector, a finger vein collector, a sound collector (microphone), an iris collector, a facial information collector (for example, a camera), and an electronic tag. Readers, information input devices, etc., or any combination thereof.
  • the security module 220 may include multiple identification units (not shown in FIG.
  • different identification units may include different input information collection sub-units.
  • different input information collection subunits can obtain different types of biometric information.
  • the fingerprint collector is used to obtain the user's fingerprint characteristic information
  • the iris collector is used to obtain the user's iris characteristic information
  • the electronic tag reader is used to obtain user ID information (information in the magnetic card)
  • the user can input password information through the information input device .
  • the input mode of the password information may include key input, handwriting input or voice input.
  • the smart lock can obtain encrypted input information (or called operation input) through one or more of the following methods:
  • the smart lock can obtain encrypted input information from the control device via the network 120.
  • the smart lock can also obtain encrypted input information through the input/input module 260.
  • the encrypted input information may include operation instructions.
  • the smart lock can perform corresponding security operations based on the operation instructions included in the input information, such as verifying passwords, unlocking operations, locking operations, and sending information. Refer to step 2702 for the method of security verification.
  • Step 2702 Perform security verification based on the at least partially encrypted operation input and security control information. This step may be performed by the security module 220.
  • the security control information may be information used to verify the identity of the user.
  • the information used to verify the identity of the user may be pre-stored password information and/or biometric information of the user. For details, refer to related descriptions of FIG. 29 and FIG. 30.
  • the information used to verify the identity of the user may also be the second verification information. For a detailed description of the second verification information, refer to the description of FIG. 35.
  • the smart lock can decrypt the encrypted input information (or referred to as operation input) and then perform a plain text comparison with the security control information. In some embodiments, the smart lock can also perform a cipher text comparison between the encrypted input information and the security control information, which is not limited in this application.
  • the smart lock can perform corresponding security operations based on the operation instructions included in the input information, such as verifying passwords, unlocking operations, locking operations, and sending information.
  • the smart lock can perform abnormal processing, such as sending an alarm message, etc., see the description in Figure 28 for details.
  • the operating instructions refer to computer instructions that can instruct specific operations, such as unlocking instructions, locking instructions, information viewing instructions, and information updating instructions.
  • the information check instruction can check the password information stored in the smart lock. This information may include the content of the password, the date when the password was set, the date when the password expires, the number of passwords, and the identity of the password owner.
  • the information update instruction can add, delete and/or change the above information.
  • the operation instruction may include password information.
  • the operation instruction can be input locally in the smart lock 130.
  • the operation instruction may also be remotely triggered by wireless communication or remotely connected input device (for example, keyPAD) or user terminal 140 (for example, mobile phone).
  • the input device for example, keyPAD
  • the user terminal 140 for example, a mobile phone
  • the input device e.g., keyPAD
  • the user terminal 140 e.g., mobile phone
  • the input device e.g., keyPAD
  • the user terminal 140 e.g., mobile phone
  • the above-mentioned operation instruction may include a pre-set associated information mark.
  • the smart lock may send information related to the associated information mark to the server, so that the server can execute Operate accordingly.
  • the associated information tag refers to a tag associated with preset status information.
  • the associated information mark may be an anti-hijacking mark, which is used to send information to the server that prompts the user to be hijacked, and then the server may send alarm information to the second designated device.
  • the second designated device may be, for example, a user device used by a family member of a person to whom the smart lock belongs, or may be a device used by a relevant public security department, which is not specifically limited here.
  • the user can send a distress signal without the hijacker's knowledge, which can prevent the hijacker from harming the user.
  • the associated information tag may also be a safe home-going tag, which is used to send the information that the user has gone home safely to the server, and then the server may send the information to the second designated device.
  • users can send reminders to their family members at the same time they go home, indicating that they have gone home safely and no longer need to use their mobile phones to send messages.
  • the smart lock can use the camera device to take pictures and/or video of the surrounding environment of the smart lock when performing the safety operation corresponding to the operation instruction, and then Upload to the server.
  • the camera device can take photos and/or videos of the surrounding environment of the smart lock when performing a security operation corresponding to the operation instruction, so as to obtain the hijacker's image information and Hijack the situation and upload it to the server via the network. Then the server can send the hijacker's image information and hijacking situation to the second designated device (for example, the device used by the public security department).
  • the second designated device for example, the device used by the public security department.
  • the user of the second designated device for example, the public security department
  • the public security department can identify and record the identity of the hijacker and judge the hijacking situation in order to take further measures.
  • the camera device can take pictures and/or videos of the user and upload them to the server via the network.
  • the server can then send the user's image information to the second designated device (for example, the device of the user's family member), so that the user's family member can confirm that the user has gone home safely.
  • the smart lock can send the status information, alarm information, etc. after security verification to the control device or server via the network.
  • the control module 240 can perform an unlocking verification operation on the smart lock 130, and control the smart lock to perform the locking operation after confirming that the unlocking is successful, or control the smart lock to record and report the unlocking failure information after confirming the unlocking failure.
  • the unlocking operation monitoring and locking operation management of the smart lock 130 refer to the description of FIG. 43 for details.
  • Operation input may include operation instructions and operation information, and "operation instructions" may be referred to as "control instructions.”
  • the operation input may include encrypted input information.
  • the security control information may include a pre-stored password.
  • the method can be applied to the smart lock, and the method can include the following steps:
  • the input information includes an encrypted password encrypted by a preset encryption algorithm, decrypt the encrypted password to obtain the decrypted password;
  • the method for controlling the smart lock of the present application can not only ensure the security of the password during the transmission process, but also identify the identity of the person, and solve the problem of identity recognition security. Only after the authentication information is passed, the smart lock will perform the corresponding Safe operation.
  • the foregoing operation instructions may be various instructions related to the smart lock, such as unlocking instructions, locking instructions, information updating instructions, information viewing instructions, etc., which are not specifically limited herein.
  • information update may refer to addition, deletion, and/or modification of information (such as password information, etc.).
  • the above-mentioned operation instruction may be an operation instruction sent by the user through the control device, or an operation instruction input by the user on the smart lock, for example, an operation instruction triggered by entering biometric information, which is not specifically limited here.
  • the password involved in this application can be a character password, such as numbers, characters, symbols, and any combination thereof, or a voice password, or biometric information, such as fingerprint information, face images, iris information, DNA (Deoxyribonucleic acid, deoxyribonucleic acid), etc., are not specifically limited here.
  • the encryption process of the preset encryption algorithm may include: encrypting the password to be encrypted based on the encrypted password; and if the input information is received from the control device and the input information includes the encrypted password, the smart lock is receiving the input Before information, the encrypted password generation request sent by the control device can be received, and then based on the encrypted password generation request, the encrypted password is randomly generated, and then the randomly generated encrypted password is returned to the control device, so that the control device is based on the randomly generated encryption
  • the password encrypts the password to be encrypted to obtain the encrypted password. It should be noted that by transmitting the encrypted encrypted password, the security of the password during the transmission process can be ensured, the password can be prevented from being leaked, and the personal safety and property safety of the person to whom the smart lock belongs can be ensured.
  • the smart lock can decrypt the encrypted password based on the randomly generated encrypted password.
  • the encryption process of the preset encryption algorithm further includes: encrypting the encrypted password with a secret key to obtain the encrypted password; and encrypting the password to be encrypted with the encrypted password.
  • the smart lock can use the following decryption method after receiving the above-mentioned input information: Use the secret key to encrypt the above-mentioned randomly generated encrypted password to obtain the encrypted password
  • Encrypted password Use the encrypted password to decrypt the encrypted password, so as to decrypt the encrypted password to obtain the decrypted password. It should be noted that by adopting this encryption method, the security of the password during transmission can be further improved.
  • the smart lock can also perform identity authentication based on the decrypted password; and after performing the security operation corresponding to the operation instruction , The smart lock can also send the security operation execution result and identity authentication result to the first designated device.
  • the smart lock may locally store biometric information and personnel information corresponding to the biometric information, and the personnel information may include, but is not limited to, personal information such as the name of the person, for example.
  • the smart lock can find the biometric information that matches the decrypted password locally, and use the personal information corresponding to the biometric information in advance as the identity authentication result.
  • the first designated device may be, for example, a control device that sends the foregoing operation instruction, or may be a device indicated by a preset device identifier, which is not specifically limited here.
  • the operation instruction may include a pre-set associated information mark. Then, when the security operation corresponding to the operation instruction is performed, the smart lock may send information related to the associated information mark to the server, so that the server executes the corresponding information mark. operating.
  • the associated information mark may be an anti-hijacking mark.
  • the smart lock may send information to the server to prompt the user to be hijacked, so that the server can send a second Specify the device to send alarm information.
  • the camera device can take photos and/or videos of the surrounding environment of the smart lock when the security operation corresponding to the operation instruction is performed, so as to obtain the hijacker’s information.
  • the image information and the hijacking situation are uploaded to the server via the network.
  • the server can send the hijacker's image information and hijacking situation to the second designated device (for example, the device used by the public security department).
  • the user of the second designated device for example, the public security department
  • the user of the second designated device for example, the public security department
  • the alarm information may be text information or voice information, etc., which is not specifically limited here.
  • the solution provided by this implementation mode can solve the risk of harm to the hijacked person when calling the police. Since the alarm is not sent directly by the device, but in the background, the hijacker on the scene does not know, reducing the risk of injury to the hijacked person.
  • the anti-hijacking can have different levels, which increases the way for users to select the alarm, which is more convenient and flexible to use, and also increases the safety of users.
  • the camera device when the operation instruction includes a safe home mark, when a safe operation corresponding to the operation instruction is performed, the camera device can take pictures and/or videos of the user and upload them to the server via the network. The server can then send the user's image information to the second designated device (for example, the device of the user's family member), so that the user's family member can confirm that the user has gone home safely.
  • the second designated device for example, the device of the user's family member
  • FIG. 29 shows a schematic diagram of an application scenario for controlling a smart lock provided by an embodiment of the present application.
  • the encrypted password as the challenge code as an example for description.
  • the challenge code refers to a set of encrypted passwords generated following the handshake authentication protocol (CHAP), which is used to ensure that the user's real password is not leaked during the transmission process.
  • CHAP handshake authentication protocol
  • the following authentication process can be used: (1) The user sends via the APP (Application)/keypad (keyboard) on the control device Get the challenge code instruction to the smart lock; (2) After the smart lock receives the challenge code instruction, it returns a random number Random of 16Bytes (bytes) to the control device; (3) The control device uses the 16Bytes secret key to use AES-ECB for Random -128 Encryptor performs encryption and generates a 16Bytes xor_key (exclusive OR keyword-an algorithm logic).
  • APP Application
  • keypad keyboard
  • the control device uses xor_key to encrypt the password (OpenLock CMD) used for unlocking, obtains the cipher text (Encrypted CMD), and sends the cipher text to the smart lock; (4) After the smart lock receives the cipher text, it uses the secret key and steps (2) The returned Random performs AES-ECB-128 encryption operation to obtain xor_key. Then the ciphertext is decrypted using xor_key to obtain the plaintext, that is, the above-mentioned password for unlocking; (5) If the decrypted plaintext matches the pre-stored password, the smart lock can perform the unlocking operation.
  • the smart lock selects the corresponding key to decrypt the data according to the received blekey_id (which can be understood as the identity information of the unlocker), determines whether the decrypted command belongs to the blekey_id, and if so, executes the authority of the corresponding key and operating. Distinguish permissions by blekey_id, distinguish the identities of administrators and ordinary personnel, different identities have different permissions, that is, different operations.
  • the function of xor_key is to realize the encryption of the transmitted communication instruction; the principle of xor_key is to use the secret key to encrypt the challenge code by AES-ECB-128 to obtain xor_kev.
  • the biometric information may be information collected by the smart lock using the biometric information collection module contained therein.
  • fingerprint information is taken as an example for description.
  • Fingerprint recognition due to the uniqueness of biological fingerprints, can directly exclude illegal user identities at the input. Collect and input the user's fingerprint information to the device in advance. When the user opens the door with the fingerprint, only the correct fingerprint can be recognized and passed.
  • the smart lock may include a local database.
  • the user needs to enter fingerprint information in advance so that the fingerprint information is stored in the local database.
  • the smart lock can retrieve the latest fingerprint of the user.
  • the information is compared with the fingerprint information stored in the local database to determine whether there is fingerprint information of the user in the local database. If the fingerprint information is successfully compared, the smart lock can determine that there is the user's fingerprint information in the local database, and determine that the user is a legitimate user, and the smart lock can perform security operations corresponding to the operation instructions triggered when the user enters the fingerprint information (Such as unlock operation, lock operation, information update operation or information acquisition operation, etc.). If the fingerprint information comparison is unsuccessful, the smart lock can determine that there is no fingerprint information of the user in the local database, determine that the user is an illegal user, and take corresponding measures.
  • the smart lock can also send to the server a message for prompting the user to be hijacked in a normal response to the above-mentioned operation instruction. Information, so that the server sends alarm information to the second designated device.
  • the local database of the smart lock stores the information previously entered by the user.
  • at least one piece of password information entered by the user may be stored in the database, and the password information may be a character password (such as a digital password) or biometric information.
  • the database may also store an anti-hijacking mark corresponding to the password information to indicate that the password information belongs to an anti-hijacking password.
  • the database may also store the anti-hijacking level set by the user corresponding to the password information corresponding to the anti-hijacking flag.
  • different levels of anti-hijacking can characterize the severity of different hijacking incidents. The higher the anti-hijacking level, the more serious the hijacking incident can be represented.
  • the device identification corresponding to the anti-hijacking level set by the user may also be stored in the database.
  • the user may not need to set the anti-hijacking level for the password information, and the user can directly set the corresponding device identification for the password information.
  • the device indicated by the device identifier may be a device for receiving alarm information sent by the server.
  • FIG. 31 shows a schematic diagram of the process of the user entering anti-hijacking fingerprint information in advance.
  • the process of the user entering anti-hijacking fingerprint information in advance may include:
  • the user opens the corresponding application on the control device (for example, a smart terminal such as a mobile phone), and clicks the anti-hijacking fingerprint addition item on the application, and the smart terminal sends an instruction to the background server (such as the above server);
  • the control device for example, a smart terminal such as a mobile phone
  • the smart terminal sends an instruction to the background server (such as the above server);
  • the background server After receiving the instruction sent by the smart terminal, the background server sends the corresponding first instruction to the smart lock;
  • the smart lock enters the corresponding fingerprint adding state according to the received first instruction, and returns the fingerprint adding state and steps to the smart terminal through the background server;
  • the smart terminal reminds the user to select the anti-hijacking level corresponding to the fingerprint and the recipient (the person to whom the device for receiving the alarm information sent by the background server belongs). After the user is set, the smart lock will update the user's configuration information Store it in the local database and send the configuration information to the background server;
  • the backend server After the backend server receives the user's configuration information, it will save and associate the corresponding user;
  • the background server sends information to the smart terminal to notify the smart terminal that the entry is complete, and the smart terminal prompts the user that the entry is complete and ready to use.
  • the user can click the delete item on the application management page of the smart terminal.
  • the smart terminal will prompt the user whether to confirm the deletion. If the deletion is confirmed, the smart terminal will send an instruction to the smart lock through the background server to make The smart lock deletes the fingerprint, and the user will be prompted after the deletion is successful.
  • FIG. 32 it shows a schematic structural diagram of a system for controlling a smart lock provided by an embodiment of the present application.
  • smart locks can be called “smart locks”
  • servers can be called “backend servers”
  • user terminals can be called “smart terminals”.
  • the system includes a smart lock 3201, a background server 3202, and a smart terminal 3203.
  • the smart lock 3201 is connected to the background server 3202 in wired or wireless connection
  • the background server 3202 is connected to the smart terminal 3203 in wired or wireless connection.
  • Smart lock 3201 can be used to install on the user's room door (such as room door or bedroom door, etc.), and can also be installed in any other scene where locks need to be installed, for example, it can be installed on a safe or on a car door Wait, there is no restriction here.
  • the smart lock 3201 may be provided with an information entry unit, such as a keyboard for entering a password or a fingerprint entry unit for entering fingerprints, etc., so that it can be used to enter the user's preset information and obtain the user's information for controlling the door lock; 3201 can also be equipped with a storage unit, which can be used to store the entered user preset information; smart lock 3201 can also be equipped with a data processing unit and a communication module (depending on the connection mode with the background server 3202, it can be a wired communication module or a wireless Communication module), which are respectively used to obtain instructions from the background server 3202 and send information to the background server 3202.
  • an information entry unit such as a keyboard for entering a password or a fingerprint entry unit for entering fingerprints, etc.
  • the backend server 3202 may be a physical server or a cloud server, which is not specifically limited here.
  • the backend server 3202 is a cloud server, it is connected to the smart lock 3201 wirelessly, and is used to send instructions to the smart lock 3201 and receive information sent by the smart lock 3201, such as receiving user preset information entered by the smart lock 3201, etc.
  • the back-end server 3202 can also be connected to the smart terminal 3203 in a wireless manner for sending messages to the smart terminal 3203 and receiving instructions sent by the smart terminal 3203.
  • the smart terminal 3203 can be any form of terminal, such as a smart phone, a tablet computer, a notebook computer, or even a desktop computer, etc. There is no restriction here, and it is used to send instructions to the backend server 3202 and receive instructions sent by the backend server 3202. Information, it can also manage the preset information of the database, for example, the preset information can be added or deleted as needed. Taking the smart lock 3201 installed on the door of the house as an example, when the user needs to open the door, he needs to input corresponding information to control the door lock through the smart lock 3201. The type of information to control the door lock can be set as required. For example, the information for controlling the door lock can be the user's fingerprint.
  • the smart lock 3201 is equipped with a fingerprint entry unit.
  • the user places his finger on the surface of the fingerprint entry unit, and the fingerprint entry unit can read the user.
  • the fingerprint information of the user can obtain the information of the user to control the door lock.
  • the information for controlling the door lock can be the user's password.
  • the smart lock 3201 is provided with a keyboard (the keyboard can be a numeric keyboard, a full keyboard containing letters, numbers, etc., or other forms of keyboard)
  • the user enters the password through the keyboard, so that the smart lock 3201 can obtain the user's information about controlling the door lock.
  • the information of the control door lock is matched with the preset information in the database to obtain preset information that matches the information of the control door lock.
  • the door lock control information After obtaining the door lock control information input by the user, the door lock control information needs to be matched with the preset information in the database to confirm the user's identity.
  • the preset information here refers to the user information entered in advance before unlocking.
  • the user information can be the user's fingerprint or password, which can be set as required.
  • the preset information is preset information that needs to be acquired.
  • a response operation associated with the preset information is executed.
  • the purpose of the embodiment of the present application is also to provide a device 3300 for controlling a smart lock.
  • the device 3300 can be applied to a smart lock.
  • the device 3300 includes a receiving module 3301, a decryption module 3302 and an execution module 3303.
  • the device 3300 here corresponds to the device 200 in Figure 2
  • the receiving module 3301 corresponds to the input/output module 260 in Figure 2
  • the decryption module 3302 corresponds to the security module 220 in Figure 2
  • the execution module 3303 corresponds to the control module in Figure 2.
  • 240 corresponds.
  • the receiving module 3301 is used to receive operation information and/or operation instructions; if the operation information includes an encrypted password encrypted by a preset encryption algorithm, the decryption module 3302 decrypts the encrypted password to obtain the decrypted password; The decrypted password matches the pre-stored password, and the execution module 3303 executes the security operation corresponding to the operation instruction.
  • the encryption process of the preset encryption algorithm may include: encrypting the password to be encrypted based on the encrypted password; and if the above operation information is received from the control device, and the above operation information Including the above-mentioned encrypted password, before receiving the above-mentioned operation information, the above-mentioned apparatus 3300 may further include: a first receiving module (not shown in the figure) for receiving an encrypted password generation request sent by the control device; a generating module (not shown in the figure) (Shown) for randomly generating an encrypted password based on the above encrypted password generation request; a first sending module (not shown in the figure), for returning the randomly generated encrypted password to the control device, so that the control device is based on The above-mentioned randomly generated encrypted password encrypts the password to be encrypted to obtain the encrypted password.
  • the decryption module 3302 includes: a decryption sub-module (not shown in the figure) for decrypting the encrypted password based on the randomly generated encrypted password.
  • the encryption process of the above-mentioned preset encryption algorithm further includes: encrypting the encrypted password with a secret key to obtain the encrypted password; using the above-mentioned encrypted password to treat The encrypted password is encrypted; and the decryption submodule is further used to: encrypt the randomly generated encrypted password with a secret key to obtain the encrypted password; and decrypt the encrypted password with the encrypted password .
  • the aforementioned device 3300 further includes: an identity authentication module, configured to perform identity authentication based on the aforementioned decrypted password if the aforementioned decrypted password belongs to biometric information;
  • the second sending module (not shown in the figure) is used to send the execution result of the safety operation and the identity authentication result to the first designated device after the execution module 3303 executes the safety operation corresponding to the above operation instruction.
  • the above-mentioned device 3300 further includes: a third sending module (not shown in the figure), configured to execute the module if the decrypted password is pre-associated with an anti-hijacking mark
  • a third sending module (not shown in the figure), configured to execute the module if the decrypted password is pre-associated with an anti-hijacking mark
  • the 3303 executes the security operation corresponding to the above operation instruction, it sends to the server information for prompting the user to be hijacked, so that the server sends alarm information to the second designated device.
  • the foregoing operation instruction may be any one of an unlocking instruction, a locking instruction, an information viewing instruction, and an information updating instruction.
  • the foregoing device 3300 may include a processor and a memory.
  • the receiving module 3301, the decryption module 3302, and the execution module 3303 are all stored as program units in the memory, and the processor executes the foregoing program units stored in the memory to implement The corresponding function.
  • the processor may contain a kernel, and the kernel will call the corresponding program unit from the memory.
  • One or more kernels can be set, and the above-described objectives of this application can be achieved by adjusting kernel parameters.
  • the memory may include non-permanent memory in computer-readable media, random access memory (RAM) and/or non-volatile memory, such as read-only memory (ROM) or flash memory (flash RAM), and the memory includes at least one Memory chip.
  • RAM random access memory
  • ROM read-only memory
  • flash RAM flash random access memory
  • the device provided by the foregoing embodiment of the present application receives operation information, and then decrypts the encrypted password included in the operation information that is encrypted by a preset encryption algorithm to obtain the decrypted password, and then responds to the decrypted password
  • the password is matched with the pre-stored password, and the security operation corresponding to the operation instruction included in the operation information can be performed to ensure the security of the password during the transmission process. It can also realize the identity verification of the unlocker and solve the identity recognition security problem , Only after passing the authentication information, the smart lock will perform the corresponding safe operation.
  • the embodiments of the present application provide a computer-readable medium on which a computer program is stored, where the program is executed by a processor to implement the method for controlling the smart lock described in the above method embodiments.
  • the embodiments of the present application provide a processor, which is used to run a program, where the method for controlling a smart lock described in each method embodiment above is implemented when the program is running.
  • This application also provides a computer program product, which when executed on a data processing device, enables the data processing device to implement the methods for controlling the smart lock described in the above method embodiments.
  • FIG. 34 is a schematic diagram of a control device provided by some embodiments of the present application.
  • the "control equipment” here can be called “terminal equipment”.
  • the processor 3401 in FIG. 34 corresponds to the processor 320 in FIG. 3, and the memory 3402 in FIG. 34 corresponds to the read-only memory 330, the random access memory 340, and/or the hard disk 370 in FIG.
  • the terminal device 3400 of this embodiment includes: a processor 3401, a memory 3402, and a computer program 3403 stored in the memory 3402 and running on the processor 3401, such as a program for controlling a smart lock.
  • the processor 3401 executes the computer program 3403
  • the steps in the embodiment of the method for controlling a smart lock are implemented, such as steps 2801 to 2803 shown in FIG. 28.
  • the processor 3401 executes the computer program 3403
  • the functions of the modules/units in the foregoing device embodiments such as the functions of the modules 3301 to 3303 shown in FIG. 33, are realized.
  • the computer program 3403 may be divided into one or more modules/units, and the one or more modules/units are stored in the memory 3402 and executed by the processor 3401 to complete the application.
  • One or more modules/units may be a series of computer program instruction segments capable of completing specific functions, and the instruction segments are used to describe the execution process of the computer program 3403 in the terminal device 3400.
  • the terminal device 3400 may be a computing device such as a desktop computer, a notebook, a palmtop computer, and a cloud server.
  • the terminal device 3400 may include, but is not limited to, a processor 3401, a memory 3402.
  • FIG. 34 is only an example of the terminal device 3400, and does not constitute a limitation on the terminal device 3400. It may include more or less components than shown in the figure, or a combination of certain components, or different components.
  • the control device may also include input and output devices, network access devices, buses, etc.
  • the so-called processor 3401 may be a central processing unit (Central Processing Unit, CPU), other general-purpose processors, digital signal processors (Digital Signal Processor, DSP), application specific integrated circuits (Application Specific Integrated Circuit, ASIC), Field-Programmable Gate Array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc.
  • the general-purpose processor may be a microprocessor or the processor may also be any conventional processor or the like.
  • the memory 3402 may be an internal storage unit of the terminal device 3400, such as a hard disk or memory of the terminal device 3400.
  • the memory 3402 may also be an external storage device of the terminal device 3400, such as a plug-in hard disk equipped on the terminal device 3400, a smart memory card (Smart Media Card, SMC), a Secure Digital (SD) card, and a flash memory card (Flash). Card) and so on.
  • the memory 3402 may also include both an internal storage unit of the terminal device 3400 and an external storage device.
  • the memory 3402 is used to store computer programs and other programs and data required by the terminal device 3400.
  • the memory 3402 may also be used to temporarily store data that has been output or will be output.
  • the security module 220 may obtain the second verification information based on the security control information.
  • the security module 220 may obtain the first verification information composed of at least a plurality of characters, and may determine whether the second verification information and the first verification information meet a preset condition. If the security module 220 determines that the second verification information and the first verification information meet the preset conditions, the security verification is passed, and management of corresponding operations on the smart lock is realized.
  • the first verification information may be multiple characters currently input by the user.
  • the second verification information may be information for performing security verification on the first verification information.
  • a password-verified smart lock when the user enters the password, there may be situations in which the password is output or the password is peeped.
  • the security module 220 may compare the password (first verification information) input by the user with the real password (second verification information). In some embodiments, if the password entered by the user contains password end flag information (eg, #) and contains the same characters as the real password, the security module 220 can determine that the entered password matches the real password. In some embodiments, if the current time meets the set time condition (eg, the preset allowable unlocking time range, or the valid time range of the real password), the security module 220 can confirm that the security verification is passed, and the control module 240 can Performing subsequent unlocking operations improves the safety performance and convenience of the smart lock.
  • the set time condition eg, the preset allowable unlocking time range, or the valid time range of the real password
  • Fig. 35 is an exemplary flowchart of a smart lock control method according to some embodiments of the present application.
  • Step 3501 Obtain second verification information based on the security control information. This step may be performed by the security module 220.
  • the security control information may be information stored in the smart lock for verifying operation information, and it may include second verification information. For details, refer to the description of FIG. 36.
  • the second verification information may be information stored in the smart lock for security verification of the first verification information, for example, a password, a preset time condition, and the like.
  • the preset time condition may be one or more conditions about time preset by the user, for example, a preset time range, a valid time of a password, a maximum time limit for entering a password, and so on.
  • Step 3502 Acquire first verification information. This step may be performed by the input/output module 260.
  • the first verification information may be a password input by the user that includes at least multiple characters, for example, a character password composed of numbers, characters, symbols or any combination thereof, or other passwords that can be converted into characters, for example, a voice password.
  • a character password composed of numbers, characters, symbols or any combination thereof
  • other passwords that can be converted into characters, for example, a voice password.
  • the smart lock After the smart lock receives the voice password, it can be converted into a character password.
  • the first verification information may be obtained in the following manner:
  • the operation input obtained by the input/output module 260 is parsed; if the end flag information used to indicate the end of the password input is obtained through analysis, the first verification information in the operation input is obtained.
  • the end flag information is information used to indicate the end of the password input, and its specific content can be preset.
  • the end flag information may be character information input by the user through a keyboard, or voice information input by the user through voice.
  • the character * can be preset as the end flag information, or the voice information of the word "end" read by the user can be preset as the end flag information.
  • the method for obtaining the first verification information in the operation input is described below through an example.
  • the method for obtaining the first verification information in the operation input may be to extract fixed-length character information or voice information from a fixed position in the operation input as the first verification information. For example, if the user input is the character 123456, the last four digits 3456 can be extracted as the first verification information. For another example, if the operation input input by the user is a voice message in which the user reads the sentence "Please open the door with sesame seeds", the voice information of the last four words "Open the door with sesame seeds” can be extracted as the first verification information.
  • the method for obtaining the first verification information in the operation input may also be to extract fixed-length character information or voice information from any position in the operation input as the first verification information.
  • the method for obtaining the first verification information in the operation input may also be to extract fixed-length character information or voice information from any position in the operation input as the first verification information.
  • Step 3503 Determine whether the second verification information and the first verification information meet a preset condition. This step can be performed by the security module 220.
  • the security verification is passed; if the second verification information and the first verification information do not meet the preset conditions, the security verification is not passed.
  • the preset condition may be a judgment condition preset in the smart lock, for example, judging whether the password in the first verification information matches the password in the second verification information, and judging whether the current time meets the preset in the second verification information. Set time conditions, etc.
  • the current time may be the time when the first verification information is obtained.
  • the following uses an example to illustrate how to perform security verification based on the first verification information and the second verification information.
  • the security verification is passed, otherwise it is not. .
  • the second verification information stored in the smart lock includes the character password 123#78 and the preset time range.
  • the preset time range is 9 am to 6 pm every day.
  • the security verification must meet the following two conditions at the same time to pass: 1.
  • the first verification information obtained is the character password 123#78 that exactly matches the second verification information; 2.
  • the current time is between 9 am and 6 pm . Otherwise, it fails.
  • the first verification information including multiple characters input by the user needs to completely match the second verification information and the current time meets the preset time condition to pass the security verification, which ensures the security of the smart lock.
  • the first verification information as a character password as an example, it can be known from the background technology that when a user currently inputs an unlocking password, a fixed-length unlocking password is easy to be peeped and remembered, and the security performance is low. At the same time, when the user enters the unlocking password, as long as the wrong unlocking password is entered, the wrong part needs to be deleted, which is less convenient.
  • the unlocking can be completed, and the wrong password does not need to be deleted.
  • the part can also be unlocked to improve safety performance and convenience.
  • the above method can be executed on a smart lock or a control device bound to the smart lock. Refer to the description of FIG. 14 for the method of binding the control device and the smart lock.
  • At least part of the input operation input may be encrypted.
  • the application scenarios of this method may include, but are not limited to: screen unlocking, page unlocking, and door lock unlocking scenarios.
  • the device and application scenario for executing the method there is no specific limitation on the device and application scenario for executing the method.
  • FIG. 36 shows a flowchart of a method for unlocking according to an embodiment of the present application.
  • unlocking may be referred to as “unlocking”
  • operation input may be referred to as “first unlocking password”.
  • first verification information may be referred to as the “second unlock password”. This embodiment explains how to obtain the first verification information based on the operation input, and perform security verification based on the first verification information and the second verification information.
  • the second verification information here includes the real password and preset time conditions.
  • This method is suitable for the aforementioned smart locks, and the method includes the following steps:
  • Step 3601 Obtain the first unlock password, and parse the first unlock password.
  • step 3601 when the user inputs the first unlocking password through a device with an input function such as a keyboard, the first unlocking password input by the user and the current time are acquired, and the first unlocking password is analyzed.
  • the keyboard mentioned above can be a virtual keyboard or a physical keyboard.
  • the keyboard can be a virtual keyboard.
  • the keyboard can be a physical keyboard.
  • the password is not limited to character passwords, such as numbers, characters, symbols and any combination of them, and can also be other passwords that can be converted into characters.
  • the user can also input a password by voice, and after the smart lock receives the voice password, it can be converted into a character password.
  • the voice password may not only include language information that can be converted into characters, but also include the user's voiceprint characteristics.
  • the user can use the voice information of the phrase "Amazing Sesame" as a voice password, which contains both the language information of the phrase "Amazing” and the voiceprint characteristics of the phrase.
  • security verification it is necessary to perform character matching on the phrase "Opening the Sesame” as well as the user's voiceprint characteristics.
  • the security verification can pass. In this way, not only the convenience for the user to input the password is improved, but also the security of the use of the password is improved.
  • step 3601 in response to detecting the first unlocking password input by the user through the keyboard, it is determined whether the keyboard is currently in a working state. If in response to determining that the keyboard is currently in the working state, the first unlocking password is obtained.
  • the user can freeze the keyboard used to enter the unlock password, that is, set the working state of the keyboard to the dormant state, and use the The unlock password entered by the keyboard is invalid.
  • the user sets the working state of the keyboard to the active state.
  • the user sets the working state of the keyboard through the preset key combination on the keyboard, for example: the user can set the working state of the keyboard from “sleep” to “sleep” by inputting the character "*#*#” on the keyboard "active".
  • the user can also set the working status of the keyboard through the mobile control device or computer connected to the door lock through the network.
  • the user installs a door lock app on the mobile phone, and the user can remotely set the working status of the keyboard through the door lock app.
  • the user when the user inputs the unlocking password, after the input is completed, the user needs to input end flag information indicating the end of the password input. Find out whether the first unlocking password carries end flag information for indicating the end of the password input, and if the first unlocking password does not carry end flag information, it is determined that the first unlocking password is an invalid password.
  • Step 3602 If the end flag information indicating the end of the password input is obtained through analysis, obtain the second unlocking password in the first unlocking password.
  • the second unlocking password in the first unlocking password can be sequentially acquired in a preset order, and each time the second unlocking password is acquired After the second unlocking password is compared with the real password, until the second unlocking password consistent with the real password is obtained or it is determined that all the second unlocking passwords are inconsistent with the real password. For example: suppose the end flag information is #, the first unlocking password entered by the user is 00123456#, the real password is composed of 5 characters, and any 5 characters in the first unlocking password are used as the second unlocking password each time. After the second unlocking password is compared with the real password, until the second unlocking password that is consistent with the real password is obtained or it is determined that all the second unlocking passwords are inconsistent with the real password.
  • the last several characters in the first unlocking password can be directly obtained as the second unlocking password, and compared with the real password to determine the obtained first unlocking password. 2. Whether the unlocking password is consistent with the real password. For example: assuming the end flag information is #, the first unlocking password entered by the user is 00123456#, and the real password consists of 5 characters, the last 5 characters in the first unlocking password are directly used as the second unlocking password, and the real password is The passwords are compared to determine whether the obtained second unlocking password is consistent with the real password.
  • Step 3603 Determine whether the second unlocking password matches the real password, if yes, go to step 3604, if not, clear the first unlocking password.
  • the real password that can unlock the door lock is preset, and after the second unlocking password is acquired, it is determined whether the second unlocking password matches the preset real password. For example, if the characters included in the second unlocking password are consistent with the characters included in the real password, it can be determined that the second unlocking password matches the real password. Optionally, if the characters and the arrangement of the characters included in the second unlocking password are consistent with the characters and the arrangement of the characters included in the real password, it can be determined that the second unlocking password matches the real password. If it is determined that the second unlocking password matches the real password, step 3604 can be executed next to determine whether the current time meets the preset time condition. If all the acquired second unlocking passwords are inconsistent with the real passwords, it is determined that the first unlocking passwords are invalid passwords, and the first unlocking passwords are cleared.
  • the second unlocking password is a preset number of characters in the first unlocking password. Therefore, when the user enters the unlocking password, if he enters the wrong unlocking password before entering the end flag information, the user does not need to delete the wrong part, but continue to enter the correct and complete unlocking password and end the flag information Unlock at the end. For example: Suppose the correct unlock password is "456123" and the end flag information is "#”. When the user enters the unlocking password, if the unlocking password entered by the user is "4562", the user does not need to delete the wrong part, but continue to enter the correct and complete unlocking password and end with the end flag information. Unlock, that is, all the unlock passwords entered by the user are "4562456123#". When the obtained second unlock password is 456123, unlocking can be completed.
  • Step 3604 Determine whether the current time meets the preset time condition, if yes, perform step 3605, if not, clear the first unlocking password.
  • the preset time condition may be one or more conditions regarding time preset by the user. For example, the preset allowable unlocking time range, the valid time range calculated based on the effective time corresponding to the real password and the expiration time corresponding to the real password, the maximum time limit for entering the password, etc.
  • the preset time condition may include any one of the following: a preset allowable unlocking time range, a valid time range calculated based on the effective time corresponding to the real password and the expiration time corresponding to the real password.
  • the unlocking prohibition time range for prohibiting unlocking is preset. When the unlocking password is input, if the current time is within the unlocking prohibited time range, the subsequent unlocking process cannot be performed.
  • the valid time range of the real password is preset.
  • the second unlocking password is determined to be the real password, it is determined whether the current time is within the valid time range, and if so, it is determined that the second unlocking password is valid. For example: Set the valid time range of the real password from September 1 to October 1.
  • the second unlocking password is determined to be the real password, if the current time is within the range from September 1 to October 1, then Complete the unlock. If the current time is not within the range of September 1 to October 1, the second unlock password is determined to be an invalid password.
  • the preset time condition may also include a maximum time limit for entering a password.
  • the user can preset the maximum time limit for inputting a password to 10 seconds. If the user enters the password continuously for more than 10 seconds at a time, the first unlocking password will be cleared and the user needs to enter it again. This can prevent others from entering the password for a long time to cause the password to be cracked, for example, using a malicious program to enter the password continuously.
  • the smart lock when the input is timed out, can send a prompt message, for example, a prompt sound, or a message that prompts the user to input a timeout to the bound control device.
  • a prompt message for example, a prompt sound, or a message that prompts the user to input a timeout to the bound control device.
  • the smart lock can handle abnormal situations, for example, send alarm information to a designated device. In this way, when others try to unlock the lock by continuously entering the password, the user can be reminded in time, which improves the security of the smart lock.
  • the camera device configured by the smart lock can also be used to record the image of the password inputter and upload it to the server via the network, and then the server sends the image information to the designated device, such as the user's control terminal.
  • the smart lock includes a clock chip, obtains the local time of the clock chip, and uses the local time as the current time.
  • the smart lock communicates with the control device to calibrate the local time of the clock chip according to the preset period.
  • the specific calibration method is: the control device obtains the Network Time Protocol (NTP) time from the server. The control device sends the NTP time to the smart lock, so that the smart lock calibrates the local time of the clock chip according to the NTP time.
  • NTP Network Time Protocol
  • the smart lock can also periodically obtain the NTP time from the server, and calibrate the local time of the clock chip according to the NTP time.
  • Step 3605 Perform an unlock operation based on the operation instruction included in the second unlock password.
  • the first unlocking password carrying the end flag information is received, and the second unlocking password with a preset number of digits in the first unlocking password is acquired. If the second unlocking password matches the real password and meets the preset time condition, unlocking is completed based on the operation instructions included in the second unlocking password. It can be unlocked by including the correct password in all characters entered, and the wrong password can be unlocked without deleting the wrong part, which improves the safety performance and convenience.
  • FIG. 37 includes the following steps:
  • Step 3701 Determine whether the first unlocking password input by the user includes a specific ending character. If yes, go to step 3702. If not, end the unlocking operation.
  • Step 3702 Acquire the second unlock password in the first unlock password.
  • Step 3703 Determine whether the second unlocking password matches the real password stored locally, if it is, the first unlocking password includes a valid password, and if not, the first unlocking password is an invalid password.
  • the first unlocking password carrying the end flag information is received, and the second unlocking password with a preset number of digits in the first unlocking password is acquired. If the second unlocking password matches the real password, it can be determined that the first unlocking password contains a valid password (the second unlocking password), and the subsequent unlocking process can be executed based on the operation instructions included in the second unlocking password. In this way, it can be realized that the unlocking can be completed when all the input characters include the correct password, and the wrong password can be unlocked without deleting the wrong part, which improves the safety performance and convenience.
  • the embodiment of the present application also provides a structural block diagram of a device for unlocking.
  • the device can be applied to a smart lock. Including: a processing unit 3801, an obtaining unit 3802, and an unlocking unit 3803.
  • the processing unit 3801 is configured to obtain the first unlock password, and parse the first unlock password.
  • the processing unit 3801 is specifically configured to: find whether the first unlocking password carries end flag information for indicating the end of the password input, and if the first unlocking password does not carry end flag information, determine that the first unlocking password is invalid password.
  • the obtaining unit 3802 is configured to obtain the second unlocking password in the first unlocking password if the end flag information indicating the end of the password input is obtained through analysis.
  • the unlocking unit 3803 is configured to perform an unlocking operation based on the operation instruction included in the second unlocking password if the second unlocking password matches the preset real password and meets the preset time condition.
  • the preset time condition may include that the current time is within a specified effective time range, and the specified effective time range includes any one of the following: a preset allowable unlocking time range, valid based on the real password The valid time range calculated from the time and the expiration time corresponding to the real password.
  • the preset time condition may also include a maximum time limit for entering a password, such as 5 seconds, 10 seconds, and so on. If the time for inputting the password exceeds the maximum time limit, the first unlocking password is cleared and the user needs to re-enter it. This can prevent others from entering the password for a long time to cause the password to be cracked, for example, using a malicious program to enter the password continuously.
  • a maximum time limit for entering a password such as 5 seconds, 10 seconds, and so on.
  • the unlocking unit 3803 is specifically configured to: obtain the local time of the clock chip, and use the local time as the current time.
  • the first unlocking password carrying the end flag information is received, and the second unlocking password with a preset number of digits in the first unlocking password is acquired. If the second unlocking password meets the real password and the current time meets the preset time condition, unlocking is completed based on the operation instructions included in the second unlocking password. It can be unlocked by including the correct password in all characters entered, and the wrong password can be unlocked without deleting the wrong part, which improves the safety performance and convenience.
  • FIG. 39 shows a structural block diagram of a device for unlocking provided by an embodiment of the present application, and the device further includes: a determining unit 3804 , For determining whether the keyboard is currently in working state in response to detecting the first unlocking password input by the user through the keyboard.
  • the processing unit 3801 is configured to: in response to the determining unit 3804 determining that the keyboard is currently in a working state, obtain the first unlocking password.
  • the determining unit 3804 is further configured to clear the first unlocking password in response to determining that the keyboard is not currently in a working state.
  • FIG. 40 shows a structural block diagram of a device for unlocking provided in an embodiment of the present application, and the device further includes: a calibration unit 3805 , Used to obtain NTP time, based on NTP time, to calibrate the local time of the clock chip.
  • the calibration unit 3805 is specifically configured to receive the NTP time sent by the control device, and the NTP time is obtained by the control device from the server.
  • the standard unit 3805 may also periodically obtain the NTP time from the server, and calibrate the local time of the clock chip according to the NTP time.
  • the local time of the clock chip is calibrated according to the preset period, and the local time is used to determine whether the current time meets the preset time condition, which improves the accuracy of unlocking.
  • the unlocking device used for unlocking may include a processor and a memory.
  • the processing unit, acquisition unit, and unlocking unit are all stored as program units in the memory, and the processor executes the foregoing program units stored in the memory to implement The corresponding function.
  • the processor may contain a kernel, and the kernel will call the corresponding program unit from the memory.
  • One or more kernels can be set, and unlocking can be done by adjusting kernel parameters.
  • the memory may include non-permanent memory in computer-readable media, random access memory (RAM) and/or non-volatile memory, such as read-only memory (ROM) or flash memory (flash RAM), and the memory includes at least one Memory chip.
  • RAM random access memory
  • ROM read-only memory
  • flash RAM flash random access memory
  • An embodiment of the present application provides a computer-readable medium on which a computer program is stored, where the program is executed by a processor to implement the methods provided in the embodiments corresponding to FIGS. 36 and 37.
  • An embodiment of the present application provides a processor, which is used to run a program, where the program implements the methods provided in the embodiments corresponding to FIGS. 36 and 37 when the program is running.
  • the embodiment of the application provides a device (for example, a server, a PC, a PAD, a smart phone, etc.).
  • the device includes a processor, a memory, and a program stored in the memory and running on the processor.
  • the processor executes the program.
  • Figure 36 and Figure 37 respectively correspond to the methods provided in the embodiments.
  • the present application also provides a computer program product, which when executed on a data processing device, enables the data processing device to implement the methods provided in the embodiments corresponding to FIGS. 36 and 37.
  • These computer program instructions can also be stored in a computer-readable memory that can guide a computer or other programmable data processing equipment to work in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture including the instruction device.
  • the device implements the functions specified in one process or multiple processes in the flowchart and/or one block or multiple blocks in the block diagram.
  • These computer program instructions can also be loaded on a computer or other programmable data processing equipment, so that a series of operation steps are executed on the computer or other programmable equipment to produce computer-implemented processing, so as to execute on the computer or other programmable equipment.
  • the instructions provide steps for implementing functions specified in a flow or multiple flows in the flowchart and/or a block or multiple blocks in the block diagram.
  • the computing device includes one or more processors (CPU), input/output interfaces, network interfaces, and memory.
  • processors CPU
  • input/output interfaces network interfaces
  • memory volatile and non-volatile memory
  • the memory may include non-permanent memory in a computer readable medium, random access memory (RAM) and/or non-volatile memory, such as read-only memory (ROM) or flash memory (flash RAM).
  • RAM random access memory
  • ROM read-only memory
  • flash RAM flash memory
  • Computer-readable media include permanent and non-permanent, removable and non-removable media, and information storage can be realized by any method or technology.
  • the information can be computer-readable instructions, data structures, program modules, or other data.
  • Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, CD-ROM, digital versatile disc (DVD) or other optical storage, Magnetic cassettes, magnetic tape magnetic disk storage or other magnetic storage devices or any other non-transmission media can be used to store information that can be accessed by computing devices.
  • computer-readable media does not include transitory media, such as modulated data signals and carrier waves.
  • this application can be provided as methods, systems, or computer program products. Therefore, this application may adopt the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, this application may adopt the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program codes.
  • computer-usable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.
  • the security module 220 compares one or more operation inputs with security control information to realize the management of corresponding operations on the smart device.
  • the smart device may be a smart lock 130.
  • the operation input may include operation instructions and/or operation information.
  • locks have only a single unlocking method, for example, key unlocking, fingerprint unlocking, or password unlocking. However, when the user forgets to carry the key or forget the password, the lock cannot be opened. A single unlocking method may not be suitable for people of different ages, such as the elderly or children.
  • multiple unlocking methods can be used (for example, digital password unlocking, biometric input unlocking, Bluetooth unlocking, and NFC Unlock) the smart lock 130 to avoid the above problems.
  • the multiple unlocking methods in the embodiments of the present application can be input locally on the smart lock, or input on the control device bound to the smart lock. Refer to the description of FIG. 14 for the method of binding the control device and the smart lock.
  • At least part of the input operation input may be encrypted.
  • the smart lock 130 can be provided with status detection (such as bolt detection, handle detection, key detection, ambient light brightness detection, noise detection, etc.) functions, safety Detection (such as tamper-proof detection) function, power management function, wireless communication function and encryption function.
  • status detection such as bolt detection, handle detection, key detection, ambient light brightness detection, noise detection, etc.
  • safety Detection such as tamper-proof detection
  • power management function such as tamper-proof detection
  • the smart lock 130 after the smart lock 130 detects the unlocking state, it can also automatically perform an automatic locking operation or an information reporting operation. For details, please refer to the description elsewhere in this application.
  • Fig. 41 is an exemplary flowchart of a method for obtaining operation instructions and/or operation information of a smart lock according to some embodiments of the present application.
  • Fig. 42 is an exemplary structure diagram of a smart lock control circuit according to some embodiments of the present application.
  • Step 4102 Obtain operation instructions and/or operation information.
  • Operation instructions and/or operation information refer to information input by the user for security verification, such as passwords, control instructions, etc.
  • the operation instruction and/or operation information may be obtained through the input/output module 260.
  • the operating instructions and/or operating information please refer to the description of Figure 27 below.
  • the obtaining operation instructions and/or operation information includes obtaining one or more of the following inputs: obtaining character input 41021; obtaining biometric input 41022; obtaining wireless input 41023.
  • character input 41021 can be obtained.
  • Character input can be defined as a numeric password entered by the user.
  • the character input can be obtained from the character input module.
  • details about the character input module please refer to the following.
  • biometric input 41022 can be obtained.
  • Biometric input can be defined as biometric information input by the user.
  • the biometric input can be obtained from the biometric input module.
  • wireless input 41023 can be obtained.
  • the wireless input may be defined as operation instructions and/or operation information acquired by the control unit 4200 through wireless communication.
  • At least one wireless communication module can be used to establish communication with another wireless communication module and obtain the password information stored therein. The detailed introduction of the wireless communication module can be found below.
  • security verification may be performed based on receiving the security control information obtained in the foregoing steps, as well as the operation instruction and/or the operation information.
  • the security control information refers to information related to performing security operations stored in the security module 220.
  • the control unit 4200 in the smart lock 130 corresponds to the security module 220.
  • the control unit 4200 is a central processing unit or a controller, and the control unit 4200 may be composed of one or more processors, or at least one set of chips.
  • Step 4104 the obtained operation instruction and/or operation information can be compared with the safety information, and the unlock operation can be performed when the preset condition is met.
  • operation instructions and/or operation information can be obtained from the user terminal 140 via the network
  • preset conditions or other information related to the comparison can be obtained from the user terminal 140 and/or the server 110
  • the comparison can be The status information, alarm information, etc., are sent to the user terminal 140 and/or the server 110 via the network.
  • unlock verification and locking operations can also be performed, see the description of Figure 43.
  • control unit 4200 may perform wireless communication with the user terminal 140 and/or the server 110 through the wireless communication module 4212.
  • the wireless communication unit 4212 corresponds to the communication module 210.
  • the wireless communication unit 4212 may be a ZigBee module.
  • control unit 4200 may perform comparisons in one or more of the following ways:
  • the smart lock 130 may compare the obtained operation instruction and/or operation information with the safety information. In some embodiments, the smart lock 130 can compare the operation instructions and/or operation information with the safety information in plain text. In some embodiments, the operation instructions and/or operation information encrypted by a preset encryption algorithm may be compared with the security information in cipher text, which is not limited in this application.
  • control unit 4200 may issue an unlocking instruction to the control module 240 to perform the unlocking operation.
  • control unit 4200 can perform one or more of the following processing:
  • one or more thresholds are set for the nth occurrence of the comparison abnormality, and n is a positive integer greater than or equal to 1.
  • the control unit 4200 performs processing of different abnormality levels according to different threshold intervals in which n is located.
  • the number of thresholds set is two.
  • the control unit 4200 can prompt the unlocking operator with abnormal information through the reminding module 250 provided on the smart lock 130.
  • the abnormal information prompt includes, but is not limited to, one or more of voice prompts and text display prompts; or, the comparison abnormal information is sent to the user terminal 140 and/or the server 110 via the network for prompting.
  • the control unit 4200 may perform a comparison of the abnormal information prompt through the reminding module 250 or the network.
  • the control unit 4200 can give an alarm.
  • Alarm prompts include but are not limited to one or more of alarm bells and flashing lights.
  • the control unit 4200 When n is greater than or equal to the second threshold, the control unit 4200 temporarily locks the input/output acquisition module while performing the above processing. At this time, the unlocking operator will temporarily be unable to unlock the lock.
  • the lock time of the unlocking operation acquiring module can be set by the user.
  • a threshold may be set for the mth abnormality of the same operation instruction and/or operation information, and m is a positive integer greater than or equal to 1.
  • the control unit 4200 may prompt the unlocking operator to change the operation instruction and/or operation information mode through the reminding module 250.
  • the prompt includes, but is not limited to, one or more of voice prompts and text display prompts; or, the comparison abnormal information is sent to the user terminal 140 and/or the server 110 via the network for prompting.
  • the unlocking unit 4202 corresponds to the input/output module 260.
  • the unlocking unit 4202 may be a character input module.
  • the character input module may be a touch input module 42021.
  • the touch input module 42021 may be a capacitive touch screen, and the touch input module 42021 may support various forms of touch and multi-point touch, and has better sensitivity and anti-interference performance.
  • the touch input module 42021 may be integrated with the display unit 4208 as a whole.
  • the unlocking unit 4202 may be a biometric input module 42022.
  • the biometric information can be fingerprint information, iris information, facial features, and so on.
  • the unlocking unit 4202 may be a wireless communication module.
  • the wireless communication module may be the NFC module 42024.
  • the NFC module 42024 can sense the NFC card and obtain its NFC password.
  • the control unit 4200 determines whether to unlock the lock according to the obtained NFC password.
  • the wireless communication module may be a Bluetooth module 42023.
  • the Bluetooth module 42023 is used to establish communication with another Bluetooth module and obtain its Bluetooth key.
  • the control unit 4200 determines whether to unlock the lock according to the acquired Bluetooth key.
  • another Bluetooth module may be provided in the mobile device 4214.
  • the mobile device 4214 corresponds to the user terminal 140.
  • the mobile device 4214 may be a cell phone.
  • Another Bluetooth module can be set in the mobile phone and communicate with the Bluetooth module 42023 to realize the Bluetooth unlocking function of the mobile phone.
  • another Bluetooth module can be installed in the Bluetooth key and communicate with the Bluetooth module 42023 to realize the unlocking function of the Bluetooth key.
  • the Bluetooth module of the Bluetooth key can be matched with the Bluetooth module 42023.
  • the Bluetooth key has a secret key.
  • the Bluetooth key of the Bluetooth key is read, and the Bluetooth key is used to determine whether to unlock the lock.
  • the Bluetooth key of the Bluetooth key can be set by the manufacturer at the factory, or it can be set after the mobile device 4214 is connected to the Bluetooth key.
  • the smart lock 130 is provided with a mechanical structure 280, which has a mechanical key unlocking function of a traditional lock.
  • the control unit 4200 may determine whether to unlock the lock according to the operation instruction and/or operation information, and then further generate unlock information according to the judgment result.
  • the unlock information refers to various information related to the unlock operation, including but not limited to the unlock time. , Method, and result. For example, at ten o'clock in the morning, the digital code unlocked and successfully opened the lock, or at ten o'clock in the morning, the biometric unlocking or unlock failed.
  • safety detection of the smart lock 130 can be performed.
  • the smart lock 130 can detect the security state of the smart lock 130 through the security detection unit 4204.
  • security detection can be performed in one or more of the following ways:
  • lock picking detection can be performed.
  • the lock picking detection can detect whether the smart lock 130 is picked by the first tamper-proof sensor 42041.
  • the first anti-pick sensor 42041 sends an alarm signal to the control unit 4200 when the smart lock 130 is pryed, thereby issuing an alarm.
  • the first tamper resistant sensor 42041 may be any one of a tamper resistant switch, a proximity switch, or an infrared detector.
  • the first tamper-proof sensor 42041 is disposed in the lock body of the smart lock 130, and the first tamper-proof sensor 42041 can be triggered when the lock body of the smart lock 130 is pried.
  • cat-eye theft detection can be performed.
  • Cat-eye theft detection can detect whether the user opens the door through the inner handle through the second tamper-proof sensor 42042. If the user opens the door through the inner handle, the door can be opened normally, otherwise the door cannot be opened.
  • the second tamper-proof sensor 42042 can be any one of a tamper-proof switch, a proximity switch, an infrared detector or a pressure sensor.
  • the second tamper-proof sensor 42042 can be arranged on the inner panel of the smart lock 130, and only the second tamper-proof sensor 42042 is touched. Only the inner handle can be pressed down to unlock. If the inner handle is pressed down through the eyes of the cat, the second tamper-proof sensor 42042 cannot be touched, and the inner handle cannot be unlocked, thereby preventing the inner handle from being pressed down from the eyes of the cat.
  • control unit 4200 may determine whether to generate safety abnormality information according to the detection result of the safety detection, and the safety abnormality information refers to information that attempts to unlock the lock through various abnormal means.
  • the security exception information may include, but is not limited to, repeated attempts to unlock the lock using a mismatched password (or key), hitting the smart lock 130, the smart lock 130 being pried, and opening the door from a peephole.
  • the state of the smart lock 130 can be detected.
  • the smart lock 130 can detect the state of the smart lock 130 through the state detection unit 4206, and transmit the detected state information of the smart lock to the control unit 4200.
  • status detection can be performed in one or more of the following ways:
  • lock body state detection can be performed.
  • the lock body state detection can detect the lock body state of the smart lock 130 through the bolt detection sensor 42061, and transmit the lock body state to the control unit 4200.
  • the state of the lock body of the smart lock 130 includes detecting the state of the main tongue, identifying the lock body, and detecting the state of the oblique tongue.
  • the lock state of the smart lock 130 can be determined according to the state of the lock body.
  • the detection of the lock body state may further include: detecting the start action of the lock body's square shaft from stationary to rotation, and the angular displacement of the lock body's square shaft rotation.
  • the lock body state detection may further include: detecting the rotation of the output shaft of the motor of the smart lock.
  • the detection module 290 can be connected or adapted to the transmission component in the smart lock, and the angular displacement of the output shaft of the motor can be detected through the transmission component.
  • handle state detection can be performed.
  • the handle state detection includes the handle detection sensor 42062 used to detect the handle state of the smart lock 130 and transmit the handle state to the control unit 4200.
  • the handle state includes an outer handle state and an inner handle state.
  • the handle detection sensor 42062 may be a proximity switch or an infrared detector. When the user touches the outer handle and the inner handle, the handle detection sensor 42062 can be triggered, and according to the state of the handle, it can be determined whether the user opens the door through the outer handle or the inner handle.
  • the unlocking state of the mechanical key can be detected.
  • the mechanical key unlocking state detection can detect the unlocking state of the mechanical key in the smart lock 130 through the key detection sensor 42064, and transmit the unlocking state of the mechanical key to the control unit 4200.
  • the key detection sensor 42064 may be a proximity switch or an infrared detector. When the mechanical key is inserted into the smart lock 130 to unlock, the key detection sensor 42064 can be triggered.
  • the smart lock status information includes locked door, unlocked door, door opened by outer handle, door opened by inner handle, and door opened by mechanical key.
  • the status information of the smart lock 130 is displayed through the display unit 4208.
  • operation instructions and/or operation information input by the user are displayed through the display unit 4208.
  • the display unit 4208 adopts a 24-bit RGB full-color display on an LCD screen. Compared with a traditional LED light display, the display unit 4208 can support full-color display with rich display colors and diverse images.
  • control unit 4200 can perform mode switching.
  • control unit 4200 can be switched to the working mode.
  • the working mode can be defined as the smart lock 130 being unlocked or the sensor in it being triggered.
  • the noise detection sensor 42065 in the state detection unit 4206 can detect the noise of the surrounding environment, and the control unit 4200 adjusts the volume of the doorbell in real time according to the detected noise.
  • control unit 4200 may switch to the sleep mode.
  • the sleep mode can be defined as a state where the smart lock 130 is in a non-working state.
  • the infrared detection sensor 42063 in the state detection unit 4206 can quickly wake up the control unit 4200 to switch from the sleep mode to the working mode.
  • the infrared detection sensor 42063 is also used to detect the brightness of the light surrounding the smart lock 130, and adjust the brightness of the display unit 4208 in real time according to the detected brightness.
  • the power management of the smart lock 130 may be performed by the power management unit 4210.
  • the power management unit 4210 supplies power to the control unit 4200.
  • the power management unit includes a battery 42101, a power output module 42102, a charging module 42103, a charging interface 42104, and a power collection module 42105.
  • the battery 42101 is connected to the control unit 4200 through the power output module 42102 to supply power to the control unit 4200.
  • the battery 42101 is a polymer rechargeable battery that can support USB interface charging. It can be charged by the charging module 42103 after being connected to a power source through the charging interface 42104. During the charging process of the battery 42101, the use of the smart lock 130 is not affected.
  • the power collection module 42105 is used to acquire the battery power in real time and transmit the acquired battery power to the control unit 4200.
  • the control unit 4200 includes a preset power value. When the battery power reaches the preset power value, the control unit 4200 can alert the user through an indicator light, and at the same time, control the battery 42101 to stop power supply.
  • control unit 4200 may generate battery power information according to the battery power acquired by the power collection module 42105.
  • control unit 4200 may communicate with an application based on the mobile device 4214, and the application may send a control instruction signal, and remotely manage the smart lock 130 through the wireless communication unit 4212.
  • the wireless communication unit 4212 corresponds to the communication module 210.
  • the mobile device 4214 corresponds to the user terminal 140.
  • the remote management of the smart lock 130 may be performed in one or more of the following ways:
  • the user can use the Bluetooth of the mobile phone to unlock the lock.
  • a smart lock management application program is installed in the mobile device 4214, and the mobile device 4214 can realize functions such as unlocking the cell phone Bluetooth via the smart lock management application program.
  • the mobile device 4214 can start the smart lock management application, bind the smart lock 130 through the mobile phone Bluetooth unlocking function of the smart lock management application, and then generate a virtual Bluetooth key, and finally, bind the virtual Bluetooth key to the Bluetooth module 42023 Set the pairing, so that unlocking is performed through the virtual Bluetooth key.
  • the user can perform state management on the smart lock 130.
  • State management includes but is not limited to: realizing binding gateway, binding smart lock 130, adding user biometrics (for example, fingerprint, iris information), managing password, issuing password, querying related information of smart lock, etc.
  • Information about smart locks includes, but is not limited to, unlocking information, comparison exception information, safety exception information, smart lock status information, battery power information, etc.
  • the control unit 4200 can upload the smart lock related information to the server through the wireless communication unit 4212, and the user can obtain the above information from the server through the smart lock management application in the mobile device 4214, so that the user can grasp the status of the smart lock 130 in real time.
  • the encryption unit 4216 encrypts the smart lock related information before uploading to the server 110. In some embodiments, the encryption unit 4216 is also used to encrypt the information transmitted in the Bluetooth connection established between the Bluetooth module 42023 and the Bluetooth key, so as to improve the security of information transmission.
  • the control module 240 performs an unlocking verification operation on the smart lock 130, and controls the smart lock to perform the locking operation after confirming that the unlocking is successful, so as to realize the unlocking operation monitoring and the locking operation management of the smart lock 130.
  • the smart lock 130 only performs an unlocking operation according to the user's operation input, and no subsequent control operations are performed after the smart lock 130 is unlocked. Based on this, in order for the smart lock to ensure environmental safety, the smart lock 130 can be controlled to perform a locking operation.
  • the control module 240 may detect the unlocking operation of the smart lock, and after detecting the unlocking operation of the smart lock 130, record the unlocking operation information and report the unlocking operation information.
  • the control module 240 can control the smart lock 130 to perform a locking operation.
  • the control module 240 may jointly turn on the camera device associated with the smart lock 130 after the locking operation, so as to monitor the environment where the smart lock 130 is located. In this way, the user can control the unlocking situation of the smart lock 130, and the locking operation can be performed after unlocking, which ensures the safety of the user's living environment.
  • the smart lock is also called a smart door lock
  • the locking operation is also called an automatic locking operation.
  • FIG. 43 is an exemplary flowchart of a smart lock control method 4300 according to some embodiments of the present application.
  • Step 4301 Perform unlock verification operation.
  • the security module 220 may perform security verification on the user operation input received by the input/output module 260 based on the security control information obtained by the communication module 210. After the security verification is passed, the control module 240 performs an unlocking operation. After the unlocking operation is completed, the security module 220 will perform unlocking verification on the unlocking operation according to a preset unlocking mode that needs to be detected (in some embodiments, unlocking verification is also called unlocking detection). See step S4501 for details.
  • Step 4302 Perform one or more of a locking operation or a prompt operation according to the verification result.
  • the control module 240 performs a locking operation and/or a prompt operation according to the result of the unlocking verification.
  • the prompt operation may include prompting an unlocking operation, prompting a locking operation, or prompting an illegal unlocking operation.
  • the smart lock can be applied to the door, and the smart lock can also be called a smart door lock.
  • the door closing detection phase is entered.
  • the security module 220 detects that the door is closed, the control module 240 will control the smart door lock to perform the locking operation, and the communication module 210 will perform the unlocking operation and/or the locking operation.
  • the information is uploaded to the server and the binding terminal; if the unlocking verification fails, it is considered that an illegal unlocking operation instruction and/or unlocking operation information is received, and the control module 240 controls the smart door lock to record the illegal unlocking operation instruction and/or unlocking operation information,
  • the communication module 210 uploads the illegal unlocking operation instruction and/or the unlocking operation information to the server and the bound terminal.
  • the processor of the smart door lock can record the unlocking operation information, and report the unlocking operation information through the network 120 that establishes a secure connection. In some embodiments, the processor of the smart door lock can record the automatic locking information, and report the automatic locking information through the network 120 that establishes a secure connection. In some embodiments, the smart door lock can also transmit unlocking operation information to other devices (for example, control devices) bound to the smart door lock, so that the user can manage the smart door lock more conveniently. For the method of binding the control device and the smart lock, please refer to the related description in FIG. 14.
  • the control module 240 may perform the locking operation according to the unlock detection of the smart door lock.
  • Unlocking detection refers to detecting various situations related to door lock and unlocking. For example, detecting whether an unlocking operation command is received, or unlocking operation information. For another example, detecting whether the unlocking operation of the smart door lock is executed successfully.
  • Locking operation refers to the operation of locking. For example, the automatic locking operation is executed when it is detected that the door body equipped with the smart door lock is closed.
  • FIG. 44 shows an exemplary system architecture 4400 to which some embodiments of the smart door lock control method or smart door lock control device of the present application can be applied.
  • the system architecture 4400 includes: a terminal device 4401, a server 4402, a smart door lock 4403, and a network 4404.
  • the terminal device 4401 corresponds to the terminal device 140
  • the server 4402 corresponds to the server 110
  • the smart door lock 4403 corresponds to the smart door lock 130
  • the network 4404 corresponds to the network 120.
  • the network 4404 is used to provide a communication link medium between the terminal device 4401, the server 4402, and the smart door lock 4403.
  • the network 4404 may include various connection types, such as wired, wireless communication links, or fiber optic cables.
  • the user can use the terminal device 4401 to interact with the server 4405 through the network 4404 to receive or send messages and so on.
  • Various client applications such as remote control applications, may be installed on the terminal device 4401.
  • the terminal device 4401 and the server 4402 may communicate directly through cellular mobile network or Wi-Fi network communication.
  • the smart door lock 4403 and the server 4402 can communicate directly through the network 4404 or through an IoT gateway (not shown in the figure).
  • the smart door lock 4403 and the IoT gateway can communicate based on the Zigbee protocol.
  • the communication between the networking gateway and the server 4402 may be based on a cellular mobile network or a Wi-Fi network.
  • the smart door lock 4403 and the terminal device 4401 may also communicate based on the Bluetooth protocol.
  • the terminal device can be hardware or software.
  • the terminal device 4401 When the terminal device 4401 is hardware, it may be various electronic devices with display screens, including but not limited to smart phones, tablet computers, laptop portable computers, desktop computers, and so on.
  • the terminal device 4401 When the terminal device 4401 is software, it can be installed in the electronic devices listed above. It can be implemented as multiple software or software modules (for example, to provide distributed services), or as a single software or software module. There is no specific limitation here.
  • the server 4402 may be a server that provides various services.
  • the server 4402 may, in response to receiving a door lock control instruction sent by the terminal device 4401, analyze the door lock control instruction, obtain a door lock control request, and then The door lock control request is sent to the smart door lock 4403 so that the user can control the smart door lock 4403.
  • the server 4402 may be hardware or software.
  • the server When the server is hardware, it can be implemented as a distributed server cluster composed of multiple servers, or as a single server.
  • the server When the server is software, it can be implemented as multiple software or software modules (for example, to provide distributed services), or as a single software or software module. There is no specific limitation here.
  • the smart door lock control method provided in the embodiments of the present application is generally executed by the smart door lock 4403, and correspondingly, the smart door lock control device is generally set in the smart door lock 4403.
  • terminal devices, networks, servers, and smart door locks in FIG. 44 are merely illustrative. According to realizing needs, there can be any number of terminal devices, networks, servers and smart door locks.
  • Fig. 45 is a flowchart of a smart door lock control method 4500 according to some embodiments of the present application. The method is applied to a processor in a smart door lock.
  • the smart door lock control method 4500 includes the following steps:
  • S4501 Detect a target unlocking operation of the smart door lock, and the target unlocking operation is a preset unlocking method that needs to be detected.
  • the execution body of the smart door lock control method can detect the unlocking operation of the smart door lock.
  • the unlocking operation supported by the smart door lock can be detected, and each unlocking operation matches at least one unlocking method.
  • the target unlocking operation is a preset unlocking method that needs to be detected. When the user selects a certain unlocking method to unlock, a corresponding unlocking operation will be generated.
  • the smart door lock determines whether to generate the unlocking operation based on the detection rule corresponding to the unlocking operation.
  • the unlocking operation refers to various operations related to unlocking.
  • the unlocking operation can be executed by unlocking instructions.
  • the unlocking method refers to the method of executing the unlocking operation with a certain type of unlocking command.
  • the type of the unlock instruction may include, but is not limited to, mechanical instructions, password instructions, biometric instructions, network instructions, and the like.
  • There are multiple preset unlocking methods to be detected such as key unlocking method, password unlocking method, fingerprint unlocking method, card unlocking method, unlocking method issued by smart door lock APP and so on.
  • the unlocking method can be obtained by operating instructions.
  • the operating instructions can be obtained locally or remotely.
  • a device for remote input for example, a control device, a user terminal, etc.
  • the smart lock can also establish a binding relationship with the remote input device. For details, refer to the related description of FIG. 14. In some embodiments, the smart lock can perform security verification on the acquired operation instructions. For details, please refer to the related descriptions of FIG. 27 and FIG. 35.
  • Detection rules refer to the rules for detecting unlocking operations, and different unlocking methods correspond to different rules. For example, using a key to open the door, the door lock chip determines the mechanical key to open the door by checking the potential change (low level to high level and high level to low level) of the IO interface of the spare key lock core to realize the detection of the unlock operation; The door is opened manually by the knob on the rear panel of the lock. The door lock chip realizes the detection of the unlocking operation by checking the potential change (low level to high level and high level to low level) of the IO interface of the rear panel knob; use the mobile APP Bluetooth to unlock, The door lock decrypts and authenticates the door lock according to the received Bluetooth encryption information.
  • the unlocking operation is detected; use the keypad to enter the password to unlock, after the keypad enters the password, the keypad encrypts the password information and passes Bluetooth
  • the door lock is sent to the door lock, and the door lock is decrypted according to the received encrypted information.
  • the password information is obtained, it is compared with the valid password in the door lock.
  • the door lock is unlocked to realize the detection of the unlocking operation; use the keypad to press the fingerprint to unlock ,
  • the keypad encrypts the fingerprint information and sends it to the door lock via Bluetooth.
  • the door lock decrypts according to the received encrypted information. After the fingerprint information is obtained, the fingerprint information is compared with the valid fingerprint in the door lock.
  • the door lock is unlocked to realize the pairing.
  • Detection of unlocking operation When the door lock is in a normal networking state, the user clicks the door opening button on the APP, and the command is issued to the door lock through the gateway to realize the detection of the unlocking operation.
  • the unlock detection can be performed before, after, or at the same time when the unlock operation is performed.
  • the preset unlocking method to be detected can be set by binding a terminal or server, or can be preset in the smart door lock.
  • the smart door lock can identify whether the target unlock operation is legal. When the target unlocking operation is detected, if the inner handle of the smart door lock is driven, it is judged as a legal inner unlocking operation; when the target unlocking operation is detected, if the outer handle of the smart door lock is driven, it is judged as an outer unlocking operation. If the unlocking operation is legally authorized, that is, it complies with the preset unlocking rules, it is judged as a legal unlocking behavior, otherwise it is judged as an illegal unlocking operation. This operation is recorded and uploaded to the bound terminal or server.
  • Example two such as: detecting whether the potential of the IO interface of the lock control mechanism of the smart door lock has changed.
  • the lock control mechanism can be a mechanism for controlling the unlocking or locking of the smart door lock, such as a handle or knob provided on the smart door lock panel And so on, when the potential of the IO interface of the lock control mechanism changes, it is determined that the target unlocking operation of the smart door lock is detected. It should be noted that when the potential changes, that is, the potential is switched from a low level to a high level, or the potential is switched from a high level to a low level. Determine whether the state of the smart door lock has changed by detecting potential changes. It should be noted that when the state of the door lock changes, the door lock changes from the locked state to the open state. This is used to detect the unlocking operation.
  • Target unlock operation For example, it can detect whether the Bluetooth unlock command sent by the target terminal device is received. If the Bluetooth unlock command is received, the Bluetooth unlock command will be authenticated. If the authentication is passed, it will be determined to detect the target of the smart door lock Unlock operation. It should be noted that the user uses the client installed on the terminal device (for example, the smart door lock APP) to trigger the Bluetooth unlock option to generate a Bluetooth unlock command. The Bluetooth unlock command is sent to the smart door lock through the terminal device.
  • the Bluetooth unlocking instruction is decrypted and authenticated. If the decryption and authentication are successful, the smart door lock is controlled to unlock.
  • Example two such as: detecting whether the remote unlocking command sent by the target terminal device is received, if the remote unlocking command is received, the remote unlocking command is authenticated, if the authentication is passed, it is determined that the manual unlocking of the smart door lock is detected operating. It should be noted that when the door lock is in a normal networked state, the user can click the open button on the smart door lock APP to generate a remote unlocking command. The terminal device sends the remote unlocking command to the smart door lock, and the smart door lock performs the remote unlocking command.
  • Example three detecting whether the NFC (Near Field Communication) unlocking command sent by the target terminal device is received, if the NFC unlocking command is received, the NFC unlocking command is authenticated, and if the authentication is passed, it is determined The target unlock operation of the smart door lock is detected.
  • NFC Near Field Communication
  • the unlocking action of the smart door lock is detected by detecting the unlocking command and authenticating the unlocking command. If the authentication is passed, it is considered that the unlocking instruction is received, and the target unlocking action of the smart door lock can be detected.
  • the unlocking command can be detected first, and then the target unlocking action can be detected, or the target unlocking action can be detected first, and then the unlocking command can be detected, and the unlocking command and the target unlocking action can also be detected at the same time.
  • Example two such as: detecting whether a biometric password unlocking instruction is received, if a biometric password unlocking instruction is received, the biometric password unlocking instruction is authenticated, and if the authentication is passed, it is determined that the target of the smart door lock is detected Unlock operation.
  • the user can use the password keyboard input device to input biometric passwords such as fingerprints to generate a biometric password unlock command, and encrypt the biometric password unlock command and send it to the smart door lock. If the smart door lock receives the biometric password Unlocking instructions, decrypt and obtain the unlocking biometric password, and compare the unlocking fingerprint with the effective biometric password in the smart door lock. After the comparison is successful, the smart door lock is successfully unlocked.
  • the execution body of the smart door lock control method can identify the unlocking method that matches the target unlocking operation after detecting the target unlocking operation of the smart door lock, and generate unlocking operation information .
  • the unlocking operation information includes the unlocking person, unlocking time, unlocking method, etc.
  • the smart door lock can first record the generated unlocking operation information locally, and then record the local record when the smart door lock is connected to the server through the gateway or terminal device Report the unlocking operation information to the terminal device or server.
  • the execution subject of the smart door lock control method can determine whether the target unlocking operation is successfully executed after detecting the target unlocking operation of the smart door lock, and generate unlocking state information.
  • the unlocking status information includes two types: successful unlocking and failed unlocking. Successful unlocking can be understood as the smart door lock completes the entire unlocking action. Conversely, failure to unlock can be understood as the failure of the smart door lock to perform the entire unlocking action. For example, if the unlocking action is not executed, the unlocking status information is unlocking failed. For another example, in the unlocking action execution part, the unlocking status information is unlocking failed.
  • the smart door lock When it is judged that the target unlocking operation is successfully executed, it is determined as the unlocking successful state, and the smart door lock saves the successful unlocking information to the local.
  • the smart door lock When the smart door lock is connected to the server through the gateway or terminal device, the locally recorded unlocking success information Report to the terminal device or server. At the same time, a notification message is generated to notify the user.
  • the smart door lock When it is judged that the target unlocking operation has failed, it is determined to be a failed unlocking state, and the smart door lock saves the unlocking failure information locally, and reports the locally recorded unlocking failure information to the terminal device or server. At the same time, a notification message is generated to notify the user.
  • the problem diagnosis is performed, the reason for the unlocking operation failure is judged, the reason is saved to the local, and the locally recorded reason for the unlocking failure is reported to the terminal device or server. Generate notification information and send it to users to facilitate users to respond.
  • the process of problem diagnosis is the process of judging the reason for the failure of unlocking operation, including the type of problem and the cause.
  • the diagnosis method and strategy are preset in the device that performs problem diagnosis.
  • Problem diagnosis can be performed by the smart door lock itself, or by terminal devices or servers.
  • the smart door lock When the diagnosis is performed by the door lock, the smart door lock will save the unlocking failure information or the failure reason to the local and report it to the terminal device or server, and then notify the user of the failure information and the failure reason.
  • the diagnosis is executed by the terminal device or server, the smart door lock will report the execution failure information to the terminal device or server, the terminal device or server diagnoses the reason for the failure and saves it, and then informs the user of the failure information and the reason for the failure.
  • the smart door lock after the smart door lock detects an unlocking operation, the smart door lock records the corresponding unlocking information.
  • the unlocking information may include, but is not limited to, the person who opened the lock, the unlocking time, and the unlocking method.
  • the smart door lock when the smart door lock is connected to the cloud server through the gateway or APP, the smart door lock will encrypt the recorded unlocking information and upload it to the gateway using the ZigBee transmission protocol, and the gateway will upload to the cloud server through WiFi; or The Bluetooth is transmitted to the APP, and the APP uploads the unlocking information to the cloud server through the cellular mobile network or WiFi.
  • the execution body of the smart door lock control method (for example, The smart door lock 4403 shown in 44 can control the smart door lock to perform an automatic locking operation after confirming that the unlocking is successful, thereby ensuring the safety of the user's living environment.
  • the bolt of the smart door lock can be driven to pop out to realize automatic locking.
  • the method provided by the foregoing embodiment of the present application detects the target unlocking operation of the smart door lock, and the target unlocking operation is a preset unlocking method that needs to be detected; after the target unlocking operation of the smart door lock is detected, the unlocking operation information is recorded And report the unlocking operation information; after confirming that the unlocking is successful, the smart door lock is controlled to perform the automatic locking operation, which enables the user to control the unlocking situation of the smart door lock and guarantees the safety of the user's living environment.
  • the smart door lock can record the locking operation information and upload it to the binding terminal or server.
  • FIG. 46 is a flowchart of another smart door lock control method 4600 according to some embodiments of the present application. The method can include the following steps:
  • S4601 Detect a target unlocking operation of the smart door lock, and the target unlocking operation is a preset unlocking mode that needs to be detected.
  • S4601 and S4602 refer to S4501 and S4502, and details are not described in this embodiment.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Selective Calling Equipment (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephone Function (AREA)

Abstract

本申请公开了一种智能锁具控制方法和系统。该方法包括与网络建立安全连接;通过所述安全连接获取安全控制信息;获取操作输入;基于所述安全控制信息以及所述操作输入进行安全验证;当所述安全验证通过时基于所述操作输入进行相应操作。

Description

一种智能锁具控制方法和系统
优先权信息
本申请要求2019年08月02日提交的中国申请号201910711989.X的优先权;2019年08月06日提交的中国申请号201910721490.7的优先权;2019年08月10日提交的中国申请号201910736714.1的优先权;2019年08月05日提交的中国申请号201910716929.7的优先权;2019年11月21日提交的中国申请号201922029811.5的优先权;2019年08月13日提交的中国申请号201910743893.1的优先权,全部内容通过引用并入本文。
技术领域
本申请涉及智能设备控制技术领域,尤其涉及一种智能锁具控制方法和系统。
背景技术
随着互联网和通信技术的不断发展,单一功能和开锁方式的锁具已无法满足用户需求,并且在数据传输过程中,开锁密码或锁具相关信息(如,地址信息、安装码)存在被非法获取的安全隐患。另外,随着人们对人身和财产安全有越来越高的要求,具有多个安防功能(例如,视频监控、身份验证、异常报警、信息上报等)的锁具更容易受到用户的青睐。因此,有必要提供一种安全性较高的智能锁具控制方法和系统。
发明内容
本申请实施例之一提供一种智能锁具控制方法,所述方法包括:与网络建立安全连接;通过所述安全连接获取安全控制信息;获取操作输入;基于所述安全控制信息以及所述操作输入进行安全验证;当所述安全验证通过时基于所述操作输入进行相应操作。
在一些实施例中,所述与网络建立安全连接包括:通过所述网络发送所述智能锁具的特征信息;通过所述网络获取加密密钥,所述加密密钥与所述特征信息相关;基于所述加密密钥对通过所述网络发送的特征信息进行加密操作。
在一些实施例中,所述方法还包括:接收绑定请求;基于所述绑定请求,获取控制设备的控制设备信息;基于所述控制设备信息,在安全验证失败时向所述控制设备发送告警信息。
在一些实施例中,至少对所述操作输入的部分内容加密;所述基于所述安全控制信息以及所述操作输入进行安全验证包括:基于所述至少部分加密后的操作输入和所述安全控制信息进行安全验证。
在一些实施例中,所述操作输入至少包括多个字符组成的第一验证信息;所述基于所述安全控制信息和所述操作输入进行安全验证包括:基于所述安全控制信息获取第二验证信息;当所述第二验证信息与所述第一验证信息符合预设条件时安全验证通过。
在一些实施例中,所述获取操作输入包括获取以下输入的一种或多种:获取字符输入;获取生物特征输入;获取无线输入。
在一些实施例中,所述相应操作包括开锁操作;所述方法还包括:进行开锁验证操作;根据验证结果执行闭锁操作和提示操作中的一种或多种。
本申请实施例之一提供一种智能锁具控制系统,所述系统包括:存储一组指令的存储设备;以及与所述存储设备通信的一个或以上处理器,其中,当执行所述指令时,所述一个或以上处理器被配置为使所述系统:与网络建立安全连接;通过所述安全连接获取安全控制信息;获取操作输入;基于所述安全控制信息以及所述操作输入进行安全验证;当所述安全验证通过时基于所述操作输入进行相应操作。
在一些实施例中,为了与网络建立安全连接,所述一个或以上处理器被配置为使所述系统:通过所述网络发送所述智能锁具的特征信息;通过所述网络获取加密密钥,所述加密密钥与所述特征信息相关;基于所述加密密钥对通过所述 网络发送的特征信息进行加密操作。
在一些实施例中,所述一个或以上处理器进一步被配置为使所述系统:接收绑定请求;基于所述绑定请求,获取控制设备的控制设备信息;基于所述控制设备信息,在安全验证失败时向所述控制设备发送告警信息。
在一些实施例中,所述操作输入包括加密后的输入信息;为了基于所述安全控制信息以及所述操作输入进行安全验证,所述一个或以上处理器被配置为使所述系统:基于所述加密后的输入信息和所述安全控制信息进行安全验证。
在一些实施例中,所述操作输入为多个字符组成的第一验证信息;为了基于所述安全控制信息和所述操作输入进行安全验证,所述一个或以上处理器被配置为使所述系统:基于所述安全控制信息获取第二验证信息;当所述第二验证信息与所述第一验证信息符合预设条件时安全验证通过。
在一些实施例中,所述获取操作输入包括获取以下输入的一种或多种:获取字符输入;获取生物特征输入;获取无线输入。
在一些实施例中,所述相应操作包括开锁操作;所述一个或以上处理器进一步被配置为使所述系统:当进行所述开锁操作后进行开锁验证操作;根据验证结果执行闭锁操作和提示操作中的一种或多种。
本申请实施例之一提供一种智能锁具控制系统,包括:处理模块,用于与网络建立安全连接;通信模块,用于通过所述安全连接获取安全控制信息;输入/输出模块,用于获取操作输入;安全模块,用于基于所述安全控制信息以及所述操作输入进行安全验证;控制模块,用于当所述安全验证通过时基于所述操作输入进行相应操作。
本申请实施例之一提供一种计算机可读存储介质,所述存储介质存储计算机指令,当计算机读取所述存储介质中的所述计算机指令后,所述计算机执行如本申请中任一实现方式描述的方法。
本申请实施例之一提供一种用于安全通信的方法,所述方法包括:获取智能锁具的安全连接请求,所述安全连接请求中包含所述智能锁具的特征信息;基 于所述安全连接请求,确定与所述智能锁具相对应的加密密钥;将与所述智能锁具相对应的加密密钥发送给所述智能锁具;其中,与所述智能锁具相对应的加密秘钥为使用所述智能锁具相对应的哈希值对原始网络秘钥进行加密得到;所述与智能锁具相对应的哈希值为对所述智能锁具的特征信息进行哈希运算得到。
在一些实施例中,将与所述智能锁具相对应的所述加密密钥发送给所述智能锁具之后,所述方法还包括:接收所述智能锁具发送的应用层秘钥的请求信息;为所述智能锁具分配所述智能锁具特有的原始应用层秘钥;利用所述智能锁具相对应的哈希值对所述智能锁具特有的原始应用层秘钥进行加密,得到与所述智能锁具相对应的加密应用层秘钥;向所述智能锁具发送与所述智能锁具相对应的所述加密应用层秘钥。
在一些实施例中,向所述智能锁具发送与所述智能锁具相对应的所述加密应用层秘钥之后,所述方法还包括:接收所述智能锁具发送的加密数据包;其中,所述加密数据包包括:由所述原始网络秘钥加密的网络层数据、以及由所述智能锁具特有的原始应用层秘钥加密的应用层数据;利用所述原始网络秘钥和所述智能锁具特有的原始应用层秘钥对所述加密数据包进行解密。
本申请实施例之一提供一种智能锁具绑定方法,所述方法包括:接收绑定请求,所述绑定请求中携带有所述智能锁具的设备信息与用户终端的设备信息,所述智能锁具的设备信息由所述用户终端扫描所述智能锁具后获取得到;将所述智能锁具与所述用户终端进行绑定,得到绑定信息;将所述绑定信息发送给所述智能设备和所述用户终端。
在一些实施例中,所述将所述绑定信息发送给所述智能锁具和所述用户终端后,所述方法还包括:对所述用户终端与所述智能锁具进行时间同步处理;和/或获取所述智能锁具的状态信息,并将所述状态信息发送给所述用户终端。
在一些实施例中,所述将所述绑定信息发送给所述智能锁具和所述用户终端后,所述方法还包括:获取所述用户终端生成的操作信息,并将所述操作信息发送给所述智能锁具;获取所述智能锁具的操作结果,并将所述操作结果发送 给所述用户终端。
本申请实施例之一提供一种用于控制智能锁具的方法,所述方法包括:获取操作输入,所述操作输入包括加密后的输入信息;对所述加密后的输入信息进行解密,得到解密后的输入信息;确定所述解密后的输入信息与安全控制信息是否相匹配:若是,则安全验证通过,并基于所述操作输入进行相应操作。
在一些实施例中,对所述输入信息的加密过程包括:基于加密口令,对所述输入信息进行加密;以及若所述操作输入是从用户端接收的,所述获取操作输入包括:接收所述用户端发送的加密口令生成请求;基于所述加密口令生成请求,获得加密口令;向所述用户端发送所述加密口令;所述用户端基于所述加密口令对所述操作输入进行加密,得到所述加密后的输入信息。
在一些实施例中,所述对所述加密后的输入信息进行解密,得到解密后的输入信息包括:基于所述加密口令,对所述加密后的输入信息进行解密。
在一些实施例中,所述获取操作输入包括:基于秘钥对所述加密口令进行加密,得到经加密后的加密口令;基于所述经加密后的加密口令对所述操作输入进行加密;以及所述对所述加密后的输入信息进行解密,得到解密后的输入信息包括:基于秘钥对所述加密口令进行加密,得到经加密后的加密口令;基于所述经加密后的加密口令对所述加密后的输入信息进行解密。
在一些实施例中,所述解密后的输入信息包括生物特征信息;所述确定所述解密后的输入信息与安全控制信息是否相匹配包括:基于所述解密后的输入信息进行身份认证;以及,所述方法还包括:将所述身份认证的结果和所述进行相应操作的结果发送至第一指定设备。
在一些实施例中,所述解密后的输入信息包括关联信息标记,所述方法还包括:向服务器发送与所述关联信息标记对应的关联信息。
本申请实施例之一提供一种解锁方法,所述方法包括:获取操作输入,并解析所述操作输入;确定所述操作输入中是否包含结束标志位信息:若是,则获取所述操作输入中的第一验证信息;确定所述第一验证信息与预设的第二验证 信息是否符合预设条件:若是,则基于所述操作输入进行相应操作。
在一些实施例中,所述预设条件包括预设时间条件和所述第一验证信息与所述第二验证信息匹配。
在一些实施例中,在所述获取操作输入之前,所述方法包括:检测所述操作输入的输入设备的是否处于工作状态;若是,则获取所述操作输入;若否,则清除所述操作输入。
在一些实施例中,所述确定所述操作输入中是否包含结束标志位信息包括:若否,则确定所述操作输入无效。
在一些实施例中,所述确定所述第一验证信息与预设的第二验证信息是否符合预设条件包括:获取网络时间协议时间;基于所述网络时间协议时间,校准本地时间。
本申请实施例之一提供一种智能锁具控制电路,包括:控制单元;显示单元,用于显示所述智能锁具的信息;所述显示单元与所述控制单元通信连接;开锁单元,所述开锁单元包括:触摸输入模块,用于接收用户的字符输入信息;生物特征输入模块,用于接收用户的生物特征输入信息;至少一个或者多个无线通信模块,用于与另一无线通信模块建立通信,并获取其内存储的安全控制信息;所述控制单元根据所述字符输入信息、所述生物特征输入信息和所述安全控制信息进行安全验证。
在一些实施例中,所述智能锁具控制电路还包括状态检测单元,所述状态检测单元包括至少一个检测传感器,用于检测智能锁具状态,并将所检测的智能锁具状态传送至所述控制单元。
在一些实施例中,所述状态检测单元还包括与所述控制单元相连的红外检测传感器,用于快速将唤醒所述控制单元,使其从睡眠模式切换至工作模式。
在一些实施例中,所述状态检测单元还包括与所述控制单元相连的噪声检测传感器,所述噪声检测传感器用于检测所述智能锁具周围环境的噪声,所述控制单元根据所检测的噪声实时调节门铃音量。
在一些实施例中,所述智能锁具控制电路还包括安全检测单元;所述安全检测单元用于检测所述智能锁具是否被撬锁,并在所述智能锁具被撬锁时,向所述控制单元发送报警信号;或者用于检测用户是否通过内面板把手开门,如果用户是否通过内面板把手开门,则可以正常开门,否则无法开门。
在一些实施例中,所述智能锁具控制电路还包括无线通信单元以及加密单元,所述控制单元通过所述无线通信单元与服务器通信,向所述服务器上传所述智能锁具相关信息;所述加密单元用于对所述智能锁具相关信息上传至所述服务器前进行加密,以及用于对所述通信过程中所传输的信息进行加密;所述智能锁具相关信息包括开锁信息、智能锁具状态信息、智能锁具安全信息、电池电量信息。
本申请实施例之一提供一种智能锁具控制方法,所述方法包括:对所述智能锁具进行开锁验证操作;确定验证结果是否为开锁成功:若是,记录并上报开锁信息,以及执行闭锁操作和/或提示操作;若否,执行提示操作。
在一些实施例中,所述对所述智能锁具进行开锁验证操作,包括:检测智能锁具的预设部件的输入输出IO接口的电位是否发生变化:若是,则确定检测到所述智能锁具的目标开锁操作。
在一些实施例中,所述对所述智能锁具进行开锁验证操作,包括:检测是否接收到操作输入,所述操作输入包括操作指令和/或操作信息:若是,则确定检测到所述智能锁具的目标开锁操作。
在一些实施例中,所述确定验证结果为开锁成功后,执行闭锁操作,包括:在确定验证结果为开锁成功后,检测安装有所述智能锁具的门体是否处于关闭状态:若是,控制所述智能锁具执行闭锁操作。
在一些实施例中,所述确定验证结果为开锁成功后,执行闭锁操作,包括:在确定验证结果为开锁成功后,开始计时;当所述计时的时长大于预设时长时,控制所述智能锁具执行闭锁操作。
在一些实施例中,在所述智能锁具执行闭锁操作之后,所述方法还包括: 生成关联设备联动指令,所述关联设备联动指令用于控制开启与所述智能锁具关联的摄像装置;将所述关联设备联动指令发送至所述摄像装置。
在一些实施例中,在所述智能锁具执行闭锁操作之后,所述方法还包括:记录闭锁信息并上报所述闭锁信息。
本申请实施例之一提供一种用于安全通信的方法,所述方法包括:网关接收智能设备发送的入网请求;其中,入网请求携带有智能设备的地址信息;网关根据智能设备的地址信息,将智能设备相对应的加密网络秘钥发送给智能设备、并为智能设备分配网络地址;其中,智能设备相对应的加密网络秘钥由网关使用与智能设备相对应的哈希值对原始网络秘钥进行加密得到;智能设备相对应的哈希值由网关对智能设备发送的智能设备特有的安装码信息进行哈希运算得到。
在一些实施例中,网关根据智能设备的地址信息,将智能设备相对应的加密网络秘钥发送给智能设备、并为智能设备分配网络地址之后,还包括:网关接收智能设备发送的应用层秘钥的请求信息;网关为智能设备分配智能设备特有的原始应用层秘钥;网关利用智能设备相对应的哈希值对智能设备特有的原始应用层秘钥进行加密,得到与智能设备相对应的加密应用层秘钥;网关向智能设备发送与智能设备相对应的加密应用层秘钥。
在一些实施例中,网关向智能设备发送与智能设备相对应的加密应用层秘钥之后,还包括:网关接收智能设备发送的加密数据包;其中,加密数据包包括:由原始网络秘钥加密的网络层数据、以及由智能设备特有的原始应用层秘钥加密的应用层数据;网关利用原始网络秘钥和智能设备特有的原始应用层秘钥对加密数据包进行解密。
在一些实施例中,网关接收智能设备发送的入网请求之后,还包括:根据智能设备的地址信息,判断智能设备是否具有入网权限;若智能设备具有入网权限,则网关执行根据智能设备的地址信息,将智能设备相对应的加密网络秘钥发送给智能设备、并为智能设备分配网络地址的步骤。
在一些实施例中,所述方法还包括:网关按照预设的时间周期,检测与智 能设备进行通信时的丢包率以及网关所处环境的环境底噪;网关判断丢包率是否大于第一阈值以及判断环境底噪是否大于第二阈值;若网关判断出丢包率大于第一阈值,和/或,环境底噪大于第二阈值,则网关切换至其他空闲信道创建网络,并向智能设备发送切换信道通知信息;其中,切换信道通知信息中携带有切换后的信道的标识信息。
本申请实施例之一提供一种用于安全通信的方法,包括:智能设备向网关发送入网请求;其中,入网请求携带有智能设备的地址信息;智能设备接收网关发送的智能设备相对应的加密网络秘钥、并得到网关分配的网络地址;其中,智能设备相对应的加密网络秘钥由网关使用与智能设备相对应的哈希值对原始网络秘钥进行加密得到;智能设备相对应的哈希值由网关对智能设备发送的智能设备特有的安装码信息进行哈希运算得到;智能设备利用与智能设备相对应的哈希值对与智能设备相对应的加密网络秘钥进行解密,得到原始网络秘钥。
在一些实施例中,智能设备接收网关发送的与智能设备相对应的加密网络秘钥、并得到网关分配的网络地址之后,还包括:智能设备向网关发送应用层秘钥的请求信息;智能设备接收网关分配的与智能设备相对应的加密应用层秘钥;其中,加密应用层秘钥由网关采用智能设备相对应的哈希值对智能设备特有的原始应用层密码进行加密得到;智能设备利用智能设备相对应的哈希值,对与智能设备相对应的加密应用层秘钥进行解密,得到智能设备特有的原始应用层秘钥。
在一些实施例中,智能设备利用与智能设备相对应的哈希值,对与智能设备相对应的加密应用层秘钥进行解密,得到智能设备特有的原始应用层秘钥之后,还包括:智能设备利用原始网络秘钥加密数据包中的网络层数据,得到加密的网络层数据;智能设备利用智能设备特有的原始应用层秘钥加密数据包中的应用层数据,得到加密的应用层数据;智能设备向网关发送加密的数据包;其中,加密的数据包中包括加密的网络层数据和加密的应用层数据。
本申请实施例之一提供一种用于安全通信的装置,应用于网关,该装置包 括:第一接收单元,用于接收智能设备发送的入网请求;其中,入网请求携带有智能设备的地址信息;第一发送单元,用于根据智能设备的地址信息,将智能设备相对应的加密网络秘钥发送给智能设备、并为智能设备分配网络地址;其中,智能设备相对应的加密网络秘钥由网关使用与智能设备相对应的哈希值对原始网络秘钥进行加密得到;智能设备相对应的哈希值由网关对智能设备发送的智能设备特有的安装码信息进行哈希运算得到。
在一些实施例中,上述装置还包括:第二接收单元,用于接收智能设备发送的应用层秘钥的请求信息;分配单元,用于为智能设备分配智能设备特有的原始应用层秘钥;加密单元,用于利用智能设备相对应的哈希值对智能设备特有的原始应用层秘钥进行加密,得到与智能设备相对应的加密应用层秘钥;第二发送单元,用于向智能设备发送与智能设备相对应的加密应用层秘钥。
本申请实施例之一提供一种用于安全通信的装置,应用于智能设备,该装置包括:第一发送单元,用于向网关发送入网请求;其中,入网请求携带有智能设备的地址信息;第一接收单元,用于接收网关发送的智能设备相对应的加密网络秘钥、并得到网关分配的网络地址;其中,智能设备相对应的加密网络秘钥由网关使用与智能设备相对应的哈希值对原始网络秘钥进行加密得到;智能设备相对应的哈希值由网关对智能设备发送的智能设备特有的安装码信息进行哈希运算得到;第一解密单元,用于利用与智能设备相对应的哈希值对与智能设备相对应的加密网络秘钥进行解密,得到原始网络秘钥。
在一些实施例中,上述装置还包括:第二发送单元,用于向网关发送应用层秘钥的请求信息;第二接收单元,用于接收网关分配的与智能设备相对应的加密应用层秘钥;其中,加密应用层秘钥由网关采用智能设备相对应的哈希值对智能设备特有的原始应用层密码进行加密得到;第二解密单元,用于利用智能设备相对应的哈希值,对与智能设备相对应的加密应用层秘钥进行解密,得到智能设备特有的原始应用层秘钥。
本申请实施例之一提供一种计算机可读介质,其上存储有计算机程序,其 中,程序被处理器执行时实现如本申请中任一实现方式描述的方法。
本申请实施例之一提供一种处理器,该处理器用于运行程序,其中,该程序运行时实现如本申请任一实现方式描述的方法。
本申请实施例之一提供一种设备,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序;当该一个或多个程序被该一个或多个处理器执行时,使得该一个或多个处理器实现如本申请中任一实现方式描述的方法。
本申请实施例之一提供一种设备绑定方法,包括:扫描待绑定设备;向扫描到的待绑定设备发送设备信息获取请求;获得所述待绑定设备返回的所述待绑定设备的设备信息;将设备绑定请求发送至服务器,所述设备绑定请求中携带有所述待绑定设备的设备信息与第一设备的设备信息;接收所述服务器将所述待绑定设备与所述第一设备绑定后返回的绑定信息,使所述待绑定设备和所述第一设备分别至少获得所述绑定信息中的部分信息。
在一些实施例中,所述方法应用于第一设备中,所述第一设备为用户终端,所述待绑定设备为电子锁,所述接收所述服务器将所述待绑定设备与所述第一设备绑定后返回的绑定信息,使所述待绑定设备和所述第一设备分别至少获得所述绑定信息中的部分信息,包括:接收所述服务器将所述电子锁与所述用户终端绑定后返回的绑定信息,从所述绑定信息中获取与所述电子锁对应的部分信息并进行保存;从所述绑定信息中获取与所述用户终端对应的部分信息并发送至所述电子锁。
在一些实施例中,所述方法应用于第一设备中,所述第一设备为用户终端,所述待绑定设备为电子锁,在所述接收所述服务器将所述待绑定设备与所述第一设备绑定后返回的绑定信息,使所述待绑定设备和所述第一设备分别至少获得所述绑定信息中的部分信息后,所述方法还包括:所述用户终端与所述电子锁进行时间同步处理;和/或,所述用户终端获取所述电子锁的电量信息。
在一些实施例中,所述方法应用于第一设备中,所述第一设备为用户终端,所述待绑定设备为电子锁,在所述接收所述服务器将所述待绑定设备与所述第 一设备绑定后返回的绑定信息,使所述待绑定设备和所述第一设备分别至少获得所述绑定信息中的部分信息后,所述方法还包括:所述用户终端向所述电子锁下发开锁密码;所述用户终端接收所述电子锁返回的开锁密码已生效的通知。
在一些实施例中,所述方法应用于用户终端中,所述第一设备为电子锁,所述待绑定设备为键盘设备,所述接收所述服务器将所述待绑定设备与所述第一设备绑定后返回的绑定信息,使所述待绑定设备和所述第一设备分别至少获得所述绑定信息中的部分信息,包括:接收所述服务器将所述键盘设备与所述电子锁绑定后返回的绑定信息,从所述绑定信息中获取与所述键盘设备对应的部分信息并发送至所述电子锁;从所述绑定信息中获取与所述电子锁对应的部分信息并发送至所述键盘设备。
在一些实施例中,所述服务器和所述键盘设备中均预先存储有所述键盘设备的设备标识和预设密钥,所述获得所述待绑定设备返回的所述待绑定设备的设备信息,包括:获得所述键盘设备使用所述预设密钥对其设备标识进行加密后返回的已加密的设备标识;所述将设备绑定请求发送至服务器,所述设备绑定请求中携带有所述待绑定设备的设备信息与第一设备的设备信息,包括:将设备绑定请求发送至服务器,以使所述服务器使用存储的所述预设密钥对所述已加密的设备标识进行解密获得所述键盘设备的设备标识并确定获得的所述键盘设备的设备标识是否为预先存储的设备标识中的一个,所述设备绑定请求中携带有所述已加密的设备标识与所述电子锁的设备信息;所述接收所述服务器将所述键盘设备与所述电子锁绑定后返回的绑定信息,包括:接收所述服务器在确定获得的所述键盘设备的设备标识为预先存储的设备标识中的一个的情况下将所述键盘设备与所述电子锁绑定后返回的绑定信息。
本申请实施例之一提供一种设备绑定方法,应用于待绑定设备,所述方法包括:发送广播消息,获得用户终端在接收到所述广播消息后返回的设备信息获取请求;将所述待绑定设备的设备信息发送至所述用户终端以使所述用户终端将设备绑定请求发送至服务器,所述设备绑定请求中携带有所述待绑定设备的 设备信息与第一设备的设备信息;获得所述服务器将所述待绑定设备与所述第一设备绑定后返回的绑定信息中的至少部分信息,其中,所述第一设备至少获得所述绑定信息中的部分信息。
在一些实施例中,所述第一设备为用户终端,所述待绑定设备为电子锁,所述电子锁获得的绑定信息中的至少部分信息为:所述绑定信息中与所述用户终端对应的部分信息;所述用户终端获得的绑定信息中的至少部分信息为:所述绑定信息中与所述电子锁对应的部分信息。
在一些实施例中,所述第一设备为电子锁,所述待绑定设备为键盘设备,所述电子锁获得的绑定信息中的至少部分信息为:所述绑定信息中与所述键盘设备对应的部分信息;所述键盘设备获得的绑定信息中的至少部分信息为:所述绑定信息中与所述电子锁对应的部分信息。
在一些实施例中,所述服务器和所述键盘设备中均预先存储有所述键盘设备的设备标识和预设密钥,所述将所述待绑定设备的设备信息发送至所述用户终端以使所述用户终端将设备绑定请求发送至服务器,所述设备绑定请求中携带有所述待绑定设备的设备信息与第一设备的设备信息,包括:所述键盘设备使用所述预设密钥对其设备标识进行加密获得已加密的设备标识,将所述已加密的设备标识发送至所述用户终端以使所述用户终端将设备绑定请求发送至服务器,以使所述服务器使用存储的所述预设密钥对所述已加密的设备标识进行解密获得所述键盘设备的设备标识并确定获得的所述键盘设备的设备标识是否为预先存储的设备标识中的一个,其中,所述设备绑定请求中携带有所述已加密的设备标识与所述电子锁的设备信息;所述获得所述服务器将所述待绑定设备与所述第一设备绑定后返回的绑定信息中的至少部分信息,包括:获得所述服务器在确定获得的所述键盘设备的设备标识为预先存储的设备标识中的一个的情况下,所述服务器将所述待绑定设备与所述第一设备绑定后返回的绑定信息中的至少部分信息。
本申请实施例之一提供一种用户终端,包括:处理器、存储器及存储在存 储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:扫描待绑定设备;向扫描到的待绑定设备发送设备信息获取请求;获得所述待绑定设备返回的所述待绑定设备的设备信息;将设备绑定请求发送至服务器,所述设备绑定请求中携带有所述待绑定设备的设备信息与第一设备的设备信息;接收所述服务器将所述待绑定设备与所述第一设备绑定后返回的绑定信息,使所述待绑定设备和所述第一设备分别至少获得所述绑定信息中的部分信息。
本申请实施例之一提供一种待绑定设备,包括:处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:发送广播消息,获得用户终端在接收到所述广播消息后返回的设备信息获取请求;将所述待绑定设备的设备信息发送至所述用户终端以使所述用户终端将设备绑定请求发送至服务器,所述设备绑定请求中携带有所述待绑定设备的设备信息与第一设备的设备信息;获得所述服务器将所述待绑定设备与所述第一设备绑定后返回的绑定信息中的至少部分信息。
本申请实施例之一提供一种用户终端,包括:设备扫描单元、第一请求发送单元、第一信息获得单元、绑定请求单元和信息接收单元,所述设备扫描单元,用于扫描待绑定设备;所述第一请求发送单元,用于向扫描到的待绑定设备发送设备信息获取请求;所述第一信息获得单元,用于获得所述待绑定设备返回的所述待绑定设备的设备信息;所述绑定请求单元,用于将设备绑定请求发送至服务器,所述设备绑定请求中携带有所述待绑定设备的设备信息与第一设备的设备信息;所述信息接收单元,用于接收所述服务器将所述待绑定设备与所述第一设备绑定后返回的绑定信息,使所述待绑定设备和所述第一设备分别至少获得所述绑定信息中的部分信息。
本申请实施例之一提供一种待绑定设备,包括:广播发送单元、第二请求发送单元和第二信息获得单元,所述广播发送单元,用于发送广播消息,获得用户终端在接收到所述广播消息后返回的设备信息获取请求;所述第二请求发送单元,用于将所述待绑定设备的设备信息发送至所述用户终端以使所述用户终 端将设备绑定请求发送至服务器,所述设备绑定请求中携带有所述待绑定设备的设备信息与第一设备的设备信息;所述第二信息获得单元,用于获得所述服务器将所述待绑定设备与所述第一设备绑定后返回的绑定信息中的至少部分信息。
本申请实施例之一提供一种用于控制智能锁的方法,所述方法包括:接收控制指令;若所述控制指令包括经预设加密算法加密后的加密密码,则对所述加密密码进行解密,得到经解密后的密码;若所述经解密后的密码与预先存储的密码相匹配,则执行与所述控制指令相应的控制操作。
在一些实施例中,所述预设加密算法的加密过程包括:基于加密口令,对待加密的密码进行加密;以及若所述控制指令是从用户端接收的,且所述控制指令包括所述加密密码,则在所述接收控制指令之前,所述方法还包括:接收用户端发送的加密口令生成请求;基于所述加密口令生成请求,随机生成加密口令;将随机生成的加密口令返回给所述用户端,以使所述用户端基于所述随机生成的加密口令对待加密的密码进行加密,得到加密密码。
在一些实施例中,所述对所述加密密码进行解密,包括:基于所述随机生成的加密口令,对所述加密密码进行解密。
在一些实施例中,所述预设加密算法的加密过程进一步包括:利用秘钥对加密口令进行加密,得到经加密后的加密口令;利用所述经加密后的加密口令对待加密的密码进行加密;以及所述基于所述随机生成的加密口令,对所述加密密码进行解密,包括:利用秘钥对所述随机生成的加密口令进行加密,得到经加密后的加密口令;利用所述经加密后的加密口令对所述加密密码进行解密。
在一些实施例中,所述方法还包括:若所述经解密后的密码属于生物特征信息,则基于所述经解密后的密码进行身份认证;以及在所述执行与所述控制指令相应的控制操作之后,所述方法还包括:将控制操作执行结果和身份认证结果发送至第一指定设备。
在一些实施例中,若所述经解密后的密码预先关联防劫持标记,则在执行与所述控制指令相应的控制操作时,所述方法还包括:向服务器发送用于提示用 户被劫持的信息,以使所述服务器向第二指定设备发送告警信息。
在一些实施例中,所述控制指令为开锁指令、上锁指令、信息查看指令以及信息更新指令中的任一项。
本申请实施例之一提供一种用于控制智能锁的装置,所述装置包括:接收模块,用于接收控制指令;解密模块,用于若所述控制指令包括经预设加密算法加密后的加密密码,则对所述加密密码进行解密,得到经解密后的密码;执行模块,用于若所述经解密后的密码与预先存储的密码相匹配,则执行与所述控制指令相应的控制操作。
本申请实施例之一提供一种计算机可读介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现如本申请任一实施例所述的用于控制智能锁的方法。
本申请实施例之一提供一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行如本申请任一实施例所述的用于控制智能锁的方法。
本申请实施例之一提供一种设备,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如本申请任一实施例所述的用于控制智能锁的方法。
本申请实施例之一提供一种用于解锁的方法,应用于智能设备,所述方法包括:获取第一解锁密码,并解析所述第一解锁密码;若解析得到用于指示密码输入结束的结束标志位信息,获取所述第一解锁密码中的第二解锁密码;若所述第二解锁密码与预设的真实密码相匹配且当前时间满足设定的时间条件,则基于所述第二解锁密码执行解锁操作。
在一些实施例中,时间条件包括当前时间处于指定的有效时间范围内,指定的有效时间范围包括以下任一项:预设的允许解锁时间范围,基于真实密码对应的生效时间和真实密码对应的过期时间计算得到的有效时间范围。
在一些实施例中,第一解锁密码是通过键盘输入的;以及在获取第一解锁 密码之前,所述方法还包括:响应于检测到用户通过键盘输入的第一解锁密码,确定键盘当前是否处于工作状态;以及获取第一解锁密码,包括:响应于确定键盘当前处于工作状态,获取第一解锁密码。
在一些实施例中,所述方法还包括:响应于确定键盘当前未处于工作状态,清除第一解锁密码。
在一些实施例中,解析第一解锁密码,包括:查找第一解锁密码是否携带用于指示密码输入结束的结束标志位信息,若第一解锁密码未携带结束标志位信息,确定第一解锁密码为无效密码。
在一些实施例中,所述智能设备包括时钟芯片;以及当前时间的获取过程包括:获取时钟芯片的本地时间,将本地时间作为当前时间。
在一些实施例中,所述方法还包括:获取NTP时间;基于NTP时间,校准所述时钟芯片的本地时间。
在一些实施例中,所述智能设备与用户端通信连接;以及获取NTP时间,包括:接收用户端发送的NTP时间,NTP时间由用户端从服务器处获取。
本申请实施例之一提供一种用于解锁的装置,应用于智能设备,该装置包括:处理单元,用于获取第一解锁密码,并解析第一解锁密码;获取单元,用于若解析得到用于指示密码输入结束的结束标志位信息,获取第一解锁密码中的第二解锁密码;解锁单元,用于若第二解锁密码与预设的真实密码相匹配且当前时间满足设定的时间条件,则基于第二解锁密码执行解锁操作。
在一些实施例中,第一解锁密码是通过键盘输入的;以及所述装置还包括:确定单元,用于响应于检测到用户通过键盘输入的第一解锁密码,确定键盘当前是否处于工作状态;以及处理单元进一步用于:响应于确定单元确定键盘当前处于工作状态,获取第一解锁密码。
在一些实施例中,所述处理单元进一步用于:查找第一解锁密码是否携带用于指示密码输入结束的结束标志位信息,若第一解锁密码未携带结束标志位信息,确定第一解锁密码为无效密码。
本申请实施例之一提供一种门锁控制电路,所述门锁控制电路包括控制单元、以及与所述控制单元电性相连的显示单元以及开锁单元;所述显示单元用于显示门锁的信息,所述开锁单元包括触摸输入模块、生物特征输入模块、至少一个或者多个无线通信模块;所述触摸输入模块用于接收用户所输入的数字密码;所述生物特征输入模块用于录入用户的生物特征信息;所述无线通信模块用于与另一无线通信模块建立通信,并获取其内存储的密码信息,所述控制单元根据所输入的数字密码、所录入生物特征信息、所获取的密码信息判断是否开锁。
在一些实施例中,所述门锁控制电路还包括状态检测单元,所述状态检测单元包括多个检测传感器,用于检测门锁状态,并将所检测的门锁状态传送至所述控制单元。
在一些实施例中,所述状态检测单元包括与所述控制单元相连的锁舌检测传感器、把手检测传感器以及钥匙检测传感器,所述门锁状态包括门锁锁体状态、把手状态、机械钥匙开锁状态,所述锁舌检测传感器、把手检测传感器以及钥匙检测传感器分别用于检测门锁锁体状态、把手状态、机械钥匙开锁状态,并将所述门锁锁体状态、把手状态、机械钥匙开锁状态传送至所述控制单元。
在一些实施例中,所述状态检测单元还包括与所述控制单元相连的红外检测传感器,用于快速将唤醒所述控制单元,使其从睡眠模式切换至工作模式。
在一些实施例中,所述红外检测传感器还用于检测所述门锁周围环境的光线的亮度,并根据所检测的亮度对所述显示单元亮度进行实时调整。
在一些实施例中,所述状态检测单元还包括与所述控制单元相连的噪声检测传感器,所述噪声检测传感器用于检测所述门锁周围环境的噪声,所述控制单元根据所检测的噪声实时调节门铃音量。
在一些实施例中,所述门锁控制电路还包括安全检测单元,所述安全检测单元包括第一防撬传感器,所述第一防撬传感器用于检测所述门锁是否被撬锁,并在所述门锁被撬锁时,向所述控制单元发送报警信号。
在一些实施例中,所述安全检测单元还包括第二防撬传感器,所述第二防 撬传感器用于检测用户是否通过内面板把手开门,如果用户是否通过内面板把手开门,则可以正常开门,否则无法开门。
在一些实施例中,所述门锁控制电路还包括电源管理单元,所述电源管理单元包括电池、电源输出模块以及充电模块,所述电池通过所述电源输出模块与所述控制单元相连,以向所述控制单元供电,所述电池通过所述充电模块连接电源进行充电。
在一些实施例中,所述电源管理单元还包括电量采集模块,所述电量采集模块用于实时获取电池电量,并将所获取的电池电量传送至所述控制单元。
在一些实施例中,所述门锁控制电路还包括无线通信单元以及加密单元,所述控制单元通过所述无线通信单元与服务器通信,向所述服务器上传开锁信息、门锁状态信息、门锁安全信息、电池电量信息,所述加密单元用于在上传上述信息前进行加密,所述加密单元还用于对所述通信过程中中所传输的信息进行加密。
本申请实施例之一提供一种门锁,所述包括门锁以及设置于其内的门锁控制电路,所述门锁控制电路为本申请任一实施例所述的门锁控制电路。
本申请实施例之一提供一种智能门锁控制方法,所述方法包括:检测智能门锁的目标开锁操作,所述目标开锁操作为预先设定的需检测的开锁方式;在检测到所述智能门锁的目标开锁操作之后,记录开锁操作信息并上报所述开锁操作信息;在确认开锁成功后,控制所述智能门锁执行自动上锁操作。
在一些实施例中,所述检测智能门锁的目标开锁操作,包括:检测智能门锁的预设部件的输入输出IO接口的电位是否发生变化;如果检测到所述预设部件的IO接口的电位发生变化,则确定检测到所述智能门锁的目标开锁操作。
在一些实施例中,所述检测智能门锁的预设部件的IO接口的电位是否发生变化,包括:检测钥匙锁芯的IO接口的电位是否发生变化;或,检测所述智能门锁的锁控制机构的IO接口的电位是否发生变化。
在一些实施例中,所述检测智能门锁的目标开锁操作,包括:检测是否接 收到目标终端设备发送的开锁指令,所述目标终端设备为与所述智能门锁关联的终端设备;如果检测到所述开锁指令,则确定检测到所述智能门锁的目标开锁操作。
在一些实施例中,所述检测是否接收到目标终端设备发送的开锁指令,包括:检测是否接收到目标终端设备发送的蓝牙开锁指令;或,检测是否接收到目标终端设备发送的远程开锁指令;或,检测是否接收到目标终端设备发送的近场通信NFC开锁指令。
在一些实施例中,所述检测智能门锁的目标开锁操作,包括:检测是否接收到密码开锁指令;如果检测到所述密码开锁指令,则确定检测到所述智能门锁的目标开锁操作。
在一些实施例中,所述检测是否接收到密码开锁指令,包括:检测是否接收到数字密码开锁指令;或,检测是否接收到生物特征密码开锁指令。
在一些实施例中,所述在确认开锁成功后,控制所述智能门锁执行自动上锁操作,包括:在确认开锁成功后,检测安装有所述智能门锁的门体是否处于关闭状态;当检测到所述门体处于关闭状态时,控制所述智能门锁执行自动上锁操作。
在一些实施例中,所述智能门锁内设置有第一传感器、第二传感器,所述检测安装有智能门锁的门体是否处于关闭状态,包括:获取所述第一传感器的采集数据;根据所述第一传感器的采集数据,确定所述门体的加速度;当所述加速度大于预设阈值时,获取所述第二传感器采集的数据;根据所述第二传感器采集的数据确定所述门体处于关闭状态还是处于开启状态。
在一些实施例中,所述智能门锁内还设置有第一计时器,所述当所述加速度大于预设阈值时,获取所述第二传感器采集的数据,包括:当所述加速度大于预设阈值时,获取所述第二传感器在所述第一计时器的计时时长达到第一预设时长之前采集的数据,并在所述第一计时器的计时时长达到第一预设时长之后,控制所述第二传感器处于休眠状态。
在一些实施例中,所述第二传感器为地磁传感器,所述获取所述第二传感器采集的数据,包括:获取所述地磁传感器采集的地磁通量;所述根据所述第二传感器采集的数据确定所述门体处于关闭状态还是处于开启状态,包括:当所述地磁通量处于预设地磁通量区间内时,确定所述门体处于关闭状态;当所述地磁通量处于预设地磁通量区间外时,确定所述门体处于开启状态。
在一些实施例中,所述智能门锁还设置有第二计时器,所述在确认开锁成功后,控制所述智能门锁执行自动上锁操作,包括:在确认开锁成功后,触发所述第二计时器开始计时;当所述第二计时器的计时时长大于第二预设时长时,控制所述智能门锁执行自动上锁操作。
在一些实施例中,在所述控制所述智能门锁执行自动上锁操作之后,所述方法还包括:生成关联设备联动指令,所述关联设备联动指令用于控制开启与所述智能门锁关联的摄像装置;将所述关联设备联动指令发送至所述摄像装置。
在一些实施例中,在所述控制所述智能门锁执行自动上锁操作之后,所述方法还包括:记录自动上锁信息并上报所述自动上锁信息。
本申请实施例之一提供一种智能门锁控制装置,所述装置包括:开锁操作检测单元,用于检测智能门锁的目标开锁操作,所述目标开锁操作为预先设定的需检测的开锁方式;记录单元,用于在检测到所述智能门锁的目标开锁操作之后,记录开锁操作信息并上报所述开锁操作信息;自动上锁单元,用于在确认开锁成功后,控制所述智能门锁执行自动上锁操作。
在一些实施例中,所述自动上锁单元,具体包括:门体状态检测子单元,用于在确认开锁成功后,检测安装有所述智能门锁的门体是否处于关闭状态;自动上锁子单元,用于当检测到所述门体处于关闭状态时,控制所述智能门锁执行自动上锁操作。
在一些实施例中,所述装置还包括:联动单元,用于在所述控制所述智能门锁执行自动上锁操作之后,生成关联设备联动指令,所述关联设备联动指令用于控制开启与所述智能门锁关联的摄像装置;将所述关联设备联动指令发送至 所述摄像装置。
本申请实施例之一提供一种计算机可读介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现如本申请任一实施例所述的方法。
本申请实施例之一提供一种处理器,所述处理器用于运行程序,其中,所述程序运行时实现如本申请任一实施例所述的方法。
本申请实施例之一提供一种设备,包括:一个或多个处理器;存储装置,其上存储有一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如本申请任一实施例所述的方法。
附图说明
本申请将以示例性实施例的方式进一步说明,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:
图1示出了根据本申请一些实施例所示的一种智能锁具控制系统的应用场景示意图;
图2是根据本申请一些实施例所示的智能锁具控制设备的示例性硬件和/或软件的示意图;
图3是根据本申请一些实施例所示的计算设备的示例性硬件和/或软件的示意图;
图4示出了根据本申请一些实施例所示的一种智能锁具控制方法的示例性流程图;
图5示出了根据本申请的一些实施例所示的智能锁具控制方法500的示例性流程图;
图6示出了根据本申请一些实施例所示的一种安全通信的方法的示例性流程示意图;
图7示出了根据本申请一些实施例所示的可以应用于其中的示例性系统 架构图;
图8示出了根据本申请一些实施例所示的用于安全通信的方法的一个实施例的流程示意图;
图9示出了根据本申请一些实施例所示的用于安全通信的方法的又一个实施例的流程示意图;
图10示出了根据本申请一些实施例所示的用于安全通信的方法的又一个实施例的流程示意图;
图11示出了根据本申请一些实施例所示的用于安全通信的方法的又一个实施例的流程示意图;
图12示出了根据本申请一些实施例所示的用于安全通信的装置的一个实施例的结构示意图;
图13示出了根据本申请一些实施例所示的用于安全通信的装置的又一个实施例结构示意图;
图14示出了根据本申请的一些实施例所示的智能锁具控制方法1400的示例性流程图;
图15示出了根据本申请一些实施例所示的一种用于设备绑定的方法的示例性流程示意图;
图16示出了根据本申请一些实施例所示的一种设备绑定方法;
图17示出了根据本申请一些实施例所示的键盘设备的示意图;
图18示出了根据本申请一些实施例所示的另一种设备绑定方法的流程图;
图19示出了根据本申请一些实施例所示的另一种设备绑定方法的流程图;
图20示出了根据本申请一些实施例所示的另一种设备绑定方法的流程图;
图21示出了根据本申请一些实施例所示的另一种设备绑定方法的流程图;
图22示出了根据本申请一些实施例所示的另一种设备绑定方法的流程图;
图23示出了根据本申请一些实施例所示的另一种设备绑定方法的流程图;
图24示出了根据本申请一些实施例所示的另一种设备绑定方法的流程图;
图25示出了根据本申请一些实施例所示的一种用户设备的结构示意图;
图26示出了根据本申请一些实施例所示的一种待绑定设备的结构示意图;
图27是根据本申请的一些实施例提供的智能锁具控制方法的示例性流程图;
图28是根据本申请的一些实施例提供的用于控制智能锁具的方法的流程图;
图29是根据本申请的一些实施例提供的用于控制智能锁具的方法的应用场景的示意图;
图30是根据本申请的一些实施例提供的用于控制智能锁具的方法的流程图;
图31是根据本申请的一些实施例提供的用户事先录入防劫持指纹信息的过程的示意图;
图32是根据本申请的一些实施例提供的用于控制智能锁具的系统的结构示意图;
图33是根据本申请的一些实施例提供的用于控制智能锁具的装置的结构示意图;
图34是根据本申请的一些实施例提供的控制设备的结构示意图;
图35是根据本申请的一些实施例提供的智能锁具控制方法的示例性流程图;
图36是根据本申请的一些实施例提供的用于解锁的方法的流程图;
图37是根据本申请的一些实施例提供的用于解锁的方法流程示意图;
图38是根据本申请的一些实施例提供的用于解锁的装置的结构框图;
图39是根据本申请的一些实施例提供的用于解锁的装置的结构框图;
图40是根据本申请的一些实施例提供的用于解锁的装置的结构框图;
图41是根据本申请的一些实施例所示的智能锁具130获取操作指令和/或操作信息方法的示例性流程图;
图42是根据本申请的一些实施例所示的智能锁具130控制电路的示例性结构图;
图43是根据本申请的一些实施例所示的智能锁具控制方法的示例性流程图;
图44是根据本申请的一些实施例可以应用于其中的示例性系统架构图;
图45是根据本申请的一种智能门锁控制方法的一个实施例的流程图;
图46是根据本申请的一种智能门锁控制方法的又一个实施例的流程图;
图47是根据本申请的一种智能门锁的一个实施例的结构图;
图48是根据本申请的一种智能门锁控制方法的又一个实施例的流程图;
图49是根据本申请的一种智能门锁控制方法的又一个实施例的流程图;
图50是根据本申请的一种智能门锁控制装置的一个实施例的结构图。
具体实施方式
为了更清楚地说明本申请实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本申请的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本申请应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
应当理解,本文使用的“系统”、“装置”、“单元”和/或“模组”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
如本申请和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
本申请中使用了流程图用来说明根据本申请的实施例的系统所执行的操 作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
图1示出了根据本申请一些实施例所示的一种智能锁具控制系统的应用场景示意图。
智能锁具控制系统100可以广泛应用于居民住宅、办公楼、厂区、仓库、商场、学校、医院、酒店、出租房屋、机场、火车站、地铁站等各类生产、生活领域。如图1所示,智能锁具控制系统100可以包括:服务器110、网络120、智能锁具130和用户终端140。
智能锁具控制系统100可以获取安全控制信息,并对智能锁具130用户的操作输入进行安全验证,确认安全验证通过后对智能锁具130执行相应的操作(如,开锁操作、闭锁操作或提醒操作)。在一些实施例中,操作输入可以包括操作指令和/或操作信息。智能锁具控制系统100可以应用于各种不同的场景。例如,智能锁具控制系统100可以应用于门禁设备(例如,门锁、闸机),此场景下智能锁具130可以为门禁设备。根据用户的操作指令和/或操作信息可以进行安全验证,以判断是否许可该用户通过该门禁设备。进一步的,如果安全验证通过,则判断许可该用户通过该门禁设备,智能锁具控制系统100可以控制该门禁设备开锁。又例如,智能锁具控制系统100可以应用于考勤设备(例如,考勤机)。根据用户的操作指令和/或操作信息可以进行安全验证可以判断该用户的身份信息是否存在于考勤设备所对应的数据库中。进一步的,如果该用户的身份信息存在于考勤设备所对应的数据库中,智能锁具控制系统100可以记录当前时刻将其作为用户的考勤信息。又例如,智能锁具控制系统100可以应用于交通设备(例如,自行车、电动车、汽车等)。该交通设备可以是私人的交通设备(如,私家车)也可以是共享交通设备(如,共享汽车、共享单车)。根据用户的操作指令和/或操作信息可以进行安全验证,以判断该用户是否是该交通设备的主人或当前租赁者,进而确定是否打开该交通设备的锁。又例如,智能锁具 控制系统100可以是用于互联网服务的线上服务平台,如需要身份鉴权的线上支付平台(如,网上购物平台)、网上银行、网上叫车平台、网上订餐平台等。根据用户的操作指令和/或操作信息,智能锁具控制系统100可以搜索并关联平台中的相关账户以进行安全验证,以判断是否许可用户的服务请求。又例如,智能锁具控制系统100还可以应用于需要进行身份鉴权的电子设备(例如,手机、笔记本电脑、平板电脑)。根据用户的操作指令和/或操作信息,智能锁具控制系统100可以进行安全验证,以判断是否许可该电子设备本身的开关机、进入系统、下载软件等操作请求以及其中应用程序的使用权限。又例如,智能锁具控制系统100还可以应用于电器设备或智能电器设备(例如,洗衣机、冰箱、空调、空气净化器、电视机、供暖设备)。根据用户的操作指令和/或操作信息可以进行安全验证,以判断该用户是否是该电器设备的主人或合法使用者,进而确定是否打开该电器设备的开关锁。需要注意的是,智能锁具控制系统100还可以应用在其它需要进行安全验证的设备、场景和应用程序中,在此不作限定,任何可以使用本申请所包含的身份确认方法的设备、场景和/或应用程序都在本申请的保护范围内。
在一些实施例中,服务器110可以用于处理与确定用户身份相关的信息和/或数据。例如,服务器110可以处理身份确认设备130中用户的身份确认信息,并根据身份确认信息完成对用户身份的确认。在一些实施例中,身份确认信息可以包括第一识别信息和第二识别信息。又例如,服务器110可以根据身份确认设备130中获取的用户身份确认信息与预先储存的用户身份确认信息进行对比匹配,确认用户的身份。再例如,服务器110可以根据用户身份的确认结果生成控制身份确认设备130的指令。服务器110可以是独立的服务器或者服务器组。该服务器组可以是集中式的或者分布式的(如:服务器110可以是分布系统)。
在一些实施例中,该服务器110可以是区域的或者远程的。例如,服务器110可以通过网络120访问存储于身份确认设备130、用户终端140中的信息和 /或资料。在一些实施例中,服务器110可以直接与身份确认设备130、用户终端140连接以访问存储于其中的信息和/或资料。例如,服务器110可以位于身份确认设备130中或与身份确认设备130直接连接。在一些实施例中,服务器110可以在云平台上执行。例如,该云平台可以包括私有云、公共云、混合云、社区云、分散式云、内部云等中的一种或其任意组合。
在一些实施例中,服务器110可以包含处理设备。该处理设备可以处理与智能锁具130控制有关的数据和/或信息以执行一个或多个本申请中描述的功能。例如,处理设备可以接收用户终端140发送的操作指令和/或操作信息信号,向智能锁具130发送操作指令。又例如,处理设备可以获取智能锁具130对操作指令和/或操作信息的执行情况,并将所述执行情况发送至用户终端140,或者根据所述执行情况进行后续操作(如,对智能锁具130执行闭锁操作)。在一些实施例中,处理设备可以包含一个或多个子处理设备(例如,单芯处理设备或多核多芯处理设备)。仅仅作为范例,处理设备可包含中央处理器(CPU)、专用集成电路(ASIC)、专用指令处理器(ASIP)、图形处理器(GPU)、物理处理器(PPU)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、可编辑逻辑电路(PLD)、控制器、微控制器单元、精简指令集电脑(RISC)、微处理器等或以上任意组合。
网络120可促进智能锁具控制系统100中数据和/或信息的交换。在一些实施例中,智能锁具控制系统100中的一个或多个组件(例如,服务器110、智能锁具130、用户终端140)可以通过网络120发送数据和/或信息给智能锁具控制系统100中的其他组件。例如,智能锁具130执行操作输入的信息可以通过网络120传输至服务器110。又例如,服务器110中关于安全验证的结果可以通过网络120传输至用户终端140。在一些实施例中,网络120可以是任意类型的有线或无线网络。例如,网络120可以包括缆线网络、有线网络、光纤网络、电信网络、内部网络、网际网络、区域网络(LAN)、广域网络(WAN)、无线区域网络(WLAN)、都会区域网络(MAN)、公共电话交换网络(PSTN)、 蓝牙网络、ZigBee网络、近场通讯(NFC)网络等或以上任意组合。在一些实施例中,网络120可以包括一个或多个网络进出点。例如,网络120可以包含有线或无线网络进出点,如基站和/或网际网络交换点120-1、120-2、...,通过这些进出点,身份确认系统100的一个或多个组件可以连接到网络120上以交换数据和/或信息。
智能锁具130可以获取安全控制信息和用户的操作指令和/或操作信息,并根据安全控制信息对用户的操作指令和/或操作信息进行安全验证。安全验证通过后可以根据用户的操作指令和/或操作信息进行相应操作(如,开锁操作或闭锁操作)。在一些实施例中,智能锁具130可以包括门锁装置130-1、考勤装置130-2、闸机装置130-3、交通装置130-4和通信装置130-5。例如,当智能锁具130为门锁装置130-1时,根据用户的操作指令和/或操作信息可以判断是否许可用户打开该门锁装置130-1。用户的操作指令和/或操作信息通过安全验证后,门锁装置130-1进行开锁。该门锁装置130-1可以应用于门体、车位地锁、保险箱、行李箱等。在一些实施例中,按类别来区分,门锁装置130-1可以包括按键式门锁、拨盘式门锁、电子钥匙式门锁、触摸式门锁、密码识别式门锁、遥控式门锁、卡片识别式门锁(如磁卡、IC卡)、生物识别式门锁(例如,指纹、指静脉、掌纹、面容、声音、虹膜、视网膜)等中的一种,或其任意组合。又例如,当智能锁具130为考勤装置130-2时,根据用户的操作指令和/或操作信息可以判断该用户的身份信息是否存在于考勤装置130-2所对应的存储设备中。进一步的,如果该用户的身份信息存在于考勤设备所对应的存储设备中,考勤装置130-2可以记录该用户的身份信息及当前时刻将其作为用户的考勤信息(例如,用户的姓名、工号、考勤时间、地理位置)。在一些实施例中,考勤装置130-2可以包括生物识别考勤装置、移动考勤装置。在一些实施例中,生物识别考勤装置可以包括指纹考勤装置、指静脉考勤装置、掌纹考勤装置、面容考勤装置、声音考勤装置、虹膜考勤装置、视网膜考勤装置等,或其任意组合。在一些实施例中,移动考勤装置可以是指通过安装有相应考勤客户端(例如软件、手机APP 等)完成考勤的移动终端(例如,手机、电脑、智能手表、可穿戴设备等)。又例如,当智能锁具130为闸机装置130-3时,根据用户的操作指令和/或操作信息进行安全验证,可以判断是否许可用户通过该闸机装置130-3。进一步的,如果判断结果为许可该用户通过该闸机装置130-3,则闸机装置130-3进行开锁并对用户放行;反之,则闸机装置130-3不开锁。闸机装置130-3可以应用于机场、地铁站、轻轨站、汽车客运站、火车站、办公楼、居住区等需要对用户身份进行确定的入口或出口。在一些实施例中,闸机装置130-3可以包括摆闸装置、翼闸装置、三辊闸装置、旋转闸装置、平移闸装置等,或其任意组合。又例如,当智能锁具130为交通装置130-4(如,自行车、电动车、汽车等)时,该交通装置130-4可以是私人的交通设备(如,私家车)也可以是共享交通设备(如,共享汽车、共享单车)。根据用户的操作指令和/或操作信息进行安全验证,可以判断该用户是否是该交通设备的主人或当前租赁者,进而确定是否打开该交通设备的锁。当交通装置130-4对用户的操作指令和/或操作信息通过安全验证后,交通装置130-4可以进行开锁或启动。当智能锁具130为通信装置130-5时,根据用户的操作指令和/或操作信息进行安全验证,通信装置130-5可以判断是否许可该电子设备本身的开关机、进入系统、下载软件等操作请求以及其中应用程序(如,线上支付平台)的使用权限。关于通信装置130-5的具体形式可以参考本申请中用户终端140的相关描述。
需要注意的是,智能锁具130并不限于图1中所示的门锁装置130-1、考勤装置130-2、闸机装置130-3、交通装置130-4和通信装置130-5,还可以应用在其它需要进行开锁或闭锁的设备,在此不作限定,任何可以使用本申请所包含的智能锁具控制方法的设备都在本申请的保护范围内。
在一些实施例中,用户终端140可以获取智能锁具控制系统100中的信息或数据。在一些实施例中,用户终端140可以获取关于智能锁具130状态的推送信息。在一些实施例中,推送信息可以包括智能锁具130的开关状态信息、用户通行信息、用户使用信息、报警信息等。在一些实施例中,用户可以通过用 户终端140获取用户的操作指令和/或操作信息。例如,用户终端140可以与智能锁具130通过网络120连接(例如,有线连接,无线连接),用户可以通过用户终端140获取用户的操作指令和/或操作信息,该用户的操作指令和/或操作信息可通过用户终端140传输至服务器110。例如,在一些实施例中,用户终端140可以包括移动装置140-1、平板电脑140-2、笔记本电脑140-3等中的一种或其任意组合。在一些实施例中,移动装置140-1可以包括智能家居装置、可穿戴装置、智能行动装置、虚拟实境装置、增强实境装置等或其任意组合。在一些实施例中,智能家具装置可以包括智能照明装置、智能电器的控制装置、智能监测装置、智能电视、智能摄像机、对讲机等或其任意组合。在一些实施例中,可穿戴装置可以包括智能手环、智能鞋袜、智能眼镜、智能头盔、智能手表、智能衣物、智能背包、智能配饰等或其任意组合。在一些实施例中,智能行动装置可以包括智能电话、个人数字助理(PDA)、游戏装置、导航装置、POS装置等或其任意组合。在一些实施例中,虚拟实境装置和/或增强实境装置可以包括虚拟实境头盔、虚拟实境眼镜、虚拟实境眼罩、增强实境头盔、增强实境眼镜、增强实境眼罩等或以上任意组合。
在一些实施例中,智能锁具控制系统100还可以包括控制设备。控制设备是能够发出指令以控制智能锁具130执行相应操作的设备或装置等。在一些实施例中,控制设备与用户终端可以是相同的设备。例如,智能手机、智能手持终端、智能可穿戴设备、笔记本电脑、台式计算机等。在一些实施例中,控制设备可以与智能锁具130建立绑定关系,并向智能锁具130发送操作指令,以控制智能锁具130进行诸如开锁、闭锁等操作。
在一些实施例中,智能锁具控制系统100还可以包括输入设备。输入设备是接收一种或多种输入信息的设备或装置。例如,密码键盘、图像获取装置、语音采集装置、生物特征采集装置、蓝牙设备、NFC设备等。在一些实施例中,输入设备与用户终端可以是相同的设备。输入设备可以接收各种输入信息,并发送给智能锁具130。各种输入信息可以包括但不限于文本输入信息、图像输入信 息、语音输入信息、生物特征输入信息、网络数据输入信息等。
在一些实施例中,智能锁具控制系统100还可以包括存储设备。存储设备可以存储资料(例如,安全控制信息)和/或指令(例如,开/关锁指令、报警指令)。在一些实施例中,存储设备可以存储从智能锁具130和/或用户终端140获取的资料。在一些实施例中,存储设备可以存储供服务器110执行或使用的信息和/或指令,以执行本申请中描述的示例性方法。在一些实施例中,存储设备可以包括大容量存储器、可移动存储器、挥发性读写存储器(例如,随机存取存储器RAM)、只读存储器(ROM)等或以上任意组合。在一些实施例中,存储设备可以在云平台上实现。例如,该云平台可以包括私有云、公共云、混合云、社区云、分散式云、内部云等或以上任意组合。
在一些实施例中,存储设备可以与网络120连接以与智能锁具控制系统100的一个或多个组件(例如,服务器110、智能锁具130、用户终端140等)通讯。智能锁具控制系统100的一个或多个组件可以通过网络120访问存储于存储设备中的资料或指令。在一些实施例中,存储设备可以直接与智能锁具控制系统100中的一个或多个组件(如,服务器110、智能锁具130、用户终端140)连接或通讯。在一些实施例中,存储设备可以是服务器110的一部分。在一些实施例中,服务器110可以与智能锁具130独立设置。在一些实施例中,服务器110还可以位于智能锁具130中。
图2是根据本申请一些实施例所示的智能锁具控制设备的示例性硬件和/或软件的示意图。
如图2所示,智能锁具控制设备200可以包括通信模块210、安全模块220、处理模块230(也被称为处理器)、控制模块240(也被称为控制单元)、提醒模块250、输入/输出模块260、驱动模块270(也被称为自动上锁单元)、机械结构280、检测模块290等等。需要注意的是,本申请中提到的模块、单元、子单元可以通过硬件、软件或者软件和硬件的结合的方式来实现。其中,硬件的实现方式可以包括利用实体部件组成的电路或结构来实现;软件的实现方式可 以包括将模块、单元、子单元对应的操作以代码的形式存储在存储器中,由适当的硬件例如,微处理器来执行。在本文提到的模块、单元、子单元执行其操作时,如果没有特殊说明,既可以指包含该功能的软件代码被执行,也可以指具有该功能的硬件被使用。同时,本文中所提到的模块、单元、子单元在对应硬件的时候并不限定其对应硬件的结构,只要能实现其功能的硬件都在本申请保护范围内。例如,本文中所提到的不同模块、单元、子单元可以对应同一个硬件结构。又例如,本文中所提到的同一个模块、单元、子单元也可以对应多个独立的硬件结构。
通信模块210可以用于信息或数据的交换。在一些实施例中,通信模块210可以用于智能锁具控制设备200的各组件(例如,安全模块220、处理模块230、控制模块240、提醒模块250、输入/输出模块260、驱动模块270等等)之间的数据传输。例如,提醒模块250可以通过通信模块210将提醒信息发送给输入/输出模块260进行输出。又例如,控制模块240可以通过通信模块210将控制信息发送给驱动模块270执行相应的操作。在一些实施例中,通信模块210也可以用于智能锁具控制系统100的各组件(例如,智能锁具130、网络120、控制设备、输入设备、存储设备、服务器110)之间的数据传输。例如,控制设备可以通过通信模块210将操作指令发送至网络120。又例如,智能锁具130可以通过通信模块210从网络120获取数据或信息(例如,操作指令或操作信息)。在一些实施例中,通信模块210可以用于通过安全连接获取安全控制信息。例如,通信模块210可以从网络120获取服务器110发送的身份验证信息。通信模块210可以采用有线、无线以及有线/无线混合技术。有线技术可以基于诸如金属电缆、混合电缆、光缆等一种或多种光缆组合的方式。无线技术可以包括蓝牙(Bluetooth)、无线网(Wi-Fi)、紫蜂(ZigBee)、近场通信(Near Field Communication,NFC)、射频识别技术(Radio Frequency Identification,RFID)、蜂窝网络(包括GSM、CDMA、3G、4G、5G等)、基于蜂窝的窄带物联网(Narrow Band Internet of Things,NBIoT)等。在一些实施例中,通信模块210可以采用一种或多种编码方式对传输的信息进行编码处理,例如,编码方式可以包括相位 编码、不归零制码、差分曼彻斯特码等。在一些实施例中,通信模块210可以根据需要传输的数据类型或网络类型,选择不同的传输和编码方式。在一些实施例中,通信模块210可以包括一个或多个通信接口,用于不同的通信方式。在一些实施例中,智能锁具控制系统100的各个组件(智能锁具130、网络120、控制设备、输入设备、存储设备、服务器110)可以是分散在多个设备上的,在这种情况下,各个模块可以分别包括一个或多个通信模块210,来进行模块间的信息传输。在一些实施例中,通信模块210可以包括一个接收器和一个发送器。在另一些实施例中,通信模块210可以是一个收发器。
在本申请的一些实施例中,具有接收(获得)或发送信息和/或数据功能的单元或模块均可以认为是通信模块210或其子模块。例如,第一接收模块、第一发送单元、第一请求发送单元、第一信息获得单元、信息接收单元、广播发送单元、无线通信单元等等。
安全模块220可以用于对数据进行安全处理(例如,数据加密、数据解密、安全验证等)。在一些实施例中,安全模块220可以对智能锁具控制设备200中部分其它模块(例如,通信模块210、输入/输出模块260等等)中的信息或数据进行安全处理。在一些实施例中,安全模块220可以对智能锁具控制系统100中各组件的数据交换进行安全处理。例如,安全模块220可以对网络120中传输的数据进行加密,使得数据传输安全性更高。在一些实施例中,安全模块220可以用于基于安全控制信息以及操作输入进行安全验证。例如,安全模块220可以基于安全控制信息对智能锁具控制系统100中的操作信息和/或操作指令进行安全验证。
在本申请的一些实施例中,具有数据加密、数据解密或安全验证功能单元或模块均可以认为是安全模块220或其子模块。例如,加密单元、解密单元、解密模块、身份认证模块等等。
处理模块230可以处理来自智能锁具控制设备200的各组件(例如,通信模块210、安全模块220、控制模块240、提醒模块250、输入/输出模块260 等等)的数据。例如,处理模块230可以处理来自安全模块220的安全验证信息。又例如,处理模块230可以处理来自输入/输出模块260的操作信息或操作指令。在一些实施例中,处理后的数据可以存储到存储器或硬盘中。在一些实施例中,处理模块230可以将其处理后的数据可以通过通信模块210或网络120传送至智能锁具控制系统100中的一个或者多个组件中。例如,处理模块230可以将操作指令的判断结果发送给控制模块240,控制模块240可以根据判断结果执行后续的操作或指令。例如,当操作指令和/或操作信息的判断结果为成功通过后,控制模块240可以发送指令给驱动模块270以控制智能锁具130开锁。在一些实施例中,处理模块230可以用于与网络建立安全连接。例如,处理模块230可以建立智能锁具130与网络120之间的安全连接。又例如,处理模块230可以建立服务器110与网络120之间的安全连接。
控制模块240可以用于管理数据的处理过程及控制设备的运行状态。控制模块240可以与智能锁具控制设备200中其它模块相关联。在一些实施例中,控制模块240可以控制智能锁具控制设备200中的部分其它模块(例如,通信模块210、安全模块220、提醒模块250、输入/输出模块260、驱动模块270等等)的运行状态。例如,控制模块240可以控制驱动模块270启动或停止。又例如,控制模块240可以管理通信模块210中的数据获取或发送过程。又例如,控制模块240可以控制提醒模块250发出提醒信息。在一些实施例中,控制模块240可以用于当安全验证通过时基于操作输入进行相应的操作。例如,控制模块240可以在用户的身份验证通过后,控制智能锁具130执行开锁操作。
在本申请的一些实施例中,具有管理数据的处理过程及控制设备的运行状态功能的模块或单元均可以认为是控制模块240或其子模块。例如,切换单元、执行模块等等。
提醒模块250可以用于生成并发送提醒或告警信息。提醒模块250可以通过通信模块210将生成的提醒或告警信息发送至智能锁具控制设备200中的部分其它模块(例如,输入/输出模块260等)。提醒模块250也可以将生成的 提醒或告警信息发送至智能锁具控制系统100中的各组件。在一些实施例中,告警方式可以包括声音告警、灯光告警、远程告警等,或其任意组合。例如,当告警方式为远程告警,提醒模块250可以通过通信模块210向相关联的控制设备发送提醒信息或告警信息,通信模块210还可以建立智能锁具130与相关联的控制设备之间的通讯(如,语音通讯、视频通讯)。在一些实施例中,当操作指令和/或操作信息的安全验证结果为通过时,提醒模块250也可以通过通信模块210向控制设备发出提醒信息。例如,提醒模块250可以向控制设备发出身份确认成功相关的提醒信息。
输入/输出模块260可以获取、传输和发送信号。智能锁具控制装置200中的其他模块可以通过输入/输出模块260实现连接或通信。输入/输出模块260也可以与智能锁具控制系统100中的其他组件进行连接或通信。在一些实施例中,输入/输出模块260可以用于获取操作输入(例如,操作指令和/或操作信息)。在一些实施例中,输入/输出模块260可以是位于智能锁具130现场的模块,用于在智能锁具130现场进行数据输入或输出。在一些实施例中,从现场进行数据输入的方式可以包括但不限于:触摸输入、扫描输入、语音输入、近距离通信输入等。例如,通过现场的键盘输入输入数据。又例如,通过扫描用户的生物特征输入数据。又例如,通过蓝牙装置等输入数据。在一些实施例中,输入/输出模块260可以通过智能锁具130上的输出装置(例如,显示装置、麦克风等)在现场进行数据输出。例如,智能锁具130的显示装置可以显示智能锁具130是否开锁成功的信息。在一些实施例中,输入/输出模块260也可以是远程的模块,用于通过网络120远程地进行数据输入或输出。例如,输入/输出模块260可以通过网络120从远程设备(例如,控制设备、服务器110)获取数据(例如,操作指令),并通过通信模块210将获取到的数据传输至智能锁具控制设备200的其它模块中。又例如,输入/输出模块260可以将控制模块240的控制结果输出至远程设备(例如,控制设备)中。所述输入/输出模块260可以是有线的USB接口、串行通信接口、并行通信口,或是无线的蓝牙、红外、无线射频识别(Radio- frequency identification,RFID)、无线局域网鉴别与保密基础结构(Wlan Authentication and Privacy Infrastructure,WAPI)、通用分组无线业务(General Packet Radio Service,GPRS)、码分多址(Code Division Multiple Access,CDMA)等,或其任意组合。在一些实施例中,输入/输出模块260可以包括VCC、GND、RS-232、RS-485(例如,RS485-A,RS485-B)和通用网络接口等,或其任意组合。在一些实施例中,输入/输出模块260可以将获取到的操作信息,通过网络120传送给安全模块220。在一些实施例中,输入/输出模块260可以采用一种或多种编码方式对传输的信号进行编码处理。所述编码方式可以包括相位编码、不归零制码、差分曼彻斯特码等,或其任意组合。
驱动模块270可以用于驱动机械结构280执行相应的动作或操作。驱动模块270可以在控制模块240的控制下进行运转。在一些实施例中,驱动模块270可以包括一个或多个驱动力源。在一些实施例中,驱动力源可以包括采用电力驱动的驱动电机。在一些实施例中,驱动电机可以是直流电机、交流感应电机、永磁电机和开关磁阻电机等中的一种或几种的组合。在一些实施例中,驱动模块270可以包括一个或多个驱动电机。驱动模块270的驱动源根据电信号内容进行相应配置(如驱动模块270中的驱动电机相应以每分钟特定的转速转动特定的时间),驱动电机的转动带动与之相连的机械结构280状态的改变(如开锁、关锁、启动)。
机械结构280可以用于执行动作或操作。机械结构280可以与驱动模块270相连,并在驱动模块270的驱动力下执行动作或操作。在一些实施例中,机械结构280可以是智能锁具130中的锁具结构,驱动模块270可以驱动机械结构280执行开锁或闭锁操作。
检测模块290可以用于检测其他模块的工作状态。检测模块290可以包括各种传感器,各种传感器可以包括但不限于力传感器、红外传感器、可见光传感器、位移传感器、声学传感器、时间传感器等等。例如,检测模块290可以包括锁舌检测传感器,锁舌检测传感器可以检测锁舌的位置,从而确定智能锁具处 于开锁状态或闭锁状态。又例如,检测模块290可以包括噪声传感器,噪声传感器可以通过检测开锁噪声信号确定智能门锁处于开锁状态或闭锁状态。又例如,检测模块290可以检测智能锁具的开锁时间或闭锁时间,并将时间信息发送至控制模块240以确定是否需要对智能门锁执行自动上锁操作。在一些实施例中,检测模块290可以与机械结构280连接,用于检测机械结构280的工作状态(例如,开锁状态、闭锁状态等)。在一些实施例中,检测模块290可以与驱动模块270连接,用于检测驱动模块270的工作状态(例如,是否启动等)。在一些实施例中,检测模块290可以将检测信息通过通信模块210发送给控制模块240。在一些实施例中,检测模块290还可以对待检测模块的工作状态进行记录,并将记录信息通过通信模块210发送至其他模块(例如控制模块240)。本申请中,将第三方带有检测功能的设备也视为检测模块,其检测信息可以通过通信模块210传输至其他模块中。第三方带有检测功能的设备可以是视频检测设备、超声波检测设备等等。
在本申请的一些实施例中,具有检测其他模块的工作状态功能的模块或单元均可以认为是检测模块290或其子模块,例如,状态检测单元、安全检测单元、开锁操作检测单元等等。
需要注意的是,智能锁具控制设备200中还可以包括维持其运行的其他模块。例如,供电模块,用于为智能锁具控制装置200中的其他模块(例如,通信模块210、安全模块220、处理模块230、控制模块240、提醒模块250、输入/输出模块260、驱动模块270、机械结构280、检测模块290)提供电力,在此不再赘述。
需要注意的是,智能锁具控制设备200中的各模块可以应用于智能锁具控制系统100中的各个模块中。例如,控制模块240可以是服务器110中的一个功能模块,也可以是控制设备中的一个功能模块,还可以是智能锁具130中的一个功能模块。又例如,安全模块220可以在服务器110中实现,也可以在控制设备中实现,还可以在智能锁具130中实现。
应当理解,图2所示的系统及其模块可以利用各种方式来实现。例如,在一些实施例中,系统及其模块可以通过硬件、软件或者软件和硬件的结合来实现。其中,硬件部分可以利用专用逻辑来实现;软件部分则可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域技术人员可以理解上述的方法和系统可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本说明书的一个或多个实施例的系统及其模块不仅可以有诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用例如由各种类型的处理器所执行的软件实现,还可以由上述硬件电路和软件的结合(例如,固件)来实现。
需要注意的是,以上对于智能锁具控制装置200及其模块的描述,仅为描述方便,并不能把本说明书的一个或多个实施例限制在所举实施例范围之内。可以理解,对于本领域的技术人员来说,在了解该系统的原理后,可能在不背离这一原理的情况下,对各个模块进行任意组合,或者构成子系统与其他模块连接,或者对其中的一个或多个模块进行省略。在一些实施例中,图2中的提醒模块250可以省略。例如,智能锁具控制装置200可以仅在现场设备中执行操作而不发送提醒信息。在一些实施例中,驱动模块270和检测模块290可以为一个模块,该模块可以具有对机械结构280进行检测并驱动的功能。诸如此类的变形,均在本说明书的一个或多个实施例的保护范围之内。
图3是根据本申请一些实施例所示的计算设备的示例性硬件和/或软件的示意图。在一些实施例中,服务器110和/或用户终端140可以在计算设备300上实现。例如,处理设备可以在计算设备300上实施并执行本申请所公开的处理设备的功能。如图3所示,计算设备300可以包括内部通信总线310、处理器320、只读存储器330、随机存储器340、通信端口350、输入/输出接口360、硬 盘370以及用户界面380。
内部通信总线310可以实现计算设备300中各组件间的数据通信。例如,处理器320可以通过内部通信总线310将数据发送到存储器或输入/输出端口360等其它硬件中。在一些实施例中,内部通信总线310可以为工业标准(ISA)总线、扩展工业标准(EISA)总线、视频电子标准(VESA)总线、外部部件互联标准(PCI)总线等。在一些实施例中,内部通信总线310可以用于连接图1所示的智能锁具控制系统100中的各个模块(例如,检测模块290、处理模块230、控制模块240、通信模块210、输入/输出模块260、驱动模块270)。
处理器320可以执行计算指令(程序代码)并执行本申请描述的智能锁具控制系统100的功能。所述计算指令可以包括程序、对象、组件、数据结构、过程、模块和功能(所述功能指本申请中描述的特定功能)。例如,处理器320可以处理从智能锁具控制系统100的智能锁具130或/和用户终端140中获取的操作输入(例如,操作指令和/或操作信息),并根据操作输入进行安全验证以确定是否对智能锁具130执行相应操作(如,开锁操作、闭锁操作或提醒操作)。在一些实施例中,处理器320可以包括微控制器、微处理器、精简指令集计算机(RISC)、专用集成电路(ASIC)、应用特定指令集处理器(ASIP)、中央处理器(CPU)、图形处理单元(GPU)、物理处理单元(PPU)、微控制器单元、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、高级精简指令集计算机(ARM)、可编程逻辑器件以及能够执行一个或多个功能的任何电路和处理器等,或其任意组合。仅为了说明,图3中的计算设备300只描述了一个处理器,但需要注意的是,本申请中的计算设备300还可以包括多个处理器。
计算设备300的存储器(例如,只读存储器(ROM)330、随机存储器(RAM)340、硬盘370等)可以存储从智能锁具控制系统100的任何其他组件中获取的数据/信息。在一些实施例中,计算设备300的存储器可以位于智能锁具130中,也可以位于服务器110中。示例性的ROM可以包括掩模ROM(MROM)、可编程ROM(PROM)、可擦除可编程ROM(PEROM)、电可 擦除可编程ROM(EEPROM)、光盘ROM(CD-ROM)和数字通用盘ROM等。示例性的RAM可以包括动态RAM(DRAM)、双倍速率同步动态RAM(DDR SDRAM)、静态RAM(SRAM)、晶闸管RAM(T-RAM)和零电容(Z-RAM)等。
输入/输出接口360可以用于输入或输出信号、数据或信息。在一些实施例中,输入/输出接口360可以使用户与智能锁具控制系统100进行交互。例如,输入/输出接口360可以包括通信模块210,以实现智能锁具控制系统100的获取安全控制信息的功能。在一些实施例中,输入/输出接口360可以包括输入装置和输出装置。示例性输入装置可以包括键盘、鼠标、触摸屏和麦克风等,或其任意组合。示例性输出装置可以包括显示设备、扬声器、打印机、投影仪等或其任意组合。示例性显示装置可以包括液晶显示器(LCD)、基于发光二极管(LED)的显示器、平板显示器、曲面显示器、电视设备、阴极射线管(CRT)等或其任意组合。通信端口350可以连接到网络以便数据通信。所述连接可以是有线连接、无线连接或两者的组合。有线连接可以包括电缆、光缆或电话线等或其任意组合。无线连接可以包括蓝牙、Wi-Fi、WiMax、WLAN、ZigBee、移动网络(例如,3G、4G或5G等)等或其任意组合。在一些实施例中,通信端口350可以是标准化端口,如RS232、RS485等。在一些实施例中,通信端口350可以是专门设计的端口。
硬盘370可以用于存储服务器110所产生的或从服务器110所接收到的信息及数据。例如,硬盘370可以储存用户的操作输入。在一些实施例中,硬盘370可以包括机械硬盘(HDD)、固态硬盘(SSD)或混合硬盘(HHD)等。在一些实施例中,硬盘370可以设置于服务器110中或智能锁具130中。用户界面380可以实现计算设备300和用户之间的交互和信息交换。在一些实施例中,用户界面380可以用于将智能锁具控制系统100生成的信息、数据呈现给用户。例如,用户界面380可以将智能锁具控制系统100的安全验证结果(例如,安全验证成功、安全验证失败)呈现给用户。在一些实施例中,用户界面380可以包 括一个物理显示器,如带扬声器的显示器、LCD显示器、LED显示器、OLED显示器、电子墨水显示器(E-Ink)等。
图4示出了根据本申请一些实施例所示的一种智能锁具控制方法的示例性流程图。
如图4所示,在一些实施例中,流程400可以包括以下步骤:
步骤S111,与网络120建立安全连接。在一些实施例中,步骤S111可以由处理模块230实现。
安全连接是能够确保数据进行安全传输的数据通道。例如,加密数据传输、HTTPS(Hypertext Transfer Protocol over Secure Socket Layer)、VPN(Virtual Private Network)等。在一些实施例中,处理模块230可以建立网络120与智能锁具控制系统100中的其他组件(例如,服务器110、智能锁具130等等)之间的安全连接。
在一些实施例中,处理模块230可以建立智能锁具130与网络120的安全连接。在一些实施例中,智能锁具130可以获取加密密钥,在网络传输时基于加密密钥使用加密方式传输数据,从而建立安全连接。在一些实施例中,智能锁具130可以通过网络120获取加密密钥。在一些实施例中,智能锁具130可以从本地存储中获取预先设定的加密密钥,也可以从与智能锁具130连接的网络存储设备或其他存储设备中获取预先设定的加密密钥。
在一些实施例中,通过安全连接,智能锁具130可以与控制设备、存储设备、服务器110中的一个或多个安全地传输数据。
关于建立安全连接的更多具体实施例可以参见图5的说明。
步骤S112,获取安全控制信息。在一些实施例中,步骤S112可以由通信模块210实现。
安全控制信息是指能够对智能锁具130的操作进行安全控制的信息。安全信息可以是加密后的验证信息。例如,通过加密算法加密的数字密码、生物特征信息、蓝牙密钥、NFC密码等。在一些实施例中,智能锁具130与网络120建 立安全连接后,可以通过通信模块210从网络120获取安全控制信息。在一些实施例中,智能锁具130也可以通过通信模块210从本地获取安全控制信息。
在一些实施例中,智能锁具130可以从安全控制信息中获取用户身份信息,并对用户进行身份验证,判断是否执行用户通过控制设备发出的操作指令中所要求的操作。
在一些实施例中,智能锁具130可以从安全控制信息中获取第二验证信息,并对第二验证信息与操作信息进行预设条件的安全验证,判断操作信息是否通过安全验证。关于第二验证信息的更多具体内容可以参见图36的说明。
关于获取安全控制信息的更多具体实施例可以参见图35的说明。
步骤S113,获取操作输入。在一些实施例中,步骤S113可以由输入/输出模块260实现。
操作输入是用户在智能锁具控制系统100中执行操作时输入的信息或指令。在一些实施例中,操作输入可以包括操作指令和操作信息。操作指令是控制智能锁具130执行相应操作的指令信息。例如,开锁指令、闭锁指令、开锁检测指令等。操作指令也可以是对智能锁具130进行设置的指令信息,例如,对智能锁具130进行状态配置、启动或禁用某些功能。操作信息是智能锁具130执行相应操作所需的相关输入信息。例如,开锁密码信息、预设密码信息等。在一些实施例中,用户可以通过输入/输出模块260向智能锁具控制系统100中的组件(例如,控制设备、输入设备等等)进行操作输入。
在一些实施例中,用户可以在控制设备中输入操作指令。在一些实施例中,用户输入操作指令的方式可以包括但不限于触摸输入、生物特征输入、键盘输入等。在一些实施例中,操作指令可以通过网络120进行加密后,安全地传输至智能锁具130。
在一些实施例中,用户可以在输入设备中输入操作信息,智能锁具130可以直接获取输入设备中用户输入的操作信息。用户输入操作信息的方式可以包括但不限于触摸输入、生物特征输入、键盘输入等。在一些实施例中,操作信息 可以包括加密后的输入信息。在一些实施例中,输入设备可以对用户的输入信息进行加密。在一些实施例中,操作信息可以包括多个字符组成的第一验证信息。关于第一验证信息的更多具体内容可以参见图36的说明。
步骤S114,基于安全控制信息以及操作输入进行安全验证。在一些实施例中,步骤S114可以由安全模块220实现。
安全验证是为提高智能锁具130执行相应操作的安全性而进行的验证。例如,身份验证、时效性验证、权限验证等。
在一些实施例中,安全模块220可以基于加密后的操作输入(例如,操作指令和/或操作信息)和安全控制信息进行安全验证。在一些实施例中,安全模块220可以基于操作信息的第一验证信息和安全控制信息的第二验证信息进行安全验证。在一些实施例中,安全模块220可以基于安全验证的结果判断是否执行相应操作。
关于对操作指令和/或操作信息进行安全验证的更多具体实施例可以参见图27的说明。
步骤S115,根据安全验证的结果,基于操作输入进行相应操作。在一些实施例中,步骤S115可以由控制模块240实现。
相应操作是指对应于安全验证结果,智能锁具130所执行的操作。智能锁具130执行的相应操作可以包括但不限于开锁操作、闭锁操作、开锁检测操作等。
在一些实施例中,当安全验证通过时,控制模块240可以控制智能锁具130执行开锁操作。在一些实施例中,智能锁具130可以检测目标开锁操作,控制模块240可以控制智能锁具130记录并上报开锁操作信息,并执行自动上锁操作。目标开锁操作可以是基于用户身份验证信息确定的特定用户的开锁操作,也可以是符合其他预设条件的开锁操作。
关于根据安全验证的结果,基于操作指令进行相应操作的更多具体实施例可以参见图27的说明。
在一些实施例中,智能锁具控制方法还可以包括:智能锁具130与控制设备建立绑定关系。
绑定关系是在至少两个设备或装置间建立对应关系,从而使得某些信息传输或操作只能在对应设备或装置间进行。例如,蓝牙配对、MAC地址绑定等。
智能锁具130和/或控制设备可以获取对方设备信息,发送携带对方设备信息的设备绑定请求,从而建立绑定关系。
智能锁具130可以接收建立了绑定关系的控制设备发送的操作指令或信息,并执行相应操作。
关于建立绑定关系的更多具体实施例可以参见图14的说明。
应当注意的是,上述有关流程400的描述仅仅是为了示例和说明,而不限定本说明书的适用范围。对于本领域技术人员来说,在本说明书的指导下可以对流程400进行各种修正和改变。然而,这些修正和改变仍在本说明书的范围之内。在一些实施例中,步骤S111可以省略,即智能锁具控制设备200可以在离线状态下工作,并从本地获取安全控制信息。在一些实施例中,步骤S112和步骤S113的顺序可以互换。在一些实施例中,步骤S112和步骤S113也可以同时进行。
在一些实施例中,处理模块230可以与网络120之间建立安全连接,降低了网络密钥被破解的概率,提高无线通信的安全性。一般情况下,为了保障无线通信的安全,网络120会给智能锁具传输一个加密密钥,由于网络120对所有智能锁具发送的加密密钥都是相同的,网络中的所有智能锁具也均采用该加密密钥进行数据加密,因此会存在通信安全的问题。基于此,为了提高通信安全,网络120可以对智能锁具130发送的智能锁具的特征信息进行运算得到智能锁具的特征信息的计算值(如,哈希值),然后使用该计算值对原始网络密钥进行加密得到加密密钥,并将该加密密钥发送给智能锁具。由于网络120使用智能锁具的特征信息的计算值对原始网络密钥进行加密,而该计算值又是通过智能锁具的特征信息进行运算得来的,因此加密密钥的解密方式只有对应的智能锁 具130才能知道,因此无法被抓包器抓取并破解加密密钥,实现了提高无线通信的安全性。
本申请一些实施例提供了一种智能锁具控制方法,以实现在智能锁具和网络之间建立安全连接。图5是根据本申请的一些实施例所示的智能锁具控制方法500的示例性流程图。
如图5所示,在一些实施例中,处理模块230可以按以下方法与网络建立安全连接:
S501,通过网络发送智能锁具的特征信息。该步骤可以由处理模块230执行。特征信息是智能锁具特有的、代表智能锁具身份的信息,例如,安装码、MAC地址、序列号等。
在一些实施例中,处理模块230可以通过网络120发送智能锁具的安装码、MAC地址等中的一个或多个特征信息。在一些实施例中,智能锁具可通过网络向智能手机发送智能锁具的安装码和MAC地址。具体实施例可参见图6步骤S601、S602。
S502,通过网络获取加密密钥,加密密钥与特征信息相关。处理模块230通过网络120获取加密密钥,所述加密密钥可以是对原始网络密钥加密得到,加密密钥可以是基于智能锁具的特征信息的计算值,例如,智能锁具的特征信息的哈希值。
在一些实施例中,智能手机可以使用加密算法对原始密钥进行加密,加密使用密钥可以是智能锁具安装码的哈希值,智能锁具可以通过网络接收智能手机发送的加密密钥。具体实施例可参见图6步骤S603。
S503,基于加密密钥对通过网络发送的特征信息进行加密操作。控制模块230使用原始网络密钥对通过网络发送的特征信息进行加密操作,其中原始网络密钥可以通过对所述加密密钥进行解密得到。解密密钥可以是基于智能锁具的特征信息的计算值,例如,智能锁具的特征信息的哈希值。
在一些实施例中,智能锁具可以对加密密钥进行解密,得到原始网络密钥, 使用原始网络密钥加密智能设备的序列号,并通过网络发送给智能手机。具体实施例可参见图6步骤S604。
图6示出了根据本申请一些实施例所示的一种安全通信的方法的示例性流程示意图。
所述智能锁具可以是智能锁具130,所述网络也可以是网络120。智能锁具130与网络120可以建立安全连接。在一些实施例中,网络120接收智能锁具130的入网请求;根据智能锁具130的地址信息,将智能设备相对应的加密密钥发送给智能锁具130、并为智能锁具130分配网络地址;其中,智能锁具130相对应的加密密钥由网络120使用智能锁具130特征信息的计算值对原始网络密钥进行加密得到;该计算值由网络120对智能锁具130发送的智能锁具130的特征信息进行运算得到。在一些实施例中,网络120可以是网关。
如图6所示,本申请一些实施例提出了一种用于安全通信的方法600,包括以下步骤:
步骤S601,网络获取智能锁具的特征信息。具体地,网络可以是网关,智能锁具可以是智能锁具130。在一些实施例中,智能锁具130可以向网关发送智能锁具130的特征信息。智能锁具130的特征信息可以是智能锁具130特有的安装码和MAC地址等。
步骤S602,智能锁具向网络发送携带智能锁具的特征信息的请求。具体地,可以是智能锁具130向网关发送携带智能锁具130特征信息的请求。在一些实施例中,智能锁具130可以向网关发送携带智能锁具130的MAC地址的入网请求。
步骤S603,网络使用基于智能锁具的特征信息得到的第一密钥加密第二密钥,并向智能锁具发送加密后的第二密钥。具体地,第一密钥可以是对智能锁具130的特征信息进行运算得到的密钥,第二密钥可以是原始网络密钥。在一些实施例中,网关在向智能锁具130发送加密后的第二密钥时,还可以为智能锁具130分配网络地址。在一些实施例中,网关可以使用基于智能锁具130一 个或多个特征信息处理得到的结果作为第一密钥,例如,使用哈希算法计算得到智能锁具130的安装码的哈希值,使用该哈希值作为第一密钥加密原始网络密钥。在一些实施例中,原始网络密钥可以是网关分配的,也可以是网关从其他地方获取的。
步骤S604,智能锁具使用第一密钥解密加密后的第二密钥,得到第二密钥。具体地,可以是智能锁具130使用基于智能锁具130的特征信息进行运算得到的第一密钥,解密从网关接收到的加密后的第二密钥,得到原始网络密钥。例如,智能锁具130可以使用哈希算法计算得到智能锁具130的安装码的哈希值,使用该哈希值作为解密密钥(即,第一密钥)对加密后的第二密钥进行解密。在一些实施例中,智能锁具130在得到对应的原始网络密钥后,可以使用该原始网络密钥作为加密密钥,加密发送给网关的通信数据,实现安全通信。
图7示出了根据本申请一些实施例所示的可以应用于其中的示例性系统架构图;
如图7所示,本申请实施例公开了一种用于安全通信的系统700,包括:网关701和智能设备702。其中,网关701和智能设备702通过无线通信的方式相连。智能设备702可以为电脑、手机、智能门锁等具有通信功能的电子设备。
在本图说明中,所述网络可以包括网关701,所述智能锁具可以称为智能设备702,本实施例说明了用于通过所述网络发送所述智能锁具的特征信息,通过所述网络获取加密密钥,所述加密密钥与所述特征信息相关。
本申请实施例提供的用于安全通信的系统700中,智能设备702向网关701发送入网请求后,网关701会向智能设备702发送与智能设备702相对应的加密网络密钥,并为智能设备702分配网络地址。其中,智能设备702相对应的加密网络密钥是由智能设备702相对应的哈希值对原始网络密钥加密得到的。而智能设备702相对应的哈希值则是根据智能设备702特有的安装码信息进行哈希运算得到的。因此智能设备702接收到加密网络密钥后,可以根据自身特有的安装码信息进行哈希运算,得到智能设备702相对应的哈希值,并采用哈 希值对加密网络密钥进行解密,实现成功接收网关701发送的网络密钥。
由于本申请提供的用于安全通信的系统700中,网关701发送的加密网络密钥是由网关701使用与智能设备702相对应的哈希值对原始网络密钥进行加密得到的,而与智能设备702相对应的哈希值又是由网关701对智能设备702发送的智能设备702特有的安装码信息进行哈希运算得到,因此可以对加密网络密钥进行解密的哈希值只有网关701和智能设备702知道,难以通过抓包器抓取并破解,进而提高了用于安全通信的系统700的安全性。
具体的,以下分别通过几个实施例对用于安全通信的方法进行说明。
图8示出了根据本申请一些实施例所示的用于安全通信的方法的一个实施例的流程示意图;
如图8所示,本申请实施例公开了一种用于安全通信的方法,包括以下步骤:
在本图说明中,所述网络可以包括网关,所述智能锁具可以称为智能设备,本实施例说明了用于通过所述网络获取加密密钥,所述加密密钥与所述特征信息相关。
S801、智能设备向网关发送入网请求。
其中,智能设备的入网请求携带有智能设备的地址信息。智能设备的地址信息指的是智能设备的介质访问控制地址(Media Access Control,MAC)信息。MAC地址用于说明网络中智能设备的位置,MAC地址具有唯一性,即每个智能设备的MAC地址在网络中都是唯一的,可以把MAC地址看做是智能设备的标识。智能设备通过无线信道向网关发送的入网请求中携带有智能设备的地址信息,就是为了让网关能够根据智能设备的地址信息,查询该智能设备是否拥有入网的权限,如果有入网的权限,网关再进行为智能设备分配网络地址等操作。
需要说明的是,步骤S801也可以看成是网关接收智能设备的入网请求。
S802、网关根据智能设备的地址信息,将智能设备相对应的加密网络密钥发送给智能设备、并为智能设备分配网络地址。
其中,智能设备相对应的加密网络密钥由网关使用与智能设备相对应的哈希值对原始网络密钥进行加密得到。智能设备相对应的哈希值由网关对智能设备发送的智能设备特有的安装码信息进行哈希运算得到。
原始网络密钥指的是没有经过加密的密钥,原始网络密钥是由网关生成的,网关通过将原始网络密钥发给智能设备,智能设备采用原始网络密钥加密所需发送的数据包,网关再去使用原始网络密钥进行解密,从而实现网关与智能设备的安全通信。
智能设备相对应的加密网络密钥是在网关与智能设备进行了绑定后,网关根据智能设备发送过来的地址信息及智能设备特有的安装码信息得到的。由于智能设备的安装码信息是该智能设备特有的信息,因此由安装码信息运算得到的哈希值也是智能设备所特有的信息。与智能设备相对应的哈希值只有智能设备自身可通过对自身的安装码信息进行哈希运算才可得到,因此在网络中,与智能设备相对应的哈希值只有网关和智能设备本身知道,网络中的其他设备均不知道智能设备相对应的哈希值。
网关根据智能设备的地址信息,判断该智能设备是否具有入网权限,即判断智能设备的MAC地址是否具有合法性,是否和网关是否进行过绑定。如果智能设备和网关进行过绑定,那么网关就可以根据智能设备的地址信息得到智能设备相对应的加密网络密钥,并将智能设备相对应的加密网络密钥发送给智能设备,且向该智能设备分配网络地址。通过智能设备相对应的哈希值加密得到的加密网络密钥,只有智能设备和网关才具有可解密的哈希值,因此网关在执行步骤S802时,智能设备相对应的加密网络密钥即使在传输过程中被抓包器抓到了,也会因为没有解密所需的哈希值,无法破解该加密网络密钥,进而提高了网关和智能设备间通信的安全性。
需要说明的是,网关向智能设备发送智能设备相对应的网络密钥以及网关向智能设备分配网络地址的执行先后顺序不影响本申请实施例的实现。且步骤S802也可以看成是智能设备接收网关发送的与智能设备相对应的加密网络密 钥、并得到网关分配的网络地址。
图9示出了根据本申请一些实施例所示的用于安全通信的方法的又一个实施例的流程示意图;
在本图说明中,所述网络可以包括网关,所述智能锁具可以称为智能设备,本实施例说明了用于通过所述网络发送所述智能锁具的特征信息。
可选地,如图9所示,在本申请一具体实施例中,网关得到与智能设备相对应的加密网络密钥的方法,包括:
S901、智能设备发送智能设备特有的安装码信息以及智能设备的地址信息给网关。
其中,智能设备特有的安装码信息指的是智能设备内部存储的一个具有一定字节数的安装码信息。安装码信息具有唯一性,即每一个智能设备中保存的安装码信息都是唯一的,不重复的。且智能设备的安装码信息除了智能设备本身知道以外,其他网络中的智能设备是不知道的。
在一些实施例中,安装码信息可以在设备出厂时由生产厂家写入内部存储。在一些实施例中,安装码信息可以是设备在用户第一次使用时根据特定条件生成,例如,使用设备序列号或MAC地址,结合当前时间,使用预设算法生成,并写入智能设备内部存储。
可选地,在本申请一具体实施例中,执行步骤S901的一种实施方式,包括:
智能设备通过带外方式发送智能设备特有的安装码信息以及智能设备的地址信息给网关。
网关的入网权限通常是关闭的,在收到智能设备发送的智能设备特有的安装码信息以及智能设备的地址信息后,或者用其他方式获取(例如,从厂家数据库获取)新的智能设备特有的安装码信息以及智能设备的地址信息后,可以打开入网权限,然后智能设备可以发送入网请求加入网络。
其中,带外方式指的是不通过智能设备和网关既定的通信通道,而是采用 不同的协议、不同的通信通道实现通信。智能设备采用带外方式传送智能设备特有的安装码信息以及智能设备的地址信息给网关,会更具有安全性,传送过程中受到的干扰会比较低。
在一些实施例中,智能设备的安装码信息和MAC地址等信息可以预先存储在数据库中,例如,生产厂家的数据库,网关可以定期发送请求,从所述数据库中获取新的智能设备的安装码和智能设备的地址信息。
在一些实施例中,网关的入网权限通常是关闭的,在收到智能设备发送的智能设备特有的安装码信息以及智能设备的地址信息后,或者用其他方式获取(例如,从厂家数据库获取)新的智能设备特有的安装码信息以及智能设备的地址信息后,可以打开入网权限,然后智能设备可以发送入网请求加入网络。
S902、网关对智能设备特有的安装码信息进行哈希运算得到与智能设备相对应的哈希值。
在一些实施例中,网关也可以对智能设备特有的其他特征进行运算得到计算值。其他特征可以包括但不限于智能设备MAC地址、安装码信息、序列号等特征信息中的一个,或多个特征的组合。在一些实施例中,所进行的运算也可以使用其他运算算法。其他运算算法可以包括但不限于DES算法、3DES算法等。
其中,与智能设备相对应的哈希值指的是该智能设备特有的哈希值。由于智能设备的安装码信息是该智能设备特有的信息,因此由安装码信息运算得到的哈希值也是智能设备所特有的信息。与智能设备相对应的哈希值只有智能设备自身可通过对自身的安装码信息进行哈希运算才可得到,因此在网络中,与智能设备相对应的哈希值只有网关和智能设备本身知道,网络中的其他设备均不知道智能设备相对应的哈希值。
所述哈希值由智能设备的安装码信息通过哈希算法(即哈希运算)计算得到。所述哈希算法在计算哈希值之前获取。在一些实施例中,所述哈希算法可以是在智能设备出厂时预先设定好,并存储在智能设备内置存储中。在一些实施例 中,所述哈希算法可以通过连接网关或服务器进行更新,其中,传输可以使用带外方式或其他方式。所述更新可以理解为更新哈希算法中的参数,以防止长期使用相同的参数可能造成的泄露风险。在一些实施例中,所述哈希算法可以是预先存储在网关内部存储中,也可以通过外部存储获取并写入内部存储。在一些实施例中,网关可以通过服务器更新所述哈希算法。
需要说明的是,步骤S902可以在执行了图8示出的步骤S801之后再执行,即网关可以预先存储智能设备的地址信息和智能设备的安装码信息的关联关系,直到智能设备执行步骤S801之后,再根据智能设备的地址信息查看是否存在关联的智能设备特有的安装码信息,如果存在的话即具有入网权限。网关找到智能设备的安装码信息后,进而执行步骤S902。
步骤S902也可以在执行图8示出的步骤S801执行之前就执行,即计算得到智能设备对应的哈希值后,网关可以将智能设备的地址信息和智能设备对应的关联关系进行存储,直到智能设备执行步骤S801之后,网关就可以根据智能设备的地址信息,查看是否存在关联的智能设备的哈希值,如果存在的话即具有入网权限,进而执行步骤S903。
S903、网关使用与智能设备相对应的哈希值对原始网络密钥进行加密,得到与智能设备相对应的加密网络密钥。
原始网络密钥是与智能设备唯一对应的用于网络安全传输的密钥。在一些实施例中,网关获取到智能设备安装码和地址信息后(即步骤S901之后),可以生成原始网络密钥。在一些实施例中,网关收到智能设备入网请求后(即步骤S801之后),可以生成原始网络密钥。
原始网络密钥是基于智能设备的一个或多个特征信息,使用算法得到。在一些实施例中,所述特征信息可以包括但不限于智能设备的安装码、MAC地址或两者的结合。在一些实施例中,原始网络密钥可以基于智能设备的特征信息,并结合当前时间等其他条件,使用算法得到。在一些实施例中,所述算法可以是计算智能设备安装码和MAC地址的二进制和。
其中,由于步骤S902得到的与智能设备相对应的哈希值网络中的其他智能设备均是不知道的,因此执行步骤S903时,使用与智能设备相对应的哈希值对原始网络密钥进行加密后得到的与智能设备相对应的加密网络密钥,只能由对应智能设备进行解密,因此降低了加密网络密钥被恶意破解的可能。
需要说明的是,网关利用与智能设备相对应的哈希值对原始网络密钥进行加密时,可采用的加密算法有很多种,既可以采用非对称式加密算法,也可以采用对称式加密算法,均不影响本申请实施例的实现。
所述加密算法在加/解密原始网络密钥之前获取。在一些实施例中,所述加密算法可以是在智能设备出厂时预先设定好,并存储在智能设备内置存储中。在一些实施例中,所述加密算法可以通过连接网关或服务器进行更新,其中,传输可以使用带外方式或其他方式。在一些实施例中,所述加密算法可以是预先存储在网关内部存储中,也可以通过外部存储获取并写入内部存储。在一些实施例中,网关可以通过服务器更新所述加密算法。
需要说明的是,步骤S903可以在图8示出的步骤S801之前执行,即网关计算得到智能设备相对应的加密网络密钥后,将智能设备的地址信息以及智能设备相对应的加密网络密钥存储起来,直到智能设备执行图8示出的步骤S801之后,根据智能设备的地址信息找到智能设备相对应的加密网络密钥。
步骤S903也可以在图8示出的步骤S801执行之后再执行,即智能设备发送入网请求后,再根据预先存储的关联关系找到智能设备相对应的哈希值,进而再去执行步骤S903。
图9示出的网关得到与智能设备相对应的加密网络密钥的方法中,步骤S901是在执行图8示出的步骤S801之前就执行的了,而步骤S902和步骤S903则是可以在步骤S801之前就执行,可以是在步骤S801之后再去执行。
S803、智能设备利用与智能设备相对应的哈希值对与智能设备相对应的加密网络密钥进行解密,得到原始网络密钥。
其中,智能设备相对应的哈希值是智能设备利用智能设备特有的安装码 信息进行哈希运算得到的。需要说明的是,智能设备相对应的哈希值可以在执行步骤S803以前就计算得到,也可以在智能设备接收到与智能设备相对应的加密网络密钥后,再进行计算得到,这两种方式均可不影响本申请实施例的实现。
在一些实施例中,智能设备可以对智能设备特有的一个或多个特征进行哈希运算得到哈希值。参见步骤S902的相关描述。
智能设备得到原始网络密钥之后,可使用原始网络密钥对所需传送的数据包进行加密,并将加密后的数据包发送给网关,网关再利用原始网络密钥进行解密,完成智能设备与网关间的无线通信。
可选地,智能设备执行完步骤S803之后,还可以向网络公布自身的地址信息与分配得到的网络地址的关联关系,使网络中的其他设备知道智能设备的关联关系。当网关由于特殊原因无法使用后,智能设备可以向网络中的其他类似于网关的设备发送入网请求,由于智能设备已经向全网络公布了自身的地址信息与分配得到的网络地址的关联关系,因此网络中的其他类似于网关的设备可知道智能设备具备入网权限,因此可以通过智能设备的入网请求。
可选地,网关在收到智能设备公布的智能设备的地址信息与分配得到的网络地址的关联关系后,可以关闭入网权限。
图10示出了根据本申请一些实施例所示的用于安全通信的方法的又一个实施例的流程示意图;
在本图说明中,所述网络可以包括网关,所述智能锁具可以称为智能设备。
可选地,如图10所示,在本申请一具体实施例中,图7示出的用于安全通信的方法,还可以包括:
S1001、网关按照预设的时间周期,检测与智能设备进行通信时的丢包率以及网关所处环境的环境底噪。
在执行图8示出的方法的过程中,网关按照预设的时间周期,对与智能设备进行通信时的丢包率以及网关所处环境的环境底噪进行周期检测。其中,时间周期可人为进行设定,时间周期越短,则检测越频繁,网关与智能设备间通信 的安全性也会越高。
具体地,网关上电启动后会先判断是否创建过网络,如果创建过网络,则开启创建过的网络,并开始执行步骤S1001。而智能设备在执行图8示出的步骤S801之前,会扫描信道,找到网关所在的信道后,向网关发送入网请求,即执行步骤S801。其中,入网请求指的是加入网关创建的网络的请求。如果网关没有创建过网络,则扫描信道,选择一个空闲的信道加入并创建网络,并在创建网络之后执行步骤S1001。
S1002、网关判断丢包率是否大于第一阈值以及判断环境底噪是否大于第二阈值。
若网关判断出丢包率大于第一阈值,和/或,环境底噪大于第二阈值,则执行步骤S1003。若网关判断出丢包率小于第一阈值且环境底噪大于第二阈值,则继续执行步骤S1001。
若丢包率大于第一阈值,则证明当前网关与智能设备的通信过程并不安全,可能存在抓包器在抓取信道中的数据,因此网关会执行步骤S1003。而如果环境底噪大于第二阈值,则说明当前网关所处的环境干扰性较大,影响到网关与智能设备间的通信,因此也需执行步骤S1003。
需要说明的是网关判断丢包率和判断环境底噪的先后顺序并不影响本申请实施例的实现。
S1003、网关切换至其他空闲信道创建网络,并向智能设备发送切换信道通知信息。
其中,切换信道通知信息中携带有切换后的信道的标识信息。智能设备接收了切换信道通知信息后,会根据切换后的信道的标识信息,找到网关,然后再次向网关发送入网请求。如果智能设备没有收到切换信道通知信息,则会重新扫描信道,找到网关所在的信道后向网关发送切换信道通知信息。
网关切换到其他信道之后,会返回执行步骤S1001,以此来保证通信的安全性。图10示出的方法中,通过在执行图8示出方法的时候,周期性检测丢包 率和环境底噪,进一步提高了网关与智能设备间的通信安全性。
从上述技术方案可以看出,本申请提供的用于安全通信的方法中,网关通过接收入网请求;其中,入网请求携带有智能设备的地址信息。网关根据智能设备的地址信息,将智能设备相对应的加密网络密钥发送给智能设备、并为智能设备分配网络地址。其中,智能设备相对应的加密网络密钥由网关使用与智能设备相对应的哈希值对原始网络密钥进行加密得到;智能设备相对应的哈希值由网关对智能设备发送的智能设备特有的安装码信息进行哈希运算得到。由于网关采用与智能设备相对应的哈希值对原始网络密钥进行加密,而与智能设备相对应的哈希值又是通过智能设备特有的安装码信息进行哈希运算得来的,因此加密网络密钥的解密方式仅有对应智能设备才能知道,其他智能设备由于不知道该智能设备的安装码信息,因此无法通过抓包器抓取并破解该加密网络密钥,进而提高了无线通信的安全性。
图11示出了根据本申请一些实施例所示的用于安全通信的方法的又一个实施例的流程示意图。
在本图说明中,所述网络可以包括网关,所述智能锁具可以称为智能设备,本实施例说明了用于通过所述网络发送所述智能锁具的特征信息,通过所述网络获取加密密钥,所述加密密钥与所述特征信息相关,基于所述加密密钥对通过所述网络发送的特征信息进行加密操作。
如图11所示,本申请实施例公开了另一种用于安全通信的方法,具体包括以下步骤:
S1101、智能设备向网关发送入网请求。
其中,步骤S1101与图8示出的步骤S801的执行原理及过程相同,可参见,此处不再赘述。
S1102、网关根据智能设备的地址信息,判断智能设备是否具有入网权限。
其中,判断智能设备是否具有入网权限指的是判断智能设备的MAC地址是否具有合法性。若智能设备和网关进行过绑定,则智能设备的MAC地址具有 合法性,有入网权限。进一步地,如果智能设备和网关进行过绑定,那么智能设备就有向网关发送过地址信息和特有的安装码信息,网关就可以根据智能设备的地址信息得到智能设备相对应的加密网络密钥,并将智能设备相对应的加密网络密钥发送给智能设备,且向该智能设备分配网络地址。
若智能设备没有入网权限,则结束与智能设备的通信,若智能设备具有入网权限,则执行步骤S1103。
S1103、网关根据智能设备的地址信息,将智能设备相对应的加密网络密钥发送给智能设备、并为智能设备分配网络地址。
其中,步骤S1103与图8示出的步骤S802的执行原理及过程相同,可参见,此处不再赘述。
S1104、智能设备利用与智能设备相对应的哈希值对与智能设备相对应的加密网络密钥进行解密,得到原始网络密钥。
其中,步骤S1104与图8示出的步骤S803的执行原理及过程相同,可参见,此处不再赘述。
S1105、智能设备向网关发送应用层密钥的请求信息。
在一些实施例中,对不同类型的网络数据传输,智能设备可以对每个类型的网络数据使用单独的密钥加密。例如,对网络层数据使用密钥一加密,应用层数据使用密钥二加密,其中密钥一与密钥二不同。在一些实施例中,智能设备可以向网关请求多个密钥,例如,向网关请求密钥一与密钥二。
智能设备传输给网关的数据包中既有网络层数据,又有应用层数据。应用层密钥是用于加密应用层数据的密钥。而步骤S1104得到的原始网络密钥则是用于加密网络层数据的密钥。为了进一步提高无线通信过程中的安全性,智能设备除了使用原始网络密钥加密外,还向网关请求应用层密钥进行加密。
在一些实施例中,网络层数据和应用层数据可以统一使用网络层密钥或应用层密钥进行加密。
需要说明的是,应用层密钥除了可以向网关申请分配,还可以预先配置在 网关和智能设备中。即网关中和智能设备中都存储了相同的应用层密钥,因此就不需要再去请求网关下发应用层密钥。
在一些实施例中,网关和智能设备中存储的网络密钥可通过向服务器发送请求进行更新,或由服务器主动下发进行更新。
还需要说明的是,步骤S1105也可以看成是网关接收智能设备发送的应用层密钥的请求信息。
S1106、网关为智能设备分配智能设备特有的原始应用层密钥。
其中,智能设备特有的原始应用层密钥具有唯一性,是专属于该智能设备的密钥。智能设备特有的原始应用层密钥可以是在接收了智能设备的应用层密钥请求后,网关再随机生成的密钥,也可以是网关已经预先生成了的原始应用层密钥,并在收到智能设备的请求后,选择其中一个还没有分配给其他智能设备的密钥作为智能设备特有的原始应用层密钥。还需要说明的是,原始应用层密钥指的是还未经过加密处理的密钥。
S1107、网关利用智能设备相对应的哈希值对智能设备特有的原始应用层密钥进行加密,得到与智能设备相对应的加密应用层密钥。
其中,步骤S1107中提及的及智能设备相对应的哈希值,与步骤S1103中用于加密原始网络密钥的哈希值是一样的值,都是通过智能设备特有的安装码信息进行哈希运算得到的。使用智能设备相对应的哈希值对智能设备特有的原始应用层密钥进行加密后,得到的与智能设备相对应的加密应用层密钥只能够通过智能设备相对应的哈希值才可解密。而智能设备相对应的哈希值则是智能设备特有的安装码计算得来的,因此只有相对应的智能设备和网关知道。
S1108、网关发送与智能设备相对应的加密应用层密钥给智能设备。
与智能设备相对应的加密应用层密钥在传输过程中,如果被抓包器抓取了,抓包器也会因为没有与智能设备相对应的哈希值从而无法破解。而与智能设备相对应的哈希值是根据智能设备特有的安装码信息计算来的,智能设备特有的安装码信息不会对网络中的其他智能设备公开,进而也降低了第三方恶意破 解应用层密钥的概率。
S1109、智能设备利用与智能设备相对应的哈希值,对与智能设备相对应的加密应用层密钥进行解密,得到智能设备特有的原始应用层密钥。
其中,与智能设备相对应的哈希值可以预先计算好了存储于智能设备中,也可以是接收到与智能设备对应的加密应用层密钥以后,再计算与智能设备相对应的哈希值。
S1110、智能设备利用原始网络密钥加密数据包中的网络层数据,得到加密的网络层数据。
智能设备需要发送给网关的数据包中包括了应用层数据和网络层数据。智能设备通过步骤S1104得到的原始网络密钥对数据包中的网络层数据进行加密,得到了加密的网络层数据。
S1111、智能设备利用智能设备特有的原始应用层密钥加密数据包中的应用层数据,得到加密的应用层数据。
智能设备利用步骤S1109得到的原始应用层密钥对数据包中的应用层数据加密,得到了加密的应用层密钥。
需要说明的是,步骤S1110与步骤S1111执行的先后顺序不影响本申请实施例的实现。且步骤S1110与步骤S1111中可以只执行其中一个步骤,即只对网络层数据做加密、或者只对应用层数据做加密。对数据包中的网络层数据和应用层数据都进行加密的话,数据包被破解的概率会更低,通信的安全性会得到提高。
S1112、智能设备向网关发送加密的数据包。
其中,加密的数据包中包括加密的网络层数据和加密的应用层数据。由于加密的应用层数据是采用智能设备特有的原始应用层密钥加密得到的,因此只有对应智能设备以及网关拥有该密钥,即使加密的数据包被抓取,且破解了原始网络密钥加密的网络层数据,也会因为没有智能设备特有的原始应用层密钥而不能完全破解数据包,进而可进一步提高了智能设备与网关间通信的安全性。
S1113、网关利用原始网络密钥和智能设备特有的原始应用层密钥对加密数据包进行解密。
执行完步骤S1113后,网关得到智能设备发送的数据包,数据包中包括应用层数据和网络层数据,网关与智能设备实现了无线通信。
本申请实施例提供的无线通信的方法中,由于智能设备向网关发送应用层密钥的请求信息后,接收到的是网关分配的与智能设备相对应的加密应用层密钥。而智能设备相对应的加密应用层密钥则是网关通过智能设备相对应的哈希值对智能设备特有的原始应用层密钥加密得到的。因此智能设备可利用智能设备相对应的哈希值,对与智能设备相对应的加密应用层密钥进行解密,即可得到智能设备特有的原始应用层密钥。智能设备采用智能设备特有的原始应用层密钥加密数据包中的应用层数据,采用原始网络密钥加密数据包中的网络层数据,并将加密的数据包发送给网关。由于原始应用层密钥是智能设备特有的,因此即使加密的数据包中网络层数据被破解出来了,但也会因为没有智能设备特有的原始应用层密钥,导致无法破解应用层数据,进而提高了无线通信的安全性。
图12示出了根据本申请一些实施例所示的用于安全通信的装置的一个实施例的结构示意图;
在本图说明中,所述网络可以包括网关,所述智能锁具可以称为智能设备,本实施例说明了用于通过所述网络获取加密密钥,所述加密密钥与所述特征信息相关,基于所述加密密钥对通过所述网络发送的特征信息进行加密操作。
如图12所示,基于上述实施例提出的用于安全通信的方法,本发明实施例还对应公开了一种用于安全通信的装置1200,应用于网关,用于安全通信的装置1200包括:第一接收单元1201以及第一发送单元1202。
第一接收单元1201,用于接收智能设备发送的入网请求。其中,入网请求携带有智能设备的地址信息。
第一发送单元1202,用于根据智能设备的地址信息,将智能设备相对应的加密网络密钥发送给智能设备、并为智能设备分配网络地址。其中,智能设备 相对应的加密网络密钥由网关使用与智能设备相对应的哈希值对原始网络密钥进行加密得到;智能设备相对应的哈希值由网关对智能设备发送的智能设备特有的安装码信息进行哈希运算得到。
可选地,在本申请一具体实施例中,用于安全通信的装置1200还包括:第二接收单元、分配单元、加密单元以及第二发送单元。
第二接收单元,用于接收智能设备发送的应用层密钥的请求信息。
分配单元,用于为智能设备分配智能设备特有的原始应用层密钥。
加密单元,用于利用智能设备相对应的哈希值对智能设备特有的原始应用层密钥进行加密,得到与智能设备相对应的加密应用层密钥。
第二发送单元,用于向智能设备发送与智能设备相对应的加密应用层密钥。
可选地,在本申请一具体实施例中,用于安全通信的装置1200还包括:第三接收单元和解密单元。
第三接收单元,用于接收智能设备发送的加密数据包。其中,加密数据包包括:由原始网络密钥加密的网络层数据、以及由智能设备特有的原始应用层密钥加密的应用层数据。
解密单元,用于利用原始网络密钥和智能设备特有的原始应用层密钥对加密数据包进行解密。
可选地,在本申请一具体实施例中,用于安全通信的装置1200还包括:
第一判断单元,用于根据智能设备的地址信息,判断智能设备是否具有入网权限。若第一判断单元判断出智能设备具有入网权限,则第一发送单元执行根据智能设备的地址信息,将智能设备相对应的加密网络密钥发送给智能设备、并为智能设备分配网络地址。
可选地,在本申请一具体实施例中,用于安全通信的装置1200还包括:
检测单元,用于按照预设的时间周期,检测与智能设备进行通信时的丢包率以及网关所处环境的环境底噪。
第二判断单元,用于判断丢包率是否大于第一阈值以及判断环境底噪是否大于第二阈值。
切换单元,用于若第二判断单元判断出丢包率大于第一阈值,和/或,环境底噪大于第二阈值,则切换至其他空闲信道创建网络。
第三发送单元,用于向智能设备发送切换信道通知信息。其中,切换信道通知信息中携带有切换后的信道的标识信息。
需要说明的是,用于安全通信的装置1200可以包括处理器和存储器,第一接收单元1201以及第一发送单元1202等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中可以包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或多个,通过调整内核参数来实现提高通信的安全性。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
在一些实施例中,存储器可以是本地存储,也可以是网络存储、云存储等以有线或无线方式连接的存储。
在一些实施例中,存储器可以存储智能设备的安装码、MAC地址等智能设备的特征信息,及其对应关系。在一些实施例中,存储器可以存储哈希算法、加密算法等。在一些实施例中,存储器可以存储智能设备的特征信息的哈希值,例如,智能设备的安装码的哈希值。在一些实施例中,存储器可以存储智能设备对应的一个或多个网络传输密钥,例如,原始网络密钥、原始应用层密钥等。在一些实施例中,存储器可以存储智能设备对应的网络地址,及与存储设备相关联的其他信息的对应关系。例如,智能设备与网络传输密钥的关系。
上述本申请实施例公开的用于安全通信的装置1200中的具体的原理和执行过程,与上述本申请实施例公开的用于安全通信的方法相同,可参见上述本申请实施例公开的用于安全通信的方法中相应的部分,这里不再进行赘述。
本申请提供的用于安全通信的装置1200中,通过第一接收单元1201接收入网请求;其中,入网请求携带有智能设备的地址信息。第一发送单元1202根据智能设备的地址信息,将智能设备相对应的加密网络密钥发送给智能设备、并为智能设备分配网络地址。其中,智能设备相对应的加密网络密钥由网关使用与智能设备相对应的哈希值对原始网络密钥进行加密得到;智能设备相对应的哈希值由网关对智能设备发送的智能设备特有的安装码信息进行哈希运算得到。由于网关采用与智能设备相对应的哈希值对原始网络密钥进行加密,而与智能设备相对应的哈希值又是通过智能设备特有的安装码信息进行哈希运算得来的,因此加密网络密钥的解密方式仅有对应智能设备才能知道,其他智能设备由于不知道智能设备的安装码信息,因此无法通过抓包器抓取并破解加密网络密钥,进而提高了无线通信的安全性。
图13示出了根据本申请一些实施例所示的用于安全通信的装置的又一个实施例结构示意图。
在本图说明中,所述网络可以包括网关,所述智能锁具可以称为智能设备,本实施例说明了用于通过所述网络获取加密密钥,所述加密密钥与所述特征信息相关,基于所述加密密钥对通过所述网络发送的特征信息进行加密操作。
如图13所示,基于上述实施例公开的用于安全通信的方法,本发明实施例还对应公开了一种用于安全通信的装置1300,应用于智能设备,包括:第一发送单元1301、第一接收单元1302以及第一解密单元1303。
在一些实施例中,第一发送单元1301和第一接收单元1302与通信模块210对应,第一解密单元1303与处理模块230对应。
第一发送单元1301,用于向网关发送入网请求。其中,入网请求携带有智能设备的地址信息。
第一接收单元1302,用于接收网关发送的智能设备相对应的加密网络密钥、并得到网关分配的网络地址。其中,智能设备相对应的加密网络密钥由网关使用与智能设备相对应的哈希值对原始网络密钥进行加密得到;智能设备相对 应的哈希值由网关对智能设备发送的智能设备特有的安装码信息进行哈希运算得到。
第一解密单元1303,用于利用与智能设备相对应的哈希值对与智能设备相对应的加密网络密钥进行解密,得到原始网络密钥。
可选地,在本申请一具体实施例中,用于安全通信的装置1300还包括:第二发送单元、第二接收单元以及第二解密单元。
第二发送单元,用于向网关发送应用层密钥的请求信息。
第二接收单元,用于接收网关分配的与智能设备相对应的加密应用层密钥。其中,加密应用层密钥由网关采用智能设备相对应的哈希值对智能设备特有的原始应用层密码进行加密得到。
第二解密单元,用于利用智能设备相对应的哈希值,对与智能设备相对应的加密应用层密钥进行解密,得到智能设备特有的原始应用层密钥。
可选地,在本申请一具体实施例中,用于安全通信的装置1300还包括:第一加密单元、第二加密单元和第三发送单元。
第一加密单元,用于利用原始网络密钥加密数据包中的网络层数据,得到加密的网络层数据。
第二加密单元,用于利用智能设备特有的原始应用层密钥加密数据包中的应用层数据,得到加密的应用层数据。
第三发送单元,用于向网关发送加密的数据包。其中,加密的数据包中包括加密的网络层数据和加密的应用层数据。
需要说明的是,用于安全通信的装置1300可以包括处理器和存储器,第一发送单元1301、第一接收单元1302以及第一解密单元1303等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中可以包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或多个,通过调整内核参数来实现提高通信的安全性。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
在一些实施例中,存储器可以是本地存储,也可以是网络存储、云存储等以有线或无线方式连接的存储。
在一些实施例中,存储器可以存储智能设备的安装码、MAC地址等智能设备的特征信息。在一些实施例中,存储器可以存储哈希算法、加密算法等。在一些实施例中,存储器可以存储智能设备的特征信息的哈希值,例如,智能设备的安装码的哈希值。在一些实施例中,存储器可以存储智能设备对应的一个或多个网络传输密钥,例如,原始网络密钥、原始应用层密钥等。在一些实施例中,存储器可以存储网关对应的网络地址,及与网关相关联的其他信息的对应关系,例如,网关与网络传输密钥的关系。
上述本申请实施例公开的用于安全通信的装置1300中的具体的原理和执行过程,与上述本申请实施例公开的用于安全通信的方法相同,可参见上述本申请实施例公开的用于安全通信的方法中相应的部分,这里不再进行赘述。
本申请实施例提供的用于安全通信的装置1300中,通过第一发送单元1301向网关发送入网请求。其中,入网请求携带有智能设备的地址信息。又通过第一接收单元1302接收网关发送的智能设备相对应的加密网络密钥、并得到网关分配的网络地址。其中,智能设备相对应的加密网络密钥由网关使用与智能设备相对应的哈希值对原始网络密钥进行加密得到;智能设备相对应的哈希值由网关对智能设备发送的智能设备特有的安装码信息进行哈希运算得到。通过第一解密单元1303利用与智能设备相对应的哈希值对与智能设备相对应的加密网络密钥进行解密,得到原始网络密钥。由于智能设备相对应的加密网络密钥由网关使用与智能设备相对应的哈希值对原始网络密钥进行加密得到,而智能设备相对应的哈希值由网关对智能设备发送的智能设备特有的安装码信息进行哈希运算得到,因此加密网络密钥的解密方式仅有对应智能设备才能知道,而其他 智能设备由于不知道智能设备的安装码信息,因此无法通过抓包器抓取并破解加密网络密钥,进而提高了无线通信的安全性。
在一些实施例中,处理模块230可以在控制设备和智能锁具130之间建立绑定关系,可以实现通过控制设备对智能锁具130进行控制。为了简化绑定过程、高效快捷地进行绑定,可以通过控制设备扫描智能锁具130的相关标识,进而读取该智能锁具130的设备信息并发送至处理模块230,处理模块230判断是否允许绑定,若允许绑定则将绑定信息发送至控制设备和智能锁具,绑定成功后控制设备和智能锁具依据该绑定信息进行交互,提高了数据传输效率、缩短了绑定的时间,提升了用户体验度。
本申请一些实施例提供了一种智能锁具控制方法,以实现在控制设备和智能锁具之间建立绑定关系。图14是根据本申请的一些实施例所示的智能锁具控制方法1400的示例性流程图。
如图14所示,在一些实施例中,智能锁具可以按以下方法与控制设备建立绑定关系:
S1401,接收绑定请求。智能锁具130通过处理模块230接收控制设备发送的绑定请求来建立与控制设备的绑定关系。绑定请求是设备间用于建立对应关系的申请,例如,智能锁具与控制设备间建立对应关系的申请。
在一些实施例中,绑定关系可以保存在智能锁具130中,可以是控制设备直接向智能锁具发送绑定请求。具体实施例可参见图15步骤S1503。
S1402,基于绑定请求,获取控制设备的控制设备信息。处理模块230可以基于绑定请求,获取控制设备的控制设备信息。控制设备信息是控制设备自身的信息,例如,控制设备的设备标识、操作系统信息、设备硬件信息等。
在一些实施例中,可以是智能锁具130中的处理器直接基于绑定请求,获取控制设备信息。具体实施例可参见图15步骤S1504。
S1403,基于控制设备信息,在安全验证失败时向控制设备发送告警信息。处理模块230可以基于控制设备发送的控制设备信息,获取智能锁具130的设 备信息和控制设备的控制设备信息,进行安全验证,若失败则发送告警信息。安全验证可以是确认设备信息是否在许可列表内,例如,智能锁具和/或控制设备的设备信息是否在允许连接的设备的信息列表内。
在一些实施例中,可以是智能锁具中的处理器直接基于控制设备信息,进行安全验证,若失败则向控制设备发送告警信息。具体实施例可参见图15步骤S1505、1506。
图15示出了根据本申请一些实施例所示的一种用于设备绑定的方法的示例性流程示意图。
本申请一些实施例提出了一种设备绑定方法。所述智能锁具也可以是智能锁具130在一些实施例中,控制设备可以扫描待绑定设备;向扫描到的待绑定设备(智能锁具130)发送设备信息获取请求;获得智能锁具130返回的智能锁具的设备信息;控制设备将设备绑定请求发送至服务器110,所述待设备绑定请求中携带有智能锁具130的设备信息与控制设备的设备信息;智能锁具130和控制设备接收服务器110将智能锁具130与控制设备绑定后返回的绑定信息,智能锁具130和控制设备分别至少获得所述绑定信息中的与对方相关的部分信息。
如图15所示,本申请一些实施例提出了一种用于设备绑定的方法1500,包括以下步骤:
步骤S1501,第一设备扫描待绑定设备。具体地,第一设备可以是控制设备,待绑定设备可以是与智能锁具130或与其类似的设备。在一些实施例中,控制设备可以扫描周围的设备,以获取待绑定设备。
步骤S1502,第二设备接收第一设备发送的信息获取请求,发送第二设备的设备信息。具体地,第二设备可以是智能锁具130,信息获取请求可以是获取第二设备信息的请求,设备信息可以是第二设备的设备标识、操作系统信息、设备硬件信息等。在一些实施例中,控制设备可以向智能锁具130发送设备信息获取请求,获得智能锁具130返回的智能锁具130的设备标识、操作系统信息、 设备硬件信息等。
步骤S1503,第三设备接收第一设备发送的绑定请求。具体地,第三设备可以是服务器110,绑定请求可以是设备绑定请求,是在第一设备和第二设备间建立对应关系的请求。其中,设备绑定请求中携带有第一设备的设备信息与第二设备的设备信息。具体地,第一设备的设备信息可以是第一设备的设备标识、操作系统信息、设备硬件信息、使用所述第一设备的第一应用程序的用户的身份信息等。在一些实施例中,控制设备可以向服务器110发送设备绑定请求,该设备绑定请求中携带了智能锁具130的设备信息和控制设备的设备信息。
步骤S1504,第三设备获取第一设备的设备信息和第二设备的设备信息。具体地,设备信息可以基于绑定请求,获取第一设备的设备信息和第二设备的设备信息。在一些实施例中,服务器110可以基于设备绑定请求,获取其中的智能锁具130的设备信息和控制设备的设备信息。
步骤S1505,第三设备验证设备信息,建立绑定关系。具体地,第三设备可以检查第一设备的设备信息是否满足绑定要求,若满足,则在第一设备和第二设备间建立对应绑定关系。在一些实施例中,服务器110可以检查智能锁具130的设备信息中的设备标识是否已保存且未建立绑定关系,若通过验证,则可以通过将智能锁具130的设备信息与控制设备的设备信息对应保存来使智能锁具130与控制设备绑定。
步骤S1506,第一设备和第二设备接收第三设备返回的绑定信息。具体地,绑定信息可以是包含了已绑定设备的设备信息的信息。其中,绑定信息是第三设备将第一设备与第二设备绑定后返回的,智能锁具130和控制设备分别至少获得绑定信息中的与对方相关的部分信息。在一些实施例中,服务器110可以在建立智能锁具130和控制设备的绑定关系后,将部分绑定信息分别发送给智能锁具130和控制设备,智能锁具130接收到的部分绑定信息中可以包括与控制设备相关的信息,控制设备接收到的绑定信息中可以包括与智能锁具130相关的信息。
图16示出了根据本申请一些实施例所示的一种设备绑定方法;
在本图说明中,用户终端可以包括控制设备,本实施例说明了用于接收绑定请求;基于所述绑定请求,获取控制设备的控制设备信息;基于所述控制设备信息,在安全验证失败时向所述控制设备发送告警信息。
如图16所示,本发明实施例提供的一种设备绑定方法,可以包括:
S1600、扫描待绑定设备;
其中,本发明的设备绑定方法可以将多种不同的设备进行绑定,例如:将用户终端与电子锁进行绑定。再如:将键盘设备与可控制智能设备进行绑定,其中,所述可控制智能设备可以包括:摄像头、电器开关、电视、空调、电子锁等设备中的任何一种。再如:将蓝牙钥匙与电子锁进行绑定。可选的,需要绑定的两个设备可以通过蓝牙、Wi-Fi等通信方式进行无线通信,或通过USB等通信方式进行有线通信。可选的,需要绑定的两个设备之间的距离可以小于某预设距离,也即:需要绑定的两个设备之间的距离较近。
在一些实施例中,需要绑定的设备可以通过近场通讯(NFC)、ZigBee网络等方式进行无线通信,例如,手机使用NFC方式与电子锁绑定、IC卡与电子锁绑定。
在一些实施例中,需要绑定的设备可以通过其他有线网络进行通信,这些有线网络可以通过同轴电缆、双绞线、光纤等传输介质传输数据,有线网络可以是局域网(LAN)、城域网(MAN)、广域网(WAN)、互联网(Internet)等。例如,键盘设备与电视可以用双绞线接入同一个家庭局域网,通过该局域网进行通信。
本发明实施例图16所示方法可以应用于用户终端中,所述用户终端可以包括但不限于台式电脑、笔记本电脑、智能手机、个人数码助理(Personal Digital Assistance,PDA)、平板电脑、掌上游戏机、智能眼镜、智能手表、可穿戴设备、虚拟显示设备、显示增强设备等。可选的,上述用户终端中可以安装有控制电子锁的应用程序。用户可通过手机号、用户名、邮箱、第三方应用程序的账号 等在控制电子锁的应用程序上进行注册,从而成为合法用户。可选的,用户可以通过控制电子锁的应用程序将该用户的身份信息(如姓名、手机号、身份证号等)上传至服务器中。可选的,该服务器可以为用于提供电子锁管理服务的设备,该服务器中可以预先保存有已销售或已生产的各电子锁的设备信息,如电子锁的设备标识,该设备标识可以为产品序列号(SN,Serial Number)。在一些实施例中,服务器可以是一个单个的服务器或者一个服务器群组。所述服务器群可以是集中式的或分布式的(例如,服务器可以是一个分布式的系统)。在一些实施例中,服务器可以是本地的或远程的。例如,服务器可以通过网络访问待绑定设备和/或用户终端。再例如,服务器可以直接连接到待绑定设备和/或用户终端以访问存储的信息和/或数据。在一些实施例中,服务器可以在一个云平台上实现。仅仅举个例子,所述云平台可以包括私有云、公共云、混合云、社区云、分布云、云之间、多重云等或上述举例的任意组合。在一些实施例中,服务器可以在计算设备上实现。在一些实施例中,服务器可以在移动设备上实现。
在一些实施例中,服务器可以是区块链网络中的节点,用户身份信息和/或设备信息可以保存在区块链的账本中,用户可以选择区块链网络中的任意节点作为服务器,保存用户的身份信息。
可选的,电子锁中可以设置有蓝牙模块、Wi-Fi模块、USB接口等,电子锁可以通过蓝牙、Wi-Fi、USB接口与用户终端进行无线通信或有线通信。
在一些实施例中,电子锁也可以通过其他无线网络或有线网络与用户终端进行通信,可参见前述内容,在此不再赘述。
图17示出了根据本申请一些实施例所示的键盘设备的示意图。
具体的,待绑定设备可以为电子锁或键盘设备等。
在一些实施例中,键盘设备与输入/输出模块260对应。
其中,本实施中的键盘设备(键盘设备的其中一个英文名称可以为:keypad)可以为一个独立的电子设备,图17为该键盘设备的一种可选的示意图。如图17所示,本实施例中的键盘设备可以包括多个实体按键,用户可以通过按下实体按 键来输入开锁密码。同时,本实施例中的键盘设备还可以包括其他按键,如图17所示的开锁按键和关锁按键。可选的,键盘设备中可以设置有蓝牙模块、Wi-Fi模块、USB接口等,键盘设备可以通过蓝牙、Wi-Fi、USB接口与用户终端、电子锁进行无线通信或有线通信。在其他实施例中,键盘设备还可以包括:指纹输入装置和语音输入装置等。用户可以通过指纹输入装置、语音输入装置等输入开锁密码进行开锁。
在一些实施例中,键盘设备的按键可以是虚拟按键,例如,屏幕上显示的虚拟键盘,可以通过鼠标、指点杆、触控板、轨迹球等方式点击输入。在一些实施例中,屏幕可以是触摸屏,可以通过触摸方式输入。在一些实施例中,键盘设备也可以是投影键盘,键盘设备的按键可以是投影按键,用户可以通过点击投影按键进行输入。
在一些实施例中,键盘设备还可以包括虹膜采集装置或记录人的面部结构的面部识别装置等其他生物特征采集装置。用户可以通过虹膜扫描或人脸识别的方式输入开锁密码进行开锁。
可选的,键盘设备可以集成在电子锁中,作为电子锁的一部分。
在实际应用中,步骤S1600可以通过接收待绑定设备发送的广播消息来扫描待绑定设备,如果接收到某待绑定设备发送的广播消息,则可以确定扫描到该待绑定设备。其中,某待绑定设备可以在上电以后自动发送广播消息,或者某待绑定设备在上电后,当其某个按键被按下预定次数时或被按下不低于预设时长时发送广播消息。可以理解的是,为了接收到待绑定设备发出的广播消息,用户终端可以位于待绑定设备周围,这样便可以扫描到周围的待绑定设备。
在一些实施例中,待绑定设备可以接收外部的指令来触发发送广播消息,例如,接收服务器发来的启动绑定过程的指令。
具体的,上述广播消息中可以携带有待绑定设备的设备标识。用户终端可以通过广播消息和待绑定设备建立通信连接以便于通过该通信连接与待绑定设备进行交互。进一步,用户终端可以将待绑定设备的设备标识发送至服务器以使 服务器确定待绑定设备是否可以进行绑定。具体的,服务器中可以保存有已进行绑定的各设备的设备标识,当用户终端发送的待绑定设备的设备标识为已进行绑定的设备的设备标识时,则服务器可以向用户终端返回错误信息,以告知用户终端该待绑定设备无法被绑定。
在一些实施例中,当用户终端发送的待绑定设备的设备标识在服务器中未找到时,则服务器可以向用户终端返回错误信息,以告知用户该待绑定设备不可用。
当然,在其他实施例中,用户终端在与待绑定设备建立通信连接后,可以向待绑定设备发送管理员密码查询请求,当待绑定设备返回“已存在管理员密码”的响应时,则说明该待绑定设备已与其他设备进行绑定,该用户终端无法与待绑定设备进行绑定。反之,当待绑定设备返回“不存在管理员密码”的响应时,则说明该待绑定设备未与其他设备进行绑定,该用户终端可以与待绑定设备进行绑定。
可选的,待绑定设备可与多个用户终端进行绑定,当用户终端发送绑定请求时,只要不超过预先设定的待绑定设备的设备绑定数限制,就可以与待绑定设备建立绑定关系。例如,电子锁可以与同一家庭的多个家庭成员的手机建立绑定关系。可选的,当待绑定设备与多个用户终端进行绑定时,其中的一个或多个用户终端可以具有管理员权限,具有管理员权限的用户终端可以管理与待绑定设备绑定的其他用户终端。例如,具有管理员权限的用户终端可以删除与待绑定设备绑定的其他用户终端。
S1700、向扫描到的待绑定设备发送设备信息获取请求;
S1800、获得所述待绑定设备返回的所述待绑定设备的设备信息;
其中,待绑定设备的设备信息可以包括如下信息中的至少一种:
设备标识、操作系统信息、设备硬件信息等。
其中,上述设备标识可以包括:产品序列号、设备名称或设备类型等。上述操作系统信息可以为操作系统的类型及版本号,该操作系统可以为嵌入式操 作系统。上述设备硬件信息可以包括设备中的CPU型号、GPU型号、内存大小、主板型号等信息中的至少一种。
在一些实施例中,设备标识还可以包括设备MAC地址、IPv6地址等。
在实际应用中,本实施例可以通过多种加密方式对待绑定设备的上述设备信息进行加密,其中一种加密方式为:使用挑战码进行加密。挑战码是指遵循握手验证协议(CHAP)生成的一组加密口令。
在一些实施例中,可以使用预设加密算法对待绑定设备的上述设备信息进行加密,其中,加密密钥可以为先前从服务器获得的网络密钥。
S1900、将设备绑定请求发送至服务器,所述设备绑定请求中携带有所述待绑定设备的设备信息与第一设备的设备信息;
其中,第一设备的设备信息可以包括如下信息中的至少一种:
设备标识、操作系统信息、设备硬件信息、使用所述第一设备的第一应用程序的用户的身份信息等。
具体的,本发明已对设备标识、操作系统信息、设备硬件信息等进行说明,不再赘述。其中,第一应用程序可以为用户终端上安装的可以控制电子锁的应用程序,第一设备可以为用户终端。使用所述第一设备的第一应用程序的用户的身份信息可以为:手机号、用户名、邮箱、第三方应用程序的账号以及密码中的一个或多个。
在一些实施例中,用户的身份信息可以是用户的一个或多个生物特征,例如,指纹、声纹、虹膜、面部结构等生物特征中的一个或多个。
在一些实施例中,用户的身份信息可以是朗读一段指定文字的的音频文件。在一些实施例中,用户的身份信息可以是用户的实名认证信息。
可选的,本发明可以将用户终端与电子锁进行绑定,也可以将电子锁与键盘设备进行绑定。
S2000、接收所述服务器将所述待绑定设备与所述第一设备绑定后返回的绑定信息,使所述待绑定设备和所述第一设备分别至少获得所述绑定信息中的 部分信息。
在实际应用中,执行本发明图16所示方法的设备和/或绑定的两个设备可以首先向服务器发送绑定信息获取请求以使服务器返回绑定信息。
在实际应用中,服务器在将待绑定设备与所述第一设备绑定后,还可以向执行本发明图16所示方法的设备(如用户终端)和/或绑定的两个设备发送绑定成功的通知消息。进一步,当第一设备为用户终端,待绑定设备为电子锁时,用户终端在获得绑定成功的通知消息后,可以向电子锁下发开锁密码,电子锁将该开锁密码进行保存。这样,电子锁就可以根据该开锁密码执行开锁等处理。例如:某用户终端向电子锁发送开锁指令,该开锁指令中携带有第一密码。电子锁将第一密码与保存的开锁密码进行对比,当二者一致时,执行开锁处理,否则不执行开锁处理。当然,用户终端在获得绑定成功的通知消息后,还可以将管理员密码发送至电子锁,以通过管理员密码对电子锁进行管理,如更新开锁密码,管理开锁密码有效期等。当然,用户终端还可以将管理员密码上传至服务器中,本发明不做限定。可选的,用户终端可以向电子锁下发多个具有不同开锁权限的开锁密码,电子锁根据开锁权限分别对各开锁密码进行存储。上述开锁权限可以分为:全天候开锁权限、单次开锁权限、定时多次开锁权限等。
可选的,用户终端在步骤S2000之后,还可以和电子锁进行时间同步处理,以同步这两个设备的时间,防止由于时间不一致导致的问题。具体的,该时间同步处理的过程为:用户终端将本机的时间发送给电子锁,使电子锁将接收到的时间作为当前时间开始计时。可以理解的是,由于电子锁常用电池供电,因此当电池没电以后,电子锁中的时间往往会停止,而用户终端中的时间会定期或不定期的更新,因此本实施例的用户终端将本机的时间发送给电子锁可以保证电子锁中时间的正确和有效。
可选的,用户终端在步骤S2000之后,还可以获取电子锁的电量信息。
可选的,用户终端在步骤S2000之后,还可以向所述电子锁下发开锁密码;所述用户终端接收所述电子锁返回的开锁密码已生效的通知。用户可以在用 户终端中输入新的开锁密码,然后用户终端向所述电子锁下发开锁密码,电子锁收到开锁密码后将其进行保存并为其添加有效标识,然后电子锁向用户终端返回开锁密码已生效的通知。
可选的,用户终端在步骤S2000之后,还可以查询电子锁的日志记录,日志记录可以包括开锁历史记录、用户操作记录、异常信息等。其中,开锁历史记录可以包括开锁时间、开锁方式(例如,密码、指纹、蓝牙钥匙等)、用户信息(例如,执行开锁操作的用户名、用户权限等)。用户操作记录可以包括用户发送的指令、发送指令的时间、操作结果(例如,成功或失败)等。异常信息可以包括异常开锁操作(例如,连续输入密码错误次数超过限定值)、异常开关机操作、电子锁程序异常信息等。
可选的,本发明图16所示方法所涉及的各设备间可以通过蓝牙协议4.2技术进行通信。
可选的,本发明图16所示方法所涉及的各设备间还可以通过其他版本蓝牙协议技术、近场通讯(NFC)技术、ZigBee网络进行通信。
本发明提供的一种设备绑定方法,可以扫描待绑定设备;向扫描到的待绑定设备发送设备信息获取请求;获得所述待绑定设备返回的所述待绑定设备的设备信息;将设备绑定请求发送至服务器,所述设备绑定请求中携带有所述待绑定设备的设备信息与第一设备的设备信息;接收所述服务器将所述待绑定设备与所述第一设备绑定后返回的绑定信息,使所述待绑定设备和所述第一设备分别至少获得所述绑定信息中的部分信息。本发明提供的设备绑定技术可以快捷高效的对设备进行绑定。
图18示出了根据本申请一些实施例所示的另一种设备绑定方法的流程图。
在本图说明中,用户终端可以包括控制设备,本实施例说明了基于所述控制设备信息,在安全验证失败时向所述控制设备发送告警信息。
在本发明一可选实施例中,图16所示方法应用于第一设备中,所述第一设备为用户终端,所述待绑定设备为电子锁,则如图18所示,步骤S2000可以 具体包括:
S2010、接收所述服务器将所述电子锁与所述用户终端绑定后返回的绑定信息,从所述绑定信息中获取与所述电子锁对应的部分信息并进行保存;
其中,所述服务器可以通过将所述电子锁的设备信息与所述用户终端的设备信息对应保存来将所述电子锁与所述用户终端绑定。
在一些实施例中,服务器保存设备信息时,可以将部分或全部设备信息使用预设算法进行计算,然后保存计算结果和部分设备信息,这样可以只存储必要信息,从而节省存储空间,验证信息时也更为高效。例如,使用哈希算法对电子锁的全部设备信息进行计算得到哈希值,保存该哈希值和所述电子锁的序列号。又例如,使用哈希算法对所述用户终端的全部设备信息进行计算得到哈希值,保存该哈希值和手机号码、用户名。
其中,与所述电子锁对应的部分信息包括:所述电子锁的设备信息或使用预设算法对所述电子锁的设备信息进行计算后得到的计算结果。
其中,本发明中的预设算法可以为哈希算法,也可以为加密算法。
S2020、从所述绑定信息中获取与所述用户终端对应的部分信息并发送至所述电子锁。
其中,与所述用户终端对应的部分信息包括:所述用户终端的设备信息、使用预设算法对所述用户终端的设备信息进行计算后得到的计算结果、使用所述用户终端的第一应用程序的用户的身份信息、使用预设算法对使用所述用户终端的第一应用程序的用户的身份信息进行计算后得到的计算结果中的至少一个。
图19示出了根据本申请一些实施例所示的另一种设备绑定方法的流程图;
在本发明另一可选实施例中,图16所示方法应用于用户终端中,所述第一设备为电子锁,所述待绑定设备为键盘设备,则如图19所示,步骤S2000可以具体包括:
S2030、接收所述服务器将所述键盘设备与所述电子锁绑定后返回的绑定 信息,从所述绑定信息中获取与所述键盘设备对应的部分信息并发送至所述电子锁;
其中,所述服务器可以通过将所述电子锁的设备信息与所述键盘设备的设备信息对应保存来将所述电子锁与所述键盘设备绑定。
在一些实施例中,服务器保存设备信息时,可以将部分或全部设备信息使用预设算法进行计算,然后保存计算结果和部分设备信息。具体可见图16的相关内容,在此不再赘述。
其中,与所述键盘设备对应的部分信息包括:所述键盘设备的设备信息或使用预设算法对所述键盘设备的设备信息进行计算后得到的计算结果。
S2040、从所述绑定信息中获取与所述电子锁对应的部分信息并发送至所述键盘设备。
其中,与所述电子锁对应的部分信息包括:所述电子锁的设备信息或使用预设算法对所述电子锁的设备信息进行计算后得到的计算结果。
具体的,本实施例可以首先从所述绑定信息中获取与所述键盘设备对应的部分信息并发送至所述电子锁,然后再从所述绑定信息中获取与所述电子锁对应的部分信息并发送至所述键盘设备。本发明另一实施例可以首先从所述绑定信息中获取与所述电子锁对应的部分信息并发送至所述键盘设备,然后再从所述绑定信息中获取与所述键盘设备对应的部分信息并发送至所述电子锁。本发明另一实施例也可以从所述绑定信息中获取与所述电子锁对应的部分信息以及与所述键盘设备对应的部分信息,然后同时分别发送至所述键盘设备和所述电子锁,本发明在此不做限定。
可选的,除将绑定信息中的部分信息发送至所述待绑定设备和所述第一设备外,本发明也可以将完整的绑定信息分别发送至所述待绑定设备和所述第一设备。
图20示出了根据本申请一些实施例所示的另一种设备绑定方法的流程图。
在图19所示实施例基础上,本发明实施例提供的另一种设备绑定方法中, 所述服务器和所述键盘设备中均预先存储有所述键盘设备的设备标识和预设密钥,如图20所示,该另一种设备绑定方法可以包括:
S1601、扫描键盘设备;
S1701、向扫描到的键盘设备发送设备信息获取请求;
其中,步骤S1601为图16所示步骤S1600的一种具体执行方式,步骤S1701为图16所示步骤S1700的一种具体执行方式。
S1810、获得所述键盘设备使用所述预设密钥对其设备标识进行加密后返回的已加密的设备标识;
步骤S1810为图19所示步骤S1800的一种具体实施方式。
S1910、将设备绑定请求发送至服务器,以使所述服务器使用存储的所述预设密钥对所述已加密的设备标识进行解密获得所述键盘设备的设备标识并确定获得的所述键盘设备的设备标识是否为预先存储的设备标识中的一个,所述设备绑定请求中携带有所述已加密的设备标识与所述电子锁的设备信息;
步骤S1910为图19所示步骤S1900的一种具体实施方式。
其中,服务器中可以预先存储有多个合法的键盘设备的设备标识,从而在解密获得某键盘设备的设备标识后,确定获得的所述键盘设备的设备标识是否为预先存储的设备标识中的一个,如果是,则确定该键盘设备为合法设备,否则确定该键盘设备为非法设备。服务器可以仅对合法设备进行绑定。而对于非法设备,服务器可以返回错误消息。
S2031、接收所述服务器在确定获得的所述键盘设备的设备标识为预先存储的设备标识中的一个的情况下将所述键盘设备与所述电子锁绑定后返回的绑定信息,从所述绑定信息中获取与所述键盘设备对应的部分信息并发送至所述电子锁;
S2040、从所述绑定信息中获取与所述电子锁对应的部分信息并发送至所述键盘设备。
步骤S2031为图19所示步骤S2030的一种具体实施方式。
可以理解的是,通过上述加密解密过程,本发明可以有效提高设备绑定过程中的安全性。
本发明上述实施例所示各方法为应用于用户终端的设备绑定方法,相应于本发明实施例提供的应用于用户终端的设备绑定方法,本发明还提供了一种应用于待绑定设备的设备绑定方法。
图21示出了根据本申请一些实施例所示的另一种设备绑定方法的流程图;
在本图说明中,用户终端可以包括控制设备,本实施例说明了用于接收绑定请求;基于所述绑定请求,获取控制设备的控制设备信息;基于所述控制设备信息,在安全验证失败时向所述控制设备发送告警信息。
如图21所示,本发明实施例提供的一种设备绑定方法,应用于待绑定设备,该方法包括:
S2110、发送广播消息,获得用户终端在接收到所述广播消息后返回的设备信息获取请求;
S2120、将所述待绑定设备的设备信息发送至所述用户终端以使所述用户终端将设备绑定请求发送至服务器,所述设备绑定请求中携带有所述待绑定设备的设备信息与第一设备的设备信息;
S2130、获得所述服务器将所述待绑定设备与所述第一设备绑定后返回的绑定信息中的至少部分信息,其中,所述第一设备至少获得所述绑定信息中的部分信息。
可选的,所述第一设备为用户终端,所述待绑定设备为电子锁,所述电子锁获得的绑定信息中的至少部分信息可以为:所述绑定信息中与所述用户终端对应的部分信息。所述用户终端获得的绑定信息中的至少部分信息可以为:所述绑定信息中与所述电子锁对应的部分信息。
可选的,所述第一设备为电子锁,所述待绑定设备为键盘设备,所述电子锁获得的绑定信息中的至少部分信息可以为:所述绑定信息中与所述键盘设备对应的部分信息。所述键盘设备获得的绑定信息中的至少部分信息可以为:所述 绑定信息中与所述电子锁对应的部分信息。
图22示出了根据本申请一些实施例所示的另一种设备绑定方法的流程图;
在图21所示实施例基础上,如图22所示,本发明实施例提供的另一种应用于待绑定设备的设备绑定方法中,所述服务器和所述键盘设备中均预先存储有所述键盘设备的设备标识和预设密钥,该方法可以包括:
S2110、发送广播消息,获得用户终端在接收到所述广播消息后返回的设备信息获取请求;
S2121、所述键盘设备使用所述预设密钥对其设备标识进行加密获得已加密的设备标识,将所述已加密的设备标识发送至所述用户终端以使所述用户终端将设备绑定请求发送至服务器,以使所述服务器使用存储的所述预设密钥对所述已加密的设备标识进行解密获得所述键盘设备的设备标识并确定获得的所述键盘设备的设备标识是否为预先存储的设备标识中的一个,其中,所述设备绑定请求中携带有所述已加密的设备标识与所述电子锁的设备信息;
其中,步骤S2121为图21所示步骤S2120的一种具体执行方式。
S2131、获得所述服务器在确定获得的所述键盘设备的设备标识为预先存储的设备标识中的一个的情况下,所述服务器将所述待绑定设备与所述第一设备绑定后返回的绑定信息中的至少部分信息,其中,所述第一设备至少获得所述绑定信息中的部分信息。
其中,步骤S2131为图21所示步骤S2130的一种具体执行方式。
本发明图21及图22所示各步骤已在图16、图18、图19、图20所示各实施例中说明,不再赘述。
在实际应用中,可以首先执行本发明的设备绑定方法将用户终端与电子锁进行绑定,然后再执行本发明的设备绑定方法将键盘设备与电子锁进行绑定。当然,本发明不对上述设备间的绑定的先后顺序进行限定。
图23示出了根据本申请一些实施例所示的另一种设备绑定方法的流程图;
在本图说明中,用户终端可以包括控制设备,本实施例说明了用于接收绑 定请求;基于所述绑定请求,获取控制设备的控制设备信息;基于所述控制设备信息,在安全验证失败时向所述控制设备发送告警信息。
下面提供一种执行本发明的设备绑定方法将用户终端与电子锁进行绑定的具体实施例,如图23所示,该具体实施例中的绑定过程可以包括:
S2300、电子锁接通电源后持续发送广播消息。
S2301、用户在用户终端上通过应用程序注册账号。
S2302、服务器返回注册成功的通知给用户终端。
S2303、用户终端通过接收广播消息来扫描电子锁。
S2304、用户终端向扫描到的电子锁发送管理员密码查询请求。
S2305、电子锁返回“不存在管理员密码”的响应给用户终端。
S2306、用户终端向电子锁发送设备信息获取请求。
S2307、电子锁返回电子锁的设备信息给用户终端。
S2308、用户终端将设备绑定请求发送给服务器,设备绑定请求中携带有用户终端的设备信息和电子锁的设备信息。
S2309、服务器将用户终端与电子锁绑定。
S2310、电子锁发送绑定信息返回请求给用户终端。
S2311、用户终端发送绑定信息返回请求给服务器。
S2312、服务器返回绑定信息给用户终端。
S2313、用户终端从所述绑定信息中获取与所述电子锁对应的部分信息并进行保存。
S2314、用户终端从所述绑定信息中获取与所述用户终端对应的部分信息并发送至所述电子锁。
S2315、服务器返回绑定成功通知给用户终端。
S2316、用户终端返回绑定成功通知给电子锁。
S2317、用户终端与电子锁进行时间同步处理。
S2318、用户终端发送电子锁电量获取请求给电子锁。
S2319、电子锁将电子锁电量发至用户终端。
S2320、用户终端向电子锁下发开锁密码。
S2321、电子锁将该开锁密码进行保存。
S2322、电子锁返回开锁密码已生效的通知给用户终端。
图24示出了根据本申请一些实施例所示的另一种设备绑定方法的流程图。
下面提供一种执行本发明的设备绑定方法将键盘设备与电子锁进行绑定的具体实施例,如图24所示。可选的,图24中各步骤可以在图23中步骤S2316至步骤S2322中任一步骤之后执行。该具体实施例可以预先在服务器和键盘设备中写入键盘设备的SN和预设密钥。
如图24所示,该具体实施例中的绑定过程可以包括:
S2323、用户长按键盘设备的某按键五秒后键盘设备持续发送广播消息。
S2324、用户终端通过接收广播消息来扫描键盘设备。
S2325、用户终端和键盘设备通过蓝牙进行配对,在用户终端和键盘设备间建立通信连接。
S2326、用户终端向扫描到的键盘设备发送设备信息获取请求。
S2327、键盘设备使用所述预设密钥对其设备标识进行加密后返回已加密的设备标识给用户终端。
S2328、用户终端将设备绑定请求发送给服务器,设备绑定请求中携带有键盘设备的已加密的设备信息和电子锁的设备信息。
S2329、服务器使用存储的所述预设密钥对已加密的设备标识进行解密获得键盘设备的设备标识。
S2330、服务器确定获得的键盘设备的设备标识是否为预先存储的设备标识中的一个。
S2331、如果判断结果为否,则服务器返回错误信息给用户终端并结束本次绑定过程。
S2332、如果判断结果为是,则服务器将键盘设备与电子锁绑定并执行后 续步骤。
S2333、服务器返回绑定信息给用户终端。
S2334、用户终端从所述绑定信息中获取与所述电子锁对应的部分信息并发送至所述键盘设备。
S2335、键盘设备保存与所述电子锁对应的部分信息。
S2336、键盘设备返回已接收到绑定信息的响应给用户终端。
S2337、用户终端与键盘设备断开通信连接。
S2338、用户终端与电子锁建立通信连接。
S2339、用户终端从所述绑定信息中获取与所述键盘设备对应的部分信息并发送至所述电子锁。
S2340、电子锁保存与键盘设备对应的部分信息。
S2341、电子锁返回已接收到绑定信息的响应。
S2342、用户终端与电子锁断开通信连接。
S2343、用户终端向服务器发送绑定成功通知。
图25示出了根据本申请一些实施例所示的一种用户设备的结构示意图;
在本图说明中,用户终端可以包括控制设备,本实施例说明了用于接收绑定请求;基于所述绑定请求,获取控制设备的控制设备信息;基于所述控制设备信息,在安全验证失败时向所述控制设备发送告警信息。
与本发明图16所示实施例提供的一种设备绑定方法相对应,本发明还提供了一种用户终端,如图25所示,该用户终端可以包括:设备扫描单元2501、第一请求发送单元2502、第一信息获得单元2503、绑定请求单元2504和信息接收单元2505。
在一些实施例中,第一请求发送单元2502、第一信息获得单元2503和绑定请求单元2504和信息接收单元2505,与通信模块210对应。设备扫描单元2501与控制模块240对应。
所述设备扫描单元2501,用于扫描待绑定设备;
所述第一请求发送单元2502,用于向扫描到的待绑定设备发送设备信息获取请求;
所述第一信息获得单元2503,用于获得所述待绑定设备返回的所述待绑定设备的设备信息;
所述绑定请求单元2504,用于将设备绑定请求发送至服务器,所述设备绑定请求中携带有所述待绑定设备的设备信息与第一设备的设备信息;
所述信息接收单元2505,用于接收所述服务器将所述待绑定设备与所述第一设备绑定后返回的绑定信息,使所述待绑定设备和所述第一设备分别至少获得所述绑定信息中的部分信息。
可选的,所述第一设备可以为用户终端,所述待绑定设备可以为电子锁,所述信息接收单元2505可以具体用于:接收所述服务器将所述电子锁与所述用户终端绑定后返回的绑定信息,从所述绑定信息中获取与所述电子锁对应的部分信息并进行保存;从所述绑定信息中获取与所述用户终端对应的部分信息并发送至所述电子锁。
可选的,所述第一设备可以为电子锁,所述待绑定设备可以为键盘设备,所述信息接收单元2505可以具体用于:接收所述服务器将所述键盘设备与所述电子锁绑定后返回的绑定信息,从所述绑定信息中获取与所述键盘设备对应的部分信息并发送至所述电子锁;从所述绑定信息中获取与所述电子锁对应的部分信息并发送至所述键盘设备。
在其他实施例中,所述服务器和所述键盘设备中可以均预先存储有所述键盘设备的设备标识和预设密钥,所述第一信息获得单元2503可以具体用于:获得所述键盘设备使用所述预设密钥对其设备标识进行加密后返回的已加密的设备标识。所述绑定请求单元2504可以具体用于:将设备绑定请求发送至服务器,以使所述服务器使用存储的所述预设密钥对所述已加密的设备标识进行解密获得所述键盘设备的设备标识并确定获得的所述键盘设备的设备标识是否为预先存储的设备标识中的一个,所述设备绑定请求中携带有所述已加密的设备 标识与所述电子锁的设备信息。进一步,所述信息接收单元2505可以具体用于:接收所述服务器在确定获得的所述键盘设备的设备标识为预先存储的设备标识中的一个的情况下将所述键盘设备与所述电子锁绑定后返回的绑定信息,使所述键盘设备与所述电子锁分别至少获得所述绑定信息中的部分信息。
图26示出了根据本申请一些实施例所示的一种待绑定设备的结构示意图;
在本图说明中,用户终端可以包括控制设备,本实施例说明了用于接收绑定请求;基于所述绑定请求,获取控制设备的控制设备信息;基于所述控制设备信息,在安全验证失败时向所述控制设备发送告警信息。
与本发明图21所示实施例提供的一种设备绑定方法相对应,本发明还提供了一种待绑定设备,如图26所示,该待绑定设备可以包括:广播发送单元2601、第二请求发送单元2602和第二信息获得单元2603。
在一些实施例中,广播发送单元2601、第二请求发送单元2602和第二信息获得单元2603,与通信模块210对应。
所述广播发送单元2601,用于发送广播消息,获得用户终端在接收到所述广播消息后返回的设备信息获取请求;
所述第二请求发送单元2602,用于将所述待绑定设备的设备信息发送至所述用户终端以使所述用户终端将设备绑定请求发送至服务器,所述设备绑定请求中携带有所述待绑定设备的设备信息与第一设备的设备信息;
所述第二信息获得单元2603,用于获得所述服务器将所述待绑定设备与所述第一设备绑定后返回的绑定信息中的至少部分信息。
可选的,所述第一设备为用户终端,所述待绑定设备为电子锁,所述电子锁获得的绑定信息中的至少部分信息为:所述绑定信息中与所述用户终端对应的部分信息;所述用户终端获得的绑定信息中的至少部分信息为:所述绑定信息中与所述电子锁对应的部分信息。
可选的,所述第一设备为电子锁,所述待绑定设备为键盘设备,所述电子锁获得的绑定信息中的至少部分信息为:所述绑定信息中与所述键盘设备对应 的部分信息;所述键盘设备获得的绑定信息中的至少部分信息为:所述绑定信息中与所述电子锁对应的部分信息。
在其他实施例中,所述服务器和所述键盘设备中均预先存储有所述键盘设备的设备标识和预设密钥,所述第二请求发送单元2602具体用于:使用所述预设密钥对其设备标识进行加密获得已加密的设备标识,将所述已加密的设备标识发送至所述用户终端以使所述用户终端将设备绑定请求发送至服务器,以使所述服务器使用存储的所述预设密钥对所述已加密的设备标识进行解密获得所述键盘设备的设备标识并确定获得的所述键盘设备的设备标识是否为预先存储的设备标识中的一个,其中,所述设备绑定请求中携带有所述已加密的设备标识与所述电子锁的设备信息。
所述第二信息获得单元2603具体用于:获得所述服务器在确定获得的所述键盘设备的设备标识为预先存储的设备标识中的一个的情况下,所述服务器将所述待绑定设备与所述第一设备绑定后返回的绑定信息中的至少部分信息。
与本发明图16所示实施例提供的一种设备绑定方法相对应,本发明还提供了一种用户终端,可以包括:处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:
扫描待绑定设备;
向扫描到的待绑定设备发送设备信息获取请求;
获得所述待绑定设备返回的所述待绑定设备的设备信息;
将设备绑定请求发送至服务器,所述设备绑定请求中携带有所述待绑定设备的设备信息与第一设备的设备信息;
接收所述服务器将所述待绑定设备与所述第一设备绑定后返回的绑定信息,使所述待绑定设备和所述第一设备分别至少获得所述绑定信息中的部分信息。
可选的,所述第一设备为用户终端,所述待绑定设备为电子锁,所述接收所述服务器将所述待绑定设备与所述第一设备绑定后返回的绑定信息,使所述 待绑定设备和所述第一设备分别至少获得所述绑定信息中的部分信息,包括:
接收所述服务器将所述电子锁与所述用户终端绑定后返回的绑定信息,从所述绑定信息中获取与所述电子锁对应的部分信息并进行保存;
从所述绑定信息中获取与所述用户终端对应的部分信息并发送至所述电子锁。
可选的,所述第一设备为电子锁,所述待绑定设备为键盘设备,所述接收所述服务器将所述待绑定设备与所述第一设备绑定后返回的绑定信息,使所述待绑定设备和所述第一设备分别至少获得所述绑定信息中的部分信息,包括:
接收所述服务器将所述键盘设备与所述电子锁绑定后返回的绑定信息,从所述绑定信息中获取与所述键盘设备对应的部分信息并发送至所述电子锁;
从所述绑定信息中获取与所述电子锁对应的部分信息并发送至所述键盘设备。
与本发明图21所示实施例提供的一种设备绑定方法相对应,本发明还提供了一种待绑定设备,可以包括:处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:
发送广播消息,获得用户终端在接收到所述广播消息后返回的设备信息获取请求;
将所述待绑定设备的设备信息发送至所述用户终端以使所述用户终端将设备绑定请求发送至服务器,所述设备绑定请求中携带有所述待绑定设备的设备信息与第一设备的设备信息;
获得所述服务器将所述待绑定设备与所述第一设备绑定后返回的绑定信息中的至少部分信息。
可选的,所述第一设备为用户终端,所述待绑定设备为电子锁,所述电子锁获得的绑定信息中的至少部分信息为:所述绑定信息中与所述用户终端对应的部分信息;所述用户终端获得的绑定信息中的至少部分信息为:所述绑定信息中与所述电子锁对应的部分信息。
可选的,所述第一设备为电子锁,所述待绑定设备为键盘设备,所述电子锁获得的绑定信息中的至少部分信息为:所述绑定信息中与所述键盘设备对应的部分信息;所述键盘设备获得的绑定信息中的至少部分信息为:所述绑定信息中与所述电子锁对应的部分信息。
可选的,键盘设备可以集成在电子锁中,作为电子锁的一部分,两者间已预先建立了绑定关系,用户可以直接通过电子锁上的键盘设备进行安全输入。在一些实施例中,电子锁可以直接与用户终端进行绑定,不需要与键盘设备绑定。
所述用户终端和待绑定设备均包括处理器和存储器,上述设备扫描单元、第一请求发送单元、第一信息获得单元、绑定请求单元、信息接收单元、广播发送单元、第二请求发送单元和第二信息获得单元等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来实现设备绑定。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本发明实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现所述设备绑定方法。
本发明实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行所述设备绑定方法。
本发明实施例提供了一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:
发送广播消息,获得用户终端在接收到所述广播消息后返回的设备信息获取请求;
将所述待绑定设备的设备信息发送至所述用户终端以使所述用户终端将设备绑定请求发送至服务器,所述设备绑定请求中携带有所述待绑定设备的设 备信息与第一设备的设备信息;
获得所述服务器将所述待绑定设备与所述第一设备绑定后返回的绑定信息中的至少部分信息,其中,所述第一设备至少获得所述绑定信息中的部分信息。
本发明实施例提供了另一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:
扫描待绑定设备;
向扫描到的待绑定设备发送设备信息获取请求;
获得所述待绑定设备返回的所述待绑定设备的设备信息;
将设备绑定请求发送至服务器,所述设备绑定请求中携带有所述待绑定设备的设备信息与第一设备的设备信息;
接收所述服务器将所述待绑定设备与所述第一设备绑定后返回的绑定信息,使所述待绑定设备和所述第一设备分别至少获得所述绑定信息中的部分信息。
本文中的设备可以是服务器、PC、PAD、手机等。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序:
扫描待绑定设备;
向扫描到的待绑定设备发送设备信息获取请求;
获得所述待绑定设备返回的所述待绑定设备的设备信息;
将设备绑定请求发送至服务器,所述设备绑定请求中携带有所述待绑定设备的设备信息与第一设备的设备信息;
接收所述服务器将所述待绑定设备与所述第一设备绑定后返回的绑定信息,使所述待绑定设备和所述第一设备分别至少获得所述绑定信息中的部分信息。
本申请还提供了另一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序:
发送广播消息,获得用户终端在接收到所述广播消息后返回的设备信息获取请求;
将所述待绑定设备的设备信息发送至所述用户终端以使所述用户终端将设备绑定请求发送至服务器,所述设备绑定请求中携带有所述待绑定设备的设备信息与第一设备的设备信息;
获得所述服务器将所述待绑定设备与所述第一设备绑定后返回的绑定信息中的至少部分信息,其中,所述第一设备至少获得所述绑定信息中的部分信息。
在一些实施例中,安全模块220将至少部分加密后的操作输入进行解密,并和安全控制信息进行安全验证,实现对智能锁具进行相应操作的管理。在一些实施例中,输入/输出模块260接收用户操作输入,操作输入可以包括操作指令和/或操作信息。操作输入可以加密,也可以部分加密,例如,对操作输入中的操作信息进行加密。在一些实施例中,安全模块220可以将至少部分加密后的操作输入进行解密,得到解密后的操作输入,并将解密后的操作输入和安全控制信息进行安全验证,若解密后的操作输入的相关信息和安全控制信息相匹配,则安全验证通过。控制模块240执行相应控制操作(如,开锁操作),保证操作输入在传输过程中的安全性。在一些实施例中,可以关联防劫持标记,基于相应控制操作,安全模块220可以通过网络120向服务器发送用户被劫持的相关信息。在一些实施例中,服务器接收到用户被劫持的相关信息后,向指定设备(如,智能锁具的绑定设备,也可以是公安部门所使用的设备)发送告警信息,提高了用户的人身和财产安全。
本申请一些实施例提供了一种智能锁具控制方法,以实现对智能锁具的操作管理和提高用户的安全。图27是根据本申请的一些实施例所示的智能锁具控制方法的示例性流程图。
步骤2701,至少对操作输入的部分内容加密。输入/输出模块260获取操作输入,操作输入可以包括操作指令和/或操作信息。操作输入可以加密,也可以部分加密,例如,对操作输入中的操作信息进行加密。
操作输入也可称为输入信息。该输入信息是指用户输入的信息,例如密码。在一些实施例中,该输入信息(例如,密码)可以利用预设加密算法进行加密。加密算法可以是常规的也可以是定制的加密算法,例如,AES-ECB-128加密算法。
需要说明的是,本申请所涉及的密码可以是字符密码,例如数字、文字、符号以及它们的任意组合,也可以是语音密码,还可以是生物特征信息,例如指纹信息、人脸图像、虹膜信息、DNA(Deoxyribonucleic acid,脱氧核糖核酸)等。
所述语音密码可以是用户输入的语音信息。在一些实施例中,该语音密码可以包含用户输入的语言信息以及用户的声纹特征,例如用户可以把自己朗读“芝麻开门”这个短语的语音信息作为语音密码,其中既包含了“芝麻开门”这个短语的语言信息,又包含了用户朗读这个短语的声纹特征。
输入信息(或称为操作输入)可以包括生物特征信息(指纹、掌纹、指静脉、声音、虹膜、视网膜、人脸)、密码信息、用户ID信息等,或其任意组合。用户ID信息可以是指用于表示用户身份和/或权限的信息,用户ID信息可以储存在磁卡中。在一些实施例中,输入/输出模块260可以包括指纹采集器、掌纹采集器、指静脉采集器、声音采集器(麦克风)、虹膜采集器、面部信息采集器(例如,摄像头)、电子标签读取器、信息输入设备等,或其任意组合。在一些实施例中,安全模块220可以包括多个身份识别单元(图28中未示出),不同的身份识别单元中可以包含不同的输入信息采集子单元。其中,不同的输入信息采集子单元可以获取不同类型的生物特征信息。例如,指纹采集器用于获取用户的指纹特征信息,虹膜采集器用于获取用户的虹膜特征信息,电子标签读取器用于获取用户ID信息(磁卡中的信息),用户可以通过信息输入设备输入密码信息。在一些实施例中,密码信息的输入方式可以包括按键输入、手写输入或语音输入。
智能锁具可以通过以下一种或多种方式获取加密后的输入信息(或称为 操作输入):
在一些实施例中,智能锁具可以通过网络120从控制设备获取加密后的输入信息。
在一些实施例中,智能锁具还可以通过输入/输入模块260获取加密后的输入信息。
在一些实施例中,该加密后的输入信息可以包括操作指令。在安全验证通过以后,智能锁具可以基于该输入信息包括的操作指令执行相应的安全操作,例如,核对密码、开锁操作、上锁操作、发送信息等。安全验证的方法参见步骤2702。
步骤2702,基于至少部分加密后的操作输入和安全控制信息进行安全验证。该步骤可以由安全模块220执行。
在一些实施例中,所述安全控制信息可以是用于验证用户身份的信息。在一些实施例中,用于验证用户身份的信息可以是预先存储的密码信息和/或用户的生物特征信息,具体参见图29、图30的相关说明。在一些实施例中,用于验证用户身份的信息也可以是第二验证信息,关于第二验证信息的具体描述可以参见图35的说明。
安全验证可以采用多种方法。在一些实施例中,智能锁具可以将加密后的输入信息(或称为操作输入)经过解密再与安全控制信息进行明文比对。在一些实施例中,智能锁具还可以将加密后的输入信息与安全控制信息进行密文比对,本申请对此不作限定。
在安全验证通过以后,智能锁具可以基于该输入信息包括的操作指令执行相应的安全操作,例如,核对密码、开锁操作、上锁操作、发送信息等。当安全验证不通过时,智能锁具可以进行异常处理,例如发送报警信息等,具体参见图28的说明。
所述操作指令是指可以指示具体操作的计算机指令,例如开锁指令、上锁指令、信息查看指令以及信息更新指令等。其中,信息查看指令可以查看智能锁具中存有的密码信息。该信息可以包括密码的内容、密码的设置日期、密码的失 效日期、密码的数量、密码的拥有人身份等。信息更新指令可以对上述信息进行增加、删除和/或更改等。
在一些实施例中,所述操作指令可以包括密码信息。在一些实施例中,所述操作指令可以在智能锁具130本地输入。在一些实施例中,所述操作指令也可以通过无线通信或远程连接的输入设备(例如,keyPAD)或用户终端140(例如,手机)等远程触发。在一些实施例中,输入设备(例如,keyPAD)或用户终端140(例如,手机)可以通过如图5所述的方法与智能锁具130建立安全连接,提高数据传输的安全性。在一些实施例中,输入设备(例如,keyPAD)或用户终端140(例如,手机)可以通过如图14所述的方法与智能锁具130建立绑定,提高数据传输的安全性,并提升数据传输效率。
在一些实施例中,上述操作指令可以包含预先设置的关联信息标记,在执行与该操作指令相应的安全操作时,智能锁具可以向服务器发送与该关联信息标记相关的信息,以使该服务器执行相应操作。关联信息标记是指与预设的状况信息相关联的标记。例如,该关联信息标记可以是防劫持标记,用于向服务器发送提示用户被劫持的信息,然后服务器可以向第二指定设备发送告警信息。其中,第二指定设备例如可以是智能锁具所归属的人员的家庭成员所使用的用户设备,也可以是有关公安部门所使用的设备,在此不做具体限定。这样,用户可以在劫持人不知情的情况下对外发送求救信号,可以防止劫持人对用户的伤害。例如,该关联信息标记还可以是安全回家标记,用于向服务器发送用户已安全回家的信息,然后服务器可以将该信息发送至第二指定设备。这样,用户可以在回家的同时向自己的家庭成员发送提示消息,表示自己已安全回家,无需再用手机发送信息。
在一些实施例中,若上述操作指令包含预先设置的关联信息标记,则在执行与该操作指令相应的安全操作时,智能锁具可以利用摄像装置对智能锁具周围环境进行拍照和/或录像,然后上传到服务器。
例如,当上述操作指令包含防劫持标记时,则在执行与该操作指令相应的 安全操作时,该摄像装置可以对智能锁具周围环境进行拍照和/或录像,以此获得劫持人的影像信息以及劫持情况,并通过网络上传到服务器。然后服务器可以将该劫持人的影像信息及劫持情况发送给第二指定设备(例如,公安部门所使用的设备)。
这样,该第二指定设备的用户(例如,公安部门)可以对劫持人的身份进行辨认和记录,以及对劫持情况进行判断,以便采取进一步措施。
再例如,当上述操作指令包含安全回家标记时,则在执行与该操作指令相应的安全操作时,该摄像装置可以对用户进行拍照和/或录像,并通过网络上传到服务器。然后服务器可以将该用户的影像信息发送给第二指定设备(例如,用户的家庭成员的设备),便于用户的家庭成员确认该用户已安全回家。
在一些实施例中,智能锁具可以将安全验证后的状态信息、报警信息等通过网络发送给控制设备或服务器。在执行开锁操作时,控制模块240可以对智能锁具130进行开锁验证操作,并在确认开锁成功后控制智能锁具执行闭锁操作,或者在确认开锁失败后控制智能锁具记录并上报开锁失败的信息,实现对智能锁具130的开锁操作监控和闭锁操作管理,具体参见图43的说明。
如图28所示,其示出了本申请的一个实施例提供的用于控制智能锁具的方法的流程图。操作输入可以包括操作指令和操作信息,“操作指令”可以称为“控制指令”。操作输入可以包括加密后的输入信息。安全控制信息可以包括预先存储的密码。
其中,该方法可以应用于所述智能锁具,该方法可以包括以下步骤:
2801:接收输入信息,该输入信息包括操作指令;
2802:若该输入信息包括经预设加密算法加密后的加密密码,则对该加密密码进行解密,得到经解密后的密码;
2803:若该经解密后的密码与预先存储的密码相匹配,则执行与该输入信息包括的操作指令相应的安全操作。
本申请的用于控制智能锁具的方法不仅能够确保密码在传输过程中的安 全性,还能够识别人身份,解决了身份识别安全问题,只有通过了鉴权的信息,智能锁具才会进行相应的安全操作。
具体地,上述操作指令可以是与智能锁具有关的各种指令,例如开锁指令、上锁指令、信息更新指令、信息查看指令等,在此不做具体限定。其中,信息更新可以指对信息(例如密码信息等)的增加、删减和/或更改等。需要说明的是,上述操作指令可以是用户通过控制设备发送的操作指令,也可以是用户在智能锁具上输入的操作指令,例如,录入生物特征信息触发的操作指令,在此不做具体限定。此外,本申请中所涉及的密码可以是字符密码,例如数字、文字、符号以及它们的任意组合,也可以是语音密码,还可以是生物特征信息,例如指纹信息、人脸图像、虹膜信息、DNA(Deoxyribonucleic acid,脱氧核糖核酸)等,在此不做具体限定。
可选地,预设加密算法的加密过程可以包括:基于加密口令,对待加密的密码进行加密;以及若输入信息是从控制设备接收的,且输入信息包括该加密密码,则智能锁具在接收输入信息之前,可以接收控制设备发送的加密口令生成请求,而后基于加密口令生成请求,随机生成加密口令,然后将随机生成的加密口令返回给该控制设备,以使该控制设备基于该随机生成的加密口令对待加密的密码进行加密,得到加密密码。需要说明的是,通过传输经加密后的加密密码,可以确保密码在传输过程中的安全性,防止密码泄露,进而可以确保智能锁具所归属的人员的人身安全和财产安全。
进一步地,智能锁具可以基于上述随机生成的加密口令,对加密密码进行解密。
可选地,预设加密算法的加密过程进一步包括:利用秘钥对加密口令进行加密,得到经加密后的加密口令;利用经加密后的加密口令对待加密的密码进行加密。在加密密码是控制设备通过此种加密方式得到的情况下,智能锁具在接收到上述输入信息后,可以采用以下解密方式:利用秘钥对上述随机生成的加密口令进行加密,得到经加密后的加密口令;利用该经加密后的加密口令对该加密密 码进行解密,从而实现对加密密码进行解密,得到经解密后的密码。需要说明的是,通过采用此种加密方式,可以进一步提高密码在传输过程中的安全性。
在本实施例的一些可选的实现方式中,若经解密后的密码属于生物特征信息,则智能锁具还可以基于经解密后的密码进行身份认证;以及在执行与操作指令相应的安全操作之后,智能锁具还可以将安全操作执行结果和身份认证结果发送至第一指定设备。其中,智能锁具本地可以存储有生物特征信息和与该生物特征信息对应的人员信息,人员信息例如可以包括但不限于人员的姓名等个人信息。智能锁具可以在本地查找出与经解密后的密码相匹配的生物特征信息,并将该生物特征信息预先对应的人员信息作为身份认证结果。需要说明的是,第一指定设备例如可以是发送上述操作指令的控制设备,也可以是预先设定的设备标识所指示的设备,在此不做具体限定。
在一些实施例中,操作指令可以包含预先设置的关联信息标记,则在执行与该操作指令相应的安全操作时,智能锁具可以向服务器发送与该关联信息标记相关的信息,以使服务器执行相应操作。
在一些实施例中,该关联信息标记可以是防劫持标记,则在执行与该操作指令相应的安全操作时,智能锁具可以向服务器发送用于提示用户被劫持的信息,以使服务器向第二指定设备发送告警信息。
在一些实施例中,当上述操作指令包含防劫持标记时,则在执行与该操作指令相应的安全操作时,摄像装置可以对智能锁具周围环境进行拍照和/或录像,以此获得劫持人的影像信息以及劫持情况,并通过网络上传到服务器。然后服务器可以将该劫持人的影像信息及劫持情况发送给第二指定设备(例如,公安部门所使用的设备)。这样,第二指定设备的用户(例如,公安部门)可以对劫持人的身份进行辨认和记录,以及对劫持情况进行判断,以便采取进一步措施。
其中,该告警信息可以是文本信息,也可以是语音信息等,在此不做具体限定。需要说明的是,该实现方式提供的方案能够解决报警时被劫持人受伤害的风险。由于不是由设备直接发出警报,而是后台发出警报,现场劫持人不知道, 降低了被劫持人受伤害的风险。此外,防劫持可以有不同等级,增加了用户选择报警的途径,使用更方便、灵活,同时也增加了用户的安全性。
在一些实施例中,当操作指令包含安全回家标记时,则在执行与该操作指令相应的安全操作时,该摄像装置可以对用户进行拍照和/或录像,并通过网络上传到服务器。然后服务器可以将该用户的影像信息发送给第二指定设备(例如,用户的家庭成员的设备),便于用户的家庭成员确认该用户已安全回家。
参见图29,其示出了本申请实施例提供的用于控制智能锁具的应用场景的一个示意图。在本应用场景中,以加密口令为挑战码为例进行说明。其中,挑战码指遵循握手验证协议(CHAP)生成的一组加密口令,用于在传输过程中保证用户的真实密码不被泄露。应该理解,本应用场景旨于使本申请的方法更加清楚,并非旨于对本申请进行限制。
在图29所示的应用场景中,当用户通过控制设备控制智能锁具开锁时,可以采用以下鉴权流程:(1)用户通过控制设备上的APP(Application,应用程序)/keypad(键盘)发送获取挑战码指令给智能锁具;(2)智能锁具接收获取挑战码指令后,向控制设备返回16Bytes(字节)的随机数Random;(3)控制设备使用16Bytes的秘钥对Random使用AES-ECB-128加密器进行加密,生成一个16Bytes的xor_key(异或关键词-一种算法逻辑)。控制设备使用xor_key对用于开锁的密码(OpenLock CMD)进行加密,得到密文(Encrypted CMD),并将密文发送到智能锁具;(4)智能锁具接收到密文后,使用秘钥和步骤(2)返回的Random进行AES-ECB-128加密运算,得到xor_key。而后将密文使用xor_key进行解密,得到明文,即上述用于开锁的密码;(5)若经解密得到的明文与预先存储的密码相匹配,则智能锁具可以执行开锁操作。
具体地,智能锁具根据接收的blekey_id(可以理解为开锁人的身份信息),选择对应的钥匙对数据进行解密,判断解密后的命令是否属于该blekey_id所有,如果是,执行相应密钥的权限和操作。通过blekey_id区分权限,区分管理员和普通人员身份,不同的身份所拥有的权限不同,即操作不同。
其中,在上述步骤(3)中,xor_key的功能为:实现对传输的通信指令进行加密;xor_key实现的原理:使用秘钥对挑战码进行AES-ECB-128加密,得到xor_kev。
现结合以下描述对输入信息包括未经加密的生物特征信息时的处理过程/手段进行详细的描述,旨在于使本申请清楚。
如图30所示,其示出了本申请的另一个实施例提供的用于控制智能锁具的方法的流程图。其中,当输入信息包括未经加密的生物特征信息时,该生物特征信息可以是智能锁具利用其所包含的生物特征信息采集模块采集的信息。在图30所示的实施例中,以指纹信息为例进行说明。
指纹识别,由于生物指纹的唯一性,直接可以在输入端排除非法用户身份。提前采集录入用户的指纹信息到设备,用户利用指纹开门时,只有正确的指纹才能识别通过。
具体地,智能锁具可以包括本地数据库,用户需要事先录入指纹信息,以使该指纹信息存储在该本地数据库中,当该用户通过指纹进行开锁时,智能锁具可以将最新采集到的该用户的指纹信息与存储在本地数据库中的指纹信息进行对比,以判断本地数据库中是否有该用户的指纹信息。若指纹信息比对成功,则智能锁具可以确定本地数据库中有该用户的指纹信息,并确定该用户为合法用户,智能锁具可以执行与该用户录入指纹信息时所触发的操作指令相应的安全操作(如开锁操作、上锁操作、信息更新操作或信息获取操作等)。若指纹信息比对不成功,则智能锁具可以确定本地数据库中没有该用户的指纹信息,并判定该用户为非法用户,并采取相应的处理措施。
更进一步地,若用户录入指纹信息时所触发的上述操作指令包括关联防劫持标记的指纹信息,则智能锁具在正常响应上述操作指令的情况下,还可以向服务器发送用于提示用户被劫持的信息,以使该服务器向第二指定设备发送告警信息。
在图28和图30分别对应的实施例提供的用于控制智能锁具的方法的一 些可选的实现方式中,智能锁具本地的数据库中存储有用户事先录入的信息。其中,数据库中可以存储有用户录入的至少一条密码信息,密码信息可以是字符密码(如数字密码),也可以是生物特征信息。另外,当该至少一条密码信息中存在防劫持的密码信息时,数据库中还可以存储有与该密码信息对应的防劫持标记,以用于指示该密码信息属于防劫持密码。此外,当防劫持密码需要进行防劫持等级划分时,数据库中还可以存储有用户设置的与对应防劫持标记的密码信息相对应的防劫持等级。其中,不同的防劫持等级可以表征不同的劫持事件严重程度。当防劫持等级越高时,可以表征劫持事件越严重。此外,数据库中还可以存储有用户设置的与防劫持等级对应的设备标识。当然,当对应防劫持标记的密码信息不需要进行防劫持等级划分时,用户可以不用为该密码信息设置防劫持等级,用户可以直接为该密码信息设置对应的设备标识。其中,该设备标识所指示的设备可以是用于接收服务器发送的告警信息的设备。
如图31所示,其示出了用户事先录入防劫持指纹信息的过程的一个示意图。
在本实施例中,用户事先录入防劫持指纹信息的过程可以包括:
用户打开控制设备(例如,手机等智能终端)上相应的应用程序,并点击应用程序上的防劫持指纹添加项,智能终端发送指令至后台服务器(如上述服务器);
后台服务器接收智能终端发送的指令后,发送相应的第一指令至智能锁具;
智能锁具根据接收的第一指令进入对应的指纹添加状态,并将指纹添加状态和步骤通过后台服务器返回至智能终端;
当指纹添加完成后,智能终端提醒用户选择指纹对应的防劫持等级及接收人(用于接收后台服务器发送的告警信息的设备所归属的人员),用户设置完成后,智能锁具将用户的配置信息存储至本地数据库,并将该配置信息发送至后台服务器;
后台服务器接收到用户的配置信息后会进行保存并关联对应用户;
后台服务器发送信息至智能终端,通知智能终端录入完成,智能终端提示用户录入完成,可以使用。
当需要删除指纹信息时,用户可以在智能终端的应用程序管理页面点击删除项,此时智能终端会提示用户是否确认删除,如果确认删除,智能终端会通过后台服务器发送指令至智能锁具,以使得智能锁具删除指纹,删除成功后会提示用户删除成功。
如图32所示,其示出了本申请的一个实施例提供的用于控制智能锁具的系统的结构示意图。这里,“智能锁具”可以称为“智能锁”,“服务器”可以称为“后台服务器”,“用户终端”可以称为“智能终端”。
该系统包括智能锁3201、后台服务器3202以及智能终端3203,其中智能锁3201与后台服务器3202有线连接或无线连接,后台服务器3202与智能终端3203有线连接或无线连接。智能锁3201可以用于安装在用户的房间门(例如房间大门或者卧室门等)上,也可以安装在任何其他需要安装锁具的场景中,例如可以安装在保险柜上,或者安装在汽车的车门上等,此处不做限制。
智能锁3201可以设置有信息录入单元,例如可以是用于输入密码的键盘或者录入指纹的指纹录入单元等,从而可以用于录入用户的预设信息以及获取用户的控制门锁的信息;智能锁3201还可以设置存储单元,其可以用于存储录入的用户的预设信息;智能锁3201也可以设置数据处理单元和通讯模块(根据与后台服务器3202连接方式的不同,可以是有线通讯模块或无线通讯模块),其分别用于获取该后台服务器3202的指令以及发送信息至该后台服务器3202。
后台服务器3202可以是物理服务器,也可以是云服务器,在此不做具体限定。当后台服务器3202为云服务器时其通过无线方式与智能锁3201连接,用于发送指令至该智能锁3201以及接收该智能锁3201发送的信息,例如接收智能锁3201录入的用户的预设信息等;后台服务器3202也可以通过无线方式与智能终端3203连接,用于发送消息至该智能终端3203以及接收该智能终端 3203发送的指令。
智能终端3203可以是任意形式的终端,例如可以是智能手机、平板电脑、笔记本电脑甚至台式电脑等,此处不做限制,其用于发送指令至该后台服务器3202以及接收该后台服务器3202发送的信息,其还可以对数据库的预设信息进行管理,例如可以根据需要增加或删除预设信息。以智能锁3201安装在房门上为例,当用户需要开门时,需要通过智能锁3201输入相应的控制门锁的信息。控制门锁的信息的类型可以根据需要进行设置。例如,控制门锁的信息可以是用户的指纹,此时智能锁3201上设置有指纹录入单元,当需要开门时,用户将手指放置在指纹录入单元的表面,此时指纹录入单元可以读取用户的指纹信息,从而可以获取用户的控制门锁的信息。再如,控制门锁的信息可以是用户的密码,此时智能锁3201上设置有键盘(该键盘可以是数字键盘,也可以含有字母、数字等的全键盘,亦或是其他形式的键盘),当需要开门时,用户通过键盘输入密码,从而智能锁3201可以获取用户的控制门锁的信息。
将该控制门锁的信息与数据库中的预设信息进行匹配,以获取与该控制门锁的信息相匹配的预设信息。
在获取了用户输入的控制门锁的信息后,需要将控制门锁的信息与数据库中的预设信息进行匹配,以便确认用户的身份。此处的预设信息指的是在进行开锁前预先录入的用户信息,该用户信息可以是用户的指纹,也可以是密码,可根据需要进行设置。当控制门锁的信息与数据库的某一预设信息匹配时,则意味着该预设信息为需要获取的预设信息。
根据该预设信息,执行与该预设信息相关联的响应操作。
请参阅图33,本申请实施例的目的还在于提供一种用于控制智能锁具的装置3300,该装置3300可以应用于智能锁具,该装置3300包括接收模块3301、解密模块3302以及执行模块3303。这里的装置3300与图2中的装置200对应,接收模块3301与图2中的输入/输出模块260对应,解密模块3302与图2中的安全模块220,执行模块3303与图2中的控制模块240对应。
其中,接收模块3301用于接收操作信息和/或操作指令;若操作信息包括经预设加密算法加密后的加密密码,则解密模块3302对加密密码进行解密,得到经解密后的密码;若该经解密后的密码与预先存储的密码相匹配,则执行模块3303执行与该操作指令相应的安全操作。
在本实施例的一些可选的实现方式中,预设加密算法的加密过程可以包括:基于加密口令,对待加密的密码进行加密;以及若上述操作信息是从控制设备接收的,且上述操作信息包括上述加密密码,则在接收上述操作信息之前,上述装置3300还可以包括:第一接收模块(图中未示出),用于接收控制设备发送的加密口令生成请求;生成模块(图中未示出),用于基于上述加密口令生成请求,随机生成加密口令;第一发送模块(图中未示出),用于将随机生成的加密口令返回给上述控制设备,以使上述控制设备基于上述随机生成的加密口令对待加密的密码进行加密,得到加密密码。
在本实施例的一些可选的实现方式中,解密模块3302包括:解密子模块(图中未示出),用于基于上述随机生成的加密口令,对上述加密密码进行解密。
在本实施例的一些可选的实现方式中,上述预设加密算法的加密过程进一步包括:利用秘钥对加密口令进行加密,得到经加密后的加密口令;利用上述经加密后的加密口令对待加密的密码进行加密;以及解密子模块进一步用于:利用秘钥对上述随机生成的加密口令进行加密,得到经加密后的加密口令;利用上述经加密后的加密口令对所述加密密码进行解密。
在本实施例的一些可选的实现方式中,上述装置3300还包括:身份认证模块,用于若上述经解密后的密码属于生物特征信息,则基于上述经解密后的密码进行身份认证;第二发送模块(图中未示出),用于执行模块3303执行与上述操作指令相应的安全操作之后,将安全操作执行结果和身份认证结果发送至第一指定设备。
在本实施例的一些可选的实现方式中,上述装置3300还包括:第三发送模块(图中未示出),用于若上述经解密后的密码预先关联防劫持标记,则在执 行模块3303执行与上述操作指令相应的安全操作时,向服务器发送用于提示用户被劫持的信息,以使服务器向第二指定设备发送告警信息。
在本实施例的一些可选的实现方式中,上述操作指令可以为开锁指令、上锁指令、信息查看指令以及信息更新指令中的任一项。
需要说明的是,上述装置3300可以包括处理器和存储器,接收模块3301、解密模块3302以及执行模块3303等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中可以包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或多个,通过调整内核参数来实现本申请的以上已描述的目的。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本申请的上述实施例提供的装置,通过接收操作信息,而后对该操作信息包括的经预设加密算法加密后的加密密码进行解密,得到经解密后的密码,而后响应于该经解密后的密码与预先存储的密码相匹配,执行与该操作信息包括的操作指令相应的安全操作,可以确保密码在传输过程中的安全性,还可以实现对开锁人的身份验证,解决了身份识别安全问题,只有通过了鉴权的信息,智能锁具才会进行相应的安全操作。
本申请实施例提供了一种计算机可读介质,其上存储有计算机程序,其中,该程序被处理器执行时实现以上各方法实施例描述的用于控制智能锁具的方法。
本申请实施例提供了一种处理器,该处理器用于运行程序,其中,该程序运行时实现以上各方法实施例描述的用于控制智能锁具的方法。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,使得数据处理设备实现以上各方法实施例描述的用于控制智能锁具的方法。
图34是本申请一些实施例提供的一种控制设备的示意图。这里的“控制设备”可以称为“终端设备”。图34中的处理器3401对应于图3中的处理器 320,图34中的存储器3402对应于图3中的只读存储器330、随机存储器340和/或硬盘370。
如图34所示,该实施例的终端设备3400包括:处理器3401、存储器3402以及存储在存储器3402中并可在处理器3401上运行的计算机程序3403,例如用于控制智能锁具的程序。处理器3401执行计算机程序3403时实现上述用于控制智能锁具的方法实施例中的步骤,例如图28所示的步骤2801至步骤2803。或者,处理器3401执行计算机程序3403时实现上述各装置实施例中各模块/单元的功能,例如图33所示的模块3301至3303的功能。
示例性的,计算机程序3403可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器3402中,并由处理器3401执行,以完成本申请。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序3403在终端设备3400中的执行过程。
终端设备3400可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。终端设备3400可包括,但不仅限于,处理器3401、存储器3402。本领域技术人员可以理解,图34仅为终端设备3400的示例,并不构成对终端设备3400的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如该控制设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器3401可以是中央处理单元(Central Processing Unit,CPU),还可以是其它通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器3402可以是终端设备3400的内部存储单元,例如终端设备3400的硬盘或内存。存储器3402也可以是终端设备3400的外部存储设备,例如终端设备3400上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安 全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器3402还可以既包括终端设备3400的内部存储单元也包括外部存储设备。存储器3402用于存储计算机程序以及终端设备3400所需的其它程序和数据。存储器3402还可以用于暂时地存储已经输出或者将要输出的数据。
在一些实施例中,安全模块220可以基于安全控制信息获取第二验证信息。安全模块220可以获取至少包括多个字符组成的第一验证信息,并可以判断第二验证信息与第一验证信息是否符合预设条件。若安全模块220判断第二验证信息与第一验证信息符合预设条件,则安全验证通过,实现对智能锁具进行相应操作的管理。该第一验证信息可以是用户当前输入的多个字符。第二验证信息可以是对第一验证信息进行安全验证的信息。通常情况下,对于密码验证的智能锁具,用户在输入密码时,可能存在输出密码或输入密码被偷窥的情况发生。基于此,为了避免上述情况发生,安全模块220可以将用户输入的密码(第一验证信息)和真实密码(第二验证信息)进行比对。在一些实施例中,若用户输入的密码中包含有密码结束标志位信息(如,#),并且包含了与真实密码相同的字符,安全模块220则可以判断输入的密码与真实密码相匹配。在一些实施例中,若当前时间满足设定的时间条件(如,预设的允许解锁时间范围,或真实密码的有效时间范围)时,安全模块220则可以确认安全验证通过,控制模块240可以执行后续开锁操作,提高了智能锁具的安全性能和便利性。
本申请一些实施例提供了一种智能锁具控制方法,以实现对智能锁具的操作管理和提高了智能锁具的安全性能和便利性。图35是根据本申请的一些实施例所示的智能锁具控制方法的示例性流程图。
步骤3501,基于安全控制信息获取第二验证信息。该步骤可以由安全模块220执行。
所述安全控制信息可以是存储在智能锁具中用于验证操作信息的信息,其可以包括第二验证信息,具体参见图36的说明。
所述第二验证信息可以是存储在智能锁具中用于对所述第一验证信息进 行安全验证的信息,例如,密码、预先设定的时间条件等。
该预先设定的时间条件可以是用户预先设定的关于时间的一个或多个条件,例如,预设的时间范围、密码的有效时间、输入密码的最长时间限制等。
步骤3502,获取第一验证信息。该步骤可以由输入/输出模块260执行。
所述第一验证信息可以是用户输入的至少包括多个字符的密码,例如,由数字、文字、符号或其任意组合组成的字符密码,或者其他可以转换成字符的密码,例如,语音密码。智能锁具接收该语音密码后,可以将其转换为字符密码。
在一些实施例中,所述第一验证信息可以通过以下方式获取:
解析输入/输出模块260获取的操作输入;若解析得到用于指示密码输入结束的结束标志位信息,获取所述操作输入中的第一验证信息。
该结束标志位信息是用于指示密码输入结束的信息,其具体内容可以预先设定。
需要说明的是,该结束标志位信息可以是用户通过键盘输入的字符信息,也可以是用户通过语音输入的语音信息。例如,可以将字符*预先设定为结束标志位信息,也可以将用户朗读的“结束”这个词语的语音信息预先设定为结束标志位信息。
以下通过举例说明获取操作输入中的第一验证信息的方法。
在一些实施例中,该获取所述操作输入中的第一验证信息的方法可以是从操作输入中的固定位置提取固定长度的字符信息或语音信息作为第一验证信息。例如,用户输入的操作输入为字符123456,则可以提取后四位3456作为第一验证信息。再例如,用户输入的操作输入为用户朗读“请芝麻开门”这句话的语音信息,则可以提取后四个字“芝麻开门”的语音信息作为第一验证信息。
在一些实施例中,该获取所述操作输入中的第一验证信息的方法还可以是从操作输入中的任意位置提取固定长度的字符信息或语音信息作为第一验证信息,具体参见图36的说明。
步骤3503,判断第二验证信息与第一验证信息是否符合预设条件。该步 骤可以由安全模块220执行。
若第二验证信息与第一验证信息符合预设条件,则安全验证通过;若第二验证信息与第一验证信息不符合预设条件,则安全验证不通过。
所述预设条件可以是预先设置在智能锁具中的判断条件,例如,判断第一验证信息中的密码与第二验证信息中的密码是否匹配、判断当前时间是否满足第二验证信息中预先设定的时间条件等。其中,当前时间可以是获取第一验证信息的时间。
下面用一个例子说明如何基于所述第一验证信息和第二验证信息进行安全验证。
例如,存储在智能锁具中的第二验证信息是字符密码123#78,则当获取的第一验证信息是与第二验证信息完全匹配的字符密码123#78时,安全验证通过,否则不通过。
再例如,存储在智能锁具中的第二验证信息包括字符密码123#78,以及预设的时间范围。该预设的时间范围是每天的上午9点到下午6点。则安全验证需要同时满足以下两个条件才能通过:1、获取的第一验证信息是与第二验证信息完全匹配的字符密码123#78;2、当前时间为上午9点到下午6点之间。否则不通过。
这样,用户输入的包括多个字符的第一验证信息需要与第二验证信息完全匹配并且当前时间满足预先设定的时间条件才能通过安全验证,保证了智能锁具的安全性。
以第一验证信息为字符密码为例,由背景技术可知,目前用户在输入开锁密码时,固定长度的开锁密码容易被人偷窥并记住,安全性能较低。同时,用户在输入开锁密码的过程中,只要输错开锁密码,需要删除输错的部分,便利性较低。
因此本申请的一些实施例提供的用于安全验证的方法及装置,只要在输入的所有字符中包含正确的密码且符合预先设定的时间条件就能完成解锁,输 错密码不需要删除输错的部分也可完成解锁,以提高安全性能和便利性。
需要说明的是,上述方法既可以在智能锁具上执行,也可以在与智能锁具绑定的控制设备上执行。控制设备与智能锁具绑定的方法可以参见图14的说明。
在一些实施例中,在与智能锁具绑定的控制设备上输入操作输入时,可以对输入的操作输入的至少部分内容进行加密,具体参见本申请其他地方的说明。
同时,该方法的应用场景可以包括但不仅限于:屏幕解锁、页面解锁和门锁解锁等场景。在本申请实施例中对于执行该方法的设备和应用场景不做具体限定。
参见图36,其示出了本申请实施例提供的一种用于解锁的方法流程图。
在图36~图40的说明中,“开锁”可以称为“解锁”,“操作输入”可以称为“第一解锁密码”。“第一验证信息”可以称为“第二解锁密码”。本实施例说明了如何基于操作输入获取第一验证信息,并基于第一验证信息与第二验证信息进行安全验证。这里的第二验证信息包括真实密码和预先设定的时间条件。
该方法适用于前述涉及的智能锁具,方法包括以下步骤:
步骤3601:获取第一解锁密码,并解析第一解锁密码。
在具体实现步骤3601的过程中,当用户通过键盘等具有输入功能的设备输入第一解锁密码时,获取用户输入第一解锁密码和当前时间,解析第一解锁密码。
需要说明的是,上述涉及的键盘可为虚拟键盘也可为实物键盘,例如:对于与该智能锁具绑定的控制设备(例如,手机),该键盘可以是虚拟键盘,对于智能锁具上的输入装置,该键盘可以是实物键盘。需要说明的是,以上举例只是为了说明本申请的一些实施例,并非对本申请范围的限定。
需要说明的是,该密码不限于字符密码,例如数字、文字、符号以及它们的任意组合,也可以是其他可以转换为字符的密码。例如,用户还可以通过语音的方式输入密码,智能锁具接收该语音密码后,可以将其转换为字符密码。
在一些实施例中,该语音密码除了可以包括可以转换为字符的语言信息,还可以包括用户的声纹特征。例如,用户可以把自己朗读“芝麻开门”这个短语的语音信息作为语音密码,其中既包含了“芝麻开门”这个短语的语言信息,又包含了用户朗读这个短语的声纹特征。当进行安全验证时,既要对“芝麻开门”这个短语进行字符方面的匹配,也要对用户的声纹特征进行匹配。当两个条件同时满足时,安全验证才能通过。这样,不仅提高了用户输入密码的便捷性,也提高了密码使用的安全性。
在本实施例的一些可选的实现方式中,在执行步骤3601之前,响应于检测到用户通过键盘输入的第一解锁密码,确定键盘当前是否处于工作状态。若响应于确定键盘当前处于工作状态,获取第一解锁密码。
需要说明的是,为提高安全性能,用户在长时间不需要解锁或者由于特殊需求时,用户可将用于输入解锁密码的键盘冻结,即将键盘的工作状态设置为休眠状态,在休眠期间通过该键盘输入的解锁密码都为无效密码。当用户需要解锁时,用户将该键盘的工作状态设置为活跃状态。
进一步的,需要说明的是,用户通过键盘上的预设按键组合设置键盘的工作状态,例如:用户可通过在键盘上输入“*#*#”字符将键盘的工作状态从“休眠”设置为“活跃”。同理,用户也可通过与门锁通过网络连接的移动控制设备或计算机设置键盘的工作状态,例如:用户在手机上安装门锁app,用户可通过该门锁app远程设置键盘的工作状态。
在本实施例的一些可选的实现方式中,当用户删除输入的第一解锁密码时,确定第一解锁密码为无效密码。
在进一步的实现中,用户在输入解锁密码时,当输入完毕后需输入用于指示密码输入结束的结束标志位信息。查找第一解锁密码是否携带用于指示密码输入结束的结束标志位信息,若第一解锁密码未携带结束标志位信息,确定第一解锁密码为无效密码。
步骤3602:若解析得到用于指示密码输入结束的结束标志位信息,获取 第一解锁密码中的第二解锁密码。
在具体实现步骤3602的过程中,在一些实施例中,当确定第一解锁密码中携带结束标志位信息后,可以按照预设顺序依次获取第一解锁密码中的第二解锁密码,每一次获取第二解锁密码后都与真实密码进行比较,直至获取与真实密码一致的第二解锁密码或者确定所有的第二解锁密码都与真实密码不一致。例如:假设结束标志位信息为#,用户输入的第一解锁密码为00123456#,真实密码由5个字符构成,依次将第一解锁密码中任意5个字符作为第二解锁密码,每一次获取第二解锁密码后都与真实密码进行比较,直至获取与真实密码一致的第二解锁密码或者确定所有的第二解锁密码都与真实密码不一致。
在一些实施例中,当确定第一解锁密码中携带结束标志位信息后,可以直接获取第一解锁密码中的最后若干个字符作为第二解锁密码,并与真实密码进行比较,确定获取的第二解锁密码与真实密码是否一致。例如:假设结束标志位信息为#,用户输入的第一解锁密码为00123456#,真实密码由5个字符构成,则直接将第一解锁密码中最后5个字符作为第二解锁密码,并与真实密码进行比较,以此确定该获取的第二解锁密码与真实密码是否一致。
步骤3603:确定第二解锁密码是否与真实密码相匹配,若是,执行步骤3604,若否,清除第一解锁密码。
在具体实现步骤3603的过程中,预先设置可解锁门锁的真实密码,当获取第二解锁密码之后,判断第二解锁密码是否与预设的真实密码相匹配。例如,若第二解锁密码包括的字符与真实密码包括的字符一致,则可以确定第二解锁密码与真实密码相匹配。可选地,若第二解锁密码包括的字符以及字符的排列方式与真实密码包括的字符以及字符的排列方式一致,则可以确定第二解锁密码与真实密码相匹配。若确定第二解锁密码与真实密码相匹配,可以接着执行步骤3604,以判断当前时间是否满足预先设定的时间条件。若获取的所有第二解锁密码都与真实密码不一致,确定第一解锁密码为无效密码,清除第一解锁密码。
需要说明的是,由前述内容可知,第二解锁密码为第一解锁密码中的预设 位数字符。因此,当用户在输入解锁密码的过程中,在输入结束标志位信息之前若输错解锁密码,用户不需要删除输错的部分,而是继续输入正确且完整的解锁密码并以结束标志位信息结尾即可完成解锁。例如:假设正确的解锁密码为“456123”,结束标志位信息为“#”。用户在输入解锁密码的过程中,若用户输入的解锁密码为“4562”时,用户不需要删除输错的部分,而是继续输入正确且完整的解锁密码并以结束标志位信息结尾即可完成解锁,即用户输入的所有解锁密码为“4562456123#”,当获取的第二解锁密码为456123时,可完成解锁。
步骤3604:确定当前时间是否满足预先设定的时间条件,若是,执行步骤3605,若否,清除第一解锁密码。
预先设定的时间条件可以是用户预先设定的关于时间的一个或多个条件。例如,预设的允许解锁时间范围、基于真实密码对应的生效时间和真实密码对应的过期时间计算得到的有效时间范围、输入密码的最长时间限制等。
在一些实施例中,预先设定的时间条件可以包括以下任一项:预设的允许解锁时间范围,基于真实密码对应的生效时间和真实密码对应的过期时间计算得到的有效时间范围。
进一步的,预先设置禁止解锁的禁止解锁时间范围,在输入解锁密码时,若当前时间在禁止解锁时间范围内,则无法进行后续解锁流程。
在具体实现步骤3604的过程中,预先设置真实密码的有效时间范围,当确定第二解锁密码为真实密码后,判断当前时间是否在有效时间范围内,若是,确定第二解锁密码有效。例如:设置真实密码的有效时间范围为9月1号至10月1号,当确定第二解锁密码为真实密码后,若当前时间在9月1号至10月1号这一范围内,则完成解锁,若当前时间不在9月1号至10月1号这一范围内,确定第二解锁密码为无效密码。
在一些实施例中,预先设定的时间条件还可以包括输入密码的最长时间限制。例如,用户可以预先设定输入密码的最长时间限制为10秒,若用户单次 连续输入密码的时间超过了10秒,则清除第一解锁密码,用户需要重新输入。这样可以防止他人长时间不断输入密码导致密码被破解,例如,利用恶意程序连续不断输入密码的情况。
在一些实施例中,当输入超时以后,智能锁具可以发送提示消息,例如,发出提示音,或者向绑定的控制设备发送提示用户输入超时的消息等。
在一些实施例中,如果用户连续多次输入超时,智能锁具可以进行异常情况处理,例如,向指定设备发送告警信息等。这样,当他人企图利用不断输入密码的方式开锁时,可以及时提醒用户,提高了智能锁具的安全性。在一些实施例中,还可以利用智能锁具自身配置的摄像装置对密码输入者进行影像记录并利用网络上传到服务器,然后服务器再将该影像信息发送到指定设备,例如,用户的控制终端等。
需要说明的是,智能锁具包括时钟芯片,获取时钟芯片的本地时间,将该本地时间作为当前时间。
进一步,需要说明的是,智能锁具与控制设备进行通信连接,按照预设周期校准时钟芯片的本地时间,具体校准方式为:控制设备从服务器处获取网络时间协议(Network Time Protocol,NTP)时间,控制设备将NTP时间发送至智能锁具,使该智能锁具根据NTP时间校准时钟芯片的本地时间。
可选地,智能锁具也可以定期地从服务器获取NTP时间,并根据该NTP时间校准时钟芯片的本地时间。
步骤3605:基于第二解锁密码包括的操作指令执行解锁操作。
在本申请实施例中,接收携带结束标志位信息的第一解锁密码,获取第一解锁密码中的预设位数的第二解锁密码。若第二解锁密码与真实密码相匹配且满足预先设定的时间条件,基于第二解锁密码包括的操作指令完成解锁。在输入的所有字符中包含正确的密码就能完成解锁,输错密码不需要删除输错的部分也可完成解锁,提高了安全性能和便利性。
为更好解释说明上述本申请实施例涉及的一种用于解锁的方法,通过图 37示出的解锁方法流程示意图进行举例说明,图37包括以下步骤:
步骤3701:确定用户输入的第一解锁密码是否包含特定的结束符。若是,执行步骤3702。若否,结束解锁操作。
步骤3702:获取第一解锁密码中的第二解锁密码。
步骤3703:判断第二解锁密码是否与本地存储的真实密码相匹配,若是,第一解锁密码包含有效密码,若否,第一解锁密码为无效密码。
需要说明的是,上述步骤3701至步骤3703的执行原理可参见上述图36中各个步骤的内容,在此不再进行赘述。
在本申请实施例中,接收携带结束标志位信息的第一解锁密码,获取第一解锁密码中的预设位数的第二解锁密码。若第二解锁密码与真实密码相匹配,可以确定第一解锁密码包含有效的密码(第二解锁密码),可以基于第二解锁密码包括的操作指令执行后续的解锁流程。这样可以实现在输入的所有字符中包含正确的密码时就能完成解锁,输错密码不需要删除输错的部分也可完成解锁,提高了安全性能和便利性。
与上述本申请实施例涉及的一种用于解锁的方法相对应,参见图38,本申请实施例还提供了一种用于解锁的装置的结构框图,该装置可以应用于智能锁具,该装置包括:处理单元3801、获取单元3802和解锁单元3803。
处理单元3801,用于获取第一解锁密码,并解析第一解锁密码。
在具体实现中,处理单元3801具体用于:查找第一解锁密码是否携带用于指示密码输入结束的结束标志位信息,若第一解锁密码未携带结束标志位信息,确定第一解锁密码为无效密码。
获取单元3802,用于若解析得到用于指示密码输入结束的结束标志位信息,获取第一解锁密码中的第二解锁密码。
解锁单元3803,用于若第二解锁密码与预设的真实密码相匹配且满足预先设定的时间条件,则基于第二解锁密码包括的操作指令执行解锁操作。
在一些实施例中,该预先设定的时间条件可以包括当前时间处于指定的 有效时间范围内,指定的有效时间范围包括以下任一项:预设的允许解锁时间范围,基于真实密码对应的生效时间和真实密码对应的过期时间计算得到的有效时间范围。
在一些实施例中,该预先设定的时间条件还可以包括输入密码的最长时间限制,例如5秒、10秒等。若输入密码的时间超过该最长时间限制,则清除第一解锁密码,用户需要重新输入。这样可以防止他人长时间不断输入密码导致密码被破解,例如,利用恶意程序连续不断输入密码的情况。
相应的,解锁单元3803具体用于:获取时钟芯片的本地时间,将本地时间作为当前时间。
在本申请实施例中,接收携带结束标志位信息的第一解锁密码,获取第一解锁密码中的预设位数的第二解锁密码。若第二解锁密码符合真实密码且当前时间符合预设时间条件,基于第二解锁密码包括的操作指令完成解锁。在输入的所有字符中包含正确的密码就能完成解锁,输错密码不需要删除输错的部分也可完成解锁,提高了安全性能和便利性。
在本实施例的一些可选的实现方式中,结合图38,参见图39,其示出了本申请实施例提供的一种用于解锁的装置的结构框图,该装置还包括:确定单元3804,用于响应于检测到用户通过键盘输入的第一解锁密码,确定键盘当前是否处于工作状态。
相应的,处理单元3801用于:响应于确定单元3804确定键盘当前处于工作状态,获取第一解锁密码。
在本实施例的一些可选的实现方式中,确定单元3804还用于响应于确定键盘当前未处于工作状态,清除第一解锁密码。
在本申请实施例中,在输入解锁密码前,先确认键盘是否处于工作状态。只有键盘处于工作状态才获取解锁密码,并执行后续解锁流程,提高安全性。
在本实施例的一些可选的实现方式中,结合图38,参见图40,其示出了本申请实施例提供的一种用于解锁的装置的结构框图,该装置还包括:校准单元 3805,用于获取NTP时间,基于NTP时间,校准时钟芯片的本地时间。
在具体实现中,校准单元3805具体用于:接收控制设备发送的NTP时间,NTP时间由控制设备从服务器处获取。
可选地,标准单元3805也可以定期地从服务器获取NTP时间,并根据该NTP时间校准时钟芯片的本地时间。
在本申请实施例中,按照预设周期校准时钟芯片的本地时间,并根据本地时间去判断当前时间是否符合预设时间条件,提高了解锁的准确性。
需要说明的是,用于解锁的解锁装置可以包括处理器和存储器,处理单元、获取单元和解锁单元等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中可以包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或多个,通过调整内核参数来完成解锁。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本申请实施例提供了一种计算机可读介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如图36、图37分别对应的实施例提供的方法。
本申请实施例提供了一种处理器,该处理器用于运行程序,其中,该程序运行时实现如图36、图37分别对应的实施例提供的方法。
本申请实施例提供了一种设备(例如服务器、PC、PAD、智能手机等),该设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现如图36、图37分别对应的实施例提供的方法。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,使得数据处理设备实现如图36、图37分别对应的实施例提供的方法。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和 /或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按 照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。本申请中所涉及的申请范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述申请构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
安全模块220通过将一种或多种操作输入与安全控制信息进行比对,实现对智能设备进行相应操作的管理。智能设备可以是智能锁具130。在一些实施例中,操作输入可以包括操作指令和/或操作信息。一般情况下,锁具仅有比较单一的开锁方式,例如,钥匙开锁、指纹开锁或密码开锁。但是,当用户忘记携带钥匙或忘记密码时,将无法开锁。单一的开锁方式可能不适合不同年龄层的人群,例如,老人或小孩。在实际应用中,为了适应于不同年龄层的家庭成员或防止一种开锁方式不适用或失效时,可以采用兼具多种开锁方式(例如,数字密码开锁、生物特征输入开锁、蓝牙开锁以及NFC开锁)的智能锁具130,以避免上述问题。
本申请实施例的多种开锁方式可以在智能锁具本地输入,也可以在与智能锁具绑定的控制设备上输入。控制设备与智能锁具绑定的方法可以参见图14的说明。
在一些实施例中,在与智能锁具绑定的控制设备上输入操作输入时,可以 对输入的操作输入的至少部分内容进行加密,具体参见本申请其他地方的说明。
此外,为了便于对该智能锁具130进行安全管理,可以在该智能锁具130上设置状态检测(如,锁舌检测、把手检测、钥匙检测、周围环境的光线亮度检测、噪声检测等)功能、安全检测(如,防撬检测)功能、电源管理功能、无线通信功能以及加密功能。为了更方便地对智能锁具130进行管理,可以在控制设备130上直接对智能锁具130进行管理,使用户对该智能锁具130的使用体验度更好。
此外,智能锁具130在检测到开锁状态后,还可以自动执行自动上锁操作或信息上报操作,具体参见本申请其他地方的说明。
本申请一些实施例提供了一种智能锁具控制方法,以实现对智能锁具130的操作管理和安全管理。图41根据本申请的一些实施例所示的智能锁具获取操作指令和/或操作信息方法的示例性流程图。图42是根据本申请的一些实施例所示的智能锁具控制电路的示例性结构图。
步骤4102,获取操作指令和/或操作信息。
操作指令和/或操作信息是指用户输入的用于进行安全验证的信息,例如密码、控制指令等。操作指令和/或操作信息可以通过输入/输出模块260获取。关于操作指令和/或操作信息的更详细介绍可参见后文图27的说明。
在一些实施例中,所述获取操作指令和/或操作信息包括获取以下输入的一种或多种:获取字符输入41021;获取生物特征输入41022;获取无线输入41023。
在一些实施例中,可以获取字符输入41021。字符输入可以定义为用户输入的数字密码。可以从字符输入模块获取字符输入。关于字符输入模块的详细介绍可参见下文。
在一些实施例中,可以获取生物特征输入41022。生物特征输入可以定义为用户输入的生物特征信息。可以从生物特征输入模块获取生物特征输入。
在一些实施例中,可以获取无线输入41023。无线输入可以定义为控制单元4200通过无线通信方式,获取到的操作指令和/或操作信息。可以通过至少一 个无线通信模块,用于与另一无线通信模块建立通信,并获取其内存储的密码信息。关于无线通信模块的详细介绍可参见下文。
上述多种获取操作指令和/或操作信息的方式可以组合使用。
采用多种获取操作指令和/或操作信息的方式,可以避免遗忘或者丢失机械钥匙导致用户无法进行开锁。
在一些实施例中,可以基于接收前述步骤所获取的安全控制信息,以及所述操作指令和/或所述操作信息进行安全验证。
在一些实施例中,安全控制信息是指与存储于安全模块220的执行安全操作相关的信息。
智能锁具130内的控制单元4200与安全模块220对应。控制单元4200为中央处理器或控制器,控制单元4200可以是由一个或一个以上处理器组成,或由至少一组芯片构成。
步骤4104,可以将获取的操作指令和/或操作信息与安全信息进行比对,当满足预设条件时进行开锁操作。
在一些实施例中,可以通过网络从用户终端140获取操作指令和/或操作信息,可以从用户终端140和/或服务器110获取预设条件或者其他与比对相关的信息,可以将比对后的状态信息、报警信息等通过网络发送给用户终端140和/或服务器110。在开锁后,还可以进行开锁验证和闭锁操作,参见图43的说明。
在一些实施例中,控制单元4200可以通过无线通信模块4212与用户终端140和/或服务器110进行无线通信。无线通信单元4212与通信模块210对应。在一些实施例中,无线通信单元4212可为ZigBee模块。
对于获取的操作指令和/或操作信息,控制单元4200可以通过以下方式的一种或多种进行比对:
在一些实施例中,获取操作指令和/或操作信息以后,智能锁具130可以将获取的操作指令和/或操作信息与安全信息进行比对。在一些实施例中,智能 锁具130可以将操作指令和/或操作信息与安全信息进行明文比对。在一些实施例中,可以将经预设加密算法加密后的操作指令和/或操作信息与安全信息进行密文比对,本申请对此不作限定。
当比对成功时,控制单元4200可以向控制模块240发出开锁指令,进行开锁操作。
当比对出现异常时,控制单元4200可以进行以下一种或多种处理:
在一些实施例中,对第n次出现比对异常设置一个或多个阈值,n为大于等于1的正整数。控制单元4200根据n所处的不同阈值区间进行不同异常等级的处理。
例如,设置的阈值个数为两个。
当n小于第一阈值时,控制单元4200可以通过设置于智能锁具130上的提醒模块250,对开锁操作者进行异常信息提示。异常信息提示包括但不限于语音提示、文字显示提示中的一种或多种;或者,通过网络将比对异常信息发送给用户终端140和/或服务器110进行提示。
当n大于等于第一阈值时,小于第二阈值时,控制单元4200可以通过提醒模块250,或者网络进行比对异常信息提示。控制单元4200可以进行报警提示。报警提示包括但不限于警铃鸣叫,灯光闪烁中的一种或多种。
当n大于等于第二阈值时,控制单元4200在进行上述处理的同时,暂时锁定输入/输出获取模块,此时,开锁操作者将暂时无法开锁。在一些实施例中,开锁操作获取模块的锁定时间可以由用户自行设定。
在一些实施例中,可以对同一种操作指令和/或操作信息出现第m次异常设定阈值,m为大于等于1的正整数。
当同一种操作指令和/或操作信息第m次出现比对异常,控制单元4200可以通过提醒模块250提示开锁操作者更换操作指令和/或操作信息方式。提示包括但不限于语音提示、文字显示提示中的一种或多种;或者,通过网络将比对异常信息发送给用户终端140和/或服务器110进行提示。
上述多种异常处理的方式可以组合使用。
在一些实施例中,开锁单元4202对应于输入/输出模块260。
在一些实施例中,开锁单元4202可以是字符输入模块。字符输入模块可以为触摸输入模块42021。在一些实施例中,触摸输入模块42021可以为电容屏触摸屏,触摸输入模块42021可以支持多种形式触摸以及多点触摸,具有较佳的灵敏度以及抗干扰性能。在一些实施例中,所述触摸输入模块42021可以与显示单元4208整合为一体。
在一些实施例中,开锁单元4202可以是生物特征输入模块42022。生物特征信息可以是指纹信息、虹膜信息、面部特征等。
在一些实施例中,开锁单元4202可以是无线通信模块。在一些实施例中,无线通信模块可以为NFC模块42024。NFC模块42024可通过感应NFC卡,并获取其NFC密码,控制单元4200根据所获取的NFC密码判断是否开锁。在另一些实施例中,无线通信模块可以为蓝牙模块42023。蓝牙模块42023用于与另一蓝牙模块建立通信,并获取其蓝牙密钥,控制单元4200根据所获取的蓝牙密钥判断是否开锁。
在一些实施例中,另一蓝牙模块可设置于移动装置4214中。移动装置4214与用户终端140对应。
在一些实施例中,移动装置4214可以为手机。另一蓝牙模块可设置于手机内,并与所述蓝牙模块42023进行通信,以实现手机蓝牙开锁功能。在另一些实施例中,另一蓝牙模块可设置于所述蓝牙钥匙内,并与蓝牙模块42023通信,以实现蓝牙钥匙开锁功能。
在一些实施例中,蓝牙钥匙的蓝牙模块可以与蓝牙模块42023匹配。蓝牙钥匙具有密钥。当蓝牙钥匙接近锁体的蓝牙模块42023时,读取蓝牙钥匙的蓝牙密钥,并根据蓝牙密钥判断是否开锁。在一些实施例中,蓝牙钥匙的蓝牙密钥可由厂家出厂时设定,也可以通过所述移动装置4214与所述蓝牙钥匙建立连接后进行设定。
在一些实施例中,智能锁具130设置有机械结构280,具有传统锁具的机械钥匙开锁功能。
在一些实施例中,控制单元4200可以根据操作指令和/或操作信息判断是否开锁后,进一步根据判断结果生成开锁信息,开锁信息是指与开锁操作相关的各种信息,包括但不限于开锁时间、方式、以及结果。例如,上午十点,数字密码开锁、成功开锁,或者上午十点,生物特征开锁、开锁失败。
在一些实施例中,可以进行智能锁具130的安全检测。智能锁具130可以通过安全检测单元4204检测智能锁具130的安全状态。
在一些实施例中,安全检测可以通过以下方式的一种或多种进行:
在一些实施例中,可以进行撬锁检测。撬锁检测可以通过第一防撬传感器42041检测智能锁具130是否被撬锁。所述第一防撬传感器42041在智能锁具130被撬锁时,向控制单元4200发送报警信号,从而发出警报。一些实施例中,第一防撬传感器42041可以是防撬开关、接近开关或者红外探测器其中任意一种。在一些实施例中,第一防撬传感器42041设置于智能锁具130的锁体中,当智能锁具130的锁体被撬动时即可触发第一防撬传感器42041。
在一些实施例中,可以进行猫眼偷窃检测。猫眼偷窃检测可以通过第二防撬传感器42042检测用户是否通过内把手开门。如果用户是通过内把手开门,则可以正常开门,否则无法开门。第二防撬传感器42042可以是防撬开关、接近开关、红外探测器或者压力传感器其中任意一种,第二防撬传感器42042可设置于智能锁具130内面板,只有触动第二防撬传感器42042,内把手才能下压开锁,如果通过猫眼下压内把手,由于触碰不到第二防撬传感器42042,就无法通过内把手开锁,从而防止从猫眼下压内把手撬锁。
上述多种安全检测方式可以组合进行。
在一些实施例中,控制单元4200可以根据安全检测的检测结果,确定是否生成安全异常信息,安全异常信息是指通过各种非正常手段尝试开锁的信息。安全异常信息可以包括但不限于使用不匹配的密码(或钥匙)反复尝试开锁、撞 击智能锁具130、智能锁具130被撬以及从猫眼开门。
在一些实施例中,可以进行智能锁具130的状态检测。智能锁具130可以通过状态检测单元4206检测智能锁具130的状态,并将所检测的智能锁具状态信息传送至控制单元4200。
在一些实施例中,状态检测可以通过以下方式的一种或多种进行:
在一些实施例中,可以进行锁体状态检测。锁体状态检测可以通过锁舌检测传感器42061检测智能锁具130的锁体状态,并将锁体状态传送至控制单元4200。智能锁具130锁体状态包括检测主舌状态、鉴别锁体以及检测斜舌状态,根据锁体状态可确定智能锁具130的上锁情况。在一些实施例中,锁体状态检测还可以包括:检测锁体方轴由静止到转动的启动动作,以及锁体方轴转动的角位移等。在一些实施例中,锁体状态检测还可以包括:检测智能锁具的电机的输出轴的转动。例如,检测模块290可以与智能锁具中的传动组件连接或适配,并通过传动组件检测到电机的输出轴转动的角位移。
在一些实施例中,可以进行把手状态检测。把手状态检测包括可以把手检测传感器42062用于检测智能锁具130的把手状态,并将把手状态传送至控制单元4200。把手状态包括外把手状态和内把手状态。把手检测传感器42062可以是接近开关或者红外探测器。当用户接触外把手和内把手时,可触发把手检测传感器42062,根据把手状态可判断用户是通过外把手还是内把手开门。
在一些实施例中,可以进行机械钥匙开锁状态检测。机械钥匙开锁状态检测可以通过钥匙检测传感器42064检测智能锁具130中机械钥匙的开锁状态,并将机械钥匙开锁状态传送至控制单元4200。钥匙检测传感器42064可以是接近开关或者红外探测器。当机械钥匙插入智能锁具130内开锁时,可触发钥匙检测传感器42064。
上述多种状态检测方式可以组合进行。
在一些实施例中,智能锁具状态信息包括已经锁门、未锁门、外把手开门、内把手开门、以及机械钥匙开门。
在一些实施例中,智能锁具130的状态信息通过显示单元4208显示。例如,用户输入的操作指令和/或操作信息等。在一些实施例中,所述显示单元4208采用LCD屏24位RGB全彩显示,相较于传统LED灯显示,所述显示单元4208可支持全彩显示,显示色彩丰富,且图像多样。
在一些实施例中,控制单元4200可以进行模式切换。
在一些实施例中,控制单元4200可以切换为工作模式。工作模式中可定义为智能锁具130处于进行开锁或者其内传感器被触发状态。
在控制单元4200处于工作模式时,可以通过状态检测单元4206中的噪声检测传感器42065检测周围环境的噪声,控制单元4200根据所检测的噪声实时调节门铃的喇叭音量。
在一些实施例中,控制单元4200可以切换为睡眠模式。睡眠模式可定义为智能锁具130处于非工作的状态。
在控制单元4200处于睡眠模式时,可以通过状态检测单元4206中的红外检测传感器42063快速唤醒控制单元4200,使其从睡眠模式切换至工作模式。另外,红外检测传感器42063还用于检测智能锁具130周围环境的光线的亮度,并根据所检测的亮度对上述显示单元4208的亮度进行实时调整。
在一些实施例中,可以通过电源管理单元4210进行对智能锁具130的电源管理。
在一些实施例中,由电源管理单元4210对控制单元4200进行供电。
在一些实施例中,电源管理单元包括电池42101、电源输出模块42102、充电模块42103、充电接口42104以及电量采集模块42105。
电池42101通过电源输出模块42102与控制单元4200相连,以向控制单元4200供电。在一些实施例中,电池42101为采用聚合物充电电池,可支持USB接口充电,可通过充电接口42104连接电源后经充电模块42103进行充电,在电池42101充电过程中,不影响智能锁具130使用。
电量采集模块42105用于实时获取电池电量,并将所获取的电池电量传 送至控制单元4200。另外,控制单元4200包括预设电量值,当电池电量达到预设电量值,控制单元4200可以通过指示灯提醒用户,同时,控制电池42101停止供电。
在一些实施例中,控制单元4200可以根据电量采集模块42105获取的电池电量生成电池电量信息。
在一些实施例中,控制单元4200可以与基于移动装置4214的应用程序通信连接,应用程序可以发送控制指令信号,并通过无线通信单元4212远程管理智能锁具130。无线通信单元4212与通信模块210对应。移动装置4214与用户终端140对应。
在一些实施例中,所述远程管理智能锁具130可以通过以下方式的一种或多种进行:
在一些实施例中,用户可以使用手机蓝牙进行开锁操作。移动装置4214内安装有智能锁具管理应用程序,移动装置4214通过所述智能锁具管理应用程序可以实现手机蓝牙开锁等功能。移动装置4214可启动智能锁具管理应用程序,通过智能锁具管理应用程序的手机蓝牙开锁功能,绑定智能锁具130,然后,生成虚拟蓝牙钥匙,最后,将虚拟蓝牙钥匙与所述蓝牙模块42023进行绑定配对,如此,通过所述虚拟蓝牙钥匙进行开锁。
在一些实施例中,用户可以对智能锁具130进行状态管理。状态管理包括但不限于:实现绑定网关、绑定智能锁具130、添加用户生物特征(例如,指纹、虹膜信息)、管理密码、下发密码、查询智能锁具相关信息等。
智能锁具相关信息包括但不限于开锁信息、比对异常信息、安全异常信息、智能锁具状态信息、电池电量信息等。
控制单元4200可通过无线通信单元4212将智能锁具相关信息上传至服务器,用户可以通过移动装置4214内智能锁具管理应用程序,从服务器获取上述信息,从而使得用户可以实时掌握智能锁具130的状况。
在一些实施例中,加密单元4216对智能锁具相关信息上传至服务器110 前进行加密。在一些实施例中,加密单元4216还用于对蓝牙模块42023与蓝牙钥匙之间建立的蓝牙连接中所传输的信息进行加密,从而提高信息传输安全性。
控制模块240对智能锁具130进行开锁验证操作,并在确认开锁成功后控制智能锁具执行闭锁操作,实现对智能锁具130的开锁操作监控和闭锁操作管理。通常情况下,智能锁具130仅根据用户的操作输入进行开锁操作,并未在智能锁具130开锁后进行后续控制操作。基于此,为使智能锁具保障环境安全,可以控制智能锁具130进行闭锁操作。在一些实施例中,控制模块240可以检测智能锁具的开锁操作,并在检测到智能锁具130的开锁操作之后,记录开锁操作信息并上报开锁操作信息。在确认开锁成功后,控制模块240可以控制智能锁具130执行闭锁操作。在一些实施例中,控制模块240可以在闭锁操作之后,联动开启与智能锁具130关联的摄像装置,以对智能锁具130所处环境进行监控。通过该方式可以使用户能够对智能锁具130的开锁情况进行掌控,可以在开锁后执行闭锁操作,保障了用户的居住环境的安全。在一些实施例中,智能锁具也称为智能门锁,闭锁操作也称为自动上锁操作。
本申请一些实施例提供了一种智能锁具控制方法,以实现对智能锁具的开锁操作和闭锁操作管理。图43是根据本申请的一些实施例所示的智能锁具控制方法4300的示例性流程图。
步骤4301,进行开锁验证操作。在一些实施例中,安全模块220可以基于通信模块210获取的安全控制信息对输入/输出模块260接收到的用户操作输入进行安全验证。安全验证通过后,控制模块240执行开锁操作。开锁操作完成之后,安全模块220将按预先设定的需检测的开锁方式对所述开锁操作进行开锁验证(在一些实施例中,开锁验证也称为开锁检测)。具体详见步骤S4501。
步骤4302,根据验证结果执行闭锁操作或提示操作中的一种或多种。控制模块240根据开锁验证的结果执行闭锁操作和/或提示操作。提示操作可以包括提示开锁操作、提示闭锁操作,也可以包括提示非法开锁操作。该智能锁具可以应用于门体上,智能锁具也可以称为智能门锁。在一些实施例中,开锁验证通 过,则进入到关门检测阶段,安全模块220检测到门体关闭,控制模块240将控制智能门锁执行闭锁操作,通信模块210将开锁操作和/或闭锁操作的信息上传至服务器和绑定终端;开锁验证不通过,则认为接收到非法开锁操作指令和/或开锁操作信息,控制模块240控制智能门锁记录所述非法开锁操作指令和/或开锁操作信息,通信模块210将非法开锁操作指令和/或开锁操作信息上传服务器和绑定终端。
在一些实施例中,智能门锁的处理器能够记录开锁操作信息,并通过建立安全连接的网络120上报开锁操作信息。在一些实施例中,智能门锁的处理器能够记录自动上锁信息,并通过建立安全连接的网络120上报自动上锁信息。在一些实施例中,智能门锁还可以将开锁操作信息传输至与智能门锁绑定的其他设备(例如,控制设备)上,以便用户可以更加方便的管理智能门锁。控制设备与智能锁具绑定的方法可以参见图14的相关说明。
在一些实施例中,控制模块240可以根据智能门锁的开锁检测情况,执行闭锁操作。开锁检测是指检测门锁与开锁相关的各种情况。例如,检测是否接收到开锁操作指令,或开锁操作信息。又例如,检测智能门锁的开锁操作是否执行成功。闭锁操作是指进行上锁的操作。例如,检测到装有智能门锁的门体处于关闭状态时执行自动上锁操作。
图44示出了可以应用本申请的智能门锁控制方法或智能门锁控制装置的一些实施例的示例性系统架构4400。
如图44所示,系统架构4400包括:终端设备4401、服务器4402、智能门锁4403及网络4404。其中,终端设备4401与终端设备140对应,服务器4402与服务器110对应,智能门锁4403与智能门锁130对应,网络4404与网络120对应。网络4404用以在终端设备4401、服务器4402及智能门锁4403之间提供通信链路的介质。网络4404可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备4401通过网络4404与服务器4405交互,以接 收或发送消息等。终端设备4401上可以安装有各种客户端应用,例如远程遥控类应用等。具体的,终端设备4401与服务器4402之间可以通过蜂窝移动网络或Wi-Fi网络通信直接通信。智能门锁4403与服务器4402之间可以直接通过网络4404通信,也可以通过物联网网关(图中未示出)连接,智能门锁4403与该物联网网关之间可以基于Zigbee协议通信,该物联网网关与服务器4402之间可以基于蜂窝移动网络或Wi-Fi网络通信。智能门锁4403与终端设备4401之间还可以基于蓝牙协议通信。
终端设备可以是硬件,也可以是软件。当终端设备4401为硬件时,可以是各种具有显示屏的电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机、台式计算机等等。当终端设备4401为软件时,可以安装在上述所列举的电子设备中。其可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。
服务器4402可以是提供各种服务的服务器,例如,服务器4402可以响应于接收到终端设备4401发送的门锁控制指令,对该门锁控制指令进行分析等处理,得到门锁控制请求,并将该门锁控制请求发送至智能门锁4403,以令用户实现对智能门锁4403的控制。
需要说明的是,服务器4402可以是硬件,也可以是软件。当服务器为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软件或软件模块。在此不做具体限定。
需要说明的是,本申请实施例所提供的智能门锁控制方法一般由智能门锁4403执行,相应地,智能门锁控制装置一般设置于智能门锁4403中。
应该理解,图44中的终端设备、网络、服务器和智能门锁的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络、服务器和智能门锁。
图45是根据本申请的一些实施例所示的一种智能门锁控制方法4500的 流程图,该方法应用于智能门锁中的处理器,该智能门锁控制方法4500,包括以下步骤:
S4501:检测智能门锁的目标开锁操作,该目标开锁操作为预先设定的需检测的开锁方式。
智能门锁控制方法的执行主体可以检测智能门锁的开锁操作,智能门锁支持检测的开锁操作可以是多个,每个开锁操作至少匹配一种开锁方式。目标开锁操作为预先设定的需检测的开锁方式。用户在选定某种开锁方式进行开锁时,会产生相应的开锁操作,智能门锁基于与该开锁操作对应的检测规则确定是否产生该开锁操作。
开锁操作是指进行与开锁相关的各种操作。开锁操作可以通过开锁指令执行。
开锁方式是指以某种类型的开锁指令执行开锁操作的方式。所述开锁指令的类型可以包括但不限于机械指令、密码指令、生物特征指令、网络指令等。预先设定的需检测的开锁方式可以有多种,比如,钥匙开锁方式、密码开锁方式、指纹开锁方式、刷卡开锁方式、通过智能门锁APP下发开锁指令开锁的方式等。在一些实施例中,开锁方式可以通过操作指令获得。在一些实施例中,操作指令可以通过本地或远程的方式获得。在一些实施例中,进行远程输入的设备(例如,控制设备、用户终端等)可以与智能锁具建立安全连接,具体可以参考图5的相关说明。在一些实施例中,智能锁具还可以与远程输入的设备建立绑定关系,具体可以参考图14的相关说明。在一些实施例中,智能锁具可以对获取的操作指令进行安全验证,具体可以参考图27、图35的相关说明。
检测规则是指检测开锁操作规则,不同开锁方式对应不同的规则。例如,使用钥匙开门,门锁芯片通过检查备用钥匙锁芯IO接口的电位变化(低电平到高电平和高电平到低电平)确定为机械钥匙开门,实现对开锁操作的检测;门锁后面板旋钮手动开门,门锁芯片通过检查后面板旋钮IO接口的电位变化(低电平到高电平和高电平到低电平),实现对开锁操作的检测;使用手机APP蓝牙 开锁,门锁根据接收的蓝牙加密信息,门锁进行解密和鉴权,成功后门锁开锁,实现对开锁操作的检测;使用keypad输入密码开锁,在keypad输入密码后,keypad将密码信息进行加密并通过蓝牙下发给门锁,门锁根据接收到加密信息进行解密,获得密码信息后与门锁内有效的密码进行比对,比对成功后门锁开锁,实现对开锁操作的检测;使用keypad按压指纹开锁,keypad将指纹信息进行加密并通过蓝牙下发给门锁,门锁根据接收到加密信息进行解密,得到指纹信息后与门锁内有效的指纹进行比对,比对成功后门锁开锁,实现对开锁操作的检测;门锁在正常联网状态下,用户点击APP上的开门按键,通过网关将指令下发到门锁,实现对开锁操作的检测。
开锁检测可以在执行开锁操作之前、之后或同时进行。
在一些实施例中,预先设定的需检测的开锁方式可以通过绑定终端或服务器进行设置,也可以预设在智能门锁中。在一些实施例中,智能门锁可以识别目标开锁操作是否具有合法性。检测到目标开锁操作时,如果智能门锁内侧把手被驱动,则判断为内侧合法开锁操作;检测到目标开锁操作时,如果智能门锁外侧把手被驱动,则判断为外侧开锁操作,如果此次开锁操作经过了合法授权,即符合预设开锁规则,则判定为合法开锁行为,否则就判断为非法开锁操作,将此操作记录并上传绑定终端或服务器。
可以检测智能门锁的预设部件的输入输出IO接口的电位是否发生变化;如果检测到该预设部件的IO接口的电位发生变化,则确定检测到该智能门锁的目标开锁操作。示例一如,可检测备用钥匙锁芯的输入输出IO接口的电位是否发生变化,当该备用钥匙锁芯的IO接口的电位发生变化时,确定检测到该智能门锁的目标开锁操作。需要说明的是,电位发生变化即电位由低电平切换到高电平,或者,电位由高电平切换到低电平。示例二如:检测智能门锁的锁控制机构的IO接口的电位是否发生变化,锁控制机构可以是用于控制智能门锁解锁或锁定的机构,如设置于智能门锁面板上的把手或旋钮等,当该锁控制机构的IO接口的电位发生变化时,确定检测到该智能门锁的目标开锁操作。需要说明的是, 电位发生变化即电位由低电平切换到高电平,或者,电位由高电平切换到低电平。通过检测电位变化来判断智能门锁的状态是否发生变化。需要说明的是,门锁状态发生变化即门锁由锁死状态转变为打开状态。以此来检测开锁操作。
在一些实施例中,可以检测是否接收到目标终端设备发送的开锁指令,该目标终端设备为与该智能门锁关联的终端设备;如果检测到该开锁指令,则确定检测到该智能门锁的目标开锁操作。示例一如,可检测是否接收到目标终端设备发送的蓝牙开锁指令,如果接收到蓝牙开锁指令,则对该蓝牙开锁指令进行鉴权,如果鉴权通过,则确定检测到该智能门锁的目标开锁操作。需要说明的是,用户使用终端设备上安装的客户端(比如,智能门锁APP)触发蓝牙开锁选项,即可生成蓝牙开锁指令,蓝牙开锁指令通过终端设备发送至智能门锁,智能门锁如果接收到蓝牙开锁指令即对蓝牙开锁指令进行解密和鉴权,如果解密和鉴权成功则控制智能门锁开锁。示例二如:检测是否接收到目标终端设备发送的远程开锁指令,如果接收到远程开锁指令,则对该远程开锁指令进行鉴权,如果鉴权通过,则确定检测到该智能门锁的手动开锁操作。需要说明的是,门锁在正常联网状态下,用户点击智能门锁APP上的开门按键即可生成远程开锁指令,终端设备将远程开锁指令发送至智能门锁,智能门锁对远程开锁指令进行鉴权,如果鉴权通过,则智能门锁成功开锁。示例三如:检测是否接收到目标终端设备发送的NFC(Near Field Communication,近场通信)开锁指令,如果接收到NFC开锁指令,则对该NFC开锁指令进行鉴权,如果鉴权通过,则确定检测到该智能门锁的目标开锁操作。
通过检测开锁指令,并对开锁指令进行鉴权来检测智能门锁的开锁动作。如果鉴权通过,则认为收到了开锁指令,能够检测到智能门锁的目标开锁动作。
在进行开锁检测时,根据实际情况,可以先检测开锁指令,再检测目标开锁动作,也可以先检测目标开锁动作,再检测开锁指令,还可以同时检测开锁指令和目标开锁动作。
在本实施例的一些可选的实现方式中,可以检测是否接收到密码开锁指 令;如果检测到该密码开锁指令,则确定检测到该智能门锁的目标开锁操作。示例一如,可检测是否接收到数字密码开锁指令,如果接收到数字密码开锁指令,则对该数字密码开锁指令进行鉴权,如果鉴权通过,则确定检测到该智能门锁的目标开锁操作。需要说明的是,用户可使用密码键盘输入装置输入密码,生成数字密码开锁指令,密码键盘输入装置将数字密码开锁指令加密后发送至智能门锁,智能门锁如果接收到数字密码开锁指令,解密获取数字密码,并将数字密码与智能门锁内有效数字密码进行比对,比对成功后,智能门锁成功开锁。示例二如:检测是否接收到生物特征密码开锁指令,如果接收到生物特征密码开锁指令,则对该生物特征密码开锁指令进行鉴权,如果鉴权通过,则确定检测到该智能门锁的目标开锁操作。需要说明的是,用户可使用密码键盘输入装置输入指纹等生物特征密码,生成生物特征密码开锁指令,并将生物特征密码开锁指令进行加密发送至智能门锁,智能门锁如果接收到生物特征密码开锁指令,解密获取开锁生物特征密码,并将开锁指纹与智能门锁内有效生物特征密码进行比对,比对成功后,智能门锁成功开锁。
S4502:在检测到该智能门锁的目标开锁操作之后,记录开锁操作信息并上报该开锁操作信息。
智能门锁控制方法的执行主体(例如图44所示的智能门锁4403)可以在检测到该智能门锁的目标开锁操作之后,识别出与目标开锁操作匹配的开锁方式,并生成开锁操作信息。开锁操作信息包括开锁人、开锁时间、开锁方式等,进一步的,智能门锁可先将生成的开锁操作信息记录至本地,当智能门锁通过网关或者终端设备与服务器联网时,再将本地记录的开锁操作信息上报至终端设备或服务器。
智能门锁控制方法的执行主体可以在检测到该智能门锁的目标开锁操作之后,判断目标开锁操作是否执行成功,并生成开锁状态信息。开锁状态信息包括开锁成功和开锁失败两种。开锁成功可以理解为智能门锁完整执行整个开锁动作。反之,开锁失败可以理解为智能门锁未能完整执行整个开锁动作。例如, 开锁动作未执行,则开锁状态信息为开锁失败。又例如,开锁动作执行部分,则开锁状态信息为开锁失败。
当判断目标开锁操作成功执行时,则确定为开锁成功状态,智能门锁将开锁成功的信息保存至本地,当智能门锁通过网关或者终端设备与服务器联网时,再将本地记录的开锁成功信息上报至终端设备或服务器。同时生成通知信息通知用户。
当判断目标开锁操作执行失败时,则确定为开锁失败状态,智能门锁将开锁失败信息保存至本地,并将本地记录的开锁失败信息上报至终端设备或服务器。同时生成通知信息通知用户。
当判断目标开锁操作执行失败时,执行问题诊断,判断开锁操作执行失败的原因,将原因保存至本地,并将本地记录的开锁失败原因上报至终端设备或服务器。生成通知信息发给用户,方便用户采取应对方式。
问题诊断的过程即对开锁操作执行失败原因的判断过程,具体包括问题的类型、造成的原因。诊断的方式和策略预先设置在执行问题诊断的设备中。
问题诊断可以由智能门锁本身执行,也可以由终端设备或服务器执行。诊断由门锁执行时,智能门锁将开锁失败信息或失败原因一同保存至本地并上报终端设备或服务器,然后将失败信息及失败原因通知用户。诊断由终端设备或服务器执行时,智能门锁将执行失败信息上报终端设备或服务器,终端设备或服务器诊断失败原因并保存,然后将失败信息及失败原因通知用户。
在一些实施例中,智能门锁检测到开锁操作后,智能门锁会记录对应的开锁信息。开锁信息可以包括但不限于开锁人、开锁时间、开锁方式等。在一些实施例中,当智能门锁通过网关或者APP与云端服务器联网时,智能门锁会将所记录的开锁信息加密,以ZigBee传输协议上传到网关,网关通过WiFi上传到云端服务器;或者通过蓝牙传输到APP,APP通过蜂窝移动网络或者WiFi将开锁信息上传到云端服务器。
S4503:在确认开锁成功后,控制该智能门锁执行自动上锁操作。
另外,在智能门锁成功开锁之后,用户打开安装有智能门锁的门体进入室内或从室内走出后,会将门体关上,在本实施例中,智能门锁控制方法的执行主体(例如图44所示的智能门锁4403)可以在确认开锁成功后,控制该智能门锁执行自动上锁操作,从而保障了用户居住环境安全。具体的,可驱动智能门锁的锁舌弹出,实现自动上锁。
本申请的上述实施例提供的方法,通过检测智能门锁的目标开锁操作,目标开锁操作为预先设定的需检测的开锁方式;在检测到智能门锁的目标开锁操作之后,记录开锁操作信息并上报开锁操作信息;在确认开锁成功后,控制智能门锁执行自动上锁操作,实现了使用户能够对智能门锁的开锁情况进行掌控,保障了用户的居住环境的安全。
在一些实施例中,智能门锁可以记录上锁操作信息,并上传到绑定终端或服务器。
图46是根据本申请的一些实施例所示的另一种智能门锁控制方法4600的流程图。该方法可以包括以下步骤:
S4601:检测智能门锁的目标开锁操作,该目标开锁操作为预先设定的需检测的开锁方式。
S4602:在检测到该智能门锁的目标开锁操作之后,记录开锁操作信息并上报该开锁操作信息。
S4601和S4602的具体实现可参见S4501和S4502,本实施例不再赘述。
S4603:在确认开锁成功后,检测安装有该智能门锁的门体是否处于关闭状态。
现有技术中是仅仅通过一种传感器确定门体是否处于关闭状态,而该传感器往往会受到各种干扰导致智能门锁对门体状态确定有误,比如,门体实际是关闭状态,智能门锁却检测到门体处于开启状态;或者,门体实际是开启状态,智能门锁却检测到门体处于关闭状态。
而在本实现方式中,先通过第一传感器检测安装有智能门锁的门体的加 速度大于预设阈值时,再根据第二传感器采集的数据确定门体是否处于关闭状态,可以提高门体状态识别正确率。
在本实施例的一些可选的实现方式中,如图47所示,可在智能门锁中设置第一传感器、第二传感器和第一计时器,在检测安装有智能门锁的门体是否处于关闭状态时,可以获取第一传感器的采集数据;根据该第一传感器的采集数据,确定该门体的加速度;当该加速度大于预设阈值时,获取该第二传感器在该第一计时器的计时时长达到第一预设时长之前采集的数据,并在该第一计时器的计时时长达到第一预设时长之后,控制该第二传感器处于休眠状态,根据该第二传感器采集的数据确定该门体处于关闭状态还是处于开启状态。
在本实现方式中,通过设置计时器控制第二传感器的状态,控制第二传感器连续采集数据的时长在预设时长内,能够避免第二传感器长时间处于工作状态产生较高的功耗,比如,用户在等人的情况下,摇晃门体导致门体长时间加速度大于预设阈值,如果没有计时器,第二传感器一直处于工作状态,增加计时器之后,可以限制第二传感器处于工作状态的时间,从而降低智能门锁的功耗。
在本实施例的一些可选的实现方式中,可在智能门锁中设置位置传感器(例如,陀螺仪传感器或加速度传感器)检测智能锁具所对应的门体的状态(例如,打开状态、关闭状态等)及保持在所述状态所持续的时间。例如,检测到陀螺仪传感器反馈的门体的角度小于预设角度(例如,1°)且保持至少预设时间(例如,0.5秒)时,判断门体处于关闭状态。又例如,检测到加速度计反馈的门体的加速度大于预设加速度时,确认门体处于关闭状态。
在本实施例的一些可选的实现方式中,通过在该控制该智能门锁执行自动上锁操作之后,控制该第二传感器处于休眠状态也可降低智能门锁的功耗。基于此,在需要获取该第二传感器采集的数据之前,还需要唤醒该第二传感器。
在本实施例的一些可选的实现方式中,该第一传感器可以为加速度传感器,加速度传感器是低功耗传感器,其一直处于工作状态也不会增加智能门锁的功耗。
在本实施例的一些可选的实现方式中,该第二传感器可以为地磁传感器,则在检测安装有智能门锁的门体是否处于关闭状态时,可获取该地磁传感器采集的地磁通量,当该地磁通量处于预设地磁通量区间内时,确定该门体处于关闭状态;当该地磁通量处于预设地磁通量区间外时,确定该门体处于开启状态。
在本实施例的一些可选的实现方式中,在该获取该地磁传感器采集的地磁通量之前,可通过对该地磁传感器进行校准确定该预设地磁通量区间。具体的,每次校准都需要确定门体处于关闭状态,在该关闭状态下获取智能门锁内的地磁传感器采集的地磁通量,通过多次校准即可得到多个地磁通量,多个地磁通量中的最小值与最大值之间的区间即为预设地磁通量区间。其中,可通过人工确定安装有智能门锁的门体处于关闭状态,比如,在智能门锁安装在门体之后,用户将门体关闭,以确定门体处于关闭状态,或者,在用户开门进入室内之后,将门体关闭,以确定门体处于关闭状态。
在本实施例中,通过第一传感器、第二传感器对智能门锁状态或地磁通量的检测,对关门动作进行检测,可以减少附近有磁性材料所称造成的磁场干扰,减少对门锁状态的误判,从而保证了后续自动上锁操作的准确性。
S4604:当检测到该门体处于关闭状态时,控制该智能门锁执行自动上锁操作。
在一些实施例中,智能门锁可以获取上锁指令,完成上锁操作。上锁指令由用户通过绑定终端发出,或直接发出。
在本实施例中,智能门锁控制方法的执行主体(例如图44所示的智能门锁4403)可以在确认开锁成功后,检测到安装有智能门锁的门体处于关闭状态,则控制该智能门锁执行自动上锁操作,从而保障了用户居住环境安全。
在一些实施例中,门锁控制方法的执行主体(例如图44所示的智能门锁4403)检测到安装有智能门锁的门体处于关闭状态后,判断是否要控制该智能门锁执行自动上锁操作。例如,开锁成功一定时间后,自动执行上锁操作;判断发出开锁指令的终端设备与门锁的距离,超出一定距离后自动执行上锁操作。
在一些实施例中,可以根据蓝牙信号的强弱来判断终端设备与智能门锁的距离。
在一些实施例中,可以通过网络信号强弱的变化来判断终端设备与智能门锁的距离。
在一些实施例中,锁控制方法的执行主体(例如图44所示的智能门锁4403)可以根据锁门的方式设定下一次门锁打开的途径。锁门的方式即智能门锁上锁的方式,包括接收到上锁指令上锁和自动上锁两种。门锁打开的途径即开门指令从门体内侧发出还是从门体外侧发出。例如,后面板旋钮手动开门是从门体内侧发出的指令;keypad输入指纹或密码是从门体外侧发出的指令;通过蓝牙发送的指令或通过物联网发送的指令既可以从门体内侧发出也可以从门体外侧发出。
具体地,检测到门锁接收到上锁指令上锁,对应用户出门的情景,可设定下一次接受的开门指令既可以从门内侧发出,也可以从门外侧发出;当检测到智能门锁通过自动上锁的途径上锁时,对应用户进门的情景,可设定下一次只接受从门内侧发出的开锁指令。
图48示出了智能门锁控制方法的又一个实施例的流程4800。该方法可以包括以下步骤:
S4801:检测智能门锁的目标开锁操作,该目标开锁操作为预先设定的需检测的开锁方式。
S4802:在检测到该智能门锁的目标开锁操作之后,记录开锁操作信息并上报该开锁操作信息。
S4801和S4802的具体实现可参见S4501和S4502,本实施例不再赘述。
S4803:在确认开锁成功后,触发第二计时器开始计时;
在本实施例的一些可选的实现方式中,可在智能门锁中设置第二计时器,在确认开锁成功后,触发该第二计时器开始计时。
在一些实施例中,可以为第二计时器设置预设时长,用于判断是否执行上 锁操作。
在一些实施例中,用户可以选择设定一个或几个不同的第二预设时长,对应日常生活中的不同情况。设置多个预设时长可以更好地应对生活的不同场景,例如,当用户出门时,更短的第二预设时长可以避免用户出门时门锁未及时上锁可能带来的安全隐患;当用户进门时,相对更长的第二预设时长,可以避免用户在房内短暂停留时短时间内重复发出开锁指令。
S4804:当该第二计时器的计时时长大于第二预设时长时,控制该智能门锁执行自动上锁操作。
例如:当计时时长大于5分钟时,控制智能门锁执行自动上锁操作。
在本实施例中,智能门锁控制方法的执行主体(例如图44所示的智能门锁4403)可以在确认开锁成功后,触发第二计时器开始计时。当该第二计时器的计时时长大于第二预设时长时,控制该智能门锁执行自动上锁操作,从而保障了用户居住环境安全。
在一些实施例中,智能门锁控制方法的执行主体(例如图44所示的智能门锁4403)可以根据上锁时间设定下一次门锁打开的途径。例如,上锁时间在早上,则下一次可以设置为从外侧打开;又例如,上锁时间在晚上,则下一次可以设置为从内侧打开。
在一些实施例中,智能门锁可以根据上一次门锁打开的途径设置下一次门锁打开的途径。例如,上一次门锁是从外侧打开,则下一次可以设置为从内侧打开。
在一些实施例中,智能门锁可以根据开锁时间和上一次门锁打开的途径设置下一次门锁打开的途径。
在一些实施例中,智能门锁下一次的打开途径可以由用户根据需要通过绑定终端手动设置。
图49示出了智能门锁控制方法的又一个实施例流程4900。该方法可以包括以下步骤:
S4901:检测智能门锁的目标开锁操作,该目标开锁操作为预先设定的需检测的开锁方式。
S4902:在检测到该智能门锁的目标开锁操作之后,记录开锁操作信息并上报该开锁操作信息。
S4903:在确认开锁成功后,控制该智能门锁执行自动上锁操作。
S4901、S4902和S4903的具体实现可参见S4501、S4502和S4503,本实施例不再赘述。
S4904:生成关联设备联动指令,该关联设备联动指令用于控制开启与该智能门锁关联的摄像装置。
在本实施例中,在该控制该智能门锁执行自动上锁操作之后,还可生成关联设备联动指令,该关联设备联动指令用于控制开启与该智能门锁关联的摄像装置。该摄像装置一般为安装有智能门锁的用户的家用摄像头或者智能猫眼,该摄像装置可以与智能门锁进行关联。
在一些实施例中,智能门锁通过服务器与摄像装置关联,向该摄像装置发送关联设备联动指令。
在一些实施例中,智能门锁通过蓝牙与摄像装置关联,向该摄像装置发送关联设备联动指令。
在一些实施例中,智能门锁通过物联网网关与物联网网络覆盖区域内的摄像装置关联,向该摄像装置发送关联设备联动指令。
S4905:将该关联设备联动指令发送至该摄像装置。
具体的,智能门锁可将关联设备联动指令发送至服务器,由服务器确定与该智能门锁关联的摄像装置,并将关联设备联动指令转发至摄像装置。或者,智能门锁通过蓝牙将关联设备联动指令直接发送至摄像装置。或者,智能门锁可将关联设备联动指令发送至物联网网关,由物联网网关将关联设备联动指令发送中处于其网络覆盖区域内的摄像装置。
在一些实施例中,智能门锁可以对摄像装置监控范围内的异常行为进行 检测,记录异常行为并上报。异常行为指非正常开门情景下的行为。例如,蓄意遮挡面部、长时间徘徊、在门口做标记等存在偷窃可能性的行为;或乱写乱画、暴力砸门、撬门等恶意实施破坏的行为。
在一些实施例中,智能门锁在检测到所述异常行为后,可以记录下异常行为发生的时间,保存相关图像,并上传至服务器与绑定终端,通知用户异常情况,以便采取适当的应对措施。
本实现方式中,智能门锁可以与该摄像装置联动,唤醒该摄像装置开始工作,及时记录下用户居住环境的安全情况,以便在发生居住安全事故时,及时准确的记录事故的发生过程。
在本实施例的一些可选的实现方式中,在该控制该智能门锁执行自动上锁操作之后,还可记录自动上锁信息并上报该自动上锁信息。使用户对智能门锁的状况进行掌控。
图50示出了一种智能门锁控制装置的一个实施例,该装置实施例与图45所示的方法实施例相对应,该控制装置具体可以应用于各种电子设备中。
如图50所示,该智能门锁控制装置5000包括:开锁操作检测单元5001、记录单元5002和自动上锁单元5003。
开锁操作检测单元5001,被配置成用于检测智能门锁的目标开锁操作,该目标开锁操作为预先设定的需检测的开锁方式;
记录单元5002,被配置成用于在检测到该智能门锁的目标开锁操作之后,记录开锁操作信息并上报该开锁操作信息;
自动上锁单元5003,被配置成用于在确认开锁成功后,控制该智能门锁执行自动上锁操作。
在本实施例中,开锁操作检测单元5001、记录单元5002和自动上锁单元5003的具体处理及其带来的技术效果可分别参考图45对应实施例中步骤S4501、步骤S4502和步骤S4503的实施例的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,开锁操作检测单元具体用于:
检测智能门锁的预设部件的输入输出IO接口的电位是否发生变化;
如果检测到所述预设部件的IO接口的电位发生变化,则确定检测到所述智能门锁的目标开锁操作。
在本实施例的一些可选的实现方式中,开锁操作检测单元具体用于:
检测钥匙锁芯的IO接口的电位是否发生变化;
或,检测所述智能门锁的锁控制机构的IO接口的电位是否发生变化。
在本实施例的一些可选的实现方式中,开锁操作检测单元具体用于:
检测是否接收到目标终端设备发送的开锁指令,所述目标终端设备为与所述智能门锁关联的终端设备;
如果检测到所述开锁指令,则确定检测到所述智能门锁的目标开锁操作。
在本实施例的一些可选的实现方式中,开锁操作检测单元具体用于:
检测是否接收到目标终端设备发送的蓝牙开锁指令;
或,检测是否接收到目标终端设备发送的远程开锁指令;
或,检测是否接收到目标终端设备发送的近场通信NFC开锁指令。
在本实施例的一些可选的实现方式中,开锁操作检测单元具体用于:
检测是否接收到密码开锁指令;
如果检测到所述密码开锁指令,则确定检测到所述智能门锁的目标开锁操作。
在本实施例的一些可选的实现方式中,开锁操作检测单元具体用于:
检测是否接收到数字密码开锁指令;
或,检测是否接收到生物特征密码开锁指令。
在本实施例的一些可选的实现方案中,开锁操作检测单元具体用于:
检测开锁操作是否合法。
在本实施例的一些可选的实现方式中,该自动上锁单元,具体包括:
门体状态检测子单元,用于在确认开锁成功后,检测安装有该智能门锁的门体是否处于关闭状态;
自动上锁子单元,用于当检测到该门体处于关闭状态时,控制该智能门锁执行自动上锁操作。
在本实施例的一些可选的实现方式中,该智能门锁内设置有第一传感器、第二传感器,该门体状态检测子单元,具体用于:
获取该第一传感器的采集数据;
根据该第一传感器的采集数据,确定该门体的加速度;
当该加速度大于预设阈值时,获取该第二传感器采集的数据;
根据该第二传感器采集的数据确定该门体处于关闭状态还是处于开启状态。
在本实施例的一些可选的实现方式中,该智能门锁内还设置有第一计时器,该门体状态检测子单元,具体用于:
当该加速度大于预设阈值时,获取该第二传感器在该第一计时器的计时时长达到第一预设时长之前采集的数据,并在该第一计时器的计时时长达到第一预设时长之后,控制该第二传感器处于休眠状态。
在本实施例的一些可选的实现方式中,该第二传感器为地磁传感器,该门体状态检测子单元,具体用于:
获取所述地磁传感器采集的地磁通量;
所述根据所述第二传感器采集的数据确定所述门体处于关闭状态还是处于开启状态,包括:
当所述地磁通量处于预设地磁通量区间内时,确定所述门体处于关闭状态;
当所述地磁通量处于预设地磁通量区间外时,确定所述门体处于开启状态。
在本实施例的一些可选的实现方式中,该智能门锁还设置有第二计时器,该自动上锁单元,具体用于:
在确认开锁成功后,触发该第二计时器开始计时;
当该第二计时器的计时时长大于第二预设时长时,控制该智能门锁执行自动上锁操作。
在本实施例的一些可选的实现方式中,该装置还包括:
联动单元,用于在该控制该智能门锁执行自动上锁操作之后,生成关联设备联动指令,该关联设备联动指令用于控制开启与该智能门锁关联的摄像装置;将该关联设备联动指令发送至该摄像装置。
在本实施例的一些可选的实现方式中,该记录单元还用于:
在控制所述智能门锁执行自动上锁操作之后,记录自动上锁信息并上报该自动上锁信息。
需要说明的是,智能门锁控制装置5000可以包括处理器和存储器,开锁操作检测单元5001、记录单元5002和自动上锁单元5003等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中可以包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或多个,通过调整内核参数来实现对智能门锁的控制。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本申请的上述实施例提供的智能门锁控制装置,通过开锁操作检测单元检测智能门锁的目标开锁操作,该目标开锁操作为预先设定的需检测的开锁方式;记录单元在检测到该智能门锁的目标开锁操作之后,记录开锁操作信息并上报该开锁操作信息;自动上锁单元在确认开锁成功后,控制该智能门锁执行自动上锁操作,实现了使用户能够对智能门锁的开锁情况进行掌控,保障了用户的居住环境的安全。
本申请实施例提供了一种计算机可读介质,其上存储有计算机程序,其中,该程序被处理器执行时实现以上各方法实施例描述的智能门锁控制方法。
本申请实施例提供了一种处理器,该处理器用于运行程序,其中,该程序运行时实现以上各方法实施例描述的智能门锁控制方法。
本申请实施例提供了一种设备,该设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以上各方法实施例描述的智能门锁控制方法。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,使得数据处理设备实现以上各方法实施例描述的智能门锁控制方法。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。存 储器是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本申请的限定。虽然此处并没有明确说明,本领域技术人员可能会对本申请进行各种修改、改进和修正。该类修改、改进和修正在本申请中被建议,所以该类修改、改进、修正仍属于本申请示范实施例的精神和范围。
同时,本申请使用了特定词语来描述本申请的实施例。如“一个实施例”、“一实施例”、和/或“一些实施例”意指与本申请至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一实施例”或“一个实施例”或“一个替代性实施例”并不一定是指同一实施例。此外,本申请的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
此外,本领域技术人员可以理解,本申请的各方面可以通过若干具有可专利性的种类或情况进行说明和描述,包括任何新的和有用的工序、机器、产品或物质的组合,或对他们的任何新的和有用的改进。相应地,本申请的各个方面可以完全由硬件执行、可以完全由软件(包括固件、常驻软件、微码等)执行、也 可以由硬件和软件组合执行。以上硬件或软件均可被称为“数据块”、“模块”、“引擎”、“单元”、“组件”或“系统”。此外,本申请的各方面可能表现为位于一个或多个计算机可读介质中的计算机产品,该产品包括计算机可读程序编码。
计算机存储介质可能包含一个内含有计算机程序编码的传播数据信号,例如在基带上或作为载波的一部分。该传播信号可能有多种表现形式,包括电磁形式、光形式等,或合适的组合形式。计算机存储介质可以是除计算机可读存储介质之外的任何计算机可读介质,该介质可以通过连接至一个指令执行系统、装置或设备以实现通讯、传播或传输供使用的程序。位于计算机存储介质上的程序编码可以通过任何合适的介质进行传播,包括无线电、电缆、光纤电缆、RF、或类似介质,或任何上述介质的组合。
本申请各部分操作所需的计算机程序编码可以用任意一种或多种程序语言编写,包括面向对象编程语言如Java、Scala、Smalltalk、Eiffel、JADE、Emerald、C++、C#、VB.NET、Python等,常规程序化编程语言如C语言、Visual Basic、Fortran 2003、Perl、COBOL 2002、PHP、ABAP,动态编程语言如Python、Ruby和Groovy,或其他编程语言等。该程序编码可以完全在用户计算机上运行、或作为独立的软件包在用户计算机上运行、或部分在用户计算机上运行部分在远程计算机运行、或完全在远程计算机或服务器上运行。在后种情况下,远程计算机可以通过任何网络形式与用户计算机连接,比如局域网(LAN)或广域网(WAN),或连接至外部计算机(例如通过因特网),或在云计算环境中,或作为服务使用如软件即服务(SaaS)。
此外,除非权利要求中明确说明,本申请所述处理元素和序列的顺序、数字字母的使用、或其他名称的使用,并非用于限定本申请流程和方法的顺序。尽管上述披露中通过各种示例讨论了一些目前认为有用的发明实施例,但应当理解的是,该类细节仅起到说明的目的,附加的权利要求并不仅限于披露的实施例,相反,权利要求旨在覆盖所有符合本申请实施例实质和范围的修正和等价组合。 例如,虽然以上所描述的系统组件可以通过硬件设备实现,但是也可以只通过软件的解决方案得以实现,如在现有的服务器或移动设备上安装所描述的系统。
同理,应当注意的是,为了简化本申请披露的表述,从而帮助对一个或多个发明实施例的理解,前文对本申请实施例的描述中,有时会将多种特征归并至一个实施例、附图或对其的描述中。但是,这种披露方法并不意味着本申请对象所需要的特征比权利要求中提及的特征多。实际上,实施例的特征要少于上述披露的单个实施例的全部特征。
一些实施例中使用了描述成分、属性数量的数字,应当理解的是,此类用于实施例描述的数字,在一些示例中使用了修饰词“大约”、“近似”或“大体上”来修饰。除非另外说明,“大约”、“近似”或“大体上”表明所述数字允许有±20%的变化。相应地,在一些实施例中,说明书和权利要求中使用的数值参数均为近似值,该近似值根据个别实施例所需特点可以发生改变。在一些实施例中,数值参数应考虑规定的有效数位并采用一般位数保留的方法。尽管本申请一些实施例中用于确认其范围广度的数值域和参数为近似值,在具体实施例中,此类数值的设定在可行范围内尽可能精确。
针对本申请引用的每个专利、专利申请、专利申请公开物和其他材料,如文章、书籍、说明书、出版物、文档等,特此将其全部内容并入本申请作为参考。与本申请内容不一致或产生冲突的申请历史文件除外,对本申请权利要求最广范围有限制的文件(当前或之后附加于本申请中的)也除外。需要说明的是,如果本申请附属材料中的描述、定义、和/或术语的使用与本申请所述内容有不一致或冲突的地方,以本申请的描述、定义和/或术语的使用为准。
最后,应当理解的是,本申请中所述实施例仅用以说明本申请实施例的原则。其他的变形也可能属于本申请的范围。因此,作为示例而非限制,本申请实施例的替代配置可视为与本申请的教导一致。相应地,本申请的实施例不仅限于本申请明确介绍和描述的实施例。

Claims (46)

  1. 一种智能锁具控制方法,其中,所述方法包括:
    与网络建立安全连接;
    通过所述安全连接获取安全控制信息;
    获取操作输入;
    基于所述安全控制信息以及所述操作输入进行安全验证;
    当所述安全验证通过时基于所述操作输入进行相应操作。
  2. 根据权利要求1所述的方法,其中,所述与网络建立安全连接包括:
    通过所述网络发送所述智能锁具的特征信息;
    通过所述网络获取加密密钥,所述加密密钥与所述特征信息相关;
    基于所述加密密钥对通过所述网络发送的特征信息进行加密操作。
  3. 根据权利要求1所述的方法,其中,所述方法还包括:
    接收绑定请求;
    基于所述绑定请求,获取控制设备的控制设备信息;
    基于所述控制设备信息,在安全验证失败时向所述控制设备发送告警信息。
  4. 根据权利要求1所述的方法,其中,至少对所述操作输入的部分内容加密;所述基于所述安全控制信息以及所述操作输入进行安全验证包括:
    基于所述至少部分加密后的操作输入和所述安全控制信息进行安全验证。
  5. 根据权利要求1所述的方法,其中,所述操作输入至少包括多个字符组成的第一验证信息;所述基于所述安全控制信息和所述操作输入进行安全验证包括:
    基于所述安全控制信息获取第二验证信息;
    当所述第二验证信息与所述第一验证信息符合预设条件时安全验证通过。
  6. 根据权利要求1所述的方法,其中,所述获取操作输入包括获取以下输入的一种或多种:
    获取字符输入;
    获取生物特征输入;
    获取无线输入。
  7. 根据权利要求1所述的方法,其中,所述相应操作包括开锁操作;所述方法还包括:
    进行开锁验证操作;
    根据验证结果执行闭锁操作和提示操作中的一种或多种。
  8. 一种智能锁具控制系统,其中,所述系统包括:
    存储一组指令的存储设备;以及
    与所述存储设备通信的一个或以上处理器,其中,当执行所述指令时,所述一个或以上处理器被配置为使所述系统:
    与网络建立安全连接;
    通过所述安全连接获取安全控制信息;
    获取操作输入;
    基于所述安全控制信息以及所述操作输入进行安全验证;
    当所述安全验证通过时基于所述操作输入进行相应操作。
  9. 根据权利要求8所述的系统,其中,为了与网络建立安全连接,所述一个或以上处理器被配置为使所述系统:
    通过所述网络发送所述智能锁具的特征信息;
    通过所述网络获取加密密钥,所述加密密钥与所述特征信息相关;
    基于所述加密密钥对通过所述网络发送的特征信息进行加密操作。
  10. 根据权利要求8所述的系统,其中,所述一个或以上处理器进一步被配置为使所述系统:
    接收绑定请求;
    基于所述绑定请求,获取控制设备的控制设备信息;
    基于所述控制设备信息,在安全验证失败时向所述控制设备发送告警信息。
  11. 根据权利要求8所述的系统,其中,所述操作输入包括加密后的输入信息;为了基于所述安全控制信息以及所述操作输入进行安全验证,所述一个或以上处理器被配置为使所述系统:
    基于所述加密后的输入信息和所述安全控制信息进行安全验证。
  12. 根据权利要求8所述的系统,其中,所述操作输入为多个字符组成的第一验证信息;为了基于所述安全控制信息和所述操作输入进行安全验证,所述一个或以上处理器被配置为使所述系统:
    基于所述安全控制信息获取第二验证信息;
    当所述第二验证信息与所述第一验证信息符合预设条件时安全验证通过。
  13. 根据权利要求8所述的系统,其中,所述获取操作输入包括获取以下输入的一种或多种:
    获取字符输入;
    获取生物特征输入;
    获取无线输入。
  14. 根据权利要求8所述的系统,其中,所述相应操作包括开锁操作;所述一个或以上处理器进一步被配置为使所述系统:
    当进行所述开锁操作后进行开锁验证操作;
    根据验证结果执行闭锁操作和提示操作中的一种或多种。
  15. 一种智能锁具控制系统,其中,包括:
    处理模块,用于与网络建立安全连接;
    通信模块,用于通过所述安全连接获取安全控制信息;
    输入/输出模块,用于获取操作输入;
    安全模块,用于基于所述安全控制信息以及所述操作输入进行安全验证;
    控制模块,用于当所述安全验证通过时基于所述操作输入进行相应操作。
  16. 一种计算机可读存储介质,其中,所述存储介质存储计算机指令,当计算机读取所述存储介质中的所述计算机指令后,所述计算机执行如权利要求1~7中任一项所述的方法。
  17. 一种用于安全通信的方法,其中,所述方法包括:
    获取智能锁具的安全连接请求,所述安全连接请求中包含所述智能锁具的特征信息;
    基于所述安全连接请求,确定与所述智能锁具相对应的加密密钥;
    将与所述智能锁具相对应的加密密钥发送给所述智能锁具;
    其中,与所述智能锁具相对应的加密秘钥为使用所述智能锁具相对应的哈希值对原始网络秘钥进行加密得到;所述与智能锁具相对应的哈希值为对所述 智能锁具的特征信息进行哈希运算得到。
  18. 根据权利要求17所述的方法,其中,将与所述智能锁具相对应的所述加密密钥发送给所述智能锁具之后,所述方法还包括:
    接收所述智能锁具发送的应用层秘钥的请求信息;
    为所述智能锁具分配所述智能锁具特有的原始应用层秘钥;
    利用所述智能锁具相对应的哈希值对所述智能锁具特有的原始应用层秘钥进行加密,得到与所述智能锁具相对应的加密应用层秘钥;
    向所述智能锁具发送与所述智能锁具相对应的所述加密应用层秘钥。
  19. 根据权利要求18所述的方法,其中,向所述智能锁具发送与所述智能锁具相对应的所述加密应用层秘钥之后,所述方法还包括:
    接收所述智能锁具发送的加密数据包;其中,所述加密数据包包括:由所述原始网络秘钥加密的网络层数据、以及由所述智能锁具特有的原始应用层秘钥加密的应用层数据;
    利用所述原始网络秘钥和所述智能锁具特有的原始应用层秘钥对所述加密数据包进行解密。
  20. 一种智能锁具绑定方法,其中,所述方法包括:
    接收绑定请求,所述绑定请求中携带有所述智能锁具的设备信息与用户终端的设备信息,所述智能锁具的设备信息由所述用户终端扫描所述智能锁具后获取得到;
    将所述智能锁具与所述用户终端进行绑定,得到绑定信息;
    将所述绑定信息发送给所述智能设备和所述用户终端。
  21. 根据权利要求20所述的方法,其中,所述将所述绑定信息发送给所述智能锁具和所述用户终端后,所述方法还包括:
    对所述用户终端与所述智能锁具进行时间同步处理;和/或
    获取所述智能锁具的状态信息,并将所述状态信息发送给所述用户终端。
  22. 根据权利要求20所述的方法,其中,所述将所述绑定信息发送给所述智能锁具和所述用户终端后,所述方法还包括:
    获取所述用户终端生成的操作信息,并将所述操作信息发送给所述智能锁具;
    获取所述智能锁具的操作结果,并将所述操作结果发送给所述用户终端。
  23. 一种用于控制智能锁具的方法,其中,所述方法包括:
    获取操作输入,所述操作输入包括加密后的输入信息;
    对所述加密后的输入信息进行解密,得到解密后的输入信息;
    确定所述解密后的输入信息与安全控制信息是否相匹配:
    若是,则安全验证通过,并基于所述操作输入进行相应操作。
  24. 根据权利要求23所述的方法,其中,对所述输入信息的加密过程包括:基于加密口令,对所述输入信息进行加密;以及
    若所述操作输入是从用户端接收的,所述获取操作输入包括:
    接收所述用户端发送的加密口令生成请求;
    基于所述加密口令生成请求,获得加密口令;
    向所述用户端发送所述加密口令;
    所述用户端基于所述加密口令对所述操作输入进行加密,得到所述加密后的输入信息。
  25. 根据权利要求24所述的方法,其中,所述对所述加密后的输入信息进行解密,得到解密后的输入信息包括:
    基于所述加密口令,对所述加密后的输入信息进行解密。
  26. 根据权利要求25所述的方法,其中,所述获取操作输入包括:基于秘钥对所述加密口令进行加密,得到经加密后的加密口令;基于所述经加密后的加密口令对所述操作输入进行加密;以及
    所述对所述加密后的输入信息进行解密,得到解密后的输入信息包括:
    基于秘钥对所述加密口令进行加密,得到经加密后的加密口令;
    基于所述经加密后的加密口令对所述加密后的输入信息进行解密。
  27. 根据权利要求23所述的方法,其中,所述解密后的输入信息包括生物特征信息;所述确定所述解密后的输入信息与安全控制信息是否相匹配包括:基于所述解密后的输入信息进行身份认证;以及,所述方法还包括:
    将所述身份认证的结果和所述进行相应操作的结果发送至第一指定设备。
  28. 根据权利要求23所述的方法,其中,所述解密后的输入信息包括关联信息标记,所述方法还包括:
    向服务器发送与所述关联信息标记对应的关联信息。
  29. 一种解锁方法,其中,所述方法包括:
    获取操作输入,并解析所述操作输入;
    确定所述操作输入中是否包含结束标志位信息:若是,则获取所述操作输入中的第一验证信息;
    确定所述第一验证信息与预设的第二验证信息是否符合预设条件:若是,则基于所述操作输入进行相应操作。
  30. 根据权利要求29所述的方法,其中,所述预设条件包括预设时间条件和所述第一验证信息与所述第二验证信息匹配。
  31. 根据权利要求29所述的方法,其中,在所述获取操作输入之前,所述方法包括:
    检测所述操作输入的输入设备的是否处于工作状态;
    若是,则获取所述操作输入;
    若否,则清除所述操作输入。
  32. 根据权利要求29所述的方法,其中,所述确定所述操作输入中是否包含结束标志位信息包括:
    若否,则确定所述操作输入无效。
  33. 根据权利要求29所述的方法,其中,所述确定所述第一验证信息与预设的第二验证信息是否符合预设条件包括:
    获取网络时间协议时间;
    基于所述网络时间协议时间,校准本地时间。
  34. 一种智能锁具控制电路,其中,包括:
    控制单元;
    显示单元,用于显示所述智能锁具的信息;所述显示单元与所述控制单元通信连接;
    开锁单元,所述开锁单元包括:
    触摸输入模块,用于接收用户的字符输入信息;
    生物特征输入模块,用于接收用户的生物特征输入信息;
    至少一个或者多个无线通信模块,用于与另一无线通信模块建立通信,并获取其内存储的安全控制信息;
    所述控制单元根据所述字符输入信息、所述生物特征输入信息和所述安全控制信息进行安全验证。
  35. 根据权利要求34所述的智能锁具控制电路,其中,所述智能锁具控制电路还包括状态检测单元,所述状态检测单元包括至少一个检测传感器,用于检测智能锁具状态,并将所检测的智能锁具状态传送至所述控制单元。
  36. 根据权利要求35所述的智能锁具控制电路,其中,所述状态检测单元还包括与所述控制单元相连的红外检测传感器,用于快速将唤醒所述控制单元,使其从睡眠模式切换至工作模式。
  37. 根据权利要求35所述的智能锁具控制电路,其中,所述状态检测单元还包括与所述控制单元相连的噪声检测传感器,所述噪声检测传感器用于检测所述智能锁具周围环境的噪声,所述控制单元根据所检测的噪声实时调节门铃音量。
  38. 根据权利要求34所述的智能锁具控制电路,其中,所述智能锁具控制电路还包括安全检测单元;所述安全检测单元用于检测所述智能锁具是否被撬锁,并在所述智能锁具被撬锁时,向所述控制单元发送报警信号;或者
    用于检测用户是否通过内面板把手开门,如果用户是否通过内面板把手开门,则可以正常开门,否则无法开门。
  39. 根据权利要求34所述的智能锁具控制电路,其中,所述智能锁具控制电路还包括无线通信单元以及加密单元,所述控制单元通过所述无线通信单元与服务器通信,向所述服务器上传所述智能锁具相关信息;
    所述加密单元用于对所述智能锁具相关信息上传至所述服务器前进行加密,以及用于对所述通信过程中所传输的信息进行加密;
    所述智能锁具相关信息包括开锁信息、智能锁具状态信息、智能锁具安全信息、电池电量信息。
  40. 一种智能锁具控制方法,其中,所述方法包括:
    对所述智能锁具进行开锁验证操作;
    确定验证结果是否为开锁成功:
    若是,记录并上报开锁信息,以及执行闭锁操作和/或提示操作;
    若否,执行提示操作。
  41. 根据权利要求40所述的方法,其中,所述对所述智能锁具进行开锁验证操作,包括:
    检测智能锁具的预设部件的输入输出IO接口的电位是否发生变化:
    若是,则确定检测到所述智能锁具的目标开锁操作。
  42. 根据权利要求40所述的方法,其中,所述对所述智能锁具进行开锁验 证操作,包括:
    检测是否接收到操作输入,所述操作输入包括操作指令和/或操作信息:
    若是,则确定检测到所述智能锁具的目标开锁操作。
  43. 根据权利要求40-42中任意一项所述的方法,其中,所述确定验证结果为开锁成功后,执行闭锁操作,包括:
    在确定验证结果为开锁成功后,检测安装有所述智能锁具的门体是否处于关闭状态:若是,控制所述智能锁具执行闭锁操作。
  44. 根据权利要求40-42中任意一项所述的方法,其中,所述确定验证结果为开锁成功后,执行闭锁操作,包括:
    在确定验证结果为开锁成功后,开始计时;
    当所述计时的时长大于预设时长时,控制所述智能锁具执行闭锁操作。
  45. 根据权利要求40所述的方法,其中,在所述智能锁具执行闭锁操作之后,所述方法还包括:
    生成关联设备联动指令,所述关联设备联动指令用于控制开启与所述智能锁具关联的摄像装置;
    将所述关联设备联动指令发送至所述摄像装置。
  46. 根据权利要求40所述的方法,其中,在所述智能锁具执行闭锁操作之后,所述方法还包括:
    记录闭锁信息并上报所述闭锁信息。
PCT/CN2020/106653 2019-08-02 2020-08-03 一种智能锁具控制方法和系统 WO2021023164A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US17/454,048 US11417159B2 (en) 2019-08-02 2021-11-08 Methods and systems for controlling a smart lock
US17/818,718 US11928904B2 (en) 2019-08-02 2022-08-10 Methods and systems for controlling a smart lock

Applications Claiming Priority (12)

Application Number Priority Date Filing Date Title
CN201910711989.X 2019-08-02
CN201910711989.XA CN112399410A (zh) 2019-08-02 2019-08-02 用于安全通信的方法、装置、计算机可读介质及设备
CN201910716929.7A CN112330847A (zh) 2019-08-05 2019-08-05 用于解锁的方法及装置
CN201910716929.7 2019-08-05
CN201910721490.7 2019-08-06
CN201910721490.7A CN112348996A (zh) 2019-08-06 2019-08-06 设备绑定方法、用户终端及待绑定设备
CN201910736714.1A CN112446982A (zh) 2019-08-10 2019-08-10 用于控制智能锁的方法、装置、计算机可读介质及设备
CN201910736714.1 2019-08-10
CN201910743893.1A CN112446984A (zh) 2019-08-13 2019-08-13 智能门锁控制方法及装置
CN201910743893.1 2019-08-13
CN201922029811.5U CN212642357U (zh) 2019-11-21 2019-11-21 门锁控制电路及具有所述门锁控制电路的门锁
CN201922029811.5 2019-11-21

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/454,048 Continuation US11417159B2 (en) 2019-08-02 2021-11-08 Methods and systems for controlling a smart lock

Publications (1)

Publication Number Publication Date
WO2021023164A1 true WO2021023164A1 (zh) 2021-02-11

Family

ID=74503839

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2020/106653 WO2021023164A1 (zh) 2019-08-02 2020-08-03 一种智能锁具控制方法和系统

Country Status (2)

Country Link
US (2) US11417159B2 (zh)
WO (1) WO2021023164A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113934151A (zh) * 2021-10-22 2022-01-14 洛阳职业技术学院 一种物联网网关及其通讯方法
WO2023109240A1 (zh) * 2021-12-16 2023-06-22 青岛海尔科技有限公司 智能门锁的绑定方法和装置、存储介质及电子装置
CN116436957A (zh) * 2023-06-12 2023-07-14 深圳市锦锐科技股份有限公司 一种智能门锁用控制方法及系统
CN116978150A (zh) * 2023-09-25 2023-10-31 杭州行至云起科技有限公司 一种智能锁控制方法、装置及系统

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11811845B2 (en) 2004-03-16 2023-11-07 Icontrol Networks, Inc. Communication protocols over internet protocol (IP) networks
US20050216302A1 (en) 2004-03-16 2005-09-29 Icontrol Networks, Inc. Business method for premises management
US11916870B2 (en) 2004-03-16 2024-02-27 Icontrol Networks, Inc. Gateway registry methods and systems
US10127802B2 (en) 2010-09-28 2018-11-13 Icontrol Networks, Inc. Integrated security system with parallel processing architecture
US11244545B2 (en) 2004-03-16 2022-02-08 Icontrol Networks, Inc. Cross-client sensor user interface in an integrated security network
US11343380B2 (en) 2004-03-16 2022-05-24 Icontrol Networks, Inc. Premises system automation
US10237237B2 (en) 2007-06-12 2019-03-19 Icontrol Networks, Inc. Communication protocols in integrated systems
US10721087B2 (en) 2005-03-16 2020-07-21 Icontrol Networks, Inc. Method for networked touchscreen with integrated interfaces
US20120324566A1 (en) 2005-03-16 2012-12-20 Marc Baum Takeover Processes In Security Network Integrated With Premise Security System
US7633385B2 (en) 2007-02-28 2009-12-15 Ucontrol, Inc. Method and system for communicating with and controlling an alarm system from a remote server
US11212192B2 (en) 2007-06-12 2021-12-28 Icontrol Networks, Inc. Communication protocols in integrated systems
US11831462B2 (en) 2007-08-24 2023-11-28 Icontrol Networks, Inc. Controlling data routing in premises management systems
US11916928B2 (en) 2008-01-24 2024-02-27 Icontrol Networks, Inc. Communication protocols over internet protocol (IP) networks
US20170185278A1 (en) * 2008-08-11 2017-06-29 Icontrol Networks, Inc. Automation system user interface
US11792036B2 (en) 2008-08-11 2023-10-17 Icontrol Networks, Inc. Mobile premises automation platform
US11758026B2 (en) 2008-08-11 2023-09-12 Icontrol Networks, Inc. Virtual device systems and methods
US8638211B2 (en) 2009-04-30 2014-01-28 Icontrol Networks, Inc. Configurable controller and interface for home SMA, phone and multimedia
US8836467B1 (en) 2010-09-28 2014-09-16 Icontrol Networks, Inc. Method, system and apparatus for automated reporting of account and sensor zone information to a central station
US11405463B2 (en) 2014-03-03 2022-08-02 Icontrol Networks, Inc. Media content management
US11639617B1 (en) 2019-04-03 2023-05-02 The Chamberlain Group Llc Access control system and method
US11863665B2 (en) * 2019-08-16 2024-01-02 Lenovo (Singapore) Pte. Ltd. Security capabilities in an encryption key request
CN114038138A (zh) * 2021-11-05 2022-02-11 国网江苏省电力有限公司盐城供电分公司 一种用于专变用户智能电表箱的防窃系统
CN114673427A (zh) * 2022-04-29 2022-06-28 中国农业银行股份有限公司 一种保险箱控制方法、控制装置及保险箱系统
CN115150482A (zh) * 2022-06-30 2022-10-04 先临三维科技股份有限公司 设备绑定方法、装置及计算机可读存储介质
CN115424378B (zh) * 2022-09-02 2023-12-29 广东好太太智能家居有限公司 智能密码锁的安全防护方法、装置及相关设备
CN116567528B (zh) * 2023-07-10 2023-10-13 广东星云开物科技股份有限公司 共享车辆选择方法、装置和共享电动车系统
CN117857072A (zh) * 2023-09-27 2024-04-09 东莞市安邦德智能锁具科技有限公司 一种基于物联网的防智能锁信息泄露系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106971442A (zh) * 2017-05-03 2017-07-21 河南传通电子科技有限公司 一种安全智能锁系统
CN107038777A (zh) * 2017-03-29 2017-08-11 云丁网络技术(北京)有限公司 一种基于智能门锁系统的安全通信方法及其智能门锁系统
CN108053527A (zh) * 2017-12-11 2018-05-18 上海众人网络安全技术有限公司 一种智能门锁的控制方法、装置及系统
US20180225900A1 (en) * 2015-12-07 2018-08-09 Capital One Services, Llc Electronic access control system

Family Cites Families (112)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1994021089A1 (en) 1993-03-05 1994-09-15 Medeco Security Locks, Inc. Electronic security system with novel electronic t-handle lock
US6304973B1 (en) * 1998-08-06 2001-10-16 Cryptek Secure Communications, Llc Multi-level security network system
CN2431357Y (zh) 1999-11-10 2001-05-23 王道远 自主式电脑动态密码锁
CN1306137C (zh) 2000-09-30 2007-03-21 宏碁股份有限公司 电子锁及其控制方法
US6988203B2 (en) * 2001-04-06 2006-01-17 Honeywell International Inc. System and method of extending communications with the wiegand protocol
ES2318302T3 (es) * 2003-05-16 2009-05-01 Koninklijke Philips Electronics N.V. Prueba de ejecucion que utiliza funcion aleatoria.
CN2658862Y (zh) 2003-11-21 2004-11-24 深圳市达高实业有限公司 无线智能防盗报警装置
GB0519814D0 (en) 2005-09-29 2005-11-23 Hewlett Packard Development Co Methods and apparatus for managing and using one-time pads
US7779254B1 (en) * 2005-12-21 2010-08-17 Rockwell Collins, Inc. Mechanism to enhance and enforce multiple independent levels of security in a microprocessor memory and I/O bus controller
CN1991661A (zh) 2005-12-30 2007-07-04 联想(北京)有限公司 一种控制计算机输入设备的方法
US8286259B2 (en) * 2006-10-30 2012-10-09 Nec Display Solutions, Ltd. Network projector including a display signal control unit, and projector system including the network projector
US8655939B2 (en) * 2007-01-05 2014-02-18 Digital Doors, Inc. Electromagnetic pulse (EMP) hardened information infrastructure with extractor, cloud dispersal, secure storage, content analysis and classification and method therefor
CN101059878A (zh) 2007-05-14 2007-10-24 杭州中正生物认证技术有限公司 一种采用生物特征识别技术的二道门门禁系统和控制方法
CN101409944A (zh) 2007-10-08 2009-04-15 中兴通讯股份有限公司 键盘加密的方法和装置
US9071436B2 (en) * 2007-12-21 2015-06-30 The Invention Science Fund I, Llc Security-activated robotic system
US20090193230A1 (en) * 2008-01-30 2009-07-30 Ralf Findeisen Computer system including a main processor and a bound security coprocessor
US9165044B2 (en) * 2008-05-30 2015-10-20 Ethority, Llc Enhanced user interface and data handling in business intelligence software
CN101654994B (zh) 2009-07-23 2011-08-17 樊宝璟 智能指纹安防门
SE534135C2 (sv) 2009-09-17 2011-05-10 Phoniro Ab Distribution av låsåtkomstdata för elektromekaniska lås i ett åtkomstkontrollsystem
CN201681427U (zh) 2009-10-31 2010-12-22 浙江德施曼机电有限公司 一种电子信息锁
CN101702191A (zh) 2009-10-31 2010-05-05 浙江德施曼机电有限公司 一种密码验证装置以及密码验证方法
US8957757B1 (en) * 2010-10-28 2015-02-17 Alarm.Com Incorporated Access management and reporting technology
EP2671184A1 (en) * 2011-02-01 2013-12-11 MCCI Corporation Security arrangements for extended usb protocol stack of a usb host system
EP2500872A1 (fr) 2011-03-08 2012-09-19 Openways Sas Procédé sécurisé de commande d'ouverture de dispositifs de serrure par un objet communicant de type téléphone portable
US8856936B2 (en) * 2011-10-14 2014-10-07 Albeado Inc. Pervasive, domain and situational-aware, adaptive, automated, and coordinated analysis and control of enterprise-wide computers, networks, and applications for mitigation of business and operational risks and enhancement of cyber security
CN202815965U (zh) 2012-07-23 2013-03-20 概念家(中国)有限公司 一种网络远程客房入住控制系统
US9223952B2 (en) 2012-09-28 2015-12-29 Intel Corporation Allowing varied device access based on different levels of unlocking mechanisms
CN103793960B (zh) 2012-10-31 2016-12-21 株式会社易保 用于移动钥匙服务的方法
CN203188776U (zh) 2013-02-18 2013-09-11 刘瑞 自动门控制装置
CN103578165B (zh) 2013-03-08 2016-06-29 高潮 一种防盗系统
US9624695B1 (en) * 2013-03-15 2017-04-18 August Home, Inc. Intelligent door lock system with WiFi bridge
US11043055B2 (en) * 2013-03-15 2021-06-22 August Home, Inc. Door lock system with contact sensor
CN203168776U (zh) 2013-03-26 2013-09-04 河海大学 一种雨伞水收集器
CN103295296B (zh) 2013-05-10 2017-02-08 西安祥泰软件设备系统有限责任公司 利用嵌入式主板控制门禁系统的方法和嵌入式主板
US20150045013A1 (en) * 2013-08-09 2015-02-12 Directed, Llc Multi-level vehicle remote start authentication method & system
CN103914901B (zh) 2014-03-27 2017-12-29 惠州Tcl移动通信有限公司 一种开锁方法及开锁系统
CN103966582B (zh) 2014-04-04 2016-06-22 丽水学院 用于聚酰亚胺薄膜的表面镀铜的化学镀铜液及使用方法
CN104157029B (zh) 2014-05-12 2017-08-08 惠州Tcl移动通信有限公司 基于移动终端的门禁系统控制方法、控制系统及移动终端
CN103986582A (zh) 2014-05-28 2014-08-13 中国广核集团有限公司 一种基于动态加密技术的数据加密传输方法、装置及系统
US9892579B2 (en) * 2014-08-06 2018-02-13 Che-Ming KU Control method for smart lock, a smart lock, and a lock system
CN104217478B (zh) 2014-08-13 2016-06-08 重庆特斯联智慧科技股份有限公司 酒店蓝牙门禁智能管理方法
WO2016023558A1 (en) 2014-08-14 2016-02-18 Poly-Care Aps Method for operating a door lock by encrypted wireless signals
CN105488870A (zh) 2014-09-18 2016-04-13 腾讯科技(深圳)有限公司 一种门禁控制方法、装置、终端及控制服务器
CN104453532B (zh) 2014-10-23 2016-03-30 新昌县东茗乡宝昱机械厂 一种自适应关闭式汽车车门
CN104464054B (zh) 2014-12-10 2017-02-22 广东力维智能锁业有限公司 一种利用智能手机开启电子门锁的方法
CN104466650B (zh) 2014-12-24 2017-06-20 山西大学 纳秒级啁啾脉冲光源的产生装置及方法
CN104486650A (zh) 2014-12-29 2015-04-01 上海昌视网络科技有限公司 用于电视终端和移动终端绑定实现切换展示的方法及系统
CN104602312A (zh) 2015-01-30 2015-05-06 海信集团有限公司 一种无线信道切换方法及ap
EP3059919A1 (en) 2015-02-19 2016-08-24 Nxp B.V. Method and system for facilitating network joining
CN104732631B (zh) 2015-03-12 2018-04-24 长沙市吉盾安防科技有限公司 智能指纹密码防盗锁系统
CN104806085B (zh) 2015-03-20 2017-07-18 云丁网络技术(北京)有限公司 一种智能门锁系统及其智能提醒方法
CN104660719B (zh) 2015-03-20 2018-11-27 云丁网络技术(北京)有限公司 一种电子锁系统及其智能化管理实现方法
US10650626B2 (en) * 2015-04-01 2020-05-12 Urban SKY, LLC Smart building system for integrating and automating property management and resident services in multi-dwelling unit buildings
CN104778773A (zh) 2015-04-16 2015-07-15 绿锌网络科技(上海)有限公司 利用手机实现的门禁控制系统与控制方法
CN104869612B (zh) 2015-04-30 2019-05-10 小米科技有限责任公司 接入网络的方法及装置
US9713002B2 (en) 2015-05-15 2017-07-18 Honeywell International Inc. Access control via a mobile device
US9613478B2 (en) * 2015-05-18 2017-04-04 Unikey Technologies Inc. Wireless access control system for a door including door position based authentication and related methods
CN104952128A (zh) 2015-05-20 2015-09-30 范浪波 一种基于智能手持终端的电子解锁系统及其解锁方法
KR101834337B1 (ko) 2015-06-15 2018-03-05 김범수 이중 인증 기반의 전자 키 및 전자식 잠금장치
CN204904392U (zh) 2015-07-07 2015-12-23 程国庆 云端加密智能门锁系统
CN105118116A (zh) 2015-07-28 2015-12-02 努比亚技术有限公司 一种安全防护终端、设备和方法
CN105139491B (zh) 2015-08-10 2017-11-28 闻泰通讯股份有限公司 一种基于加密型二维码的手机门禁系统
CN105184931B (zh) 2015-09-30 2017-09-22 上海艾迅士建筑科技有限公司 一种基于蓝牙的开锁方法、系统、手持终端以及电子锁
CN106609605B (zh) 2015-10-22 2020-06-02 深圳绿米联创科技有限公司 门锁状态检测方法、装置及门锁状态检测器
CN105279832B (zh) 2015-12-01 2017-12-12 北京卡多宝信息技术有限公司 智能门锁系统及其控制方法
CN205427993U (zh) 2016-02-29 2016-08-03 冯思远 一种数字密码锁
CN105787576A (zh) 2016-03-03 2016-07-20 陈健强 一种基于智能眼镜开门锁的酒店预约实现方法及系统
CN105931485B (zh) 2016-04-15 2018-04-03 重庆金瓯科技发展有限责任公司 一种共享车位预约使用服务系统
CN105952278B (zh) 2016-04-18 2019-04-16 北京城房科技集团有限公司 机械式指纹锁芯及实现方法
CN105871874A (zh) 2016-04-27 2016-08-17 武汉市国扬科技有限公司 一种移动互联网虚拟钥匙授权系统及其硬件门锁控制方法
CN105788050A (zh) 2016-04-28 2016-07-20 物联网络科技(深圳)有限公司 一种通过蓝牙信号控制的控制门锁适配器及其控制方法
CN106097486B (zh) 2016-05-26 2018-04-17 深圳市前海速普得技术有限公司 一种基于声波传输的门禁口令的验证方法和验证系统
US10554640B2 (en) 2016-06-13 2020-02-04 Nxp B.V. Method and system for facilitating secure communication
CN106228655B (zh) 2016-08-02 2018-09-11 成都荷码科技有限公司 一种用户账号绑定智能锁的方法
CN106211044A (zh) 2016-08-18 2016-12-07 美的智慧家居科技有限公司 网关、ZigBee设备、ZigBee配网系统
CN106408697A (zh) 2016-08-30 2017-02-15 广东金大田家居股份有限公司 一种智能门锁系统
US9741186B1 (en) * 2016-09-01 2017-08-22 International Business Machines Corporation Providing wireless access to a secure lock based on various security data
US9942761B1 (en) * 2016-10-10 2018-04-10 International Business Machines Corporation User access verification
CN106549939B (zh) 2016-10-11 2020-06-16 深圳左邻永佳科技有限公司 智能门禁系统数据处理方法及装置
CN107978033A (zh) 2016-10-24 2018-05-01 深圳市物联锁科技有限公司 一种智能锁交互方法
US10325430B2 (en) * 2016-11-04 2019-06-18 Gilbert Eid Methods and systems for operating door locks using mobile devices
CN106504391B (zh) 2016-11-24 2020-03-06 北京爱接力科技发展有限公司 一种智能门禁的控制方法、装置及系统
CN106815905A (zh) 2016-11-29 2017-06-09 深圳智乐信息科技有限公司 一种基于移动终端验证的方法及系统
CN106898065B (zh) 2017-01-21 2020-01-17 云丁网络技术(北京)有限公司 一种智能门锁的开锁方法
US20180247568A1 (en) * 2017-02-25 2018-08-30 Microduino Inc. Apparatus and method for smart sand table demonstration
CN107102623A (zh) 2017-04-12 2017-08-29 胡渐佳 基于进出门图像识别的家电控制系统
CN107134028A (zh) 2017-04-25 2017-09-05 福州大学 一种基于手机短消息控制的动态智能门禁系统
CN106952445A (zh) 2017-05-11 2017-07-14 广东汇泰龙科技有限公司 一种家用智能云锁防劫持报警方法及其系统
CN107195042A (zh) 2017-05-17 2017-09-22 王力安防科技股份有限公司 一种指纹锁添加指纹的方法及装置
CN109555432A (zh) 2017-09-26 2019-04-02 都江堰市凯鑫自动门技术有限公司 一种超速锁定防盗门
US11197463B2 (en) * 2017-10-03 2021-12-14 Dog-E-Door, Llc Electronic and automatic pet door
CN107610432A (zh) 2017-10-16 2018-01-19 李修球 一种智能报警方法、系统及智能移动终端
CN108965222B (zh) 2017-12-08 2021-12-07 普华云创科技(北京)有限公司 身份认证方法、系统及计算机可读存储介质
CN108109348A (zh) 2017-12-11 2018-06-01 日立楼宇技术(广州)有限公司 分级报警方法及装置
CN108234458A (zh) 2017-12-21 2018-06-29 广东汇泰龙科技有限公司 一种云锁密码的加密储存及解密提取的方法、系统
CN108230512A (zh) 2018-01-22 2018-06-29 成都清轻信息技术有限公司 基于声波流媒体的安全授权开锁系统与方法
CN207909222U (zh) 2018-02-11 2018-09-25 广州畅联信息科技有限公司 智能蓝牙锁和智能蓝牙锁系统
CN108447153A (zh) 2018-02-24 2018-08-24 深圳慧安康科技有限公司 一种单元门口智能机器人装置
CN108756483A (zh) 2018-05-25 2018-11-06 深圳市蓝恒电子科技有限公司 门锁关门状态检测方法及检测系统
CN108924612A (zh) 2018-06-06 2018-11-30 李修球 一种艺术智能电视装置
CN109147119A (zh) 2018-08-01 2019-01-04 珠海格力电器股份有限公司 智能门锁、智能门锁的操作执行方法及装置
CN109039840A (zh) 2018-08-06 2018-12-18 上海顺舟智能科技股份有限公司 Zigbee组网方法及接入点网关
CN109326025A (zh) 2018-09-07 2019-02-12 青岛海信智慧家居系统股份有限公司 智能门锁的开锁方法及装置
CN109377593A (zh) 2018-09-18 2019-02-22 深圳壹账通智能科技有限公司 智能家居门禁系统及控制方法
CN109584410B (zh) 2018-10-17 2021-04-20 广州慧享佳物联科技有限公司 电子锁的数据处理方法、计算机设备和存储介质
CN109544731B (zh) 2018-10-17 2022-01-21 广州慧享佳物联科技有限公司 电子锁控制方法、计算机设备和存储介质
CN109348458B (zh) 2018-10-23 2022-09-09 深圳绿米联创科技有限公司 入网配置方法、装置、电子设备以及网络系统
CN109629914A (zh) 2018-11-23 2019-04-16 深圳市慧星辰科技有限公司 地磁感应门锁自动控制方法
CN209149424U (zh) 2018-12-03 2019-07-23 新锐泰乐(北京)科技有限公司 一种无人售卖机的锁止系统
CN111801912A (zh) * 2018-12-21 2020-10-20 谷歌有限责任公司 通过各个阶段的用户检测来操作智能住家的门
CN109826542A (zh) 2019-01-30 2019-05-31 郑夏娜 一种基于信息交互技术的家用防盗门
US11680423B2 (en) * 2019-05-01 2023-06-20 Vbc Tracy Llc Electromechanical locking apparatus and method and apparatus for controlling the same in a real property monitoring and control system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180225900A1 (en) * 2015-12-07 2018-08-09 Capital One Services, Llc Electronic access control system
CN107038777A (zh) * 2017-03-29 2017-08-11 云丁网络技术(北京)有限公司 一种基于智能门锁系统的安全通信方法及其智能门锁系统
CN106971442A (zh) * 2017-05-03 2017-07-21 河南传通电子科技有限公司 一种安全智能锁系统
CN108053527A (zh) * 2017-12-11 2018-05-18 上海众人网络安全技术有限公司 一种智能门锁的控制方法、装置及系统

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113934151A (zh) * 2021-10-22 2022-01-14 洛阳职业技术学院 一种物联网网关及其通讯方法
WO2023109240A1 (zh) * 2021-12-16 2023-06-22 青岛海尔科技有限公司 智能门锁的绑定方法和装置、存储介质及电子装置
CN116436957A (zh) * 2023-06-12 2023-07-14 深圳市锦锐科技股份有限公司 一种智能门锁用控制方法及系统
CN116436957B (zh) * 2023-06-12 2023-09-19 深圳市锦锐科技股份有限公司 一种智能门锁用控制方法及系统
CN116978150A (zh) * 2023-09-25 2023-10-31 杭州行至云起科技有限公司 一种智能锁控制方法、装置及系统
CN116978150B (zh) * 2023-09-25 2024-01-05 杭州行至云起科技有限公司 一种智能锁控制方法、装置及系统

Also Published As

Publication number Publication date
US20220383678A1 (en) 2022-12-01
US20220058901A1 (en) 2022-02-24
US11417159B2 (en) 2022-08-16
US11928904B2 (en) 2024-03-12

Similar Documents

Publication Publication Date Title
WO2021023164A1 (zh) 一种智能锁具控制方法和系统
US11206521B2 (en) Selective pairing of wireless devices using shared keys
US11438169B2 (en) Time-bound secure access
JP6816823B2 (ja) Peps携帯デバイスの位置特定
US11421445B2 (en) Smart lock device with near field communication
US20220261469A1 (en) Locking device biometric access
US20180102009A1 (en) Systems and methods for redundant access control systems based on mobile devices and removable wireless buttons
US7716489B1 (en) Access control method for disconnected automation systems
US8245052B2 (en) Method and apparatus for a token
AU2017276840A1 (en) Padlock device, systems including a padlock device, and methods of operating therefor
TW201706895A (zh) 基於行動裝置之備援門禁管制系統的系統與方法
WO2022002146A1 (zh) 一种智能设备控制方法和系统
JP7489658B2 (ja) アクセス制御デバイス、アクセス制御システム及びそれらを用いたアクセス制御方法
US20240129708A1 (en) Authenticated health credential access methods and apparatus
CN106357627B (zh) 读取居民证件卡信息的方法、系统及终端
US10026299B2 (en) Mobile supported disarming
WO2022193615A1 (zh) 数字钥匙删除方法、装置、设备、系统及存储介质
US12001911B1 (en) Status monitoring systems and methods for touchless identity card emulators
TW202025660A (zh) 電子鎖及其控制方法
US11539706B2 (en) Authorized off-line access methods and apparatus
US12001910B1 (en) Initialization of touchless identity card emulator
CN106375302B (zh) 读取居民证件卡信息的方法、系统及居民证件卡读取装置
US20050141705A1 (en) Verification method of mobile communication system
WO2017127072A1 (en) Biometric authentication to a vehicle access system

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20850449

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20850449

Country of ref document: EP

Kind code of ref document: A1