WO2017006630A1 - 情報処理装置、情報処理方法、プログラム、情報処理システム、および通信装置 - Google Patents

情報処理装置、情報処理方法、プログラム、情報処理システム、および通信装置 Download PDF

Info

Publication number
WO2017006630A1
WO2017006630A1 PCT/JP2016/064836 JP2016064836W WO2017006630A1 WO 2017006630 A1 WO2017006630 A1 WO 2017006630A1 JP 2016064836 W JP2016064836 W JP 2016064836W WO 2017006630 A1 WO2017006630 A1 WO 2017006630A1
Authority
WO
WIPO (PCT)
Prior art keywords
unit
authentication information
information
key
passcode
Prior art date
Application number
PCT/JP2016/064836
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
Application filed by ソニー株式会社 filed Critical ソニー株式会社
Priority to JP2017527112A priority Critical patent/JP6743818B2/ja
Priority to EP16821101.9A priority patent/EP3322120A4/en
Priority to US15/572,684 priority patent/US10999267B2/en
Priority to CN201680038109.1A priority patent/CN107710677B/zh
Publication of WO2017006630A1 publication Critical patent/WO2017006630A1/ja

Links

Images

Classifications

    • 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
    • EFIXED CONSTRUCTIONS
    • E05LOCKS; KEYS; WINDOW OR DOOR FITTINGS; SAFES
    • E05BLOCKS; ACCESSORIES THEREFOR; HANDCUFFS
    • E05B49/00Electric permutation locks; Circuits therefor ; Mechanical aspects of electronic locks; Mechanical keys therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • 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
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C9/00Individual registration on entry or exit
    • G07C9/00174Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys
    • G07C9/00571Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated by interacting with a central unit
    • 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/067Network architectures or network communication protocols for network security for supporting key management in a packet data network using one-time keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • H04L63/0846Network architectures or network communication protocols for network security for authentication of entities using passwords using time-dependent-passwords, e.g. periodically changing 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • H04L9/3242Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions involving keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/041Key generation or derivation
    • 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
    • G07C2009/00753Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated by active electrical keys
    • G07C2009/00769Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated by active electrical keys with data transmission performed by wireless means
    • 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/00658Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated by passive electrical keys
    • G07C9/00674Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated by passive electrical keys with switch-buttons
    • G07C9/0069Electronically operated locks; Circuits therefor; Nonmechanical keys therefor, e.g. passive or active electrical keys or other data carriers without mechanical keys operated by passive electrical keys with switch-buttons actuated in a predetermined sequence

Definitions

  • the present disclosure relates to an information processing device, an information processing method, a program, an information processing system, and a communication device.
  • Patent Document 1 when a portable device is held over an electric lock, the electric lock reads key data from the portable device, and performs unlock control by comparing the read key data with authentication key data. Techniques to do are disclosed.
  • Patent Document 1 has low authentication safety.
  • the electric lock described in Patent Document 1 performs authentication by comparing key data read from a portable device with authentication key data stored in advance. For this reason, for example, if the authentication key data is stolen from the electric lock by unauthorized access to the electric lock, the door may be illegally unlocked.
  • the present disclosure proposes a new and improved information processing apparatus, information processing method, program, information processing system, and communication apparatus capable of improving the security of authentication.
  • a communication unit that receives authentication information and a processing request from a first communication device, and authentication information generation that generates authentication information based on first key information associated with the second communication device
  • An information processing unit configured to control execution of processing according to the processing request based on the authentication information received by the communication unit and the authentication information generated by the authentication information generating unit.
  • receiving authentication information and a processing request from the first communication device generating authentication information based on the first key information associated with the second communication device, And a processor controlling execution of processing according to the processing request based on the received authentication information and the generated authentication information.
  • the computer is configured to obtain authentication information based on the communication unit that receives the authentication information and the processing request from the first communication device, and the first key information associated with the second communication device.
  • a process control unit that controls execution of a process according to the process request based on the authentication information generation unit to be generated, the authentication information received by the communication unit, and the authentication information generated by the authentication information generation unit; As a result, a program is provided.
  • the said information processing apparatus receives authentication information and a process request from the said 1st communication apparatus.
  • a communication unit a storage unit that stores first key information associated with the second communication device, and an authentication that generates authentication information based on the first key information stored in the storage unit
  • An information generation unit and a process control unit that controls execution of a process according to the process request based on the authentication information received by the communication unit and the authentication information generated by the authentication information generation unit.
  • the input unit that receives input of authentication information and a processing request
  • the transmission control unit that controls transmission of signals to a plurality of information processing devices, and the plurality of information processing devices that are received by the information processing device
  • An acquisition unit that acquires a value of a signal strength, and the transmission control unit, for each of the plurality of information processing devices in order of the information processing device having a larger value of the acquired signal strength,
  • a communication device is provided that causes the communication unit to transmit the input authentication information and processing request.
  • the security of authentication can be improved.
  • the effects described here are not necessarily limited, and may be any of the effects described in the present disclosure.
  • FIG. 6 is a sequence diagram showing an operation of master key registration processing according to the embodiment.
  • FIG. 6 is a sequence diagram showing an operation of a setup process of the button unit 20 according to the same embodiment. It is explanatory drawing which showed the example of a display of the account screen by the embodiment. It is explanatory drawing which showed the example of a display of the device addition screen by the embodiment. It is explanatory drawing which showed the example of a display of the lock selection screen by the embodiment.
  • FIG. 8 is a sequence diagram showing an operation of an operation log request process according to the embodiment.
  • FIG. 6 is a sequence diagram showing an operation of master key update processing according to the embodiment. It is explanatory drawing which showed the generation example of the passcode by the modification of the embodiment. It is explanatory drawing which showed the example of a display of the passcode confirmation screen by the modification.
  • FIG. 10 is a sequence diagram showing a part of an operation of master key registration processing according to the modification.
  • FIG. 10 is a sequence diagram showing a part of an operation of master key registration processing according to the modification. It is the flowchart which showed the operation
  • FIG. 10 is a sequence diagram showing an operation of reset counter update processing according to the modification.
  • FIG. 6 is a sequence diagram showing an example of composition of personal digital assistant 30-2 by a 2nd embodiment of this indication. It is the functional block diagram which showed the structural example of the server 40-2 by the embodiment. It is the sequence diagram which showed the outline
  • FIG. 6 is a sequence diagram showing an operation of master key registration processing according to the embodiment.
  • FIG. 6 is a sequence diagram showing an operation of a passcode generation process according to the same embodiment. It is the sequence diagram which showed the operation
  • FIG. 6 is a sequence diagram showing an operation of master key update processing according to the embodiment.
  • a plurality of constituent elements having substantially the same functional configuration may be distinguished by adding different alphabets after the same reference numeral.
  • a plurality of configurations having substantially the same functional configuration are distinguished as the mobile terminal 30-1a and the mobile terminal 30-1b as necessary.
  • only the same reference numerals are given.
  • the mobile terminal 30-1 when there is no need to distinguish between the mobile terminal 30-1a and the mobile terminal 30-1b, they are simply referred to as the mobile terminal 30-1.
  • the information processing system according to the first embodiment includes a lock device 10 and a button unit 20.
  • the lock device 10 and the button unit 20 may be attached to, for example, a building door.
  • the lock device 10 is installed on the indoor side of the door
  • the button unit 20 is installed on the outdoor side of the door.
  • the information processing system in addition to the lock device 10 and the button unit 20, the information processing system according to the first embodiment further includes a portable terminal 30-1, a communication network 32, a server 40-1, and A communication terminal 50 is included.
  • the lock device 10 is an example of an information processing apparatus according to the present disclosure.
  • the lock device 10 is an apparatus that is attached to, for example, a door of a building and controls door unlocking and locking.
  • the lock device 10 can control the unlocking and locking of a thumb turn (not shown) installed on the indoor side of the door.
  • the thumb turn is not installed on the door, the lock device 10 itself may be a building door locking mechanism.
  • the lock device 10 performs various processes such as an unlocking process and a locking process based on processing requests received from the button unit 20 and the portable terminal 30-1 described later.
  • the button unit 20 is an example of a first communication device and a communication device in the present disclosure.
  • the button unit 20 is an input device for a user to input a request for processing to another device such as the lock device 10.
  • the button unit 20 can be used by a user who does not have the authority to unlock the lock device 10 (hereinafter, may be referred to as an unauthorized user 2b) to input a request for unlocking and locking.
  • the unauthorized user 2b is, for example, an intermediary or a person who wants to see the building or room where the lock device 10 is installed.
  • the button unit 20 is connected to other devices by wireless communication in accordance with Bluetooth such as BLE (Bluetooth (registered trademark) Low Energy), Wi-Fi (registered trademark), NFC (Near Field Communication), and the like. It is possible to send and receive information. For example, when an unlock request for the lock device 10 is input by the user, the button unit 20 transmits the input unlock request to the lock device 10 by wireless communication.
  • Bluetooth Bluetooth (registered trademark) Low Energy
  • Wi-Fi registered trademark
  • NFC Near Field Communication
  • one button unit 20 communicates with only one lock device 10 associated in advance.
  • one button unit 20 may be able to communicate with a plurality of lock devices 10.
  • the button unit 20 may simultaneously transmit unlock requests to the plurality of lock devices 10.
  • the button unit 20 includes a numeric keypad 250, an unlock button 252, and a lock button 254.
  • the numeric keypad 250 is a key for inputting numbers from “0” to “9”.
  • the numeric keypad 250 is used by the user to input a passcode used for authentication processing by the lock lock device 10, for example.
  • the passcode is an example of authentication information in the present disclosure.
  • the unlock button 252 is a key for the user to input an unlock request for the lock device 10, for example.
  • the unlock button 252 is also a key for the user to switch the internal state of the button unit 20. For example, when the button unit 20 is in the normal mode and the unlock button 252 is pressed by the user for a long time, that is, when the button unit 20 is pressed for a predetermined time or longer, the button unit 20 changes the setting information of the button unit 20 from the normal mode. Switch internal state to registration mode to change.
  • the lock button 254 is a key for the user to input a lock request for the lock device 10, for example.
  • the portable terminal 30-1 is an example of a second communication device according to the present disclosure.
  • the portable terminal 30-1 is a terminal owned by the user 2.
  • the mobile terminal 30-1 is used by a user who has management authority for the lock device 10 (hereinafter, may be referred to as “owner user 2 a”), a user who is permitted to unlock the lock device 10 by the owner user 2 a, used.
  • the owner user 2a is, for example, a person who has ownership of the building or room in which the lock device 10 is installed, or an employee of a management company that manages the building or room in which the lock device 10 is installed.
  • This mobile terminal 30-1 can be mounted with an application for a key sharing service.
  • the key sharing service application displays, for example, a passcode used for authentication processing (of the button unit 20) by the lock device 10 on the display screen, and makes various processing requests such as an unlock request to the lock device 10. Or an application for issuing an unlocking right of the lock device 10 to another portable terminal 30-1b.
  • the mobile terminal 30-1 can communicate with the server 40-1 via a communication network 32 described later, for example, by wireless communication.
  • the mobile terminal 30-1 may be, for example, a mobile phone such as a smartphone, a tablet terminal, a wristwatch-type device, a spectacle-type device, or a headphone having a communication function according to, for example, Bluetooth.
  • the communication network 32 is a wired or wireless transmission path for information transmitted from a device connected to the communication network 32.
  • the communication network 32 may include a public line network such as a telephone line network, the Internet, a satellite communication network, various local area networks (LANs) including the Ethernet (registered trademark), a wide area network (WAN), and the like.
  • LANs local area networks
  • WAN wide area network
  • the communication network 32 may include a dedicated line network such as an IP-VPN (Internet Protocol-Virtual Private Network).
  • the server 40-1 is an example of a second communication device according to the present disclosure.
  • the server 40-1 is a device for managing a key sharing service configured by, for example, a web system.
  • the server 40-1 registers the mobile terminal 30-1 as an owner terminal based on a request from the mobile terminal 30-1 registered as an owner terminal in the lock lock device 10.
  • the server 40-1 transfers the unlocking right issued to another mobile terminal 30-1b (other than the owner terminal) by the mobile terminal 30-1a that is the owner terminal to the mobile terminal 30-1b.
  • the communication terminal 50 is a terminal used by the unauthorized user 2b, for example.
  • the communication terminal 50 can communicate with the portable terminal 30-1 or the server 40-1 via the communication network 32.
  • the communication terminal 50 receives a passcode issued by the portable terminal 30-1 of the owner user 2a from the portable terminal 30-1.
  • the lock device 10 described above unlocks the pass code received from the button unit 20 by comparing the pass code generated by the lock device 10 based on the master key associated with the mobile terminal 30-1. It is possible to execute processing.
  • FIG. 4 is a functional block diagram showing the configuration of the lock device 10 according to the first embodiment.
  • the lock device 10 includes a control unit 100, a communication unit 120, a lock unit 122, and a storage unit 124.
  • the controller 100 generally controls the operation of the lock device 10 using hardware such as a CPU (Central Processing Unit) and a RAM (Random Access Memory) that are built in the lock device 10. As illustrated in FIG. 4, the control unit 100 includes a key information processing unit 102, a passcode generation unit 104, a passcode verification unit 106, a processing control unit 108, and an authentication processing unit 110.
  • a CPU Central Processing Unit
  • a RAM Random Access Memory
  • the key information processing unit 102 acquires a master key based on information received from the mobile terminal 30-1. For example, the key information processing unit 102 decrypts an encrypted master key received from the portable terminal 30-1 based on a security code stored in advance in the storage unit 124 and a predetermined encryption algorithm. To obtain a master key.
  • the master key is an example of first key information in the present disclosure.
  • the master key is information used to generate a passcode, and is generated by the mobile terminal 30-1 in association with the mobile terminal 30-1, for example.
  • the security code is, for example, a common key for the lock device 10.
  • the predetermined encryption algorithm is, for example, a common key encryption algorithm such as AES (Advanced Encryption Standard).
  • the key information processing unit 102 stores the acquired master key in the master key file 128.
  • the key information processing unit 102 associates the acquired master key with the terminal ID of the portable terminal 30-1 that is the transmission source of the master key, and stores them in the master key file 128.
  • the key information processing unit 102 updates the master key stored in the master key file 128 based on information received from the portable terminal 30-1, for example. For example, when a new encrypted master key is received from the mobile terminal 30-1, the key information processing unit 102 first converts the information received from the mobile terminal 30-1 into the master key file 128. A new master key is obtained by decrypting based on the current master key stored in and the predetermined encryption algorithm. Then, the key information processing unit 102 updates the current master key stored in the master key file 128 by replacing it with the acquired new master key.
  • the new master key is an example of second key information in the present disclosure.
  • the master key file 128 is a file in which the master key acquired by the key information processing unit 102 is stored.
  • the master key and the terminal ID of the portable terminal 30-1 that is the transmission source of the master key are stored in association with each other.
  • the passcode generation unit 104 is an example of an authentication information generation unit in the present disclosure.
  • the passcode generation unit 104 generates a predetermined number of passcodes based on the master key stored in the master key file 128.
  • the passcode generation unit 104 generates a predetermined number of passcode generation key information different from each other based on the master key, and based on each of the generated predetermined number of passcode generation key information, Pass codes are generated as many times as the number of pass code generation key information.
  • the passcode generation key information is an example of authentication information generation key information in the present disclosure.
  • the passcode generation unit 104 first generates passcode generation key information based on the master key, each of a predetermined number of types of valid periods determined in advance, and a predetermined hash function. , Generate the number of types of validity period. Then, the passcode generation unit 104 is based on each of the generated predetermined number of passcode generation key information, each of a predetermined number of types of valid periods based on the current date and time, and a predetermined hash function. Pass codes are generated for the number of types of validity period.
  • FIG. 5 shows an example in which four types of “permanent”, “one week”, “one day”, and “one hour” are determined in advance as valid periods.
  • the passcode generation unit 104 first sets the value obtained by combining the number of the validity period (for example, “1”) and the master key with respect to the type of each validity period, and SHA (Secure Hash Algorithm).
  • the passcode generation keys K1 to K4 are generated by converting using.
  • K1 is a passcode generation key when the validity period is “permanent”
  • K2 is a passcode generation key when the validity period is “one week”
  • K3 is a validity period “one day”.
  • ", And K4 is a passcode generation key when the validity period is" one hour ".
  • the passcode generation unit 104 converts each combination of the converted value of the current date and time according to the valid period type and the generated passcode generation key using SHA.
  • SHA a value obtained by combining “0” and K1
  • K2 “the date of a predetermined day of the week in the week corresponding to the current date” (for example, “June 1, 2015”)
  • K3 a value combining “current date” (for example, “June 3, 2015”) and K3
  • K4 current date and time zone
  • the passcode generation unit 104 converts a value obtained by combining “4 June 2015, 10:00”) and K4 using SHA.
  • the passcode generation unit 104 applies mod so that the four converted values are converted into values of a predetermined number of digits such as six digits, and the four passcodes (EP, EP, WP, DP, and HP).
  • FIG. 6 is an explanatory diagram showing a modification example of the passcode generation example shown in FIG.
  • FIG. 6 shows an example in which “specific day of the week” is further defined as the valid period type in addition to the four types shown in FIG. 5.
  • This “specific day of the week” is a type of period in which the passcode is valid only on a specific day of the week, for example.
  • the passcode generation unit 104 first converts a value obtained by combining a number (for example, “5”) corresponding to “specific day of the week” and a master key using SHA. Thus, a passcode generation key K5 is generated. Next, the passcode generation unit 104 uses a value obtained by combining the numerical value associated with “day of the current date” (for example, “1” on Monday, “2” on Tuesday, etc.) and K5 with SHA. To convert. Then, the passcode generation unit 104 generates a passcode (CP) corresponding to “specific day of the week” by applying mod to the converted value.
  • CP passcode
  • types of valid periods are not limited to the above five types, and any number of types can be set.
  • Passcode verification unit 106 When a passcode is received from the button unit 20, the passcode verification unit 106 compares the received passcode with each of a predetermined number of passcodes generated by the passcode generation unit 104. , Verify the validity of the received passcode.
  • the passcode verification unit 106 determines that the received passcode is valid. Judge that there is. If none of the predetermined number of passcodes generated by the passcode generation unit 104 matches the received passcode, the passcode verification unit 106 determines that the received passcode is not valid. judge.
  • the passcode verification unit 106 It is also possible to reject the reception of the pass code from the predetermined time. With this configuration, it is possible to prevent a passcode brute force attack using the button unit 20 by a malicious user.
  • the lock device 10 may output a buzzer. Thereby, it is possible to notify the user that the reception of the passcode is rejected.
  • the passcode verification unit 106 may store the verification results in the operation log DB 130.
  • the portable terminal 30-1 acquires an operation log from the lock device 10 to input an invalid passcode in the past.
  • the owner user 2a can know that has been performed.
  • the processing control unit 108 executes processing according to the processing request received from the button unit 20 based on the verification result by the passcode verification unit 106. For example, when the passcode verification unit 106 determines that the received passcode is valid, the process control unit 108 executes a process according to the received process request. As an example, when the received processing request is an unlocking request to the locking unit 122 and the passcode verification unit 106 determines that the received passcode is valid, the processing control unit 108. Causes the locking part 122 to unlock.
  • the process control unit 108 does not execute the process according to the received process request.
  • Authentication processing unit 110 (1-2-1-6. Authentication processing unit 110) -Determination of eKey
  • the authentication processing unit 110 determines the validity of the received eKey.
  • eKey is information used to authenticate the mobile terminal 30-1. Note that only the mobile terminal 30-1a registered in advance in the lock device 10 and the server 40-1 as the owner terminal of the lock device 10 sends the eKey corresponding to the lock device 10 to the own terminal or another mobile terminal 30-1b. Can be issued against.
  • the authentication processing unit 110 verifies the validity of the corresponding eKey by verifying the signature information for the public key of the portable terminal 30-1 included in the received eKey.
  • the authentication processing unit 110 first stores in advance the signature information for the public key of the mobile terminal 30-1b included in the eKey received from the mobile terminal 30-1b in the storage unit 124 (owner Verification is performed using the public key of the portable terminal 30-1a (which is the terminal). Then, the authentication processing unit 110 determines whether the public key of the mobile terminal 30-1 included in the corresponding eKey is valid based on the verification result of the signature information for the public key of the mobile terminal 30-1. . The same applies to the case where the portable terminal 30-1a and the portable terminal 30-1b are the same terminal.
  • the eKey 60 includes a header 600 and a main body 602, for example.
  • the header 600 includes an eKey ID 6000, a terminal ID 6002, a lock ID 6004, and a validity period 6006.
  • the main body 602 includes a terminal public key 6020 and a public key certificate 6022.
  • eKeyID 6000 an eKeyID corresponding to eKey60 is recorded.
  • the eKey ID is an ID determined for the eKey 60 by the owner terminal, for example.
  • the terminal ID 6002 records the terminal ID of the mobile terminal 30-1 to which the corresponding eKey 60 is issued.
  • the lock ID 6004 records the ID of the lock device 10 to be used (corresponding to the corresponding eKey 60).
  • a valid period set for the corresponding eKey 60 is recorded.
  • FIG. 7 shows an example in which “ALWAYS” indicating that the valid period is unlimited is registered as the valid period 6006.
  • the terminal public key 6020 stores the public key of the mobile terminal 30-1 to which the corresponding eKey 60 is issued.
  • the public key certificate 6022 stores signature information for the public key stored in the terminal public key 6020, for example, by the mobile terminal 30-1 that issued the eKey 60 (that is, the owner terminal).
  • the authentication processing unit 110 verifies the validity of the received response data when information generated by the private key of the portable terminal 30-1 (hereinafter also referred to as response data) is received. Verification is performed based on the public key of the portable terminal 30-1 and a predetermined public key authentication algorithm. For example, the authentication processing unit 110 first generates a challenge that is, for example, a pseudorandom number. Then, after the generated challenge is transmitted to the portable terminal 30-1 by the communication unit 120, when the response data is received from the portable terminal 30-1, the authentication processing unit 110 verifies the received response data. Is verified based on the public key of the portable terminal 30-1, the original challenge, and a predetermined public key authentication algorithm.
  • the communication unit 120 transmits and receives information to and from other devices by wireless communication along Bluetooth such as BLE, Wi-Fi, NFC, and the like. For example, the communication unit 120 receives a passcode and an unlock request from the button unit 20.
  • the locking unit 122 performs unlocking processing or locking processing according to the control of the processing control unit 108.
  • the storage unit 124 can store, for example, various data such as a master key file 128, a lock key file 126 described later, and an operation log DB 130 described later, and various software.
  • the lock key file 126 is a file in which information of an authentication key unique to the lock lock device 10 is stored.
  • the lock key file 126 stores the lock ID of the lock device 10, the common key of the lock device 10, the secret key of the lock device 10, and the public key of the lock device 10.
  • the operation log DB 130 is a database in which a user operation log for the lock device 10 is stored.
  • the unit ID of the button unit 20 (operating the lock device 10) or the terminal ID of the portable terminal 30-1, the operation date and time, and the operation content are stored in association with each other. .
  • FIG. 8 is a functional block diagram showing the configuration of the button unit 20 according to the first embodiment. As illustrated in FIG. 8, the button unit 20 includes a control unit 200, a communication unit 220, an input unit 222, and a storage unit 224.
  • the control unit 200 generally controls the operation of the button unit 20 using hardware such as a CPU and a RAM built in the button unit 20. Further, as illustrated in FIG. 8, the control unit 200 includes a transmission control unit 202.
  • the transmission control unit 202 controls transmission of information input by the user to the input unit 222 to other devices.
  • the transmission control unit 202 causes the communication device 220 to transmit the passcode and the processing request input to the input unit 222 to the lock device 10.
  • the communication unit 220 transmits and receives information to and from other devices by wireless communication according to, for example, Bluetooth, Wi-Fi, or NFC.
  • the communication unit 220 transmits an unlock request and a pass code to the lock device 10 under the control of the transmission control unit 202.
  • the input unit 222 receives input from the user.
  • the input unit 222 includes a numeric keypad 250, an unlock button 252 and a lock button 254, for example, as shown in FIG.
  • the input unit 222 receives an input of an unlock request.
  • the storage unit 224 stores, for example, a lock ID of the lock device 10 received from the mobile terminal 30-1, as will be described later.
  • FIG. 9 is a functional block diagram showing the configuration of the portable terminal 30-1 according to the first embodiment.
  • the mobile terminal 30-1 includes a control unit 300-1, a communication unit 320, an operation display unit 322, an imaging unit 324, and a storage unit 326.
  • Control unit 300-1 The control unit 300-1 generally controls the operation of the mobile terminal 30-1 using hardware such as a CPU and a RAM built in the mobile terminal 30-1. 9, the control unit 300-1 includes a master key generation unit 302, a two-dimensional code reading unit 304, a key information processing unit 306, a pass code generation unit 308, a display control unit 310, and a transmission control unit. 312 and an authentication processing unit 314.
  • the master key generation unit 302 generates a master key that is, for example, a pseudo random number.
  • the master key generation unit 302 generates a master key when a key sharing service application is installed.
  • the two-dimensional code reading unit 304 acquires information stored in the two-dimensional code by analyzing an image of the two-dimensional code photographed by the imaging unit 324 described later. For example, the two-dimensional code reading unit 304 analyzes an image obtained by photographing the two-dimensional code printed on the owner registration card provided to a specific user by the imaging unit 324, and is stored in the two-dimensional code. Get information such as security code.
  • the specific user is a user who has been previously permitted to register his / her mobile terminal 30-1 as an owner terminal with respect to the lock device 10, for example, a purchaser of the lock device 10.
  • the owner registration card can be delivered to a specific user in a state of being packed together with the lock device 10, for example.
  • the key information processing unit 306 encrypts the master key generated by the master key generation unit 302. For example, the key information processing unit 306 encrypts the generated master key based on the security code acquired by the two-dimensional code reading unit 304 and a predetermined encryption algorithm.
  • the predetermined encryption algorithm is, for example, a common key encryption algorithm such as AES.
  • the passcode generation unit 308 is an example of a second authentication information generation unit in the present disclosure.
  • the passcode generation unit 308 generates a passcode based on the master key generated by the master key generation unit 302.
  • the passcode generation unit 308 first includes a master key generated by the master key generation unit 302, a type of valid period specified by the user among a predetermined number of types of valid periods, Based on the hash function, pass code generation key information is generated. Then, the passcode generation unit 308 generates a passcode based on the generated passcode generation key information, the period designation information input by the user, and a predetermined hash function.
  • the display control unit 310 displays various display information on the operation display unit 322 described later. For example, the display control unit 310 causes the operation display unit 322 to display the passcode generated by the passcode generation unit 308. Thereby, the user of the portable terminal 30-1 can confirm the generated passcode.
  • the transmission control unit 312 causes the communication unit 320 to transmit various types of information to other devices. For example, the transmission control unit 312 causes the communication unit 320 to transmit the master key encrypted by the key information processing unit 306 to the lock device 10. In addition, the transmission control unit 312 causes the communication unit 320 to transmit the passcode generated by the passcode generation unit 308 to the communication terminal 50 by e-mail or the like, for example, based on a user input to the operation display unit 322. For example, after a challenge is received from the lock device 10, the transmission control unit 312 causes the lock device 10 to transmit response data generated by the authentication processing unit 314 described later to the communication unit 320.
  • the authentication processing unit 314 generates response data based on, for example, a challenge received from the lock device 10 and a predetermined public key authentication algorithm. For example, the authentication processing unit 314 generates response data based on the received challenge, the private key of the portable terminal 30-1 stored in the storage unit 326 described later, and a predetermined public key authentication algorithm.
  • the predetermined public key authentication algorithm is basically the same type of algorithm as the public key authentication algorithm implemented in the lock lock device 10.
  • the communication unit 320 transmits / receives information to / from other devices. For example, the communication unit 320 transmits the encrypted master key to the lock device 10 under the control of the transmission control unit 312.
  • the operation display unit 322 is constituted by a touch panel type display, for example.
  • the operation display unit 322 displays various display screens under the control of the display control unit 310.
  • the operation display unit 322 receives various inputs by the user, such as selection of a selection button displayed on the display screen.
  • the imaging unit 324 records an external image as a digital image by forming an image on an imaging device such as a CCD (Charge Coupled Device) or a CMOS (Complementary Metal Oxide Semiconductor) through a lens.
  • an imaging device such as a CCD (Charge Coupled Device) or a CMOS (Complementary Metal Oxide Semiconductor) through a lens.
  • the storage unit 326 is, for example, various data such as a public key of the mobile terminal 30-1, a secret key of the mobile terminal 30-1, an issued eKey, and a generated master key, an application for a key sharing service, and the like Store various software.
  • FIG. 10 is a functional block diagram showing the configuration of the server 40-1 according to the first embodiment. As illustrated in FIG. 10, the server 40-1 includes a control unit 400-1, a communication unit 420, and a storage unit 422.
  • Control unit 400-1 The control unit 400-1 generally controls the operation of the server 40-1 using hardware such as a CPU and a RAM built in the server 40-1.
  • the communication unit 420 transmits and receives information to and from other devices connected to the communication network 32, for example.
  • the communication unit 420 receives the operation log of the lock device 10 acquired by the mobile terminal 30-1 from the mobile terminal 30-1.
  • the storage unit 422 stores various data and software.
  • the storage unit 422 stores the lock ID of each lock device 10 and the terminal ID of the portable terminal 30-1 registered as the owner terminal of each lock device 10 in association with each other.
  • FIG. 11 is a sequence diagram showing an overview of the overall operation according to the first embodiment. As shown in FIG. 11, first, the mobile terminal 30-1 performs a “master key registration process” to be described later for registering a master key in the lock lock device 10 based on the operation of the owner user 2a (S11). ).
  • the mobile terminal 30-1 performs a “button unit 20 setup process” to be described later for initial setting of the button unit 20 based on the operation of the owner user 2a (S13).
  • the portable terminal 30-1 performs a “passcode generation process” described later for generating a passcode based on the operation of the owner user 2a (S15).
  • the owner user 2a operates the mobile terminal 30-1 to send an e-mail including the passcode generated in S15 to the communication terminal 50, for example, or sends the corresponding passcode to an SNS (Social Networking Service). And publish on websites.
  • the owner user 2a transmits the corresponding passcode to the unauthorized user 2b by telephone (S17).
  • the owner user 2a can transmit the corresponding passcode to the unauthorized user 2b without directly meeting the unauthorized user 2b (to which the passcode is provided), for example.
  • the unauthorized user 2b visits the door where the button unit 20 is installed. Then, the button unit 20 performs “unlocking process A” to be described later for requesting the unlocking device 10 to unlock based on the operation of the unauthorized user 2b (S19).
  • the button unit 20 performs a “locking process” to be described later for requesting the locking device 10 to lock based on the operation of the unauthorized user 2b (S21).
  • the owner user 2a wishes to confirm the operation log of the lock device 10
  • the owner user 2a carries the portable terminal 30-1 and visits the door where the lock device 10 is installed.
  • the portable terminal 30-1 performs “operation log request processing” to be described later for requesting the lock device 10 to provide an operation log based on the operation of the owner user 2a (S23).
  • the owner user 2a desires to update the master key registered in S11
  • the owner user 2a carries the portable terminal 30-1 and visits the door where the lock device 10 is installed.
  • the portable terminal 30-1 performs a “master key update process” to be described later for updating the master key registered in the lock device 10 based on the operation of the owner user 2a (S25).
  • the imaging unit 324 of the mobile terminal 30-1 captures a two-dimensional barcode printed in the owner registration card ( S1101). Then, the two-dimensional code reading unit 304 acquires various types of information such as a security code stored in the two-dimensional code by analyzing the captured image (S1103).
  • the master key generation unit 302 generates a master key that is, for example, a pseudorandom number. Then, the master key generation unit 302 stores the generated master key in the storage unit 326 (S1105).
  • the key information processing unit 306 encrypts the generated master key based on the security code acquired in S1103 and a predetermined common key encryption algorithm (S1107). Then, the communication unit 320 transmits the encrypted master key and the terminal ID of the mobile terminal 30-1 to the lock device 10 according to the control of the transmission control unit 312 (S1109).
  • the key information processing unit 102 of the lock device 10 decrypts the encrypted master key received in S1109 based on the security code stored in the storage unit 124 and a predetermined common key encryption algorithm. (S1111).
  • the key information processing unit 102 associates the decrypted master key with the terminal ID of the portable terminal 30-1 received in S1109, and stores it in the master key file 128 (S1113).
  • buttons unit 20 setup process Next, with reference to FIG. 13, the operation of the “button unit 20 setup process” in S13 (shown in FIG. 11) will be described in detail. This operation is performed when the owner user 2a associates the button unit 20 with a specific lock device 10 using the portable terminal 30-1.
  • the control unit 300-1 of the portable terminal 30-1 activates the key sharing service application based on the operation of the owner user 2a on the operation display unit 322, for example. Then, the operation display unit 322 displays an account screen 70 as shown in FIG. 14, for example, in the key sharing service application (S1301).
  • the account screen 70 is a dedicated home screen for an account registered in advance by the owner user 2a, for example. Further, as shown in FIG. 14, the account screen 70 includes, for example, a lock device addition button 700 and a return button 702.
  • the owner user 2a places the button unit 20 in a position where it can communicate with the mobile terminal 30-1 (in the vicinity of the mobile terminal 30-1), and then presses the unlock button 252 of the button unit 20 for a long time. . Then, the control unit 200 of the button unit 20 switches the internal state of the button unit 20 from the normal mode to the registration mode (S1303). Then, wireless communication is established between the button unit 20 and the portable terminal 30-1 (S1305).
  • the operation display unit 322 of the portable terminal 30-1 displays the device as shown in FIG.
  • An additional screen 72 is displayed (S1307).
  • the device addition screen 72 is a screen for additionally registering, for example, the button unit 20 and the lock device 10 that can currently communicate with the mobile terminal 30-1 as devices to be managed by the mobile terminal 30-1.
  • the device addition screen 72 includes, for example, an additional device selection button 720 and a return button 722.
  • a selection button 720 corresponding to the corresponding button unit 20 in which the unit ID of the corresponding button unit 20 is displayed is displayed.
  • the owner user 2a selects.
  • the operation display part 322 of the portable terminal 30-1 displays the lock selection screen 74 as shown, for example in FIG.
  • the lock selection screen 74 is a screen for the owner user 2 a to select the lock device 10 associated with the button unit 20 selected on the device addition screen 72.
  • the lock selection screen 74 includes, for example, a selection field 740 for the lock device 10 and a return button 742.
  • the control unit 300-1 of the portable terminal 30-1 selects the selected one.
  • the corresponding button unit 20 is associated with the lock device 10 (S1309).
  • the communication unit 320 transmits the lock ID of the lock device 10 selected in S1309 and the terminal ID of the portable terminal 30-1 to the button unit 20 according to the control of the transmission control unit 312 (S1311).
  • control unit 200 of the button unit 20 stores the received lock ID and terminal ID in the storage unit 224 in association with each other (S1313).
  • the control unit 200 of the button unit 20 switches the internal state of the button unit 20 from the registration mode to the normal mode (S1315). Then, the wireless communication between the button unit 20 and the portable terminal 30-1 is disconnected (S1317).
  • the owner user 2a transports the button unit 20 to the door where the lock device 10 associated in S1309 is installed, and attaches the button unit 20 to the outside of the door (S1319).
  • buttons unit setting screen 76 is a screen for performing settings related to the button unit 20 for which the “setup processing of the button unit 20” in S13 has been completed.
  • the button unit setting screen 76 includes, for example, the valid setting button 760 of the corresponding button unit 20, the passcode confirmation button 762 of the associated lock device 10, and the registration deletion of the button unit 20.
  • a button 764 and a back button 766 are included.
  • the operation display unit 322 of the portable terminal 30-1 displays a passcode confirmation screen 78 as shown in FIG. 18, for example.
  • the passcode confirmation screen 78 is a screen for the owner user 2a to set passcode generation conditions and for the owner user 2a to confirm the generated passcode.
  • the passcode confirmation screen 78 includes, for example, a passcode update interval selection button 780, a passcode generation period designation information selection button 782, a designated date / time change button 784, and a passcode display field 786. , Passcode transfer button 788, and return button 790.
  • the passcode update interval selection button 780 is a selection button for the owner user 2a to select the type of passcode validity period.
  • the update interval selection button 780a has an effective period of “1 day”
  • the update interval selection button 780b has an effective period of “1 hour”
  • the update interval selection button 780c has an effective period of “1 week”
  • an update interval selection button Reference numeral 780d denotes a selection button for setting the validity period to “permanent”.
  • the passcode generation period designation information selection button 782 is a selection button for setting period designation information related to the type of passcode validity period selected by the passcode update interval selection button 780.
  • the period designation information selection button 782a is a button for setting period designation information by designating the reference date and time of the valid period of the type selected by the update interval selection button 780 as the current date and time. For example, when the update interval selection button 780a is selected and the period designation information selection button 782a is selected, the period designation information is set to “current date”. In addition, when the update interval selection button 780c is selected and the period designation information selection button 782a is selected, the period designation information is set to “date of a predetermined day of the week in which the current date corresponds”. .
  • the period designation information selection button 782b is a selection button for setting, for example, the designation date and time designated by the owner user 2a as the period designation information when the designation date and time change button 784 is selected.
  • FIG. 18 shows an example in which the designated date and time designated by the owner user 2a is “April 15, 19:00 to 20:00”.
  • the passcode display field 786 is a display field for displaying a passcode generated by a “passcode generation process” described later.
  • the passcode transfer button 788 is a button for transmitting the generated passcode to the communication terminal 50 by e-mail, for example.
  • the passcode generation unit 308 of the mobile terminal 30-1 converts the number of the validity period selected in S1501 and the master key set stored in the storage unit 326 using a predetermined hash function. Thus, passcode generation key information is generated (S1503).
  • the owner user 2a inputs period designation information, for example, by selecting a desired selection button using the passcode generation period designation information selection button 782 shown in FIG. 18 (S1505).
  • the passcode generation unit 308 of the portable terminal 30-1 converts the set of the period designation information input in S1505 and the passcode generation key information generated in S1503 using a predetermined hash function. Thus, a pass code is generated (S1507).
  • the operation display unit 322 displays the passcode generated in S1507 in, for example, the passcode display field 786 shown in FIG. 18 according to the control of the display control unit 310 (S1509).
  • the unauthorized user 2b inputs the passcode transmitted in S17 to the button unit 20 (S1901), and then presses the unlock button 252 of the button unit 20 ( S1903).
  • control unit 200 of the button unit 20 encrypts the unlock request, the terminal ID of the portable terminal 30-1, the unit ID of the button unit 20, and the input passcode based on, for example, a key sharing protocol. Then, the communication unit 220 transmits the encrypted information to the lock device 10 according to the control of the control unit 200 (S1905).
  • the lock lock device 10 decrypts the information received in S1905 based on, for example, a key sharing protocol. Then, the lock device 10 performs a “passcode verification process” to be described later on the decrypted passcode (S1907).
  • the processing control unit 108 determines that the locking unit 122 is not unlocked (S1911). Then, the unlocking device 10 ends the “unlocking process A”.
  • the process control unit 108 causes the locking unit 122 to unlock (S1913). Then, the control unit 100 associates the unit ID received in S1905 with the result of the unlocking process A and stores it in the operation log DB 130 (S1915).
  • the passcode generation unit 104 sets “1” to the variable I indicating the number of the type of passcode to be generated (S2003). Then, the passcode generation unit 104 sets N as the total number of passcode types determined in advance (S2005).
  • the passcode generation unit 104 determines whether or not the value of I is N or less (S2007). When I is larger than N (S2007: No), the lock device 10 performs the operation of S2051 described later.
  • the passcode generation unit 104 converts a value obtained by combining the value of I and the master key extracted in S2001 using a predetermined hash function. As a result, passcode generation key information K [I] is generated (S2009).
  • the passcode generation unit 104 converts a value obtained by combining the conversion value of the current date and time according to the type of the Ith passcode and the generated K [I] using a predetermined hash function.
  • a passcode P [I] is generated (S2011).
  • the passcode generation unit 104 adds “1” to I (S2013). Then, the passcode generation unit 104 performs the operation of S2007 again.
  • the passcode verification unit 106 sets “1” to I (S2051).
  • the passcode verification unit 106 determines whether or not the value of I is N or less (S2053). When I is larger than N (S2053: No), the passcode verification unit 106 determines that the verification result is “invalid” (S2061). The lock device 10 then ends the “passcode verification process”.
  • the passcode verification unit 106 next checks whether the passcode received in S1905 matches the P [I] generated in S2011. It is determined whether or not (S2055). If the received passcode and P [I] match (S2055: Yes), the passcode verification unit 106 determines that the verification result is “valid” (S2059). The lock device 10 then ends the “passcode verification process”.
  • the passcode verification unit 106 adds “1” to I (S2057). The passcode verification unit 106 performs the operation of S2053 again.
  • the unauthorized user 2b presses the lock button 254 of the button unit 20 (S2101). Then, the button unit 20 transmits the locking request and the unit ID of the button unit 20 to the lock device 10 (S2103).
  • the processing control unit 108 of the lock control device 10 causes the locking unit 122 to lock based on the received locking request (S2105). Then, the control unit 100 stores the unit ID received in S2103 and the result of the locking process in the operation log DB 130 in association with each other (S2107).
  • the transmission control unit 312 of the mobile terminal 30-1 stores the operation log provision request and the storage unit 326 based on, for example, the input of the owner user 2a to the operation display unit 322.
  • EKey is transmitted to the lock device 10 to the communication unit 320 (S2301).
  • the authentication processing unit 110 of the lock lock device 10 verifies the validity of the eKey by, for example, checking the validity period of the eKey received in S2301.
  • the authentication processing unit 110 decrypts the public key certificate included in the eKey received in S2301 using the public key of the owner terminal stored in the storage unit 124. Then, the authentication processing unit 110 verifies the validity of the public key of the mobile terminal 30-1 included in the eKey received in S2301 based on the decrypted result (S2303). If it is determined that one or more of the eKey or the public key of the portable terminal 30-1 is not valid (S2305: No), the lock device 10 performs the operation of S2311 described later.
  • the authentication processing unit 110 determines the public key of the mobile terminal 30-1 and the predetermined key. Challenge / response authentication using a public key authentication algorithm is performed with the mobile terminal 30-1 (S2307). If the authentication result is not valid (S2309: No), the authentication processing unit 110 does not allow the operation log to be provided (S2311). Then, the lock device 10 ends the “operation log request process”.
  • the authentication processing unit 110 permits the provision of the operation log (S2313). Then, the process control unit 108 extracts the operation log stored in the operation log DB 130, and causes the communication unit 120 to transmit the extracted operation log to the portable terminal 30-1 (S2315).
  • the transmission control unit 312 of the portable terminal 30-1 causes the server 40-1 to transmit the operation log received in S2315 and the lock ID of the lock device 10 to the server 40-1 to the communication unit 320 (automatically). Thereafter, the control unit 400-1 of the server 40-1 stores the received lock ID and the operation log in the storage unit 422 in association with each other (S2317).
  • the owner user 2a inputs a master key update request to the operation display unit 322 of the portable terminal 30-1 (S2501). Then, the master key generation unit 302 of the mobile terminal 30-1 generates a new master key, for example, a pseudo random number (S2503).
  • a new master key for example, a pseudo random number (S2503).
  • the key information processing unit 306 encrypts the master key generated in S2503 based on the current master key stored in the storage unit 326 and a predetermined common key encryption algorithm (S2505). Then, the communication unit 320 transmits the new master key encrypted in S2505 and the terminal ID of the portable terminal 30-1 to the lock device 10 according to the control of the transmission control unit 312 (S2507).
  • the key information processing unit 102 of the lock device 10 receives the new encrypted master key received in S2507 based on the master key stored in the master key file 128 and a predetermined common key encryption algorithm. Decryption is performed (S2509).
  • the key information processing unit 102 associates the current master key stored in the master key file 128 in association with the terminal ID of the portable terminal 30-1 received in S2507 with the new master key decrypted in S2509. Updating is performed by replacing the key (S2511).
  • the lock device 10 receives the passcode and the unlock request from the button unit 20, and the mobile terminal 30- A passcode is generated based on the master key associated with 1, and an unlocking process is executed based on a comparison between the received passcode and the generated passcode. Therefore, the lock device 10 can perform authentication without storing an authentication passcode. Therefore, even if the lock lock device 10 is illegally accessed, there is little risk that the security of authentication will be reduced.
  • the lock device 10 first generates passcode generation key information for each type of validity period, and then generates a passcode (valid for each type of validity period based on the generated passcode generation key information. As many as the number of types of periods). As described above, the lock device 10 distinguishes the passcode generation key information for generating the passcode for each type of the valid period, and thus the pattern of the generated passcode string varies greatly depending on the type of the valid period. For this reason, for example, the lock device 10 can verify the validity of the received passcode with higher accuracy than a method using the same key information for different types of valid periods.
  • the mobile terminal 30-1 generates a passcode that is valid only within the period specified by the owner user 2a. For this reason, since the issued passcode becomes invalid outside the valid period, it is possible to prevent the door from being unlocked at a date and time not intended by the owner user 2a.
  • the owner user 2a can make the unauthorized user 2b look at the real estate, for example, without passing the physical key to the unauthorized user 2b. Therefore, it is possible to prevent the physical key from being copied by the malicious unauthorized user 2b.
  • buttons unit 20 [1-4-6. Effect 6]
  • authentication is performed only with the pass code between the button unit 20 and the lock device 10, so the button unit 20 only needs to include the numeric keypad 250 and the unlock button 252. .
  • the button unit 20 can be configured simply and inexpensively.
  • the lock device 10 shares a master key with the portable terminal 30-1 based on the security code, so that a user other than the owner user 2a (a legitimate owner of the lock device 10) uses the portable device. This has the effect of preventing the master key from being shared with the terminal 30-1b. If the master key can be shared with the lock lock device 10 even in the portable terminal 30-1b used by an unauthorized user other than the owner user 2a, a passcode may be issued without permission by the unauthorized user. is there. Therefore, as in the first embodiment, it is important from the viewpoint of security to restrict the authority to share the master key.
  • the first embodiment is not limited to the above description.
  • the lock device 10 and the mobile terminal 30-1 have described the example in which the passcode generation key information is generated and the passcode is generated based on the generated passcode generation key information.
  • the lock device 10 and the mobile terminal 30-1 may generate a passcode based on a reset counter indicating the passcode reset count instead of generating passcode generation key information. Is possible.
  • the key information processing unit 102 (1-5-1-1.
  • the key information processing unit 102 according to this modification generates a master key based on the reset counter received from the mobile terminal 30-1 and the security code stored in the storage unit 124.
  • the key information processing unit 102 stores the generated master key in the master key file 128.
  • the key information processing unit 102 updates the master key based on the reset counter received from the mobile terminal 30-1 and the security code stored in the storage unit 124. For example, when a new reset counter is received from the mobile terminal 30-1, the key information processing unit 102 determines a new master based on the received reset counter and the security code stored in the storage unit 124. Generate a key. Then, the key information processing unit 102 updates the current master key stored in the master key file 128 by replacing it with the generated new master key.
  • the passcode generation unit 104 generates a predetermined number of passcodes based on the master key generated by the key information processing unit 102. For example, the passcode generation unit 104 generates a passcode (validity type) based on the generated master key, each of a predetermined number of types of valid periods based on the current date and time, and a predetermined hash function. To generate).
  • a passcode validity type
  • FIG. 26 shows an example in which four types of “permanent”, “one week”, “one day”, and “one hour” are determined in advance as valid periods.
  • the passcode generation unit 104 first converts, for each valid period, a value obtained by combining the converted value of the current date and time according to the type of the valid period and the master key using SHA. To do. For example, when the validity period is “permanent”, the passcode generation unit 104 converts a value obtained by combining “0” and the master key using SHA.
  • the passcode generation unit 104 applies mod so that the four converted values are converted into the number of digits of the passcode, and the four passcodes (EP, WP, DP, And HP).
  • the master key generation unit 302 generates a master key based on the reset counter stored in the storage unit 326 and the security code acquired by the two-dimensional code reading unit 304.
  • FIG. 27 is an explanatory diagram showing a display example (passcode confirmation screen 78b) of the passcode confirmation screen according to this modification.
  • the passcode confirmation screen 78b further includes a passcode reset button 792 compared to the passcode confirmation screen 78a shown in FIG.
  • the control unit 300-1 counts up the value of the reset counter by a predetermined number such as “1”. Then, the control unit 300-1 updates the reset counter stored in the storage unit 326 to a value after counting up. Each time the value of the reset counter is updated, the master key generation unit 302 generates a new master key based on the reset counter after the count-up and the security code.
  • the passcode generation unit 308 uses the pass based on the master key generated by the master key generation unit 302 and the valid period specified by the user among the predetermined number of valid periods. Generate code. For example, when a specific date and time is designated by the user, the passcode generation unit 308 converts a value obtained by combining the master key and the designated date and time using a predetermined hash function, thereby obtaining a passcode. Is generated. If a specific date and time is not specified by the user, the passcode generation unit 308 sets a predetermined value obtained by combining the converted value of the current date and time according to the type of the validity period specified by the user and the master key. A passcode is generated by performing conversion using the hash function.
  • the other components included in the mobile terminal 30-1 are the same as described above.
  • the configurations of the button unit 20 and the server 40-1 are the same as described above.
  • control unit 300-1 of the mobile terminal 30-1 After S3103, the control unit 300-1 of the mobile terminal 30-1 generates a reset counter whose initial value is set to “0”. Then, the control unit 300-1 stores the generated reset counter in the storage unit 326 (S3105).
  • the master key generation unit 302 generates a master key based on the security code acquired in S3103 and the reset counter generated in S3105. Then, the master key generation unit 302 stores the generated master key in the storage unit 326 (S3107).
  • the key information processing unit 306 encrypts the reset counter generated in S3105 based on the security code and a predetermined common key encryption algorithm (S3109).
  • the communication unit 320 transmits the reset counter encrypted in S3109 and the terminal ID of the portable terminal 30-1 to the lock device 10 according to the control of the transmission control unit 312 (S3111).
  • the operation after S3111 will be described with reference to FIG. 29 after S3111, the key information processing unit 102 of the lock lock device 10 is received in S3111 based on the security code stored in the storage unit 326 and a predetermined common key encryption algorithm.
  • the encrypted reset counter is decrypted (S3121).
  • the key information processing unit 102 generates a master key based on the reset counter received in S3111 and the security code stored in the storage unit 124 (S3123).
  • the key information processing unit 102 associates the generated master key with the terminal ID received in S3111 and stores them in the master key file 128 (S3125).
  • the passcode generation unit 308 of the mobile terminal 30-1 stores the period information based on the number of the validity period selected in S3301 and the period designation information input in S3303, and the storage unit 326.
  • a passcode is generated by converting the stored master key pair using a predetermined hash function (S3305).
  • the passcode generation unit 104 determines whether or not the value of I is N or less (S3507).
  • I is larger than N (S3507: No)
  • the lock device 10 performs the same operation as the operation (S2051 to S2061) shown in FIG.
  • the passcode generation unit 104 uses the conversion value of the current date and time according to the type of the Ith passcode and the master key extracted in S3501.
  • a passcode P [I] is generated by converting the combined value using a predetermined hash function (S3509).
  • the passcode generation unit 104 adds “1” to I (S3511).
  • the passcode generation unit 104 performs the operation of S3507 again.
  • the owner user 2a selects the passcode reset button 792 on the passcode confirmation screen 78b shown in FIG. 27, for example, displayed on the operation display unit 322 of the portable terminal 30-1.
  • a passcode reset is input (S3701).
  • control unit 300-1 of the mobile terminal 30-1 extracts the reset counter stored in the storage unit 326, and counts up the value of the reset counter by a predetermined number such as “1”. Then, the control unit 300-1 updates the reset counter stored in the storage unit 326 to the reset counter after counting up (S3703).
  • the master key generation unit 302 generates a new master key based on the reset counter after counting up and the security code stored in the storage unit 326. Then, the master key generation unit 302 updates the current master key stored in the storage unit 326 by replacing it with the generated new master key (S3705).
  • the key information processing unit 306 encrypts the reset counter counted up in S3703 based on the security code stored in the storage unit 326 and a predetermined common key encryption algorithm (S3707). Then, the communication unit 320 transmits the reset counter encrypted in S3707 and the terminal ID of the portable terminal 30-1 according to the control of the transmission control unit 312 (S3709).
  • the key information processing unit 102 of the lock device 10 decrypts the encrypted reset counter received in S3709 based on the security code stored in the storage unit 124 and a predetermined common key encryption algorithm. (S3711). At this time, the key information processing unit 102 can also verify whether or not the decrypted value is valid. For example, the key information processing unit 102 verifies whether or not the value counted up by a predetermined value with the current reset counter value stored in the storage unit 124 matches the decrypted value.
  • the key information processing unit 102 generates a new master key based on the security code stored in the storage unit 124 and the decrypted reset counter (S3713).
  • the key information processing unit 102 uses the new master key generated in S3713 as the current master key stored in the master key file 128 in association with the terminal ID of the mobile terminal 30-1 received in S3709. It is updated by replacing with (S3715).
  • the "reset counter update process" is not limited to the above-described operation.
  • the mobile terminal 30-1 may transmit the reset counter to the lock device 10 without encrypting the reset counter.
  • rock device 10 may verify the correctness of the reset counter received from the portable terminal 30-1 based on MAC (Message Authentication Code).
  • MAC Message Authentication Code
  • the lock device 10 verifies whether the reset counter received from the mobile terminal 30-1 has been tampered with based on the MAC.
  • Second Embodiment >> The first embodiment has been described above. As described above, in the first embodiment, the portable terminal 30-1 generates and issues a passcode based on the input of the owner user 2a in the key sharing service application installed in the portable terminal 30-1.
  • the server 40-2 can generate a passcode based on a passcode generation condition specified by the owner user 2a in the portable terminal 30-2. is there. Further, when the server 40-2 receives a passcode provision request from the communication terminal 50, the server 40-2 can display the generated passcode on the communication terminal 50.
  • the information processing system according to the second embodiment is different from the first embodiment (shown in FIG. 2) in that the mobile terminal 30-2 and the server 40 are replaced with the mobile terminal 30-1 and the server 40-1. -2.
  • Other components are the same as those in the first embodiment.
  • FIG. 33 is a functional block diagram showing the configuration of the portable terminal 30-2 according to the second embodiment.
  • the mobile terminal 30-2 includes a control unit 300-2 in place of the control unit 300-1 as compared with the mobile terminal 30-1 illustrated in FIG. Further, the control unit 300-2 does not include the passcode generation unit 308, as compared with the control unit 300-1.
  • the other components included in the mobile terminal 30-2 are the same as those in the first embodiment.
  • FIG. 34 is a functional block diagram showing the configuration of the server 40-2 according to the second embodiment. As illustrated in FIG. 34, the server 40-2 includes a control unit 400-2 instead of the control unit 400-1 as compared with the server 40-1 illustrated in FIG.
  • Control unit 400-2 further includes a key information processing unit 402, a passcode generation unit 404, and a transmission control unit 406, as compared with the control unit 400-1.
  • the key information processing unit 402 acquires a master key based on information received from the mobile terminal 30-2. For example, the key information processing unit 402 acquires a master key by decrypting a master key encrypted based on, for example, a key sharing protocol. The key information processing unit 402 stores the decrypted master key in the storage unit 422.
  • the passcode generation unit 404 is an example of a second authentication information generation unit in the present disclosure.
  • the passcode generation unit 404 generates a passcode based on the master key decrypted by the key information processing unit 402.
  • the passcode generation unit 404 is first received from the mobile terminal 30-2 among the master key decrypted by the key information processing unit 402 and a predetermined number of types of valid periods.
  • Pass code generation key information is generated based on the valid period of the type specified by the owner user 2a and a predetermined hash function. Then, the passcode generation unit 404 generates a pass based on the generated passcode generation key information, the period specifying information specified by the owner user 2a received from the portable terminal 30-2, and a predetermined hash function. Generate code.
  • the transmission control unit 406 is an example of a display control unit in the present disclosure. For example, when a passcode provision request is received from the communication terminal 50, the transmission control unit 406 causes the communication unit 50 to transmit the passcode generated by the passcode generation unit 404 to the communication unit 420.
  • FIG. 35 is a sequence diagram showing an overview of the overall operation according to the second embodiment. As shown in FIG. 35, the mobile terminal 30-2 firstly registers a master key in the lock device 10 and the server 40-2 based on the operation of the owner user 2a. Is performed (S41).
  • the mobile terminal 30-2 performs the “setup process of the button unit 20”, which is substantially the same as S13 in the first embodiment (S43).
  • the server 40-2 performs a “passcode generation process” to be described later (S45).
  • the server 40-2 performs a “passcode provision process” to be described later (S47).
  • the button unit 20 performs “unlocking process A” which is substantially the same as S19 in the first embodiment based on the operation of the unauthorized user 2b (S49).
  • the button unit 20 performs the “locking process” which is substantially the same as S21 in the first embodiment based on the operation of the unauthorized user 2b (S51).
  • the mobile terminal 30-2 performs “operation log request processing” which is substantially the same as S23 in the first embodiment, based on the operation of the owner user 2a (S53).
  • the owner user 2a desires to update the master key registered in S41
  • the owner user 2a carries the portable terminal 30-2 and visits the door where the lock device 10 is installed.
  • the mobile terminal 30-2 performs a “master key update process” described later for updating the master key registered in the lock device 10 based on the operation of the owner user 2a (S55).
  • the key information processing unit 306 of the mobile terminal 30-2 uses the master key generated in S4105 and the terminal ID of the mobile terminal 30-2 based on, for example, a key sharing protocol. Encrypt. Then, the communication unit 320 transmits the encrypted master key and the terminal ID of the portable terminal 30-2 to the server 40-2 according to the control of the transmission control unit 312 (S4115).
  • the key information processing unit 402 of the server 40-2 decrypts the received information based on, for example, a key sharing protocol. Then, the key information processing unit 402 stores the decrypted master key and the terminal ID of the portable terminal 30-2 in association with each other in the storage unit 422 (S4117).
  • the mobile terminal 30-2 logs in to, for example, a web site for issuing a passcode provided by the server 40-2 based on the input by the owner user 2a (S4501). Then, the mobile terminal 30-2 receives the passcode generation condition setting screen from the server 40-2.
  • the generation condition setting screen may be a screen similar to the passcode confirmation screen 78 shown in FIG.
  • the owner user 2a selects the type of valid period of the passcode to be generated on this generation condition setting screen (S4503). Furthermore, the owner user 2a inputs passcode period designation information on the generation condition setting screen (S4505).
  • the communication unit 320 of the portable terminal 30-2 transmits the type of the valid period selected in S4503 and the period designation information input in S4505 to the server 40-2 according to the control of the transmission control unit 312 ( S4507).
  • the passcode generation unit 404 of the server 40-2 converts the set of the validity period type received in S4507 and the master key set stored in the storage unit 422 using a predetermined hash function. Thus, passcode generation key information is generated (S4509).
  • the passcode generation unit 404 generates a passcode by converting the combination of the period designation information received in S4507 and the passcode generation key information generated in S4509 using a predetermined hash function. (S4511).
  • the communication terminal 50 logs in to, for example, a passcode confirmation web site provided by the server 40-2 based on an input by the unauthorized user 2b (S4701).
  • the unauthorized user 2b inputs a passcode provision request to the communication terminal 50 (S4703). Then, the communication terminal 50 transmits the input passcode provision request to the server 40-2 (S4705).
  • the communication unit 420 of the server 40-2 transmits the passcode generated in S45 to the communication terminal 50 according to the control of the transmission control unit 406 (S4707).
  • the communication terminal 50 displays the received passcode on the display screen (S4709). Thereby, the unauthorized user 2b can confirm the passcode generated in S45.
  • S5501 to S5511 shown in FIG. 39 are the same as those in S2501 to S2511 according to the first embodiment (shown in FIG. 25).
  • the key information processing unit 306 of the mobile terminal 30-2 encrypts the master key generated in S5503 and the terminal ID of the mobile terminal 30-2 based on, for example, a key sharing protocol. Then, the communication unit 320 transmits the encrypted master key and the terminal ID of the portable terminal 30-2 to the server 40-2 according to the control of the transmission control unit 312 (S5513).
  • the key information processing unit 402 of the server 40-2 decrypts the information received in S5513 based on, for example, a key sharing protocol. Then, the key information processing unit 402 replaces the current master key stored in the storage unit 422 in association with the received terminal ID of the mobile terminal 30-2 with a new decrypted master key. Update (S5515).
  • the server 40-2 receives the master key received from the portable terminal 30-2 and the portable terminal 30-2. Passcode generation key information is generated based on the type of the valid period, and the passcode is generated based on the generated passcode generation key information and the period designation information received from the portable terminal 30-2. Is generated. Then, when a passcode provision request is received from the communication terminal 50, the server 40-2 transmits the generated passcode to the communication terminal 50.
  • the server 40-2 can generate a passcode instead of the portable terminal 30-2, and provide the generated passcode to the unauthorized user 2b. Can do.
  • the second embodiment is not limited to the above description.
  • the modification of the first embodiment described in Section 1-5 can be applied to the second embodiment. That is, in the modification of the second embodiment, the server 40-2 (and the lock device 10) generates a passcode based on the security code and the reset counter instead of generating the passcode generation key information. Is possible.
  • the specific processing contents are substantially the same as the contents described in Section 1-5, and thus description thereof is omitted.
  • the third embodiment will be described. As will be described later, according to the third embodiment, even if the button unit 20 is not associated with the lock device 10 in advance, the lock device 10 can be unlocked only by an operation on the button unit 20. .
  • buttons unit 20 The components included in the button unit 20 according to the third embodiment are the same as those of the first embodiment (shown in FIG. 8). Below, only the component which has a function different from 1st Embodiment is demonstrated.
  • the control unit 200 scans surrounding BLE devices based on an input to the input unit 222. For example, the control unit 200 starts scanning the surrounding BLE devices when a valid key (for example, a numeric key) is first pressed. According to this control example, by starting the scan when the first digit is input, for example, the processing time is increased by several seconds compared to the case where the scan is not started until the input of all the digits is completed. be able to.
  • a valid key for example, a numeric key
  • the transmission control unit 202 stores the ID of the lock device 10 when the pass code is input to the input unit 222 and the unlock button is pressed.
  • the transmission of the input passcode and the unlock request is controlled depending on whether or not it is registered in the unit 224. For example, when the ID of the lock device 10 is registered in the storage unit 224, the transmission control unit 202 transmits the input passcode and the unlock request to the lock device 10 corresponding to the ID. 220 to transmit.
  • the transmission control unit 202 acquires the BLE devices in descending order of the RSSI values acquired from the surrounding BLE devices discovered by scanning.
  • the communication part 220 is made to transmit the input passcode and the unlocking request to each.
  • the transmission control unit 202 inputs each of the BLE devices in descending order of the RSSI value until the authentication is successful by any one of the BLE devices (more precisely, the lock lock device 10).
  • the pass code and the unlocking request are sequentially transmitted to the communication unit 220.
  • the “RSSI value” is, for example, the intensity of the signal received by the BLE device when the button unit 20 transmits a signal (scan signal or the like) to the BLE device.
  • the transmission control unit 202 controls the transmission of the locking request depending on whether or not the ID of the lock device 10 is registered in the storage unit 224. For example, when the ID of the lock device 10 is registered in the storage unit 224, the transmission control unit 202 causes the lock device 10 corresponding to the ID to transmit a lock request to the communication unit 220. When the ID of the lock device 10 is not registered in the storage unit 224, the transmission control unit 202 sends the lock device 10 that has been unlocked immediately before (ie, the lock device 10 that has finally transmitted the unlock request). The locking request is transmitted to the communication unit 220.
  • the transmission control unit 202 may cause the communication unit 220 to transmit a lock request to all lock devices 10 located in the vicinity. .
  • the configurations of the lock lock device 10, the mobile terminal 30-1, and the server 40-1 according to the third embodiment are substantially the same as those of the first embodiment.
  • FIG. 41 is a sequence diagram showing an overview of the overall operation according to the third embodiment. 41 are substantially the same as S11, S15, S17, and S21 according to the first embodiment (shown in FIG. 11), respectively.
  • the “setup process” (S13) is omitted. Instead, after S61, the button unit 20 is attached to the door (in the initial state) by, for example, an installation contractor (S63).
  • the control unit 200 of the button unit 20 waits until the ten key is pressed for the first time, that is, the first digit of the pass code is pressed (S6901). If the numeric keypad is pressed for the first time (S6901: Yes), the control unit 200 starts scanning surrounding BLE devices (S6903). The scan is continued for a predetermined time.
  • control unit 200 sequentially sorts the discovered BLE devices in descending order of the RSSI value acquired from the BLE device (S6905).
  • control unit 200 determines whether or not scanning has been completed, the passcode has been entered in all digits, and the unlock button has been pressed (S6907).
  • the control unit 200 repeats the processing from S6903 onward.
  • the control unit 200 next stores the ID of the lock device 10 in the storage unit 224. It is determined whether it is registered in (S6909). When the ID of the lock device 10 is registered in the storage unit 224 (S6909: Yes), the control unit 200 encrypts the input passcode and unlock request based on, for example, a key sharing protocol. At this time, the control unit 200 can further encrypt the terminal ID of the portable terminal 30-1 and the unit ID of the button unit 20.
  • the communication unit 220 transmits the encrypted information to the lock lock device 10 corresponding to the ID registered in the storage unit 224 according to the control of the transmission control unit 202 (S6911). Thereafter, the corresponding lock device 10 performs the process of S6931 described later.
  • the control unit 200 sets “1” to the variable I indicating the number of the BLE device that is the passcode transmission target (S6913). Then, the total number of BLE devices discovered in S6905 is set to N (S6915).
  • control unit 200 determines whether I is N or less (S6917). When I is larger than N, that is, when connection or authentication with the lock lock device 10 has failed for all discovered BLE devices (S6917: No), the “unlock process B” ends.
  • the control unit 200 encrypts the input passcode and unlock request based on, for example, a key sharing protocol. At this time, the control unit 200 can further encrypt the terminal ID of the portable terminal 30-1 and the unit ID of the button unit 20. Then, under the control of the transmission control unit 202, the communication unit 220 transmits the encrypted information to the BLE device with the sort order (S6919).
  • control unit 200 determines whether or not the connection with the I-th BLE device is completed within a predetermined time (S6921). For example, the control unit 200 determines whether or not the bond process is completed within a predetermined time.
  • the control unit 200 adds “1” to I (S6923). That is, the control unit 200 sets a BLE device with the next sort order as a passcode transmission target. Then, the control unit 200 performs the process of S6917 again.
  • the button unit 20 performs the process of S6923 again. That is, the control unit 200 sets a BLE device with the next sort order as a passcode transmission target.
  • the control unit 200 of the button unit 20 determines whether or not the ID of the lock device 10 is registered in the storage unit 224 (S6941). If the ID of the lock device 10 is registered in the storage unit 224 (S6941: Yes), the “unlocking process B” ends. On the other hand, when the ID of the lock device 10 is not registered in the storage unit 224 (S6941: No), the control unit 200 stores the ID of the lock device 10 that has been successfully unlocked, that is, the lock device 10 that has been successfully unlocked. It is registered in 224 (S6943). Then, “unlocking process B” ends.
  • the operation of “unlocking process B” is not limited to the above-described example.
  • the button unit 20 may sound a buzzer once per second. As a result, the user can be notified that the process is ongoing.
  • the button unit 20 may sound a buzzer with a predetermined tone color. Thereby, it is possible to notify the user that unlocking has failed.
  • the button unit 20 is installed in a range close to the lock device 10 to be unlocked (for example, on the opposite side of the same door). Therefore, even if a large number of BLE devices are found, the pass code can be efficiently transmitted to the unlocking device 10 to be unlocked by the above method.
  • the operation (setup operation) for associating each button unit 20 with a specific lock device 10 in advance is not necessary. Therefore, the installation work of the button unit 20 becomes easy. As a result, for example, it can be expected that the button units 20 are installed in a larger number of vacant rooms, and the inside of the vacant rooms becomes easier.
  • Modification 1> For example, in each embodiment described above, basically, an example in which one mobile terminal 30-1 generates a passcode based on an input of a generation condition by the owner user 2a having the mobile terminal 30-1. Although described, it is not limited to such an example.
  • a plurality of portable terminals 30-1 are registered as owner terminals in the lock lock device 10
  • all the portable terminals 30-1 registered as owner terminals are each owner user having each portable terminal 30-1. It is also possible to generate a passcode based on the input of the generation condition by 2a.
  • the portable terminal 30-1b has another portable terminal 30-1b.
  • a passcode can be issued to the unauthorized user 2b.
  • the button unit 20 is an input device for transmitting a passcode to the lock lock device 10 .
  • the present invention is not limited to this example.
  • the button unit 20 has a housing door that can be electrically locked, and can store any object that can be unlocked based on a passcode input to the input unit 222. It may be a device.
  • the owner user 2a stores the physical key of the real estate in the casing of the button unit 20, and causes the unauthorized user 2b to input the pass code to the input unit 222, thereby By unlocking the door, the physical key can be lent to the unauthorized user 2b.
  • the button unit 20 according to the second modification may be capable of transmitting an unlocking request to the lock device 10 based on the input of a pass code to the input unit 222, as in the above-described embodiments. .
  • the information processing apparatus in this indication is not limited to this example.
  • the information processing apparatus according to the present disclosure is a locking device installed at various doors such as a locker door, a safe door, or an automobile door installed at an airport or a station, or a locking device such as a bicycle. It may be.
  • the button unit 20 may be an input device for causing the information processing apparatus to unlock and lock.
  • the button unit 20 may be a car door remote control key.
  • the information processing apparatus is, for example, a PC (Personal Computer), a server, a smartphone, or a tablet terminal, and a passcode can be used for authenticating a user who uses the information processing apparatus.
  • the information processing apparatus may be a PC installed in a public facility.
  • the PC When the passcode is input by the user, the PC generates a predetermined number of types of passcodes with valid periods, and compares the input passcode with the generated passcode. The validity of the input passcode may be verified. According to this modification, only the user who has been notified of the passcode among the users without the usage authority can use the PC only during the validity period of the passcode.
  • each step in the operation of each embodiment described above does not necessarily have to be processed in the order described.
  • the steps may be processed by changing the order as appropriate.
  • Each step may be processed in parallel or individually instead of being processed in time series.
  • a communication unit that receives authentication information and a processing request from the first communication device;
  • An authentication information generating unit that generates authentication information based on the first key information associated with the second communication device;
  • a process control unit that controls execution of a process according to the process request based on the authentication information received by the communication unit and the authentication information generated by the authentication information generation unit;
  • An information processing apparatus comprising: (2) When the authentication information received by the communication unit matches the authentication information generated by the authentication information generation unit, the processing control unit executes a process according to the processing request. The information processing apparatus described.
  • the authentication information generation unit generates authentication information generation key information based on the first key information, and generates the authentication information based on the generated authentication information generation key information.
  • the authentication information generation unit generates a predetermined number of different authentication information generation key information based on the first key information, and generates each of the generated predetermined number of authentication information generation key information. Based on the predetermined number of authentication information, The process control unit executes the process according to the process request based on a comparison between the authentication information received by the communication unit and each of the predetermined number of authentication information generated by the authentication information generation unit.
  • the information processing apparatus according to (3) wherein the information processing apparatus is controlled.
  • the authentication information generating unit generates the predetermined number of pieces of authentication information generating key information based on the first key information and each of the predetermined number of types of valid periods determined in advance; and Generating the predetermined number of authentication information based on each of the generated predetermined number of pieces of authentication information generating key information and each of the predetermined number of types of validity periods based on the current date and time, The information processing apparatus according to (4).
  • the authentication information generation unit generates the predetermined number of authentication information generation key information based on the first key information, each of the predetermined number of types of validity periods, and a predetermined hash function.
  • the information processing apparatus which is generated.
  • the first key information is information generated based on third key information associated with the information processing apparatus and a reset counter indicating the number of times authentication information is reset,
  • the authentication information generation unit generates a predetermined number of authentication information based on the first key information,
  • the process control unit executes the process according to the process request based on a comparison between the authentication information received by the communication unit and each of the predetermined number of authentication information generated by the authentication information generation unit.
  • the information processing device according to (1) or (2), wherein the information processing device is controlled.
  • the predetermined number of types of valid periods are predetermined,
  • the authentication information generation unit generates the predetermined number of authentication information based on the first key information and each of the predetermined number of types of validity periods based on the current date and time, ). (9) If the authentication information received by the communication unit matches any one of the predetermined number of authentication information generated by the authentication information generation unit, the processing control unit performs processing according to the processing request.
  • the processing control unit executes a process according to the processing request
  • the information processing apparatus according to any one of (4) to (8), wherein: (10) The communication unit further receives the encrypted first key information from the second communication device,
  • the information processing apparatus includes: a key information processing unit that decrypts the encrypted first key information;
  • the information processing apparatus according to any one of (1) to (9), further including a storage unit that stores the first key information decrypted by the key information processing unit.
  • the communication unit further receives encrypted second key information associated with the second communication device from the second communication device
  • the information processing apparatus further includes a key information processing unit that decrypts the encrypted second key information
  • the authentication information generation unit When the encrypted second key information is received, the authentication information generation unit generates the predetermined number of keys based on the second key information decrypted by the key information processing unit.
  • Generate authentication information The processing control unit, based on a comparison between the authentication information received by the communication unit and each of the predetermined number of authentication information generated based on the second key information by the authentication information generation unit, The information processing apparatus according to any one of (4) to (9), wherein execution of a process according to the process request is controlled.
  • the information processing apparatus according to any one of (1) to (11), wherein the authentication information is a passcode.
  • the information processing apparatus is a lock device, The information processing apparatus further includes a locking unit, The processing request is an unlocking request for the locking part, The processing control unit executes unlocking control for the locking unit based on a comparison between authentication information received by the communication unit and authentication information generated by the authentication information generation unit, (1) The information processing apparatus according to any one of (12) to (12).
  • An information processing method comprising: (15) Computer A communication unit that receives authentication information and a processing request from the first communication device; An authentication information generating unit that generates authentication information based on the first key information associated with the second communication device; A process control unit that controls execution of a process according to the process request based on the authentication information received by the communication unit and the authentication information generated by the authentication information generation unit; Program to function as (16) An information processing device, a first communication device, and a second communication device;
  • the information processing apparatus includes: A communication unit that receives authentication information and a processing request from the first communication device; A storage unit for storing first key information associated with the second communication device; An authentication information generating unit that generates authentication information based on the first key information stored in the storage unit; A process control unit that controls execution of a process according
  • the second authentication information generation unit generates key information for generating authentication information based on the first key information and an effective period designated by a user among a predetermined number of types of effective periods. And generating authentication information based on the generated authentication information generation key information and the validity period specified by the user, The authentication information generation unit obtains the predetermined number of pieces of authentication information generation key information based on the first key information stored in the storage unit and each of the predetermined number of types of validity periods.
  • the predetermined number of authentication information generated based on each of the generated predetermined number of pieces of authentication information generating key information and each of the predetermined number of types of valid periods based on the current date and time Produces
  • the process control unit executes the process according to the process request based on a comparison between the authentication information received by the communication unit and each of the predetermined number of authentication information generated by the authentication information generation unit.
  • Communication device further includes a storage unit that stores identification information of the information processing device when the authentication information is authenticated by any of the plurality of information processing devices.
  • the transmission control unit stores the information in the storage unit.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Power Engineering (AREA)
  • Lock And Its Accessories (AREA)

Abstract

【課題】認証の安全性を向上させることが可能な、情報処理装置、情報処理方法、プログラム、情報処理システム、および通信装置を提案する。 【解決手段】認証情報および処理要求を第1の通信装置から受信する通信部と、第2の通信装置に対応付けられた第1の鍵情報に基づいて認証情報を生成する認証情報生成部と、前記通信部により受信された認証情報と前記認証情報生成部により生成された認証情報とに基づいて、前記処理要求に応じた処理の実行を制御する処理制御部と、を備える、情報処理装置。

Description

情報処理装置、情報処理方法、プログラム、情報処理システム、および通信装置
 本開示は、情報処理装置、情報処理方法、プログラム、情報処理システム、および通信装置に関する。
 従来、ドアの施解錠を電気的に行うことが可能な錠前デバイスが開発されている。例えば、特許文献1には、携帯機器が電気錠にかざされると、電気錠は携帯機器からキーデータを読み取り、そして、読み取ったキーデータと認証用キーデータとを照合することにより解錠制御を行う技術が開示されている。
特開2007-239347号公報
 しかしながら、特許文献1に記載の技術では、認証の安全性が低い。例えば、特許文献1に記載の電気錠は、携帯機器から読み取ったキーデータと、予め記憶している認証用キーデータとを照合することにより認証を行う。このため、例えば電気錠に対する不正なアクセスなどにより認証用キーデータが電気錠から盗取されると、ドアが不正に解錠される恐れがある。
 そこで、本開示では、認証の安全性を向上させることが可能な、新規かつ改良された情報処理装置、情報処理方法、プログラム、情報処理システム、および通信装置を提案する。
 本開示によれば、認証情報および処理要求を第1の通信装置から受信する通信部と、第2の通信装置に対応付けられた第1の鍵情報に基づいて認証情報を生成する認証情報生成部と、前記通信部により受信された認証情報と前記認証情報生成部により生成された認証情報とに基づいて、前記処理要求に応じた処理の実行を制御する処理制御部と、を備える、情報処理装置が提供される。
 また、本開示によれば、認証情報および処理要求を第1の通信装置から受信することと、第2の通信装置に対応付けられた第1の鍵情報に基づいて認証情報を生成することと、前記受信された認証情報と前記生成された認証情報とに基づいて、前記処理要求に応じた処理の実行をプロセッサが制御することと、を備える、情報処理方法が提供される。
 また、本開示によれば、コンピュータを、認証情報および処理要求を第1の通信装置から受信する通信部と、第2の通信装置に対応付けられた第1の鍵情報に基づいて認証情報を生成する認証情報生成部と、前記通信部により受信された認証情報と前記認証情報生成部により生成された認証情報とに基づいて、前記処理要求に応じた処理の実行を制御する処理制御部、として機能させるための、プログラムが提供される。
 また、本開示によれば、情報処理装置、第1の通信装置、および、第2の通信装置を有し、前記情報処理装置は、認証情報および処理要求を前記第1の通信装置から受信する通信部と、前記第2の通信装置に対応付けられた第1の鍵情報を記憶する記憶部と、前記記憶部に記憶されている前記第1の鍵情報に基づいて認証情報を生成する認証情報生成部と、前記通信部により受信された認証情報と前記認証情報生成部により生成された認証情報とに基づいて、前記処理要求に応じた処理の実行を制御する処理制御部と、を備える、情報処理システムが提供される。
 また、本開示によれば、認証情報および処理要求の入力を受け付ける入力部と、複数の情報処理装置に対する信号の送信を制御する送信制御部と、前記複数の情報処理装置の各々が受信した前記信号の強度の値を取得する取得部と、を備え、前記送信制御部は、取得された前記信号の強度の値が大きい情報処理装置の順に、前記複数の情報処理装置の各々に対して、前記入力された認証情報および処理要求を通信部に送信させる、通信装置が提供される。
 以上説明したように本開示によれば、認証の安全性を向上させることができる。なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。
本開示の第1の実施形態による錠前デバイス10およびボタンユニット20のドアへの取り付け例を示した説明図である。 同実施形態による情報処理システムの構成例を示した説明図である。 同実施形態によるボタンユニット20の外観の一例を示した説明図である。 同実施形態による錠前デバイス10の構成例を示した機能ブロック図である。 同実施形態によるパスコードの生成例を示した説明図である。 同実施形態によるパスコードの生成例の変形例を示した説明図である。 同実施形態によるeKeyの構成例を示した説明図である。 同実施形態によるボタンユニット20の構成例を示した機能ブロック図である。 同実施形態による携帯端末30‐1の構成例を示した機能ブロック図である。 同実施形態によるサーバ40‐1の構成例を示した機能ブロック図である。 同実施形態による全体の動作の概要を示したシーケンス図である。 同実施形態によるマスター鍵の登録処理の動作を示したシーケンス図である。 同実施形態によるボタンユニット20のセットアップ処理の動作を示したシーケンス図である。 同実施形態によるアカウント画面の表示例を示した説明図である。 同実施形態によるデバイス追加画面の表示例を示した説明図である。 同実施形態によるロック選択画面の表示例を示した説明図である。 同実施形態によるボタンユニット設定画面の表示例を示した説明図である。 同実施形態によるパスコード確認画面の表示例を示した説明図である。 同実施形態によるパスコード生成処理の動作を示したフローチャートである。 同実施形態による解錠処理Aの動作を示したシーケンス図である。 同実施形態によるパスコードの検証処理の動作の一部を示したフローチャートである。 同実施形態によるパスコードの検証処理の動作の一部を示したフローチャートである。 同実施形態による施錠処理の動作を示したシーケンス図である。 同実施形態による操作ログの要求処理の動作を示したシーケンス図である。 同実施形態によるマスター鍵の更新処理の動作を示したシーケンス図である。 同実施形態の変形例によるパスコードの生成例を示した説明図である。 同変形例によるパスコード確認画面の表示例を示した説明図である。 同変形例によるマスター鍵の登録処理の動作の一部を示したシーケンス図である。 同変形例によるマスター鍵の登録処理の動作の一部を示したシーケンス図である。 同変形例によるパスコード生成処理の動作を示したフローチャートである。 同変形例によるパスコードの検証処理の動作の一部を示したフローチャートである。 同変形例によるリセットカウンタの更新処理の動作を示したシーケンス図である。 本開示の第2の実施形態による携帯端末30‐2の構成例を示した機能ブロック図である。 同実施形態によるサーバ40‐2の構成例を示した機能ブロック図である。 同実施形態による全体の動作の概要を示したシーケンス図である。 同実施形態によるマスター鍵の登録処理の動作を示したシーケンス図である。 同実施形態によるパスコード生成処理の動作を示したシーケンス図である。 同実施形態によるパスコード提供処理の動作を示したシーケンス図である。 同実施形態によるマスター鍵の更新処理の動作を示したシーケンス図である。 本開示の第3の実施形態による錠前デバイス10およびボタンユニット20のドアへの取り付け例を示した説明図である。 同実施形態による全体の動作の概要を示したシーケンス図である。 同実施形態による解錠処理Bの動作の一部を示したフローチャートである。 同実施形態による解錠処理Bの動作の一部を示したフローチャートである。
 以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
 また、本明細書及び図面において、実質的に同一の機能構成を有する複数の構成要素を、同一の符号の後に異なるアルファベットを付して区別する場合もある。例えば、実質的に同一の機能構成を有する複数の構成を、必要に応じて携帯端末30‐1aおよび携帯端末30‐1bのように区別する。ただし、実質的に同一の機能構成を有する複数の構成要素の各々を特に区別する必要がない場合、同一符号のみを付する。例えば、携帯端末30‐1aおよび携帯端末30‐1bを特に区別する必要が無い場合には、単に携帯端末30‐1と称する。
 また、以下に示す項目順序に従って当該「発明を実施するための形態」を説明する。
 1.第1の実施形態
 2.第2の実施形態
 3.第3の実施形態
 4.変形例
<<1.第1の実施形態>>
 <1-1.システム構成>
 本開示は、一例として「1.第1の実施形態」~「3.第3の実施形態」において詳細に説明するように、多様な形態で実施され得る。まず、第1の実施形態による情報処理システムの基本構成について、図1および図2を参照して説明する。図1に示したように、第1の実施形態による情報処理システムは、錠前デバイス10およびボタンユニット20を含む。図1に示したように、錠前デバイス10およびボタンユニット20は、例えば建物のドアなどに取り付けられ得る。例えば、図1に示したように、錠前デバイス10は、ドアの室内側に設置され、また、ボタンユニット20は、ドアの室外側に設置される。
 また、図2に示したように、第1の実施形態による情報処理システムは、錠前デバイス10およびボタンユニット20に加えて、さらに、携帯端末30‐1、通信網32、サーバ40‐1、および通信端末50を含む。
 [1-1-1.錠前デバイス10]
 錠前デバイス10は、本開示における情報処理装置の一例である。錠前デバイス10は、例えば建物のドアなどに取り付けられ、ドアの解錠および施錠の制御を行うための装置である。例えば、錠前デバイス10は、ドアの室内側に設置されているサムターン(図示省略)に対する解錠および施錠の制御を行うことが可能である。または、ドアにサムターンが設置されていない場合には、錠前デバイス10自体が、建物のドアのロック機構であってもよい。
 また、錠前デバイス10は、後述するボタンユニット20や携帯端末30‐1から受信される処理要求に基づいて、例えば解錠処理や施錠処理などの各種の処理を行う。
 [1-1-2.ボタンユニット20]
 ボタンユニット20は、本開示における第1の通信装置および通信装置の一例である。ボタンユニット20は、例えば錠前デバイス10などの他の装置に対する処理の要求をユーザが入力するための入力装置である。例えば、ボタンユニット20は、錠前デバイス10に対する解錠権限を有しないユーザ(以下、権限無ユーザ2bと称する場合がある)により、解錠および施錠の要求を入力するために使用され得る。なお、権限無ユーザ2bは、例えば、錠前デバイス10が設置されている建物または部屋の仲介業者や内見希望者などである。
 また、ボタンユニット20は、例えばBLE(Bluetooth(登録商標) Low Energy)などのBluetooth、Wi‐Fi(登録商標)、NFC(Near Field Communication)などに沿った無線通信により、他の装置との間で情報の送受信を行うことが可能である。例えば、ボタンユニット20は、錠前デバイス10に対する解錠要求がユーザにより入力された場合に、入力された解錠要求を無線通信により錠前デバイス10へ送信する。
 なお、基本的には、一台のボタンユニット20は、予め対応付けられている一台の錠前デバイス10とのみ通信を行う。但し、かかる例に限定されず、一台のボタンユニット20は、複数の錠前デバイス10と通信可能であってもよい。例えば、ボタンユニット20は、複数の錠前デバイス10に対して解錠要求を同時に送信してもよい。
 ここで、図3を参照して、ボタンユニット20の外観の一例について説明する。図3に示したように、ボタンユニット20は、テンキー250、解錠ボタン252、および、施錠ボタン254を含む。ここで、テンキー250は、「0」~「9」までの各数字を入力するためのキーである。なお、詳細については後述するが、テンキー250は、例えば、錠前デバイス10による認証処理に用いられるパスコードを入力するためにユーザにより使用される。ここで、パスコードは、本開示における認証情報の一例である。
 解錠ボタン252は、例えば錠前デバイス10に対する解錠要求をユーザが入力するためのキーである。また、解錠ボタン252は、ボタンユニット20の内部状態をユーザが切り替えるためのキーでもある。例えば、ボタンユニット20が通常モードであり、かつ、解錠ボタン252がユーザにより長押し、つまり、所定の時間以上押下されると、ボタンユニット20は、通常モードから、ボタンユニット20の設定情報を変更するための登録モードへ内部状態を切り替える。また、施錠ボタン254は、例えば錠前デバイス10に対する施錠要求をユーザが入力するためのキーである。
 [1-1-3.携帯端末30‐1]
 携帯端末30‐1は、本開示における第2の通信装置の一例である。携帯端末30‐1は、ユーザ2が所有する端末である。例えば、携帯端末30‐1は、錠前デバイス10の管理権限を有するユーザ(以下、オーナーユーザ2aと称する場合がある)や、オーナーユーザ2aにより錠前デバイス10の解錠権を許可されたユーザなどにより使用される。なお、オーナーユーザ2aは、例えば、錠前デバイス10が設置される建物または部屋の所有権を有する人物や、錠前デバイス10が設置される建物または部屋を管理する管理会社の従業員などである。
 この携帯端末30‐1は、鍵共有サービス用アプリケーションを実装することが可能である。この鍵共有サービス用アプリケーションは、例えば、錠前デバイス10による(ボタンユニット20の)認証処理に用いられるパスコードを表示画面に表示させたり、錠前デバイス10に対する解錠要求などの各種の処理要求を行ったり、または、別の携帯端末30‐1bに対する錠前デバイス10の解錠権の発行などを行うためのアプリケーションである。また、携帯端末30‐1は、例えば無線通信により、後述する通信網32を介してサーバ40‐1と通信することが可能である。
 なお、携帯端末30‐1は、例えば、スマートフォンなどの携帯電話、タブレット端末、腕時計型デバイス、眼鏡型デバイス、または、例えばBluetoothなどに沿った通信機能を有するヘッドホンなどであってもよい。
 [1-1-4.通信網32]
 通信網32は、通信網32に接続されている装置から送信される情報の有線、または無線の伝送路である。例えば、通信網32は、電話回線網、インターネット、衛星通信網などの公衆回線網や、Ethernet(登録商標)を含む各種のLAN(Local Area Network)、WAN(Wide Area Network)などを含んでもよい。また、通信網32は、IP-VPN(Internet Protocol-Virtual Private Network)などの専用回線網を含んでもよい。
 [1-1-5.サーバ40‐1]
 サーバ40‐1は、本開示における第2の通信装置の一例である。サーバ40‐1は、例えばwebシステムで構成される鍵共有サービスを管理するための装置である。例えば、サーバ40‐1は、錠前デバイス10にオーナー端末として登録された携帯端末30‐1からの要求に基づいて、携帯端末30‐1をオーナー端末として登録する。また、サーバ40‐1は、オーナー端末である携帯端末30‐1aにより(オーナー端末以外の)別の携帯端末30‐1bに対して発行された解錠権を携帯端末30‐1bに転送する。
 [1-1-6.通信端末50]
 通信端末50は、例えば、権限無ユーザ2bにより使用される端末である。この通信端末50は、通信網32を介して携帯端末30‐1またはサーバ40‐1と通信を行うことが可能である。例えば、通信端末50は、オーナーユーザ2aの携帯端末30‐1により発行されるパスコードを携帯端末30‐1から受信する。
 以上、第1の実施形態による情報処理システムの基本構成について説明した。上述した錠前デバイス10は、ボタンユニット20から受信されるパスコードと、携帯端末30‐1に対応付けられたマスター鍵に基づいて錠前デバイス10が生成したパスコードとを比較することにより、解錠処理を実行することが可能である。
 <1-2.構成>
 [1-2-1.錠前デバイス10]
 次に、第1の実施形態による構成について詳細に説明する。図4は、第1の実施形態による錠前デバイス10の構成を示した機能ブロック図である。図4に示したように、錠前デバイス10は、制御部100、通信部120、施錠部122、および記憶部124を有する。
 (1-2-1-1.制御部100)
 制御部100は、錠前デバイス10に内蔵される、例えばCPU(Central Processing Unit)やRAM(Random Access Memory)などのハードウェアを用いて、錠前デバイス10の動作を全般的に制御する。また、図4に示したように、制御部100は、鍵情報処理部102、パスコード生成部104、パスコード検証部106、処理制御部108、および認証処理部110を有する。
 (1-2-1-2.鍵情報処理部102)
 ‐マスター鍵の取得
 鍵情報処理部102は、携帯端末30‐1から受信される情報に基づいてマスター鍵を取得する。例えば、鍵情報処理部102は、携帯端末30‐1から受信される、暗号化されたマスター鍵を、記憶部124に予め記憶されているセキュリティコードおよび所定の暗号アルゴリズムに基づいて復号化することにより、マスター鍵を取得する。
 ここで、マスター鍵は、本開示における第1の鍵情報の一例である。また、マスター鍵は、パスコードを生成するために使用される情報であり、例えば携帯端末30‐1に対応付けて携帯端末30‐1により生成される。また、セキュリティコードは、例えば、錠前デバイス10の共通鍵である。また、所定の暗号アルゴリズムは、例えば、AES(Advanced Encryption Standard)などの共通鍵暗号アルゴリズムである。
 なお、鍵情報処理部102は、取得したマスター鍵をマスター鍵ファイル128に格納する。例えば、鍵情報処理部102は、取得したマスター鍵と、当該マスター鍵の送信元である携帯端末30‐1の端末IDとを対応付けてマスター鍵ファイル128に格納する。
 ‐マスター鍵の更新
 また、鍵情報処理部102は、例えば携帯端末30‐1から受信される情報に基づいて、マスター鍵ファイル128に格納されているマスター鍵を更新する。例えば、暗号化された、新たなマスター鍵が携帯端末30‐1から受信された場合には、鍵情報処理部102は、まず、携帯端末30‐1から受信された情報を、マスター鍵ファイル128に格納されている現在のマスター鍵および所定の暗号アルゴリズムに基づいて復号化することにより、新たなマスター鍵を取得する。そして、鍵情報処理部102は、マスター鍵ファイル128に格納されている現在のマスター鍵を、取得した新たなマスター鍵に置き換えることにより更新する。なお、新たなマスター鍵は、本開示における第2の鍵情報の一例である。
 ‐‐マスター鍵ファイル128
 マスター鍵ファイル128は、鍵情報処理部102により取得されたマスター鍵が格納されるファイルである。例えば、マスター鍵ファイル128では、マスター鍵と、マスター鍵の送信元である携帯端末30‐1の端末IDとが対応付けて格納される。
 (1-2-1-3.パスコード生成部104)
 パスコード生成部104は、本開示における認証情報生成部の一例である。パスコード生成部104は、マスター鍵ファイル128に格納されているマスター鍵に基づいて所定の数のパスコードを生成する。
 例えば、パスコード生成部104は、マスター鍵に基づいて互いに異なる所定の数のパスコード生成用鍵情報を生成し、そして、生成した所定の数のパスコード生成用鍵情報の各々に基づいて、パスコード生成用鍵情報の個数だけパスコードを生成する。なお、パスコード生成用鍵情報は、本開示における認証情報生成用鍵情報の一例である。
 より具体的には、パスコード生成部104は、まず、マスター鍵と、予め定められた所定の数の種類の有効期間の各々と、所定のハッシュ関数とに基づいてパスコード生成用鍵情報を、有効期間の種類の数だけ生成する。そして、パスコード生成部104は、生成した所定の数のパスコード生成用鍵情報の各々と、現在日時を基準とした所定の数の種類の有効期間の各々と、所定のハッシュ関数とに基づいてパスコードを、有効期間の種類の数だけ生成する。
 ここで、図5および図6を参照して、上記の機能についてより詳細に説明する。なお、図5では、有効期間として「永久」、「一週間」、「一日」、および「一時間」の4種類が予め定められている例を示している。図5に示した例では、パスコード生成部104は、まず、各有効期間の種類に関して、当該有効期間の番号(例えば「1」)とマスター鍵とを組み合わせた値をSHA(Secure Hash Algorithm)を用いて変換することにより、パスコード生成鍵K1~K4を生成する。なお、K1は、有効期間が「永久」である場合のパスコード生成鍵であり、K2は有効期間が「一週間」である場合のパスコード生成鍵であり、K3は有効期間が「一日」である場合のパスコード生成鍵であり、また、K4は有効期間が「一時間」である場合のパスコード生成鍵である。
 そして、パスコード生成部104は、各有効期間の種類に関して、当該有効期間の種類に応じた現在日時の変換値と、生成されたパスコード生成鍵とを組み合わせた値をそれぞれSHAを用いて変換する。例えば、K1の場合には「0」とK1とを組み合わせた値、K2の場合には「現在の日付が該当する週における所定の曜日の日付」(例えば「2015年6月1日」)とK2とを組み合わせた値、K3の場合には「現在の日付」(例えば「2015年6月3日」)とK3とを組み合わせた値、K4の場合には「現在の日付および時間帯」(例えば「2015年6月3日10時」)とK4とを組み合わせた値を、パスコード生成部104はそれぞれSHAを用いて変換する。
 そして、パスコード生成部104は、変換された4個の値が例えば6桁などの所定の桁数の値に変換されるようにそれぞれmodを適用し、そして、4個のパスコード(EP、WP、DP、およびHP)を生成する。
 ‐変形例
 また、図6は、図5に示したパスコードの生成例の変形例を示した説明図である。なお、図6では、有効期間の種類として、図5に示した4種類に加えて、さらに「特定の曜日」が定められている例を示している。この「特定の曜日」は、パスコードが例えば毎週の特定の曜日にだけ有効な期間の種類である。
 例えば、図6に示したように、パスコード生成部104は、まず、「特定の曜日」に対応する番号(例えば「5」)とマスター鍵とを組み合わせた値をSHAを用いて変換することにより、パスコード生成鍵K5を生成する。次に、パスコード生成部104は、「現在の日付の曜日」に対応付けられた数値(例えば、月曜日では「1」、火曜日では「2」など)とK5とを組み合わせた値をSHAを用いて変換する。そして、パスコード生成部104は、変換された値にmodを適用することにより、「特定の曜日」に対応するパスコード(CP)を生成する。
 なお、有効期間の種類は、上記の5種類に限定されず、任意の数の種類が設定され得る。
 (1-2-1-4.パスコード検証部106)
 パスコード検証部106は、ボタンユニット20からパスコードが受信された場合に、受信されたパスコードと、パスコード生成部104により生成された所定の数のパスコードの各々とを比較することにより、受信されたパスコードの正当性を検証する。
 例えば、パスコード生成部104により生成された所定の数のパスコードのうちいずれかと、受信されたパスコードとが一致する場合には、パスコード検証部106は、受信されたパスコードが正当であると判定する。また、パスコード生成部104により生成された所定の数のパスコードのいずれも、受信されたパスコードと一致しない場合には、パスコード検証部106は、受信されたパスコードが正当ではないと判定する。
 ‐変形例
 なお、変形例として、ボタンユニット20から受信されたパスコードが正当ではないと判定された連続の回数が所定の回数に達した場合には、パスコード検証部106は、ボタンユニット20からのパスコードの受信を所定の時間拒絶することも可能である。かかる構成によれば、悪意のあるユーザによるボタンユニット20を用いたパスコードの総当たり攻撃を防止することができる。
 さらに、上記の場合には、錠前デバイス10は、ブザーを出力してもよい。これにより、パスコードの受信を拒絶していることをユーザに通知することができる。
 さらに、上記の場合には、パスコード検証部106は、検証の実績を操作ログDB130に格納してもよい。これにより、例えばオーナーユーザ2aが携帯端末30‐1を携帯してドアを訪れた際に、携帯端末30‐1が錠前デバイス10から操作ログを取得することにより、過去に不正なパスコードの入力が行われたことをオーナーユーザ2aは知ることができる。
 (1-2-1-5.処理制御部108)
 処理制御部108は、パスコード検証部106による検証結果に基づいて、ボタンユニット20から受信された処理要求に応じた処理を実行する。例えば、受信されたパスコードが正当であるとパスコード検証部106により判定された場合には、処理制御部108は、受信された処理要求に応じた処理を実行する。一例として、受信された処理要求が、施錠部122に対する解錠要求であり、かつ、受信されたパスコードが正当であることがパスコード検証部106により判定された場合には、処理制御部108は、施錠部122に解錠させる。
 また、受信されたパスコードが正当ではないとパスコード検証部106により判定された場合には、処理制御部108は、受信された処理要求に応じた処理を実行しない。
 (1-2-1-6.認証処理部110)
 ‐eKeyの判定
 認証処理部110は、携帯端末30‐1からeKeyが受信された場合に、受信されたeKeyの正当性を判定する。ここで、eKeyは、携帯端末30‐1を認証するために用いられる情報である。なお、錠前デバイス10のオーナー端末として錠前デバイス10およびサーバ40‐1に予め登録された携帯端末30‐1aのみが、該当の錠前デバイス10に対応するeKeyを自端末または別の携帯端末30‐1bに対して発行することが可能である。
 例えば、認証処理部110は、受信されたeKeyに含まれる、携帯端末30‐1の公開鍵に対する署名情報を検証することにより、該当のeKeyの正当性を検証する。一例として、認証処理部110は、まず、携帯端末30‐1bから受信されたeKeyに含まれる、携帯端末30‐1bの公開鍵に対する署名情報を、記憶部124に事前に記憶されている(オーナー端末である)携帯端末30‐1aの公開鍵を用いて検証する。そして、認証処理部110は、携帯端末30‐1の公開鍵に対する署名情報の検証結果に基づいて、該当のeKeyに含まれる携帯端末30‐1の公開鍵が正当であるか否かを判定する。なお、携帯端末30‐1aおよび携帯端末30‐1bが同一の端末である場合に関しても同様である。
 ‐‐eKey
 ここで、図7を参照して、eKeyの構成例(eKey60)について説明する。図7に示したように、eKey60は、例えばヘッダー600、および本体602を有する。また、ヘッダー600は、eKeyID6000、端末ID6002、錠前ID6004、および、有効期間6006を有する。また、本体602は、端末公開鍵6020、および、公開鍵の証明書6022を有する。
 ここで、eKeyID6000には、eKey60に対応するeKeyIDが記録される。なお、eKeyIDは、例えばオーナー端末により、eKey60に対して決定されたIDである。また、端末ID6002には、該当のeKey60の発行対象の携帯端末30‐1の端末IDが記録される。また、錠前ID6004には、(該当のeKey60に対応づけられた)利用対象の錠前デバイス10のIDが記録される。また、有効期間6006には、該当のeKey60に対して設定された有効期間が記録される。なお、図7では、有効期間6006として、有効期間が無制限であることを意味する「ALWAYS」が登録されている例を示している。
 また、端末公開鍵6020には、該当のeKey60の発行対象の携帯端末30‐1の公開鍵が格納される。また、公開鍵の証明書6022には、端末公開鍵6020に格納されている公開鍵に対する、例えばeKey60を発行した携帯端末30‐1(つまりオーナー端末)による署名情報が格納される。
 ‐公開鍵認証処理
 また、認証処理部110は、携帯端末30‐1の秘密鍵により生成された情報(以下、レスポンスデータとも称する)が受信された場合に、受信されたレスポンスデータの正当性を携帯端末30‐1の公開鍵、および所定の公開鍵認証アルゴリズムに基づいて検証する。例えば、認証処理部110は、まず、例えば擬似乱数であるチャレンジを生成する。そして、生成されたチャレンジが通信部120により携帯端末30‐1へ送信された後に、レスポンスデータが携帯端末30‐1から受信された場合に、認証処理部110は、受信されたレスポンスデータの正当性を、携帯端末30‐1の公開鍵、元のチャレンジ、および、所定の公開鍵認証アルゴリズムに基づいて検証する。
 (1-2-1-7.通信部120)
 通信部120は、例えばBLEなどのBluetooth、Wi‐Fi、NFCなどに沿った無線通信により、他の装置との間で情報の送受信を行う。例えば、通信部120は、パスコードおよび解錠要求をボタンユニット20から受信する。
 (1-2-1-8.施錠部122)
 施錠部122は、処理制御部108の制御に従って、解錠処理または施錠処理を行う。
 (1-2-1-9.記憶部124)
 記憶部124は、例えば、マスター鍵ファイル128、後述する錠前鍵ファイル126、および、後述する操作ログDB130などの各種のデータや、各種のソフトウェアを記憶することが可能である。
 ‐錠前鍵ファイル126
 錠前鍵ファイル126は、該当の錠前デバイス10固有の認証鍵の情報が格納されるファイルである。例えば、錠前鍵ファイル126には、錠前デバイス10の錠前ID、錠前デバイス10の共通鍵、錠前デバイス10の秘密鍵、および、錠前デバイス10の公開鍵が対応付けて格納される。
 ‐操作ログDB130
 操作ログDB130は、錠前デバイス10に対するユーザの操作ログが格納されるデータベースである。例えば、操作ログDB130では、(錠前デバイス10に対して操作を行った)ボタンユニット20のユニットIDまたは携帯端末30‐1の端末IDと、操作日時と、操作内容とが対応付けて格納される。
 [1-2-2.ボタンユニット20]
 図8は、第1の実施形態によるボタンユニット20の構成を示した機能ブロック図である。図8に示したように、ボタンユニット20は、制御部200、通信部220、入力部222、および記憶部224を有する。
 (1-2-2-1.制御部200)
 制御部200は、ボタンユニット20に内蔵される例えばCPUやRAMなどのハードウェアを用いて、ボタンユニット20の動作を全般的に制御する。また、図8に示したように、制御部200は、送信制御部202を有する。
 (1-2-2-2.送信制御部202)
 送信制御部202は、入力部222に対してユーザにより入力された情報の、他の装置に対する送信を制御する。例えば、送信制御部202は、入力部222に対して入力されたパスコードおよび処理要求を錠前デバイス10へ通信部220に送信させる。
 (1-2-2-3.通信部220)
 通信部220は、例えばBluetooth、Wi‐Fi、NFCなどに沿った無線通信により、他の装置との間で情報の送受信を行う。例えば、通信部220は、送信制御部202の制御により、解錠要求およびパスコードを錠前デバイス10へ送信する。
 (1-2-2-4.入力部222)
 入力部222は、ユーザによる入力を受け付ける。この入力部222は、例えば図3に示したように、テンキー250、解錠ボタン252、および、施錠ボタン254を含む。例えば、解錠ボタン252がユーザにより押下された場合には、入力部222は、解錠要求の入力を受け付ける。
 (1-2-2-5.記憶部224)
 記憶部224は、例えば、後述するように携帯端末30‐1から受信される錠前デバイス10の錠前IDなどを記憶する。
 [1-2-3.携帯端末30‐1]
 図9は、第1の実施形態による携帯端末30‐1の構成を示した機能ブロック図である。図9に示したように、携帯端末30‐1は、制御部300‐1、通信部320、操作表示部322、撮像部324、および記憶部326を有する。
 (1-2-3-1.制御部300‐1)
 制御部300‐1は、携帯端末30‐1に内蔵される、例えばCPUやRAMなどのハードウェアを用いて、携帯端末30‐1の動作を全般的に制御する。また、図9に示したように、制御部300‐1は、マスター鍵生成部302、二次元コード読み取り部304、鍵情報処理部306、パスコード生成部308、表示制御部310、送信制御部312、および認証処理部314を有する。
 (1-2-3-2.マスター鍵生成部302)
 マスター鍵生成部302は、例えば擬似乱数であるマスター鍵を生成する。例えば、マスター鍵生成部302は、鍵共有サービス用アプリケーションがインストールされた際に、マスター鍵を生成する。
 (1-2-3-3.二次元コード読み取り部304)
 二次元コード読み取り部304は、後述する撮像部324により撮影された二次元コードの画像を解析することにより、二次元コードに格納されている情報を取得する。例えば、二次元コード読み取り部304は、特定のユーザに提供されるオーナー登録カードに印刷されている二次元コードが撮像部324により撮影された画像を解析し、そして、二次元コードに格納されているセキュリティコードなどの情報を取得する。
 ここで、特定のユーザは、錠前デバイス10に対して例えば自己の携帯端末30‐1をオーナー端末として登録することが予め許可されたユーザであり、例えば、錠前デバイス10の購入者などである。なお、オーナー登録カードは、例えば、錠前デバイス10と一緒に梱包された状態で特定のユーザ宛てに配送され得る。
 (1-2-3-4.鍵情報処理部306)
 鍵情報処理部306は、マスター鍵生成部302により生成されたマスター鍵を暗号化する。例えば、鍵情報処理部306は、二次元コード読み取り部304により取得されたセキュリティコードおよび所定の暗号アルゴリズムに基づいて、生成されたマスター鍵を暗号化する。ここで、所定の暗号アルゴリズムは、例えば、AESなどの共通鍵暗号アルゴリズムである。
 (1-2-3-5.パスコード生成部308)
 パスコード生成部308は、本開示における第2認証情報生成部の一例である。パスコード生成部308は、マスター鍵生成部302により生成されたマスター鍵に基づいてパスコードを生成する。
 例えば、パスコード生成部308は、まず、マスター鍵生成部302により生成されたマスター鍵と、予め定められた所定の数の種類の有効期間のうちユーザにより指定された種類の有効期間と、所定のハッシュ関数とに基づいてパスコード生成用鍵情報を生成する。そして、パスコード生成部308は、生成したパスコード生成用鍵情報と、ユーザにより入力された期間指定情報と、所定のハッシュ関数とに基づいてパスコードを生成する。
 (1-2-3-6.表示制御部310)
 表示制御部310は、各種の表示情報を、後述する操作表示部322に表示させる。例えば、表示制御部310は、パスコード生成部308により生成されたパスコードを操作表示部322に表示させる。これにより、携帯端末30‐1のユーザは、生成されたパスコードを確認することができる。
 (1-2-3-7.送信制御部312)
 送信制御部312は、各種の情報を他の装置へ通信部320に送信させる。例えば、送信制御部312は、鍵情報処理部306により暗号化されたマスター鍵を錠前デバイス10へ通信部320に送信させる。また、送信制御部312は、例えば操作表示部322に対するユーザの入力に基づいて、パスコード生成部308により生成されたパスコードを例えば電子メールなどにより通信端末50宛てに通信部320に送信させる。また、送信制御部312は、例えば錠前デバイス10からチャレンジが受信された後に、後述する認証処理部314により生成されたレスポンスデータを錠前デバイス10へ通信部320に送信させる。
 (1-2-3-8.認証処理部314)
 認証処理部314は、例えば錠前デバイス10から受信されるチャレンジおよび所定の公開鍵認証アルゴリズムに基づいてレスポンスデータを生成する。例えば、認証処理部314は、受信されたチャレンジ、後述する記憶部326に記憶されている携帯端末30‐1の秘密鍵、および、所定の公開鍵認証アルゴリズムに基づいてレスポンスデータを生成する。なお、所定の公開鍵認証アルゴリズムは、基本的には、錠前デバイス10に実装されている公開鍵認証アルゴリズムと同じ種類のアルゴリズムである。
 (1-2-3-9.通信部320)
 通信部320は、他の装置との間で情報の送受信を行う。例えば、通信部320は、送信制御部312の制御により、暗号化されたマスター鍵を錠前デバイス10へ送信する。
 (1-2-3-10.操作表示部322)
 操作表示部322は、例えばタッチパネル型のディスプレイから構成される。この操作表示部322は、表示制御部310の制御により、各種の表示画面を表示する。また、操作表示部322は、例えば表示画面に表示されている選択ボタンの選択など、ユーザによる各種の入力を受け付ける。
 (1-2-3-11.撮像部324)
 撮像部324は、外部の映像を、レンズを通して例えばCCD(Charge Coupled Device)やCMOS(Complementary Metal Oxide Semiconductor)などの撮像素子に結像させることにより、デジタル画像として記録する。
 (1-2-3-12.記憶部326)
 記憶部326は、例えば、携帯端末30‐1の公開鍵、携帯端末30‐1の秘密鍵、発行されたeKey、および、生成されたマスター鍵などの各種のデータや、鍵共有サービス用アプリケーションなどの各種のソフトウェアを記憶する。
 [1-2-4.サーバ40‐1]
 図10は、第1の実施形態によるサーバ40‐1の構成を示した機能ブロック図である。図10に示したように、サーバ40‐1は、制御部400‐1、通信部420、および記憶部422を有する。
 (1-2-4-1.制御部400‐1)
 制御部400‐1は、サーバ40‐1に内蔵される例えばCPUやRAMなどのハードウェアを用いて、サーバ40‐1の動作を全般的に制御する。
 (1-2-4-2.通信部420)
 通信部420は、例えば通信網32に接続されている他の装置との間で情報の送受信を行う。例えば、通信部420は、携帯端末30‐1により取得された錠前デバイス10の操作ログを携帯端末30‐1から受信する。
 (1-2-4-3.記憶部422)
 記憶部422は、各種のデータやソフトウェアを記憶する。例えば、記憶部422は、個々の錠前デバイス10の錠前IDと、個々の錠前デバイス10のオーナー端末として登録された携帯端末30‐1の端末IDとを対応付けて記憶する。
 <1-3.動作>
 以上、第1の実施形態による構成について説明した。続いて、第1の実施形態による動作について、図11~図25を参照し、以下の流れで説明を行う。
 1.全体の動作の概要
 2.マスター鍵の登録処理
 3.ボタンユニット20のセットアップ処理
 4.パスコード生成処理
 5.解錠処理A
 6.施錠処理
 7.操作ログの要求処理
 8.マスター鍵の更新処理
 [1-3-1.全体の動作の概要]
 図11は、第1の実施形態による全体の動作の概要を示したシーケンス図である。図11に示したように、まず、携帯端末30‐1は、オーナーユーザ2aの操作に基づいて錠前デバイス10へマスター鍵を登録するための、後述する「マスター鍵の登録処理」を行う(S11)。
 その後、携帯端末30‐1は、オーナーユーザ2aの操作に基づいてボタンユニット20の初期設定を行うための、後述する「ボタンユニット20のセットアップ処理」を行う(S13)。
 その後、携帯端末30‐1は、オーナーユーザ2aの操作に基づいてパスコードを生成するための、後述する「パスコード生成処理」を行う(S15)。
 その後、オーナーユーザ2aは、携帯端末30‐1を操作して、例えばS15で生成されたパスコードを含む電子メールを通信端末50宛てに送信したり、該当のパスコードをSNS(Social Networking Service)やホームページなどで公開する。または、オーナーユーザ2aは、電話により該当のパスコードを権限無ユーザ2bに伝達する(S17)。これにより、オーナーユーザ2aは、例えば、(パスコードの提供対象の)権限無ユーザ2bと直接会わなくても、該当のパスコードを権限無ユーザ2bに伝達することができる。
 その後、権限無ユーザ2bは、ボタンユニット20が設置されているドアを訪れる。そして、ボタンユニット20は、権限無ユーザ2bの操作に基づいて錠前デバイス10へ解錠を要求するための、後述する「解錠処理A」を行う(S19)。
 S19の後、権限無ユーザ2bは例えば建物の内見を行い、そして、室外へ出る。その後、ボタンユニット20は、権限無ユーザ2bの操作に基づいて錠前デバイス10へ施錠を要求するための、後述する「施錠処理」を行う(S21)。
 その後、錠前デバイス10の操作ログの確認をオーナーユーザ2aが希望する場合には、オーナーユーザ2aは、携帯端末30‐1を携帯して、錠前デバイス10が設置されているドアを訪れる。そして、携帯端末30‐1は、オーナーユーザ2aの操作に基づいて、錠前デバイス10へ操作ログの提供を要求するための、後述する「操作ログの要求処理」を行う(S23)。
 その後、S11で登録されたマスター鍵の更新をオーナーユーザ2aが希望する場合には、オーナーユーザ2aは、携帯端末30‐1を携帯して、錠前デバイス10が設置されているドアを訪れる。そして、携帯端末30‐1は、オーナーユーザ2aの操作に基づいて、錠前デバイス10に登録されているマスター鍵を更新するための、後述する「マスター鍵の更新処理」を行う(S25)。
 [1-3-2.マスター鍵の登録処理]
 以上、全体の動作の概要について説明した。次に、図12を参照して、S11における「マスター鍵の登録処理」の動作について詳細に説明する。なお、この動作は、オーナー登録カードが提供されたユーザ(つまりオーナーユーザ2a)が、マスター鍵を錠前デバイス10に登録する際の動作である。また、ここでは、セキュリティコードが予め錠前デバイス10に記憶されていることを前提とする。
 図12に示したように、まず、例えば操作表示部322に対するユーザの操作に基づいて、携帯端末30‐1の撮像部324は、オーナー登録カード内に印刷された二次元バーコードを撮影する(S1101)。そして、二次元コード読み取り部304は、撮影された画像を解析することにより、二次元コードに格納されているセキュリティコードなどの各種情報を取得する(S1103)。
 続いて、マスター鍵生成部302は、例えば擬似乱数であるマスター鍵を生成する。そして、マスター鍵生成部302は、生成したマスター鍵を記憶部326に格納する(S1105)。
 続いて、鍵情報処理部306は、S1103で取得されたセキュリティコードおよび所定の共通鍵暗号アルゴリズムに基づいて、生成されたマスター鍵を暗号化する(S1107)。そして、通信部320は、送信制御部312の制御に従って、暗号化されたマスター鍵、および携帯端末30‐1の端末IDを錠前デバイス10へ送信する(S1109)。
 その後、錠前デバイス10の鍵情報処理部102は、記憶部124に記憶されているセキュリティコードおよび所定の共通鍵暗号アルゴリズムに基づいて、S1109で受信された、暗号化されたマスター鍵を復号化する(S1111)。
 そして、鍵情報処理部102は、復号化されたマスター鍵と、S1109で受信された携帯端末30‐1の端末IDとを対応付けてマスター鍵ファイル128に格納する(S1113)。
 [1-3-3.ボタンユニット20のセットアップ処理]
 次に、図13を参照して、(図11に示した)S13における「ボタンユニット20のセットアップ処理」の動作について詳細に説明する。なお、この動作は、オーナーユーザ2aが、携帯端末30‐1を用いて、ボタンユニット20を特定の錠前デバイス10に対応付ける際の動作である。
 図13に示したように、まず、携帯端末30‐1の制御部300‐1は、例えば操作表示部322に対するオーナーユーザ2aの操作に基づいて、鍵共有サービス用アプリケーションを起動する。そして、操作表示部322は、鍵共有サービス用アプリケーションにおける例えば図14に示したようなアカウント画面70を表示する(S1301)。
 なお、このアカウント画面70は、例えば、オーナーユーザ2aにより予め登録されているアカウントの専用のホーム画面である。また、図14に示したように、アカウント画面70は、例えば、錠前デバイスの追加ボタン700、および、戻るボタン702を含む。
 S1301の後、オーナーユーザ2aは、ボタンユニット20を携帯端末30‐1と通信可能な位置(携帯端末30‐1の近辺)に配置し、そして、ボタンユニット20の解錠ボタン252を長押しする。そして、ボタンユニット20の制御部200は、通常モードから登録モードへとボタンユニット20の内部状態を切り替える(S1303)。そして、ボタンユニット20と携帯端末30‐1との間で無線通信が確立する(S1305)。
 その後、例えば図14に示したアカウント画面70において、錠前デバイスの追加ボタン700がオーナーユーザ2aにより選択されると、携帯端末30‐1の操作表示部322は、例えば図15に示したようなデバイス追加画面72を表示する(S1307)。なお、デバイス追加画面72は、例えば、携帯端末30‐1と現在通信可能なボタンユニット20や錠前デバイス10を、携帯端末30‐1の管理対象のデバイスとして追加登録するための画面である。また、図15に示したように、デバイス追加画面72は、例えば、追加デバイスの選択ボタン720、および、戻るボタン722を含む。
 その後、デバイス追加画面72に表示されている一以上の追加デバイスの選択ボタン720のうち、例えば該当のボタンユニット20のユニットIDが表示されている、該当のボタンユニット20に対応する選択ボタン720を、オーナーユーザ2aは選択する。そして、携帯端末30‐1の操作表示部322は、例えば図16に示したようなロック選択画面74を表示する。このロック選択画面74は、デバイス追加画面72において選択されたボタンユニット20に対応付ける錠前デバイス10をオーナーユーザ2aが選択するための画面である。また、図16に示したように、ロック選択画面74は、例えば、錠前デバイス10の選択欄740、および、戻るボタン742を含む。
 このロック選択画面74に表示されている一以上の錠前デバイス10の選択欄740のうちいずれかがオーナーユーザ2aにより選択されると、携帯端末30‐1の制御部300‐1は、選択された錠前デバイス10に該当のボタンユニット20を対応付ける(S1309)。
 そして、通信部320は、送信制御部312の制御に従って、S1309で選択された錠前デバイス10の錠前ID、および携帯端末30‐1の端末IDをボタンユニット20へ送信する(S1311)。
 その後、ボタンユニット20の制御部200は、受信された錠前IDおよび端末IDを対応付けて記憶部224に格納する(S1313)。
 その後、例えばオーナーユーザ2aによる操作がなされないまま所定の時間が経過した場合には、ボタンユニット20の制御部200は、登録モードから通常モードへとボタンユニット20の内部状態を切り替える(S1315)。そして、ボタンユニット20と携帯端末30‐1との間の無線通信が切断される(S1317)。
 その後、オーナーユーザ2aは、S1309で対応付けた錠前デバイス10が設置されているドアまでボタンユニット20を搬送し、そして、ドアの室外側にボタンユニット20を取り付ける(S1319)。
 [1-3-4.パスコード生成処理]
 次に、(図11に示した)S15における「パスコード生成処理」の動作について詳細に説明する。なお、この動作は、オーナーユーザ2aの操作に基づいて、携帯端末30‐1がパスコードを生成する際の動作である。
 (1-3-4-1.UI)
 具体的な動作の説明を行う前に、まず、この「パスコード生成処理」に関連するUI(User Interface)の内容について図17および図18を参照して説明する。まず、オーナーユーザ2aは、携帯端末30‐1の鍵共有サービス用アプリケーションを起動し、そして、例えば、図17に示したようなボタンユニット設定画面76を表示する。このボタンユニット設定画面76は、S13の「ボタンユニット20のセットアップ処理」が完了したボタンユニット20に関する設定を行うための画面である。また、図17に示したように、ボタンユニット設定画面76は、例えば、該当のボタンユニット20の有効設定ボタン760、対応付けられた錠前デバイス10のパスコード確認ボタン762、ボタンユニット20の登録削除ボタン764、および、戻るボタン766を含む。
 このボタンユニット設定画面76においてパスコード確認ボタン762がオーナーユーザ2aにより選択されると、携帯端末30‐1の操作表示部322は、例えば図18に示したようなパスコード確認画面78を表示する。なお、パスコード確認画面78は、パスコードの生成条件をオーナーユーザ2aが設定したり、生成されたパスコードをオーナーユーザ2aが確認するための画面である。また、図18に示したように、パスコード確認画面78は、例えば、パスコードの更新間隔選択ボタン780、パスコード生成の期間指定情報選択ボタン782、指定日時変更ボタン784、パスコード表示欄786、パスコード転送ボタン788、および戻るボタン790を含む。
 ここで、パスコードの更新間隔選択ボタン780は、パスコードの有効期間の種類をオーナーユーザ2aが選択するための選択ボタンである。例えば、更新間隔選択ボタン780aは有効期間を「1日」、更新間隔選択ボタン780bは有効期間を「1時間」、更新間隔選択ボタン780cは有効期間を「1週間」、また、更新間隔選択ボタン780dは有効期間を「永久」にそれぞれ設定するための選択ボタンである。
 また、パスコード生成の期間指定情報選択ボタン782は、パスコードの更新間隔選択ボタン780において選択された、パスコードの有効期間の種類に関する期間指定情報を設定するための選択ボタンである。例えば、期間指定情報選択ボタン782aは、更新間隔選択ボタン780において選択された種類の有効期間の基準日時を現在日時に指定することにより期間指定情報を設定するためのボタンである。例えば、更新間隔選択ボタン780aが選択され、かつ、期間指定情報選択ボタン782aが選択された場合には、期間指定情報は「現在の日付」に設定される。また、更新間隔選択ボタン780cが選択され、かつ、期間指定情報選択ボタン782aが選択された場合には、期間指定情報は「現在の日付が該当する週における所定の曜日の日付」に設定される。
 また、期間指定情報選択ボタン782bは、例えば、指定日時変更ボタン784が選択されることによりオーナーユーザ2aにより指定された指定日時を期間指定情報として設定するための選択ボタンである。例えば、図18では、オーナーユーザ2aにより指定された指定日時が「4月15日 19:00~20:00」である例を示している。
 また、パスコード表示欄786は、後述する「パスコード生成処理」により生成されたパスコードを表示する表示欄である。また、パスコード転送ボタン788は、生成されたパスコードを例えば電子メールにより通信端末50宛てに送信するためのボタンである。
 (1-3-4-2.動作)
 次に、図19を参照して、「パスコード生成処理」の動作について詳細に説明する。図19に示したように、まず、オーナーユーザ2aは、例えば、図18に示したパスコードの更新間隔選択ボタン780において所望の有効期間の種類を選択することにより、生成されるパスコードの有効期間の種類を選択する(S1501)。
 その後、携帯端末30‐1のパスコード生成部308は、S1501で選択された有効期間の種類の番号、および、記憶部326に記憶されているマスター鍵の組を所定のハッシュ関数を用いて変換することによりパスコード生成用鍵情報を生成する(S1503)。
 その後、オーナーユーザ2aは、例えば、図18に示したパスコード生成の期間指定情報選択ボタン782において所望の選択ボタンを選択するなど、期間指定情報を入力する(S1505)。
 その後、携帯端末30‐1のパスコード生成部308は、S1505で入力された期間指定情報、および、S1503で生成されたパスコード生成用鍵情報の組を所定のハッシュ関数を用いて変換することによりパスコードを生成する(S1507)。
 そして、操作表示部322は、表示制御部310の制御に従って、S1507で生成されたパスコードを、例えば図18に示したパスコード表示欄786に表示する(S1509)。
 [1-3-5.解錠処理A]
 次に、図20を参照して、(図11に示した)S19における「解錠処理A」の動作について詳細に説明する。なお、この動作は、S17でパスコードを伝達された権限無ユーザ2bが、ボタンユニット20を操作することにより解錠要求を錠前デバイス10へ送信する際の動作である。
 図20に示したように、まず、権限無ユーザ2bは、S17で伝達されたパスコードをボタンユニット20に対して入力し(S1901)、そして、ボタンユニット20の解錠ボタン252を押下する(S1903)。
 その後、ボタンユニット20の制御部200は、解錠要求、携帯端末30‐1の端末ID、ボタンユニット20のユニットID、および、入力されたパスコードを例えば鍵共有プロトコルに基づいて暗号化する。そして、通信部220は、制御部200の制御に従って、暗号化された情報を錠前デバイス10へ送信する(S1905)。
 その後、錠前デバイス10は、S1905で受信された情報を例えば鍵共有プロトコルに基づいて復号化する。そして、錠前デバイス10は、復号化されたパスコードに関して、後述する「パスコードの検証処理」を行う(S1907)。
 そして、S1907における検証結果が正当ではない場合には(S1909:No)、処理制御部108は、施錠部122に解錠させないことを決定する(S1911)。そして、錠前デバイス10は、当該「解錠処理A」を終了する。
 一方、S1907における検証結果が正当である場合には(S1909:Yes)、処理制御部108は、施錠部122に解錠させる(S1913)。そして、制御部100は、S1905で受信されたユニットIDと、解錠処理Aの結果とを対応付けて操作ログDB130に格納する(S1915)。
 (1-3-5-1.パスコードの検証処理)
 ここで、図21を参照して、S1907における「パスコードの検証処理」の動作について詳細に説明する。図21に示したように、まず、錠前デバイス10のパスコード生成部104は、S1905で受信された端末IDに対応するマスター鍵をマスター鍵ファイル128から抽出する(S2001)。
 続いて、パスコード生成部104は、生成対象のパスコードの種類の番号を示す変数Iに「1」を設定する(S2003)。そして、パスコード生成部104は、予め定められているパスコードの種類の総数をNに設定する(S2005)。
 続いて、パスコード生成部104は、Iの値がN以下であるか否かを判定する(S2007)。IがNよりも大きい場合には(S2007:No)、錠前デバイス10は、後述するS2051の動作を行う。
 一方、IがN以下である場合には(S2007:Yes)、パスコード生成部104は、Iの値と、S2001で抽出されたマスター鍵とを組み合わせた値を所定のハッシュ関数を用いて変換することによりパスコード生成用鍵情報K[I]を生成する(S2009)。
 そして、パスコード生成部104は、I番目のパスコードの種類に応じた現在日時の変換値と、生成されたK[I]とを組み合わせた値を所定のハッシュ関数を用いて変換することによりパスコードP[I]を生成する(S2011)。
 続いて、パスコード生成部104は、Iに「1」を加算する(S2013)。そして、パスコード生成部104は、再びS2007の動作を行う。
 ここで、図22を参照して、S2051以降の動作について説明する。図22に示したように、まず、パスコード検証部106は、Iに「1」を設定する(S2051)。
 続いて、パスコード検証部106は、Iの値がN以下であるか否かを判定する(S2053)。IがNよりも大きい場合には(S2053:No)、パスコード検証部106は、検証結果が「正当ではない」と判定する(S2061)。そして、錠前デバイス10は、当該「パスコードの検証処理」を終了する。
 一方、IがN以下である場合には(S2053:Yes)、パスコード検証部106は、次に、S1905で受信されたパスコードと、S2011で生成されたP[I]とが一致するか否かを判定する(S2055)。受信されたパスコードとP[I]とが一致する場合には(S2055:Yes)、パスコード検証部106は、検証結果が「正当」と判定する(S2059)。そして、錠前デバイス10は、当該「パスコードの検証処理」を終了する。
 一方、受信されたパスコードとP[I]とが一致しない場合には(S2055:No)、パスコード検証部106は、Iに「1」を加算する(S2057)。そして、パスコード検証部106は、再びS2053の動作を行う。
 [1-3-6.施錠処理]
 次に、図23を参照して、(図11に示した)S21における「施錠処理」の動作について詳細に説明する。なお、この動作は、S19でドアが解錠され、そして、権限無ユーザ2bが建物の内見を行った後に、権限無ユーザ2bが、ボタンユニット20を操作することにより施錠要求を錠前デバイス10へ送信する際の動作である。
 図23に示したように、まず、権限無ユーザ2bは、ボタンユニット20の施錠ボタン254を押下する(S2101)。そして、ボタンユニット20は、施錠要求、および、ボタンユニット20のユニットIDを錠前デバイス10へ送信する(S2103)。
 その後、錠前デバイス10の処理制御部108は、受信された施錠要求に基づいて、施錠部122に施錠させる(S2105)。そして、制御部100は、S2103で受信されたユニットID、および施錠処理の結果を対応付けて操作ログDB130に格納する(S2107)。
 (1-3-6-1.変形例)
 なお、当該「施錠処理」の変形例として、錠前デバイス10がボタンユニット20から施錠要求を受信しない場合(つまりS2101~S2103の動作が行われない場合)であっても、錠前デバイス10は、例えばオートロック機能により自動的に施錠部122に施錠させてもよい。例えば、S2105の変形例として、建物のドアが権限無ユーザ2bにより閉められる度に、錠前デバイス10(の処理制御部108)は、自動的に施錠部122に施錠させてもよい。
 [1-3-7.操作ログの要求処理]
 次に、図24を参照して、(図11に示した)S23における「操作ログの要求処理」の動作について詳細に説明する。なお、この動作は、オーナーユーザ2aが所望のタイミングに、携帯端末30‐1を携帯して錠前デバイス10が設置されているドアを訪れ、そして、錠前デバイス10に格納されている操作ログを取得する際の動作である。
 図24に示したように、まず、携帯端末30‐1の送信制御部312は、例えば操作表示部322に対するオーナーユーザ2aの入力に基づいて、操作ログの提供要求と、記憶部326に記憶されているeKeyとを錠前デバイス10へ通信部320に送信させる(S2301)。
 その後、錠前デバイス10の認証処理部110は、S2301で受信されたeKeyの例えば有効期間を確認することなどによりeKeyの正当性を検証する。
 続いて、認証処理部110は、S2301で受信されたeKeyに含まれる公開鍵の証明書を、記憶部124に記憶されているオーナー端末の公開鍵を用いて復号化する。そして、認証処理部110は、復号化された結果に基づいて、S2301で受信されたeKeyに含まれる携帯端末30‐1の公開鍵の正当性を検証する(S2303)。そして、eKeyまたは携帯端末30‐1の公開鍵のうちいずれか一以上が正当ではないと判定された場合には(S2305:No)、錠前デバイス10は、後述するS2311の動作を行う。
 一方、eKeyおよび携帯端末30‐1の公開鍵がともに正当であると判定された場合には(S2305:Yes)、次に、認証処理部110は、携帯端末30‐1の公開鍵および所定の公開鍵認証アルゴリズムを用いたチャレンジ/レスポンス認証を携帯端末30‐1との間で行う(S2307)。認証結果が正当ではない場合には(S2309:No)、認証処理部110は、操作ログの提供を許可しない(S2311)。そして、錠前デバイス10は、当該「操作ログの要求処理」を終了する。
 一方、認証結果が正当である場合には(S2309:Yes)、認証処理部110は、操作ログの提供を許可する(S2313)。そして、処理制御部108は、操作ログDB130に格納されている操作ログを抽出し、そして、抽出した操作ログを携帯端末30‐1へ通信部120に送信させる(S2315)。
 その後、携帯端末30‐1の送信制御部312は、S2315で受信された操作ログと、該当の錠前デバイス10の錠前IDとを(自動的に)サーバ40‐1へ通信部320に送信させる。その後、サーバ40‐1の制御部400‐1は、受信された錠前IDと操作ログとを対応付けて記憶部422に格納する(S2317)。
 [1-3-8.マスター鍵の更新処理]
 次に、図25を参照して、(図11に示した)S25における「マスター鍵の更新処理」の動作について詳細に説明する。なお、この動作は、S11で登録されたマスター鍵の更新をオーナーユーザ2aが希望する場合に、オーナーユーザ2aが携帯端末30‐1を携帯して錠前デバイス10が設置されているドアを訪れ、そして、錠前デバイス10に記憶されているマスター鍵を更新する際の動作である。
 図25に示したように、まず、オーナーユーザ2aは、携帯端末30‐1の操作表示部322に対してマスター鍵の更新要求を入力する(S2501)。そして、携帯端末30‐1のマスター鍵生成部302は、例えば擬似乱数である、新たなマスター鍵を生成する(S2503)。
 続いて、鍵情報処理部306は、記憶部326に記憶されている現在のマスター鍵および所定の共通鍵暗号アルゴリズムに基づいて、S2503で生成されたマスター鍵を暗号化する(S2505)。そして、通信部320は、送信制御部312の制御に従って、S2505で暗号化された新たなマスター鍵、および携帯端末30‐1の端末IDを錠前デバイス10へ送信する(S2507)。
 その後、錠前デバイス10の鍵情報処理部102は、マスター鍵ファイル128に格納されているマスター鍵および所定の共通鍵暗号アルゴリズムに基づいて、S2507で受信された、暗号化された新たなマスター鍵を復号化する(S2509)。
 そして、鍵情報処理部102は、S2507で受信された携帯端末30‐1の端末IDに対応付けてマスター鍵ファイル128に格納されている現在のマスター鍵を、S2509で復号化された新たなマスター鍵に置き換えることにより更新する(S2511)。
 <1-4.効果>
 [1-4-1.効果1]
 以上、例えば図4、図11~図25などを参照して説明したように、第1の実施形態による錠前デバイス10は、パスコードおよび解錠要求をボタンユニット20から受信し、携帯端末30‐1に対応付けられたマスター鍵に基づいてパスコードを生成し、そして、受信されたパスコードと生成されたパスコードとの比較に基づいて、解錠処理を実行する。このため、錠前デバイス10は、認証用のパスコードを記憶せずに認証を行うことができる。従って、仮に錠前デバイス10が不正にアクセスされたとしても、認証の安全性が低下する恐れが小さい。
 [1-4-2.効果2]
 また、錠前デバイス10は、ボタンユニット20からパスコードが受信された場合に、携帯端末30‐1によるパスコードの生成ロジックと概ね同じロジックでパスコードを生成し、そして、生成したパスコードと、受信されたパスコードとを比較する。このため、第1の実施形態によれば、錠前デバイス10が認証用のパスコードを記憶していなくても、正確な認証を行うことができる。
 [1-4-3.効果3]
 また、錠前デバイス10は、まず、有効期間の種類ごとにパスコード生成用鍵情報を生成し、そして、有効期間の種類ごとに、生成したパスコード生成用鍵情報に基づいてパスコードを(有効期間の種類の数だけ)生成する。このように、錠前デバイス10は、パスコードを生成するためのパスコード生成用鍵情報を有効期間の種類ごとに区別するので、生成されるパスコード列のパターンが有効期間の種類によって大きく異なる。このため、例えば異なる種類の有効期間に対して同一の鍵情報を使用する方法と比較すると、錠前デバイス10は、受信されたパスコードの正当性をより精度高く検証することができる。
 [1-4-4.効果4]
 また、携帯端末30‐1は、オーナーユーザ2aにより指定された期間内のみ有効なパスコードを生成する。このため、発行されたパスコードは有効期間以外では無効になるので、オーナーユーザ2aが意図しない日時にドアが解錠されることを防止できる。
 [1-4-5.効果5]
 また、第1の実施形態によれば、権限無ユーザ2b(つまり、eKeyが発行された携帯端末30‐2および物理鍵を有していないユーザ)であっても、事前にパスコードをオーナーユーザ2aから伝達されることにより、ボタンユニット20を用いて、ドアを容易に解錠することができる。
 また、オーナーユーザ2aは、権限無ユーザ2bに物理鍵を渡すことなく、権限無ユーザ2bに例えば不動産を内見させることが可能となる。従って、悪意のある権限無ユーザ2bにより物理鍵が複製されることを防止することができる。
 [1-4-6.効果6]
 また、第1の実施形態によれば、ボタンユニット20と錠前デバイス10との間では、パスコードのみで認証を行うので、ボタンユニット20は、テンキー250および解錠ボタン252を含んでいればよい。このため、ボタンユニット20は、簡素かつ安価に構成することが可能である。
 [1-4-7.効果7]
 また、錠前デバイス10は、セキュリティコードに基づいて携帯端末30‐1との間でマスター鍵の共有を行うことにより、オーナーユーザ2a(錠前デバイス10の正当な所有者)以外のユーザが使用する携帯端末30‐1bとの間でマスター鍵の共有が行われることを防ぐ効果がある。仮にオーナーユーザ2a以外の不正なユーザが使用する携帯端末30‐1bでも錠前デバイス10との間でマスター鍵の共有ができてしまうと、当該不正なユーザにより勝手にパスコードを発行される恐れがある。従って、第1の実施形態のように、マスター鍵の共有を行う権限を制限することはセキュリティの観点から重要である。
 <1-5.変形例>
 なお、第1の実施形態は、上述した説明に限定されない。上記の説明では、錠前デバイス10および携帯端末30‐1は、パスコード生成用鍵情報を生成し、そして、生成したパスコード生成用鍵情報に基づいてパスコードを生成する例について説明した。
 後述する変形例によれば、錠前デバイス10および携帯端末30‐1は、パスコード生成用鍵情報を生成する代わりに、パスコードのリセット回数を示すリセットカウンタに基づいてパスコードを生成することが可能である。
 [1-5-1.構成]
 まず、本変形例による構成について詳細に説明する。なお、上記の説明と重複する内容については説明を省略する。
 (1-5-1-1.錠前デバイス10)
 ‐鍵情報処理部102
 本変形例による鍵情報処理部102は、携帯端末30‐1から受信されるリセットカウンタ、および記憶部124に記憶されているセキュリティコードに基づいてマスター鍵を生成する。なお、鍵情報処理部102は、生成したマスター鍵をマスター鍵ファイル128に格納する。
 また、本変形例による鍵情報処理部102は、携帯端末30‐1から受信されるリセットカウンタ、および、記憶部124に記憶されているセキュリティコードに基づいてマスター鍵を更新する。例えば、新たなリセットカウンタが携帯端末30‐1から受信された場合には、鍵情報処理部102は、受信されたリセットカウンタ、および記憶部124に記憶されているセキュリティコードに基づいて新たなマスター鍵を生成する。そして、鍵情報処理部102は、マスター鍵ファイル128に格納されている現在のマスター鍵を、生成した新たなマスター鍵に置き換えることにより更新する。
 ‐パスコード生成部104
 本変形例によるパスコード生成部104は、鍵情報処理部102により生成されたマスター鍵に基づいて所定の数のパスコードを生成する。例えば、パスコード生成部104は、生成されたマスター鍵と、現在日時を基準とした所定の数の種類の有効期間の各々と、所定のハッシュ関数とに基づいてパスコードを(有効期間の種類の数だけ)生成する。
 ここで、図26を参照して、上記の機能についてより詳細に説明する。なお、図26では、有効期間として「永久」、「一週間」、「一日」、および「一時間」の4種類が予め定められている例を示している。図26に示した例では、パスコード生成部104は、まず、各有効期間に関して、当該有効期間の種類に応じた現在日時の変換値とマスター鍵とを組み合わせた値をそれぞれSHAを用いて変換する。例えば、有効期間が「永久」である場合には、パスコード生成部104は、「0」とマスター鍵とを組み合わせた値をSHAを用いて変換する。同様に、有効期間が「一週間」である場合には「現在の日付が該当する週における所定の曜日の日付」とマスター鍵とを組み合わせた値を、有効期間が「一日」である場合には「現在の日付」とマスター鍵とを組み合わせた値を、有効期間が「一時間」である場合には「現在の日付および時間帯」とマスター鍵とを組み合わせた値を、パスコード生成部104はそれぞれSHAを用いて変換する。
 そして、パスコード生成部104は、変換された4個の値がパスコードの桁数の値に変換されるようにそれぞれmodを適用し、そして、4個のパスコード(EP、WP、DP、およびHP)を生成する。
 なお、錠前デバイス10に含まれるその他の構成要素は、上記の説明と同様である。
 (1-5-1-2.携帯端末30‐1)
 ‐マスター鍵生成部302
 また、本変形例によるマスター鍵生成部302は、記憶部326に記憶されているリセットカウンタ、および、二次元コード読み取り部304により取得されたセキュリティコードに基づいてマスター鍵を生成する。
 図27は、本変形例によるパスコード確認画面の表示例(パスコード確認画面78b)を示した説明図である。図27に示したように、パスコード確認画面78bは、図18に示したパスコード確認画面78aと比較して、さらに、パスコードリセットボタン792を含む。このパスコードリセットボタン792がオーナーユーザ2aにより選択されると、制御部300‐1は、リセットカウンタの値を例えば「1」など所定の数だけカウントアップする。そして、制御部300‐1は、記憶部326に記憶されているリセットカウンタをカウントアップ後の値に更新する。なお、リセットカウンタの値が更新される度に、マスター鍵生成部302は、カウントアップ後のリセットカウンタ、および、セキュリティコードに基づいて新たなマスター鍵を生成する。
 ‐パスコード生成部308
 また、本変形例によるパスコード生成部308は、マスター鍵生成部302により生成されたマスター鍵と、所定の数の種類の有効期間のうちユーザにより指定された種類の有効期間とに基づいてパスコードを生成する。例えば、ユーザにより特定の日時が指定された場合には、パスコード生成部308は、マスター鍵と、指定された日時とを組み合わせた値を所定のハッシュ関数を用いて変換することにより、パスコードを生成する。また、ユーザにより特定の日時が指定されていない場合には、パスコード生成部308は、ユーザにより指定された有効期間の種類に応じた現在日時の変換値とマスター鍵とを組み合わせた値を所定のハッシュ関数を用いて変換することにより、パスコードを生成する。
 なお、携帯端末30‐1に含まれるその他の構成要素については、上記の説明と同様である。また、ボタンユニット20およびサーバ40‐1の構成については、上記の説明と同様である。
 [1-5-2.動作]
 次に、本変形例による動作について、図28~図32を参照し、以下の流れで説明を行う。なお、その他の種類の動作については、上記の説明と同様であるので、説明を省略する。
 1.マスター鍵の登録処理
 2.パスコード生成処理
 3.パスコードの検証処理
 4.リセットカウンタの更新処理
 (1-5-2-1.マスター鍵の登録処理)
 まず、本変形例による「マスター鍵の登録処理」の動作について、図28~図29を参照して説明する。なお、この動作は、図12に示したS11の動作の代わりに実行される動作である。
 なお、図28に示したS3101~S3103の動作は、図12に示したS1101~S1103と同様である。
 S3103の後、携帯端末30‐1の制御部300‐1は、初期値が「0」に設定されたリセットカウンタを生成する。そして、制御部300‐1は、生成したリセットカウンタを記憶部326に格納する(S3105)。
 続いて、マスター鍵生成部302は、S3103で取得されたセキュリティコード、および、S3105で生成されたリセットカウンタに基づいてマスター鍵を生成する。そして、マスター鍵生成部302は、生成したマスター鍵を記憶部326に格納する(S3107)。
 続いて、鍵情報処理部306は、セキュリティコードおよび所定の共通鍵暗号アルゴリズムに基づいて、S3105で生成されたリセットカウンタを暗号化する(S3109)。
 そして、通信部320は、送信制御部312の制御に従って、S3109で暗号化されたリセットカウンタ、および携帯端末30‐1の端末IDを錠前デバイス10へ送信する(S3111)。
 ここで、図29を参照して、S3111より後の動作について説明する。図29に示したように、S3111の後、錠前デバイス10の鍵情報処理部102は、記憶部326に記憶されているセキュリティコードおよび所定の共通鍵暗号アルゴリズムに基づいて、S3111で受信された、暗号化されたリセットカウンタを復号化する(S3121)。
 続いて、鍵情報処理部102は、S3111で受信されたリセットカウンタ、および記憶部124に記憶されているセキュリティコードに基づいてマスター鍵を生成する(S3123)。
 そして、鍵情報処理部102は、生成したマスター鍵と、S3111で受信された端末IDとを対応付けてマスター鍵ファイル128に格納する(S3125)。
 (1-5-2-2.パスコード生成処理)
 次に、本変形例による「パスコード生成処理」の動作について、図30を参照して説明する。なお、この動作は、図19に示したS15の動作の代わりに実行される動作である。
 なお、図30に示したS3301の動作は、図19に示したS1501と同様である。また、図30に示したS3303の動作は、図19に示したS1505と同様である。
 S3303の後、携帯端末30‐1のパスコード生成部308は、S3301で選択された有効期間の種類の番号とS3303で入力された期間指定情報とに基づいた期間情報、および、記憶部326に記憶されているマスター鍵の組を所定のハッシュ関数を用いて変換することによりパスコードを生成する(S3305)。
 なお、図30に示したS3307の動作は、図19に示したS1509と同様である。
 (1-5-2-3.パスコードの検証処理)
 次に、本変形例による「パスコードの検証処理」の動作について、図31を参照して説明する。なお、この動作は、図21に示したS1907の動作の代わりに実行される動作である。
 なお、図31に示したS3501~S3505の動作は、図21に示したS2001~S2005と同様である。
 S3505の後、パスコード生成部104は、Iの値がN以下であるか否かを判定する(S3507)。IがNよりも大きい場合には(S3507:No)、錠前デバイス10は、図22に示した動作(S2051~S2061)と同様の動作を行う。
 一方、IがN以下である場合には(S3507:Yes)、パスコード生成部104は、I番目のパスコードの種類に応じた現在日時の変換値と、S3501で抽出されたマスター鍵とを組み合わせた値を所定のハッシュ関数を用いて変換することにより、パスコードP[I]を生成する(S3509)。
 続いて、パスコード生成部104は、Iに「1」を加算する(S3511)。そして、パスコード生成部104は、再びS3507の動作を行う。
 (1-5-2-4.リセットカウンタの更新処理)
 次に、本変形例による「リセットカウンタの更新処理」の動作について、図32を参照して説明する。なお、この動作は、発行済みのパスコードのリセットをオーナーユーザ2aが希望する場合に、オーナーユーザ2aが、携帯端末30‐1に対する入力に基づいて、リセットカウンタの値を更新する際の動作である。
 図32に示したように、まず、オーナーユーザ2aは、携帯端末30‐1の操作表示部322に表示される、例えば図27に示したパスコード確認画面78bにおいてパスコードリセットボタン792を選択するなど、パスコードのリセットの入力を行う(S3701)。
 そして、携帯端末30‐1の制御部300‐1は、記憶部326に記憶されているリセットカウンタを抽出し、そして、リセットカウンタの値を例えば「1」など所定の数だけカウントアップする。そして、制御部300‐1は、記憶部326に記憶されているリセットカウンタを、カウントアップ後のリセットカウンタに更新する(S3703)。
 続いて、マスター鍵生成部302は、カウントアップ後のリセットカウンタ、および、記憶部326に記憶されているセキュリティコードに基づいて、新たなマスター鍵を生成する。そして、マスター鍵生成部302は、記憶部326に記憶されている現在のマスター鍵を、生成した新たなマスター鍵に置き換えることにより更新する(S3705)。
 続いて、鍵情報処理部306は、記憶部326に記憶されているセキュリティコードおよび所定の共通鍵暗号アルゴリズムに基づいて、S3703でカウントアップされたリセットカウンタを暗号化する(S3707)。そして、通信部320は、送信制御部312の制御に従って、S3707で暗号化されたリセットカウンタ、および携帯端末30‐1の端末IDを送信する(S3709)。
 その後、錠前デバイス10の鍵情報処理部102は、記憶部124に記憶されているセキュリティコードおよび所定の共通鍵暗号アルゴリズムに基づいて、S3709で受信された、暗号化されたリセットカウンタを復号化する(S3711)。この際、鍵情報処理部102は、復号化した値が正当であるか否かを検証することも可能である。例えば、鍵情報処理部102は、記憶部124に記憶されている現在のリセットカウンタの値に所定の値だけカウントアップされた値と、復号化した値とが一致するか否かを検証する。
 続いて、鍵情報処理部102は、記憶部124に記憶されているセキュリティコード、および、復号化されたリセットカウンタに基づいて、新たなマスター鍵を生成する(S3713)。
 その後、鍵情報処理部102は、S3709で受信された携帯端末30‐1の端末IDに対応付けてマスター鍵ファイル128に格納されている現在のマスター鍵を、S3713で生成された新たなマスター鍵に置き換えることにより更新する(S3715)。
 ‐変形例
 なお、本変形例による「リセットカウンタの更新処理」は、上述した動作に限定されない。例えば、S3707~S3711の変形例として、まず、携帯端末30‐1は、リセットカウンタを暗号化せずに、リセットカウンタを錠前デバイス10へ送信してもよい。そして、錠前デバイス10は、MAC(Message Authentication Code)に基づいて、携帯端末30‐1から受信されたリセットカウンタの正当性を検証してもよい。例えば、錠前デバイス10は、携帯端末30‐1から受信されたリセットカウンタが改竄されていないかをMACに基づいて検証する。
<<2.第2の実施形態>>
 以上、第1の実施形態について説明した。上述したように、第1の実施形態では、携帯端末30‐1に実装された鍵共有サービス用アプリケーションにおけるオーナーユーザ2aの入力に基づいて、携帯端末30‐1がパスコードを生成および発行する。
 続いて、第2の実施形態について説明する。後述するように、第2の実施形態によれば、携帯端末30‐2においてオーナーユーザ2aにより指定されるパスコードの生成条件に基づいて、サーバ40‐2がパスコードを生成することが可能である。また、パスコードの提供要求をサーバ40‐2が通信端末50から受信した場合に、サーバ40‐2は、生成したパスコードを通信端末50に表示させることが可能である。
 <2-1.システム構成>
 第2の実施形態による情報処理システムは、(図2に示した)第1の実施形態と比較して、携帯端末30‐1およびサーバ40‐1の代わりに、携帯端末30‐2およびサーバ40‐2を有する。なお、その他の構成要素については、第1の実施形態と同様である。
 <2-2.構成>
 続いて、第2の実施形態による構成について詳細に説明する。なお、以下では、第1の実施形態と重複する内容については説明を省略する。
 [2-2-1.携帯端末30‐2]
 図33は、第2の実施形態による携帯端末30‐2の構成を示した機能ブロック図である。図33に示したように、携帯端末30‐2は、図9に示した携帯端末30‐1と比較して、制御部300‐1の代わりに、制御部300‐2を有する。また、制御部300‐2は、制御部300‐1と比較して、パスコード生成部308を有しない。
 なお、携帯端末30‐2に含まれるその他の構成要素については、第1の実施形態と同様である。
 [2-2-2.サーバ40‐2]
 図34は、第2の実施形態によるサーバ40‐2の構成を示した機能ブロック図である。図34に示したように、サーバ40‐2は、図10に示したサーバ40‐1と比較して、制御部400‐1の代わりに、制御部400‐2を有する。
 (2-2-2-1.制御部400‐2)
 制御部400‐2は、制御部400‐1と比較して、鍵情報処理部402、パスコード生成部404、および送信制御部406をさらに有する。
 (2-2-2-2.鍵情報処理部402)
 鍵情報処理部402は、携帯端末30‐2から受信される情報に基づいてマスター鍵を取得する。例えば、鍵情報処理部402は、例えば鍵共有プロトコルに基づいて暗号化されたマスター鍵を復号化することにより、マスター鍵を取得する。なお、鍵情報処理部402は、復号化したマスター鍵を記憶部422に格納する。
 (2-2-2-3.パスコード生成部404)
 パスコード生成部404は、本開示における第2認証情報生成部の一例である。パスコード生成部404は、鍵情報処理部402により復号化されたマスター鍵に基づいてパスコードを生成する。
 例えば、パスコード生成部404は、まず、鍵情報処理部402により復号化されたマスター鍵と、予め定められた所定の数の種類の有効期間のうち、携帯端末30‐2から受信される例えばオーナーユーザ2aにより指定された種類の有効期間と、所定のハッシュ関数とに基づいてパスコード生成用鍵情報を生成する。そして、パスコード生成部404は、生成したパスコード生成用鍵情報と、携帯端末30‐2から受信される例えばオーナーユーザ2aにより指定された期間指定情報と、所定のハッシュ関数とに基づいてパスコードを生成する。
 (2-2-2-4.送信制御部406)
 送信制御部406は、本開示における表示制御部の一例である。送信制御部406は、例えばパスコードの提供要求が通信端末50から受信された場合に、パスコード生成部404により生成されたパスコードを通信端末50へ通信部420に送信させる。
 なお、サーバ40‐2に含まれるその他の構成要素については、第1の実施形態と同様である。また、錠前デバイス10およびボタンユニット20の構成については、第1の実施形態と同様である。
 <2-3.動作>
 以上、第2の実施形態による構成について説明した。続いて、第2の実施形態による動作について、図35~図39を参照し、以下の流れで説明を行う。なお、その他の種類の動作については、第1の実施形態と同様であるので、説明を省略する。
 1.全体の動作の概要
 2.マスター鍵の登録処理
 3.パスコード生成処理
 4.パスコード提供処理
 5.マスター鍵の更新処理
 [2-3-1.全体の動作の概要]
 図35は、第2の実施形態による全体の動作の概要を示したシーケンス図である。図35に示したように、まず、携帯端末30‐2は、オーナーユーザ2aの操作に基づいて錠前デバイス10およびサーバ40‐2へマスター鍵を登録するための、後述する「マスター鍵の登録処理」を行う(S41)。
 その後、携帯端末30‐2は、第1の実施形態におけるS13と概略同様な「ボタンユニット20のセットアップ処理」を行う(S43)。
 その後、オーナーユーザ2aによる入力に基づいた、パスコードの発行要求が携帯端末30‐2から受信された場合に、サーバ40‐2は、後述する「パスコード生成処理」を行う(S45)。
 その後、オーナーユーザ2aによる入力に基づいた、パスコードの提供要求が通信端末50から受信された場合に、サーバ40‐2は、後述する「パスコード提供処理」を行う(S47)。
 その後、ボタンユニット20は、権限無ユーザ2bの操作に基づいて、第1の実施形態におけるS19と概略同様な「解錠処理A」を行う(S49)。
 その後、ボタンユニット20は、権限無ユーザ2bの操作に基づいて、第1の実施形態におけるS21と概略同様な「施錠処理」を行う(S51)。
 その後、携帯端末30‐2は、オーナーユーザ2aの操作に基づいて、第1の実施形態におけるS23と概略同様な「操作ログの要求処理」を行う(S53)。
 その後、S41で登録されたマスター鍵の更新をオーナーユーザ2aが希望する場合には、オーナーユーザ2aは、携帯端末30‐2を携帯して、錠前デバイス10が設置されているドアを訪れる。そして、携帯端末30‐2は、オーナーユーザ2aの操作に基づいて、錠前デバイス10に登録されているマスター鍵を更新するための、後述する「マスター鍵の更新処理」を行う(S55)。
 [2-3-2.マスター鍵の登録処理]
 以上、第2の実施形態による全体の動作の概要について説明した。次に、図36を参照して、S41における「マスター鍵の登録処理」の動作について詳細に説明する。なお、この動作は、図12に示した、第1の実施形態によるS11の動作の代わりに実行される動作である。
 なお、図36に示したS4101~S4113の動作は、第1の実施形態によるS1101~S1113と同様である。
 図36に示したように、S4109の後、携帯端末30‐2の鍵情報処理部306は、S4105で生成されたマスター鍵、および携帯端末30‐2の端末IDを例えば鍵共有プロトコルに基づいて暗号化する。そして、通信部320は、送信制御部312の制御に従って、暗号化されたマスター鍵および携帯端末30‐2の端末IDをサーバ40‐2へ送信する(S4115)。
 その後、サーバ40‐2の鍵情報処理部402は、受信された情報を例えば鍵共有プロトコルに基づいて復号化する。そして、鍵情報処理部402は、復号化したマスター鍵および携帯端末30‐2の端末IDを対応付けて記憶部422に格納する(S4117)。
 [2-3-3.パスコード生成処理]
 次に、図37を参照して、S45における「パスコード生成処理」の動作について詳細に説明する。なお、この動作は、サーバ40‐2が、携帯端末30‐2に対してオーナーユーザ2aにより入力された生成条件を携帯端末30‐2から受信することにより、パスコードを生成する際の動作である。
 図37に示したように、まず、携帯端末30‐2は、オーナーユーザ2aによる入力に基づいて、サーバ40‐2が提供する例えばパスコード発行用のwebサイトにログインする(S4501)。そして、携帯端末30‐2は、パスコードの生成条件設定画面をサーバ40‐2から受信する。なお、この生成条件設定画面は、例えば、図18に示したパスコード確認画面78に類似した画面であってもよい。
 その後、オーナーユーザ2aは、この生成条件設定画面において、生成するパスコードの有効期間の種類を選択する(S4503)。さらに、オーナーユーザ2aは、生成条件設定画面において、パスコードの期間指定情報を入力する(S4505)。
 そして、携帯端末30‐2の通信部320は、送信制御部312の制御に従って、S4503で選択された有効期間の種類、および、S4505で入力された期間指定情報をサーバ40‐2へ送信する(S4507)。
 その後、サーバ40‐2のパスコード生成部404は、S4507で受信された有効期間の種類の番号、および、記憶部422に記憶されているマスター鍵の組を所定のハッシュ関数を用いて変換することによりパスコード生成用鍵情報を生成する(S4509)。
 続いて、パスコード生成部404は、S4507で受信された期間指定情報、および、S4509で生成されたパスコード生成用鍵情報の組を所定のハッシュ関数を用いて変換することによりパスコードを生成する(S4511)。
 [2-3-4.パスコード提供処理]
 次に、図38を参照して、S47における「パスコード提供処理」の動作について詳細に説明する。なお、この動作は、権限無ユーザ2bがパスコードの提供要求を通信端末50に対して入力した場合に、サーバ40‐2が、生成済みのパスコードを通信端末50へ送信する際の動作である。
 図38に示したように、まず、通信端末50は、権限無ユーザ2bによる入力に基づいて、サーバ40‐2が提供する例えばパスコード確認用のwebサイトにログインする(S4701)。
 その後、権限無ユーザ2bは、パスコードの提供要求を通信端末50に対して入力する(S4703)。そして、通信端末50は、入力されたパスコードの提供要求をサーバ40‐2へ送信する(S4705)。
 その後、サーバ40‐2の通信部420は、送信制御部406の制御に従って、S45で生成されたパスコードを通信端末50へ送信する(S4707)。
 その後、通信端末50は、受信されたパスコードを表示画面に表示する(S4709)。これにより、権限無ユーザ2bは、S45で生成されたパスコードを確認することができる。
 [2-3-5.マスター鍵の更新処理]
 次に、図39を参照して、S55における「マスター鍵の更新処理」の動作について詳細に説明する。なお、この動作は、(図25に示した)第1の実施形態によるS25の動作の代わりに実行される動作である。
 なお、図39に示したS5501~S5511の動作は、(図25に示した)第1の実施形態によるS2501~S2511と同様である。
 S5507の後、携帯端末30‐2の鍵情報処理部306は、S5503で生成されたマスター鍵および携帯端末30‐2の端末IDを例えば鍵共有プロトコルに基づいて暗号化する。そして、通信部320は、送信制御部312の制御に従って、暗号化されたマスター鍵および携帯端末30‐2の端末IDをサーバ40‐2へ送信する(S5513)。
 その後、サーバ40‐2の鍵情報処理部402は、S5513で受信された情報を例えば鍵共有プロトコルに基づいて復号化する。そして、鍵情報処理部402は、受信された携帯端末30‐2の端末IDに対応付けて記憶部422に記憶されている現在のマスター鍵を、復号化された新たなマスター鍵に置き換えることにより更新する(S5515)。
 <2-4.効果>
 [2-4-1.効果1]
 以上、例えば図34~図39などを参照して説明したように、第2の実施形態によるサーバ40‐2は、携帯端末30‐2から受信されたマスター鍵と、携帯端末30‐2から受信された有効期間の種類とに基づいてパスコード生成用鍵情報を生成し、そして、生成したパスコード生成用鍵情報と、携帯端末30‐2から受信された期間指定情報とに基づいてパスコードを生成する。そして、パスコードの提供要求が通信端末50から受信された場合に、サーバ40‐2は、生成したパスコードを通信端末50へ送信する。
 このため、第2の実施形態によれば、携帯端末30‐2の代わりに、サーバ40‐2がパスコードを生成することができ、また、生成したパスコードを権限無ユーザ2bに提供することができる。
 [2-4-2.効果2]
 また、第2の実施形態の他の構成に関しては第1の実施形態と概略同様であるので、第1の実施形態の効果と概略同様な効果が得られる。
 <2-5.変形例>
 なお、第2の実施形態は、上述した説明に限定されない。例えば、1-5節で説明した第1の実施形態の変形例は、第2の実施形態にも適用可能である。すなわち、第2の実施形態の変形例では、サーバ40‐2(および錠前デバイス10)は、パスコード生成用鍵情報を生成する代わりに、セキュリティコードおよびリセットカウンタに基づいてパスコードを生成することが可能である。なお、具体的な処理内容に関しては、1-5節で説明した内容と概略同様であるので、説明を省略する。
<<3.第3の実施形態>>
 以上、第2の実施形態について説明した。上述したように、第1の実施形態および第2の実施形態では、ボタンユニット20と錠前デバイス10とを予め対応付けておく必要がある。
 ところで、例えば図40に示したように、複数の部屋の各々に錠前デバイス10およびボタンユニット20が設置される場面も想定される。このような場合、図13~図16を参照して説明したような、錠前デバイス10との対応付けをボタンユニット20ごとに行う必要があるので、手間が大きい。
 続いて、第3の実施形態について説明する。後述するように、第3の実施形態によれば、ボタンユニット20を予め錠前デバイス10に対応付けておかなくても、ボタンユニット20に対する操作だけで錠前デバイス10に解錠させることが可能である。
 <3-1.システム構成>
 第3の実施形態による情報処理システムの構成は、(図2に示した)第1の実施形態と概略同様である。
 <3-2.構成>
 続いて、第3の実施形態による構成について詳細に説明する。なお、以下では、第1の実施形態と重複する内容については説明を省略する。
 [3-2-1.ボタンユニット20]
 第3の実施形態によるボタンユニット20に含まれる構成要素は、(図8に示した)第1の実施形態と同様である。以下では、第1の実施形態とは異なる機能を有する構成要素についてのみ説明を行う。
 (3-2-1-1.制御部200)
 第3の実施形態による制御部200は、入力部222に対する入力に基づいて、周囲のBLEデバイスをスキャンする。例えば、制御部200は、有効なキー(例えば数字キーなど)が最初に押下された際に、周囲のBLEデバイスのスキャンを開始する。この制御例によれば、一桁目が入力された時点でスキャンを開始することにより、例えば全桁の入力が終了するまでスキャンを開始しない場合と比較して、処理時間を数秒程度高速化することができる。
 (3-2-1-2.送信制御部202)
 ‐解錠要求の送信
 第3の実施形態による送信制御部202は、入力部222に対してパスコードが入力され、かつ、解錠ボタンが押下された場合には、錠前デバイス10のIDが記憶部224に登録されているか否かによって、入力されたパスコードおよび解錠要求の送信を制御する。例えば、錠前デバイス10のIDが記憶部224に登録されている場合には、送信制御部202は、当該IDに対応する錠前デバイス10に対して、入力されたパスコードおよび解錠要求を通信部220に送信させる。また、錠前デバイス10のIDが記憶部224に登録されていない場合には、送信制御部202は、スキャンにより発見された周囲のBLEデバイスから取得される、RSSIの値の大きい順に、当該BLEデバイスの各々に対して、入力されたパスコードおよび解錠要求を通信部220に送信させる。例えば、上記の場合には、送信制御部202は、いずれかのBLEデバイス(正確には錠前デバイス10)により認証が成功するまで、RSSIの値の大きい順に当該BLEデバイスの各々に対して、入力されたパスコードおよび解錠要求を通信部220に逐次送信させる。
 なお、「RSSIの値」は、例えば、ボタンユニット20が信号(スキャン信号など)をBLEデバイスへ送信した際に当該BLEデバイスが受信する当該信号の強度である。
 ‐施錠要求の送信
 また、施錠ボタンが押下された場合には、送信制御部202は、錠前デバイス10のIDが記憶部224に登録されているか否かによって、施錠要求の送信を制御する。例えば、錠前デバイス10のIDが記憶部224に登録されている場合には、送信制御部202は、当該IDに対応する錠前デバイス10に対して、施錠要求を通信部220に送信させる。また、錠前デバイス10のIDが記憶部224に登録されていない場合には、送信制御部202は、直前に解錠した錠前デバイス10(すなわち最後に解錠要求を送信した錠前デバイス10)に対して、施錠要求を通信部220に送信させる。
 ‐‐変形例
 なお、変形例として、施錠ボタンが押下された場合には、送信制御部202は、周囲に位置する全ての錠前デバイス10に対して施錠要求を通信部220に送信させてもよい。
 なお、第3の実施形態による錠前デバイス10、携帯端末30‐1、およびサーバ40‐1の構成は、第1の実施形態と概略同様である。
 <3-3.動作>
 以上、第3の実施形態による構成について説明した。続いて、第3の実施形態による動作について、図41~図43を参照し、以下の流れで説明を行う。なお、その他の種類の動作については、第1の実施形態と同様であるので、説明を省略する。
 1.全体の動作の概要
 2.解錠処理B
 [3-3-1.全体の動作の概要]
 図41は、第3の実施形態による全体の動作の概要を示したシーケンス図である。なお、図41に示したS61、S65、S67、および、S71はそれぞれ、(図11に示した)第1の実施形態によるS11、S15、S17、および、S21と概略同様である。
 図41に示したように、第3の実施形態では、第1の実施形態とは異なり、「セットアップ処理」(S13)が省略される。その代わりに、S61の後に、例えば取付業者などにより、ボタンユニット20が(初期状態のままで)ドアに取り付けられる(S63)。
 また、第3の実施形態では、第1の実施形態とは異なり、S67の後に(「解錠処理A」の代わりに)「解錠処理B」が行われる。
 [3-3-2.解錠処理B]
 ここで、図42~図43を参照して、S69における「解錠処理B」の動作について詳細に説明する。なお、この動作は、S67でパスコードを伝達された権限無ユーザ2bが、ボタンユニット20を操作することにより解錠要求を錠前デバイス10へ送信する際の動作である。
 図42に示したように、まず、ボタンユニット20の制御部200は、テンキーが初めて押下される、つまりパスコードの一桁目が押下されるまで待機する(S6901)。そして、テンキーが初めて押下された場合には(S6901:Yes)、制御部200は、周囲のBLEデバイスのスキャンを開始する(S6903)。なお、スキャンは所定の時間継続される。
 そして、制御部200は、BLEデバイスが発見される度に、BLEデバイスから取得されるRSSIの値が大きい順に、発見したBLEデバイスを逐次ソートする(S6905)。
 その後、制御部200は、スキャンが終了し、パスコードが全桁入力され、かつ、解錠ボタンが押下されたか否かを判定する(S6907)。スキャン途中である場合、または、入力途中である場合には(S6907:No)、制御部200は、S6903以降の処理を繰り返す。
 一方、スキャンが終了し、パスコードが全桁入力され、かつ、解錠ボタンが押下された場合には(S6907:Yes)、制御部200は、次に、錠前デバイス10のIDが記憶部224に登録されているか否かを判定する(S6909)。錠前デバイス10のIDが記憶部224に登録されている場合には(S6909:Yes)、制御部200は、入力されたパスコードおよび解錠要求を例えば鍵共有プロトコルに基づいて暗号化する。なお、この際、制御部200は、さらに、携帯端末30‐1の端末ID、および、ボタンユニット20のユニットIDも含めて暗号化することも可能である。そして、通信部220は、送信制御部202の制御に従って、記憶部224に登録されているIDに対応する錠前デバイス10へ、暗号化された情報を送信する(S6911)。その後、該当の錠前デバイス10は、後述するS6931の処理を行う。
 一方、錠前デバイス10のIDが登録されていない場合には(S6909:No)、制御部200は、パスコードの送信対象のBLEデバイスの番号を示す変数Iに「1」を設定し(S6913)、そして、S6905で発見されたBLEデバイスの総数をNに設定する(S6915)。
 その後、制御部200は、IがN以下であるか否かを判定する(S6917)。IがNよりも大きい場合、つまり、発見された全てのBLEデバイスに関して錠前デバイス10との接続または認証が失敗した場合には(S6917:No)、「解錠処理B」は終了する。
 一方、IがN以下である場合には(S6917:Yes)、制御部200は、入力されたパスコードおよび解錠要求を例えば鍵共有プロトコルに基づいて暗号化する。なお、この際、制御部200は、さらに、携帯端末30‐1の端末ID、および、ボタンユニット20のユニットIDも含めて暗号化することも可能である。そして、通信部220は、送信制御部202の制御に従って、ソート順がI番目のBLEデバイスへ、暗号化された情報を送信する(S6919)。
 その後、制御部200は、I番目のBLEデバイスとの接続が所定の時間内に完了したか否かを判定する(S6921)。例えば、制御部200は、bondの処理が所定の時間内に完了するか否かを判定する。
 そして、I番目のBLEデバイスとの接続が所定の時間内に完了した場合には(S6921:Yes)、該当のBLEデバイス(錠前デバイス10)は、後述するS6931の処理を行う。
 一方、I番目のBLEデバイスとの接続が所定の時間内に完了しなかった場合には(S6921:No)、制御部200は、Iに「1」を加算する(S6923)。すなわち、制御部200は、ソート順が次のBLEデバイスをパスコードの送信対象とする。そして、制御部200は、再びS6917の処理を行う。
 ここで、図43を参照して、S6931以降の動作について説明する。なお、図43に示したS6931~S6939の処理は、(図20に示した)第1の実施形態によるS1907~S1915と概略同様である。
 図43に示したように、S6935の後、ボタンユニット20は、再びS6923の処理を行う。すなわち、制御部200は、ソート順が次のBLEデバイスをパスコードの送信対象とする。
 また、S6939の後、ボタンユニット20の制御部200は、錠前デバイス10のIDが記憶部224に登録されているか否かを判定する(S6941)。錠前デバイス10のIDが記憶部224に登録されている場合には(S6941:Yes)、「解錠処理B」は終了する。一方、錠前デバイス10のIDが記憶部224に登録されていない場合には(S6941:No)、制御部200は、該当の錠前デバイス10、すなわち解錠が成功した錠前デバイス10のIDを記憶部224に登録する(S6943)。そして、「解錠処理B」は終了する。
 (3-3-2-1.変形例)
 なお、「解錠処理B」の動作は、上述した例に限定されない。例えば、「解錠処理B」の処理中(S6901~S6943の間)は、ボタンユニット20は、一秒に一回ブザーを鳴らしてもよい。これにより、処理が継続中であることをユーザに知らせることができる。
 また、発見された全てのBLEデバイスに関して錠前デバイス10との接続または認証が失敗した場合(S6917:No)に関しても、ボタンユニット20は、所定の音色でブザーを鳴らしてもよい。これにより、解錠に失敗したことをユーザに通知することができる。
 <3-4.効果>
 [3-4-1.効果1]
 以上、例えば図41~図43を参照して説明したように、第3の実施形態によれば、錠前デバイス10のIDが登録されていない場合は、ボタンユニット20は、スキャンにより発見された周囲のBLEデバイスから取得されるRSSIの値の大きい順に、当該BLEデバイスの各々に対して、入力されたパスコードおよび解錠要求を送信する。
 通常、ボタンユニット20は、解錠対象の錠前デバイス10の近い範囲(例えば同じドアの反対側など)に設置される。従って、仮に多数のBLEデバイスが発見された場合であっても、上記の方法により、解錠対象の錠前デバイス10に対してパスコードを効率的に送信することができる。
 [3-4-2.効果2]
 また、錠前デバイス10のIDが登録されている場合、すなわち、二回目以降の解錠操作時には、ボタンユニット20は、登録されているIDに対応する錠前デバイス10に対して、入力されたパスコードおよび解錠要求を送信する。このため、二回目以降の解錠操作時には、パスコードの認証および解錠をさらに効率的に行うことができる。
 [3-4-3.効果3]
 また、第3の実施形態によれば、個々のボタンユニット20を、予め特定の錠前デバイス10に対応付ける作業(セットアップ作業)が不要となる。従って、ボタンユニット20の設置作業が容易になる。その結果、例えば、より多数の空き部屋にボタンユニット20が設置されることが期待でき、空き部屋の内見がより容易になる。
<<4.変形例>>
 以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示はかかる例に限定されない。本開示の属する技術の分野における通常の知識を有する者であれば、請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
 <4-1.変形例1>
 例えば、上述した各実施形態では、基本的には、一台の携帯端末30‐1が、当該携帯端末30‐1を有するオーナーユーザ2aによる生成条件の入力に基づいてパスコードを生成する例について説明したが、かかる例に限定されない。錠前デバイス10に複数の携帯端末30‐1がオーナー端末として登録されている場合には、オーナー端末として登録されている全ての携帯端末30‐1は、各携帯端末30‐1を有する各オーナーユーザ2aによる生成条件の入力に基づいてパスコードを生成することも可能である。かかる構成によれば、仮に、ある携帯端末30‐1aを有するオーナーユーザ2aが不在であるなどによりパスコードの発行操作を行うことができない場合であっても、別の携帯端末30‐1bを有する別のオーナーユーザ2aが携帯端末30‐1bに対してパスコードの発行操作を行うことにより、権限無ユーザ2bに対してパスコードを発行することができる。
 <4-2.変形例2>
 また、上述した各実施形態では、ボタンユニット20が、錠前デバイス10に対してパスコードを送信するための入力装置である例を中心に説明したが、かかる例に限定されない。例えば、ボタンユニット20は、電気的にロック可能な筐体扉を有し、かつ、入力部222に対するパスコードの入力に基づいて筐体扉を解錠可能であるような、何らかの物体の保管用装置であってもよい。この変形例2によれば、オーナーユーザ2aは不動産の物理鍵をボタンユニット20の筐体内に格納しておき、そして、権限無ユーザ2bに入力部222に対してパスコードを入力させ、筐体扉を解錠させることにより、物理鍵を権限無ユーザ2bに貸し出すことが可能となる。
 なお、この変形例2によるボタンユニット20は、さらに、上述した各実施形態と同様に、入力部222に対するパスコードの入力に基づいて、解錠要求を錠前デバイス10へ送信可能であってもよい。
 <4-3.変形例3>
 また、上述した各実施形態では、本開示における情報処理装置が、例えば建物などのドアに設置される錠前デバイス10である例を中心として説明したが、かかる例に限定されない。例えば、本開示における情報処理装置は、空港や駅などに設置されるロッカーのドア、金庫のドア、または、自動車のドアなどの各種のドアに設置される施錠装置、または、自転車などの施錠装置であってもよい。さらに、この変形例において、ボタンユニット20は、当該情報処理装置に解錠および施錠させるための入力装置であってもよい。例えば、当該情報処理装置が自動車のドアの施錠装置である場合には、ボタンユニット20は、自動車のドアのリモコンキーであってもよい。
 または、当該情報処理装置は、例えばPC(Personal Computer)、サーバ、スマートフォン、またはタブレット端末などであり、かつ、当該情報処理装置を利用するユーザを認証する用途でパスコードを使用することも可能である。例えば、当該情報処理装置は、公共施設などに設置されるPCであってもよい。そして、ユーザによりパスコードが入力された際に、当該PCは、所定の数の種類の有効期間のパスコードを生成し、そして、入力されたパスコードと生成したパスコードとを比較することにより、入力されたパスコードの正当性を検証してもよい。この変形例によれば、利用権限の無いユーザのうちパスコードが通知されたユーザにのみ、当該パスコードの有効期間内だけ当該PCを利用させることが可能となる。
 <4-4.変形例4>
 また、上述した各実施形態の動作における各ステップは、必ずしも記載された順序に沿って処理されなくてもよい。例えば、各ステップは、適宜順序が変更されて処理されてもよい。また、各ステップは、時系列的に処理される代わりに、一部並列的に又は個別的に処理されてもよい。
 <4-5.変形例5>
 また、上述した各実施形態によれば、CPUなどのプロセッサ、およびRAMなどのハードウェアを、上述した錠前デバイス10の各構成と同等の機能を発揮させるためのコンピュータプログラムも提供可能である。また、該コンピュータプログラムが記録された記録媒体も提供される。
 なお、以下のような構成も本開示の技術的範囲に属する。
(1)
 認証情報および処理要求を第1の通信装置から受信する通信部と、
 第2の通信装置に対応付けられた第1の鍵情報に基づいて認証情報を生成する認証情報生成部と、
 前記通信部により受信された認証情報と前記認証情報生成部により生成された認証情報とに基づいて、前記処理要求に応じた処理の実行を制御する処理制御部と、
を備える、情報処理装置。
(2)
 前記通信部により受信された認証情報と前記認証情報生成部により生成された認証情報とが一致する場合に、前記処理制御部は、前記処理要求に応じた処理を実行する、前記(1)に記載の情報処理装置。
(3)
 前記認証情報生成部は、前記第1の鍵情報に基づいて認証情報生成用鍵情報を生成し、かつ、生成した認証情報生成用鍵情報に基づいて前記認証情報を生成する、前記(1)または(2)に記載の情報処理装置。
(4)
 前記認証情報生成部は、前記第1の鍵情報に基づいて互いに異なる所定の数の認証情報生成用鍵情報を生成し、かつ、生成した前記所定の数の認証情報生成用鍵情報の各々に基づいて前記所定の数の認証情報を生成し、
 前記処理制御部は、前記通信部により受信された認証情報と前記認証情報生成部により生成された前記所定の数の認証情報の各々との比較に基づいて、前記処理要求に応じた処理の実行を制御する、前記(3)に記載の情報処理装置。
(5)
 前記認証情報生成部は、前記第1の鍵情報と、予め定められた前記所定の数の種類の有効期間の各々とに基づいて前記所定の数の認証情報生成用鍵情報を生成し、かつ、生成した前記所定の数の認証情報生成用鍵情報の各々と、現在日時を基準とした前記所定の数の種類の有効期間の各々とに基づいて前記所定の数の認証情報を生成する、前記(4)に記載の情報処理装置。
(6)
 前記認証情報生成部は、前記第1の鍵情報と、前記所定の数の種類の有効期間の各々と、所定のハッシュ関数とに基づいて前記所定の数の認証情報生成用鍵情報を生成し、かつ、生成した前記所定の数の認証情報生成用鍵情報の各々と、前記所定の数の種類の有効期間の各々と、前記所定のハッシュ関数とに基づいて前記所定の数の認証情報を生成する、前記(5)に記載の情報処理装置。
(7)
 前記第1の鍵情報は、前記情報処理装置に対応付けられた第3の鍵情報と、認証情報のリセット回数を示すリセットカウンタとに基づいて生成された情報であり、
 前記認証情報生成部は、前記第1の鍵情報に基づいて所定の数の認証情報を生成し、
 前記処理制御部は、前記通信部により受信された認証情報と前記認証情報生成部により生成された前記所定の数の認証情報の各々との比較に基づいて、前記処理要求に応じた処理の実行を制御する、前記(1)または(2)に記載の情報処理装置。
(8)
 前記所定の数の種類の有効期間が予め定められており、
 前記認証情報生成部は、前記第1の鍵情報と、現在日時を基準とした前記所定の数の種類の有効期間の各々とに基づいて前記所定の数の認証情報を生成する、前記(7)に記載の情報処理装置。
(9)
 前記通信部により受信された認証情報が前記認証情報生成部により生成された前記所定の数の認証情報のうちいずれかと一致する場合には、前記処理制御部は、前記処理要求に応じた処理を実行し、
 前記通信部により受信された認証情報が前記認証情報生成部により生成された前記所定の数の認証情報のいずれとも一致しない場合には、前記処理制御部は、前記処理要求に応じた処理を実行しない、前記(4)~(8)のいずれか一項に記載の情報処理装置。
(10)
 前記通信部は、さらに、暗号化された前記第1の鍵情報を前記第2の通信装置から受信し、
 前記情報処理装置は、前記暗号化された前記第1の鍵情報を復号化する鍵情報処理部と、
 前記鍵情報処理部により復号化された前記第1の鍵情報を記憶する記憶部と、をさらに備える、前記(1)~(9)のいずれか一項に記載の情報処理装置。
(11)
 前記通信部は、さらに、暗号化された、前記第2の通信装置に対応付けられた第2の鍵情報を前記第2の通信装置から受信し、
 前記情報処理装置は、前記暗号化された前記第2の鍵情報を復号化する鍵情報処理部をさらに備え、
 前記暗号化された前記第2の鍵情報が受信された場合には、前記認証情報生成部は、前記鍵情報処理部により復号化された前記第2の鍵情報に基づいて前記所定の数の認証情報を生成し、
 前記処理制御部は、前記通信部により受信された認証情報と前記認証情報生成部により前記第2の鍵情報に基づいて生成された前記所定の数の認証情報の各々との比較に基づいて、前記処理要求に応じた処理の実行を制御する、前記(4)~(9)のいずれか一項に記載の情報処理装置。
(12)
 前記認証情報は、パスコードである、前記(1)~(11)のいずれか一項に記載の情報処理装置。
(13)
 前記情報処理装置は、錠前デバイスであり、
 前記情報処理装置は、施錠部をさらに備え、
 前記処理要求は、前記施錠部に対する解錠要求であり、
 前記処理制御部は、前記通信部により受信された認証情報と前記認証情報生成部により生成された認証情報との比較に基づいて、前記施錠部に対する解錠の制御を実行する、前記(1)~(12)のいずれか一項に記載の情報処理装置。
(14)
 認証情報および処理要求を第1の通信装置から受信することと、
 第2の通信装置に対応付けられた第1の鍵情報に基づいて認証情報を生成することと、
 前記受信された認証情報と前記生成された認証情報とに基づいて、前記処理要求に応じた処理の実行をプロセッサが制御することと、
を備える、情報処理方法。
(15)
 コンピュータを、
 認証情報および処理要求を第1の通信装置から受信する通信部と、
 第2の通信装置に対応付けられた第1の鍵情報に基づいて認証情報を生成する認証情報生成部と、
 前記通信部により受信された認証情報と前記認証情報生成部により生成された認証情報とに基づいて、前記処理要求に応じた処理の実行を制御する処理制御部、
として機能させるための、プログラム。
(16)
 情報処理装置、第1の通信装置、および、第2の通信装置を有し、
 前記情報処理装置は、
 認証情報および処理要求を前記第1の通信装置から受信する通信部と、
 前記第2の通信装置に対応付けられた第1の鍵情報を記憶する記憶部と、
 前記記憶部に記憶されている前記第1の鍵情報に基づいて認証情報を生成する認証情報生成部と、
 前記通信部により受信された認証情報と前記認証情報生成部により生成された認証情報とに基づいて、前記処理要求に応じた処理の実行を制御する処理制御部と、
を備える、情報処理システム。
(17)
 前記第2の通信装置は、前記第1の鍵情報に基づいて認証情報を生成する第2認証情報生成部と、
 前記第2認証情報生成部により生成された認証情報を表示画面に表示させる表示制御部と、を備え、
 前記第1の通信装置は、ユーザによる入力を受け付ける入力部と、
 入力された認証情報および処理要求の、前記情報処理装置に対する送信を制御する送信制御部と、を備える、前記(16)に記載の情報処理システム。
(18)
 前記第2認証情報生成部は、前記第1の鍵情報と、予め定められた所定の数の種類の有効期間のうちユーザにより指定された有効期間とに基づいて認証情報生成用鍵情報を生成し、かつ、生成した認証情報生成用鍵情報と、前記ユーザにより指定された有効期間とに基づいて認証情報を生成し、
 前記認証情報生成部は、前記記憶部に記憶されている前記第1の鍵情報と、前記所定の数の種類の有効期間の各々とに基づいて前記所定の数の認証情報生成用鍵情報を生成し、かつ、生成した前記所定の数の認証情報生成用鍵情報の各々と、現在日時を基準とした前記所定の数の種類の有効期間の各々とに基づいて前記所定の数の認証情報を生成し、
 前記処理制御部は、前記通信部により受信された認証情報と前記認証情報生成部により生成された前記所定の数の認証情報の各々との比較に基づいて、前記処理要求に応じた処理の実行を制御する、前記(17)に記載の情報処理システム。
(19)
 認証情報および処理要求の入力を受け付ける入力部と、
 複数の情報処理装置に対する信号の送信を制御する送信制御部と、
 前記複数の情報処理装置の各々が受信した前記信号の強度の値を取得する取得部と、
を備え、
 前記送信制御部は、取得された前記信号の強度の値が大きい情報処理装置の順に、前記複数の情報処理装置の各々に対して、前記入力された認証情報および処理要求を通信部に送信させる、通信装置。
(20)
 前記通信装置は、前記複数の情報処理装置のうちのいずれかにより前記認証情報が認証された場合に、当該情報処理装置の識別情報を記憶する記憶部をさらに備え、
 第2の認証情報および第2の処理要求が入力され、かつ、いずれかの情報処理装置の識別情報が前記記憶部に記憶されている場合には、前記送信制御部は、前記記憶部に記憶されている識別情報に対応する情報処理装置に対して、前記第2の認証情報および前記第2の処理要求を通信部に送信させる、前記(19)に記載の通信装置。
10 錠前デバイス
20 ボタンユニット
30‐1、30‐2 携帯端末
32 通信網
40‐1、40‐2 サーバ
50 通信端末
100、200、300‐1、300‐2、400‐1、400‐2 制御部
102、306、402 鍵情報処理部
104、308、404 パスコード生成部
106 パスコード検証部
108 処理制御部
110、314 認証処理部
120、220、320、420 通信部
122 施錠部
124、224、326、422 記憶部
126 錠前鍵ファイル
128 マスター鍵ファイル
130 操作ログDB
202、312、406 送信制御部
222 入力部
302 マスター鍵生成部
304 二次元コード読み取り部
310 表示制御部
314 認証処理部
322 操作表示部
324 撮像部

Claims (20)

  1.  認証情報および処理要求を第1の通信装置から受信する通信部と、
     第2の通信装置に対応付けられた第1の鍵情報に基づいて認証情報を生成する認証情報生成部と、
     前記通信部により受信された認証情報と前記認証情報生成部により生成された認証情報とに基づいて、前記処理要求に応じた処理の実行を制御する処理制御部と、
    を備える、情報処理装置。
  2.  前記通信部により受信された認証情報と前記認証情報生成部により生成された認証情報とが一致する場合に、前記処理制御部は、前記処理要求に応じた処理を実行する、請求項1に記載の情報処理装置。
  3.  前記認証情報生成部は、前記第1の鍵情報に基づいて認証情報生成用鍵情報を生成し、かつ、生成した認証情報生成用鍵情報に基づいて前記認証情報を生成する、請求項1に記載の情報処理装置。
  4.  前記認証情報生成部は、前記第1の鍵情報に基づいて互いに異なる所定の数の認証情報生成用鍵情報を生成し、かつ、生成した前記所定の数の認証情報生成用鍵情報の各々に基づいて前記所定の数の認証情報を生成し、
     前記処理制御部は、前記通信部により受信された認証情報と前記認証情報生成部により生成された前記所定の数の認証情報の各々との比較に基づいて、前記処理要求に応じた処理の実行を制御する、請求項3に記載の情報処理装置。
  5.  前記認証情報生成部は、前記第1の鍵情報と、予め定められた前記所定の数の種類の有効期間の各々とに基づいて前記所定の数の認証情報生成用鍵情報を生成し、かつ、生成した前記所定の数の認証情報生成用鍵情報の各々と、現在日時を基準とした前記所定の数の種類の有効期間の各々とに基づいて前記所定の数の認証情報を生成する、請求項4に記載の情報処理装置。
  6.  前記認証情報生成部は、前記第1の鍵情報と、前記所定の数の種類の有効期間の各々と、所定のハッシュ関数とに基づいて前記所定の数の認証情報生成用鍵情報を生成し、かつ、生成した前記所定の数の認証情報生成用鍵情報の各々と、前記所定の数の種類の有効期間の各々と、前記所定のハッシュ関数とに基づいて前記所定の数の認証情報を生成する、請求項5に記載の情報処理装置。
  7.  前記第1の鍵情報は、前記情報処理装置に対応付けられた第3の鍵情報と、認証情報のリセット回数を示すリセットカウンタとに基づいて生成された情報であり、
     前記認証情報生成部は、前記第1の鍵情報に基づいて所定の数の認証情報を生成し、
     前記処理制御部は、前記通信部により受信された認証情報と前記認証情報生成部により生成された前記所定の数の認証情報の各々との比較に基づいて、前記処理要求に応じた処理の実行を制御する、請求項1に記載の情報処理装置。
  8.  前記所定の数の種類の有効期間が予め定められており、
     前記認証情報生成部は、前記第1の鍵情報と、現在日時を基準とした前記所定の数の種類の有効期間の各々とに基づいて前記所定の数の認証情報を生成する、請求項7に記載の情報処理装置。
  9.  前記通信部により受信された認証情報が前記認証情報生成部により生成された前記所定の数の認証情報のうちいずれかと一致する場合には、前記処理制御部は、前記処理要求に応じた処理を実行し、
     前記通信部により受信された認証情報が前記認証情報生成部により生成された前記所定の数の認証情報のいずれとも一致しない場合には、前記処理制御部は、前記処理要求に応じた処理を実行しない、請求項4に記載の情報処理装置。
  10.  前記通信部は、さらに、暗号化された前記第1の鍵情報を前記第2の通信装置から受信し、
     前記情報処理装置は、前記暗号化された前記第1の鍵情報を復号化する鍵情報処理部と、
     前記鍵情報処理部により復号化された前記第1の鍵情報を記憶する記憶部と、をさらに備える、請求項1に記載の情報処理装置。
  11.  前記通信部は、さらに、暗号化された、前記第2の通信装置に対応付けられた第2の鍵情報を前記第2の通信装置から受信し、
     前記情報処理装置は、前記暗号化された前記第2の鍵情報を復号化する鍵情報処理部をさらに備え、
     前記暗号化された前記第2の鍵情報が受信された場合には、前記認証情報生成部は、前記鍵情報処理部により復号化された前記第2の鍵情報に基づいて前記所定の数の認証情報を生成し、
     前記処理制御部は、前記通信部により受信された認証情報と前記認証情報生成部により前記第2の鍵情報に基づいて生成された前記所定の数の認証情報の各々との比較に基づいて、前記処理要求に応じた処理の実行を制御する、請求項4に記載の情報処理装置。
  12.  前記認証情報は、パスコードである、請求項1に記載の情報処理装置。
  13.  前記情報処理装置は、錠前デバイスであり、
     前記情報処理装置は、施錠部をさらに備え、
     前記処理要求は、前記施錠部に対する解錠要求であり、
     前記処理制御部は、前記通信部により受信された認証情報と前記認証情報生成部により生成された認証情報との比較に基づいて、前記施錠部に対する解錠の制御を実行する、請求項1に記載の情報処理装置。
  14.  認証情報および処理要求を第1の通信装置から受信することと、
     第2の通信装置に対応付けられた第1の鍵情報に基づいて認証情報を生成することと、
     前記受信された認証情報と前記生成された認証情報とに基づいて、前記処理要求に応じた処理の実行をプロセッサが制御することと、
    を備える、情報処理方法。
  15.  コンピュータを、
     認証情報および処理要求を第1の通信装置から受信する通信部と、
     第2の通信装置に対応付けられた第1の鍵情報に基づいて認証情報を生成する認証情報生成部と、
     前記通信部により受信された認証情報と前記認証情報生成部により生成された認証情報とに基づいて、前記処理要求に応じた処理の実行を制御する処理制御部、
    として機能させるための、プログラム。
  16.  情報処理装置、第1の通信装置、および、第2の通信装置を有し、
     前記情報処理装置は、
     認証情報および処理要求を前記第1の通信装置から受信する通信部と、
     前記第2の通信装置に対応付けられた第1の鍵情報を記憶する記憶部と、
     前記記憶部に記憶されている前記第1の鍵情報に基づいて認証情報を生成する認証情報生成部と、
     前記通信部により受信された認証情報と前記認証情報生成部により生成された認証情報とに基づいて、前記処理要求に応じた処理の実行を制御する処理制御部と、
    を備える、情報処理システム。
  17.  前記第2の通信装置は、前記第1の鍵情報に基づいて認証情報を生成する第2認証情報生成部と、
     前記第2認証情報生成部により生成された認証情報を表示画面に表示させる表示制御部と、を備え、
     前記第1の通信装置は、ユーザによる入力を受け付ける入力部と、
     入力された認証情報および処理要求の、前記情報処理装置に対する送信を制御する送信制御部と、を備える、請求項16に記載の情報処理システム。
  18.  前記第2認証情報生成部は、前記第1の鍵情報と、予め定められた所定の数の種類の有効期間のうちユーザにより指定された有効期間とに基づいて認証情報生成用鍵情報を生成し、かつ、生成した認証情報生成用鍵情報と、前記ユーザにより指定された有効期間とに基づいて認証情報を生成し、
     前記認証情報生成部は、前記記憶部に記憶されている前記第1の鍵情報と、前記所定の数の種類の有効期間の各々とに基づいて前記所定の数の認証情報生成用鍵情報を生成し、かつ、生成した前記所定の数の認証情報生成用鍵情報の各々と、現在日時を基準とした前記所定の数の種類の有効期間の各々とに基づいて前記所定の数の認証情報を生成し、
     前記処理制御部は、前記通信部により受信された認証情報と前記認証情報生成部により生成された前記所定の数の認証情報の各々との比較に基づいて、前記処理要求に応じた処理の実行を制御する、請求項17に記載の情報処理システム。
  19.  認証情報および処理要求の入力を受け付ける入力部と、
     複数の情報処理装置に対する信号の送信を制御する送信制御部と、
     前記複数の情報処理装置の各々が受信した前記信号の強度の値を取得する取得部と、
    を備え、
     前記送信制御部は、取得された前記信号の強度の値が大きい情報処理装置の順に、前記複数の情報処理装置の各々に対して、前記入力された認証情報および処理要求を通信部に送信させる、通信装置。
  20.  前記通信装置は、前記複数の情報処理装置のうちのいずれかにより前記認証情報が認証された場合に、当該情報処理装置の識別情報を記憶する記憶部をさらに備え、
     第2の認証情報および第2の処理要求が入力され、かつ、いずれかの情報処理装置の識別情報が前記記憶部に記憶されている場合には、前記送信制御部は、前記記憶部に記憶されている識別情報に対応する情報処理装置に対して、前記第2の認証情報および前記第2の処理要求を通信部に送信させる、請求項19に記載の通信装置。
PCT/JP2016/064836 2015-07-07 2016-05-19 情報処理装置、情報処理方法、プログラム、情報処理システム、および通信装置 WO2017006630A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2017527112A JP6743818B2 (ja) 2015-07-07 2016-05-19 情報処理装置、情報処理方法、プログラム、情報処理システム、および通信装置
EP16821101.9A EP3322120A4 (en) 2015-07-07 2016-05-19 INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING METHOD, PROGRAM, INFORMATION PROCESSING SYSTEM, AND COMMUNICATION DEVICE
US15/572,684 US10999267B2 (en) 2015-07-07 2016-05-19 Information processing apparatus, information processing method, program, information processing system, and communication apparatus
CN201680038109.1A CN107710677B (zh) 2015-07-07 2016-05-19 信息处理装置、信息处理方法、程序、信息处理系统和通信装置

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2015136205 2015-07-07
JP2015-136205 2015-07-07
JP2016-006281 2016-01-15
JP2016006281 2016-01-15

Publications (1)

Publication Number Publication Date
WO2017006630A1 true WO2017006630A1 (ja) 2017-01-12

Family

ID=57685440

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/064836 WO2017006630A1 (ja) 2015-07-07 2016-05-19 情報処理装置、情報処理方法、プログラム、情報処理システム、および通信装置

Country Status (5)

Country Link
US (1) US10999267B2 (ja)
EP (1) EP3322120A4 (ja)
JP (1) JP6743818B2 (ja)
CN (1) CN107710677B (ja)
WO (1) WO2017006630A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109472889A (zh) * 2018-04-08 2019-03-15 国家电网公司 一种防误闭锁解锁钥匙智能管理系统及方法
WO2020153059A1 (ja) * 2019-01-22 2020-07-30 株式会社ビットキー 利用管理システム、管理装置、利用制御装置、利用管理方法、およびコンピュータで読み取り可能なプログラム
JP2020120404A (ja) * 2019-01-22 2020-08-06 株式会社ビットキー 利用管理システム、管理装置、利用制御装置、利用管理方法、およびコンピュータで読み取り可能なプログラム

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113793432B (zh) * 2016-12-06 2023-07-18 亚萨合莱有限公司 通过服务消费者设备提供对锁的访问
US11294846B2 (en) * 2017-09-18 2022-04-05 Intel Corporation System, apparatus and method for secure communication on a bus
CN109184361B (zh) * 2018-10-29 2023-09-26 深圳市创想网络系统有限公司 具有高安全性的门锁及其工作方法
CN111709006A (zh) * 2019-03-01 2020-09-25 开利公司 用于空调机组的解锁方法和系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008186321A (ja) * 2007-01-31 2008-08-14 Quality Kk 資格管理システムおよび管理装置ならびに資格置管理プログラム
JP2011097292A (ja) * 2009-10-28 2011-05-12 Sii Data Service Kk システムidの設定システムおよび設定方法
JP2014072843A (ja) * 2012-10-01 2014-04-21 Sakura Information Systems Co Ltd ワンタイムパスワード装置、システム及びプログラム
US20140375422A1 (en) * 2013-06-20 2014-12-25 Parakeet, Llc Technologies and methods for security access
JP2015090540A (ja) * 2013-11-05 2015-05-11 パナソニックIpマネジメント株式会社 設備機器の登録システム、設備機器の登録方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1089488B1 (en) * 1999-04-13 2006-10-04 Sony Corporation Information processing system, information processing method, and information processing device
DE10112027A1 (de) * 2001-03-06 2002-09-19 Mannesmann Vdo Ag Fernbedienung für mit Schließsystemen ausgestattete Türen, insbesondere für das Türschloss oder die Zentralverriegelung eines Kraftfahrzeuges
US7577250B2 (en) * 2004-08-12 2009-08-18 Cmla, Llc Key derivation functions to enhance security
US7290141B2 (en) * 2002-06-27 2007-10-30 Nokia, Inc. Authentication of remotely originating network messages
CN101029546A (zh) * 2006-03-02 2007-09-05 黄涛 电子密码锁系统以及控制和开启方法
JP4828262B2 (ja) 2006-03-09 2011-11-30 美和ロック株式会社 ロックシステム
JP4867760B2 (ja) * 2007-03-30 2012-02-01 ソニー株式会社 情報処理装置および方法、並びに情報処理システム
ES2456815T3 (es) * 2007-10-30 2014-04-23 Telecom Italia S.P.A. Procedimientos de autenticación de los usuarios en sistemas de procesamiento de datos
CN101222772B (zh) * 2008-01-23 2010-06-09 西安西电捷通无线网络通信有限公司 一种基于id的无线多跳网络认证接入方法
WO2010014097A1 (en) * 2008-07-31 2010-02-04 Hewlett-Packard Development Company, L.P. Unlocking a locked user device using a computer generated unlock code provided by user
US9306741B1 (en) * 2010-12-22 2016-04-05 Emc Corporation Updating keys for use in authentication
JP5468588B2 (ja) * 2011-09-15 2014-04-09 株式会社東芝 通信装置及びプログラム
CN103544746A (zh) * 2012-07-08 2014-01-29 上海博路信息技术有限公司 一种动态条码的电子门禁系统
EP2725823A1 (en) 2012-10-26 2014-04-30 Irevo Inc. Method for performing user authentication between secured element and door lock through NFC
CN104333887A (zh) * 2013-07-22 2015-02-04 昀阳科技有限公司 控制无线网络装置进行网络连线的方法
US9699185B2 (en) * 2014-01-31 2017-07-04 Panasonic Intellectual Property Management Co., Ltd. Unauthorized device detection method, unauthorized device detection server, and unauthorized device detection system
CN104517338B (zh) * 2015-01-20 2017-07-04 蹇晓梅 基于无线网络的远程门禁控制系统及其实现方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008186321A (ja) * 2007-01-31 2008-08-14 Quality Kk 資格管理システムおよび管理装置ならびに資格置管理プログラム
JP2011097292A (ja) * 2009-10-28 2011-05-12 Sii Data Service Kk システムidの設定システムおよび設定方法
JP2014072843A (ja) * 2012-10-01 2014-04-21 Sakura Information Systems Co Ltd ワンタイムパスワード装置、システム及びプログラム
US20140375422A1 (en) * 2013-06-20 2014-12-25 Parakeet, Llc Technologies and methods for security access
JP2015090540A (ja) * 2013-11-05 2015-05-11 パナソニックIpマネジメント株式会社 設備機器の登録システム、設備機器の登録方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3322120A4 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109472889A (zh) * 2018-04-08 2019-03-15 国家电网公司 一种防误闭锁解锁钥匙智能管理系统及方法
WO2020153059A1 (ja) * 2019-01-22 2020-07-30 株式会社ビットキー 利用管理システム、管理装置、利用制御装置、利用管理方法、およびコンピュータで読み取り可能なプログラム
JP2020120231A (ja) * 2019-01-22 2020-08-06 株式会社ビットキー 利用管理システム、管理装置、利用制御装置、利用管理方法、およびコンピュータで読み取り可能なプログラム
JP2020120404A (ja) * 2019-01-22 2020-08-06 株式会社ビットキー 利用管理システム、管理装置、利用制御装置、利用管理方法、およびコンピュータで読み取り可能なプログラム
JP7321443B2 (ja) 2019-01-22 2023-08-07 株式会社ビットキー 利用管理システム、管理装置、利用制御装置、利用管理方法、およびコンピュータで読み取り可能なプログラム

Also Published As

Publication number Publication date
EP3322120A4 (en) 2019-02-27
US10999267B2 (en) 2021-05-04
US20180159835A1 (en) 2018-06-07
CN107710677A (zh) 2018-02-16
JP6743818B2 (ja) 2020-08-19
EP3322120A1 (en) 2018-05-16
CN107710677B (zh) 2021-09-07
JPWO2017006630A1 (ja) 2018-04-19

Similar Documents

Publication Publication Date Title
JP6743818B2 (ja) 情報処理装置、情報処理方法、プログラム、情報処理システム、および通信装置
US11270532B2 (en) Lock control device, information processing method, program, and communication terminal
WO2021023164A1 (zh) 一种智能锁具控制方法和系统
KR102056722B1 (ko) 인증 시스템 및 그에 따르는 송신 단말과 수신 단말 및 권한 인증 방법
CN104065653B (zh) 一种交互式身份验证方法、装置、系统和相关设备
US20170236350A1 (en) Electronic door lock system
US20180077156A1 (en) Systems and methods for device authentication
WO2016105591A1 (en) Systems and methods for authentication using multiple devices
US20140068739A1 (en) Method and system for verifying an access request
WO2013101358A1 (en) System and method for secure network login
US11522709B2 (en) Access control system
CN104063650B (zh) 一种密钥存储设备及其使用方法
CN100514333C (zh) 一种数据库安全访问方法和系统
CN106664504A (zh) 设备活动的控制
US11348392B2 (en) Method for access control
CN110298947A (zh) 一种开锁方法及电子锁
Hussain et al. Secure annihilation of out-of-band authorization for online transactions
RU2709281C1 (ru) Способ и система авторизации носителя цифрового ключа
US8683570B1 (en) Scheduling soft token data transmission
CN113595743B (zh) 一种授权令牌处理方法及装置
CN113935744A (zh) 一种设备防伪方法及装置
KR20160098901A (ko) 사용자 인증 서버 시스템 및 이를 이용한 사용자 인증 방법
KR101571609B1 (ko) 모바일기기를 이용한 수처리 시설의 관리제어 시스템
Liou et al. A study of biometric feature for a recall-based behavioral graphical mobile authentication
CN113345139A (zh) 开锁方法、智能锁芯和智能锁系统

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: 16821101

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2017527112

Country of ref document: JP

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 15572684

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2016821101

Country of ref document: EP