Decentralized identity-based access control systems and methods

An electronic access key system includes an access device. The access device is configured to receive an electronic access key from a presenter computing system of a presenter and control access to a physical space. The electronic access key was previously digitally signed by an issuer computing system of an issuer associated with the access device by generating a digital signature using a private key of the issuer, which is of a cryptographic key pair that also includes a public key. The access device stores the public key of the issuer associated therewith prior to receiving the electronic access key from the presenter computing system. Upon receiving the electronic access key, access device verifies the electronic access key with the public key of the issuer and denies the presenter access to the physical space if the electronic access key is not verified.

TECHNICAL FIELD

This disclosure relates to access control to physical spaces and, in particular, systems and devices using electronic access keys and digital signatures.

BACKGROUND

Smart locks and other electronic access control devices utilize credentials or various forms of electronic access keys to permit presenters access to physical spaces. However, such systems typically require those parties controlling the electronic access devices and/or issuing the electronic access keys to store personal identifying information of the presenters.

SUMMARY

Disclosed herein are implementations of electronic access key systems, access devices thereof, and methods therefor.

In an implementation, an electronic access key system includes an access device. The access device is configured to receive an electronic access key from a presenter computing system of a presenter and control access to a physical space. The electronic access key was previously digitally signed by an issuer computing system of an issuer associated with the access device by generating a digital signature using a private key of the issuer, which is of a cryptographic key pair that also includes a public key. The access device stores the public key of the issuer associated therewith prior to receiving the electronic access key from the presenter computing system. Upon receiving the electronic access key, access device verifies the electronic access key with the public key of the issuer and denies the presenter access to the physical space if the electronic access key is not verified.

The access device may verify the electronic access key by verifying, with the public key of the issuer, that the electronic access key was digitally signed with the private key of the issuer. The access device may verify the digital signature of the electronic access key to verify that the electronic access key was issued by the issuer associated with the access device and is untampered. The electronic access key may have been previously issued to a recipient having another public key, and the access device may further verify that the presenter of the electronic access key is the recipient with the public key of the recipient and may deny the presenter access to the physical space if the presenter is not verified to be the recipient.

The presenter may have another private key, and the presenter computing system may generate a digital signature of the presenter with the private key of the presenter and send the digital signature of the presenter to the access device. The access device may have received from the presenter computing system the digital signature of the presenter, the electronic access key may include the public key of the recipient, and the access device may verify that the presenter is the recipient by verifying the digital signature of the presenter with the public key of the recipient. The presenter may be verified to be the recipient if the other private key of the presenter and the other public key of the recipient form another cryptographic key pair of the recipient.

The electronic access key may include a key identifier uniquely associated with the electronic access key, the access device may store prior to receiving the electronic access key a list of revoked key identifiers associated with other electronic access keys that have been revoked by the issuer, the access device may verify that the electronic access key has not been revoked by the issuer by comparing the key identifier of the electronic access key to the list of revoked key identifiers, and/or the access device may deny the presenter access to the physical space if the electronic access key is not verified to have not been revoked.

The electronic access key may include access rights that include an identified physical space and a timeframe in which a recipient of the electronic access key is permitted to access the physical space, and the access device may deny the presenter access to the physical space if one or both of the identified physical space does not match the physical space associated with the access device or the timeframe does not include a current time.

The electronic access key system may further include a blockchain computing system, the issuer computing system associated with the issuer, and/or the presenter computing system. The issuer and the presenter may each have a digital identity that is a set of information that includes a party identifier, a private key, and a public key that form a cryptographic key pair with the private key and may also have a public digital identity that includes the party identifier and the public key. The blockchain computing system may store in a blockchain the public digital identities of the issuer and the presenter, and the blockchain may be accessible by the issuer computing system.

DETAILED DESCRIPTION

Referring toFIG.1, an electronic access key system100is configured for issuers12to issue electronic access keys to recipients14to gain access to physical spaces16controlled by the issuers12. The electronic access key system100and variations there of may also be referred to as a decentralized identity-based access control systems, and the methods performed therewith may also be referred to as the decentralized identity-based access control methods. As discussed in further detail below, the electronic access key system100utilizes a blockchain and digital signatures to verify that the electronic access keys are untampered and issued by the issuer12and/or the presenters15presenting the electronic access key are the recipients14of the electronic access key. The electronic access key system further assesses the validity of the access rights (e.g., access rights have not been revoked and match the recipient14, the space16, and/or the current time). The space16is a physical space, such as a room or set of rooms within a building.

The issuers12are those parties that issue the electronic access keys to the recipients14. The electronic access keys may also be referred to as an attestation or an access attestation. The recipients14are those parties to which the electronic access keys are issued by the issuers12. Presenters15are those parties seeking access to the spaces16by electronically presenting the electronic access keys. If the electronic access key is determined to be valid and the presenter15determined to be the recipient14of the electronic access key, the presenter15is granted access to the space16. The issuers12, the recipients14, and the presenters15may be persons or organizations (e.g., legal entities or other groups of persons). The issuers12, the recipients14, and the presenters15may be more generally referred to as parties. Furthermore, it should be understood that parties may have the role of the issuer12, the recipient14, and the presenter15in different contexts. For example, the presenter15may be the recipient14of the electronic access key that is valid and, when verified as such, be granted access to the space16. Thus, inFIGS.1and5, the recipient14, the presenter15, and their respective computing systems are depicted as common blocks.

Still referring toFIG.1, the electronic access key system100generally includes party computing systems110associated with the issuers12and the recipients14, access devices160associated with the physical spaces16and the issuers12, one or more central computing systems182, and a blockchain computing system184, which are in communication with each other directly or via a network102(e.g., the cloud). The party computing systems110associated with the issuers12, the recipients14, and the presenters15may be more specifically referred to as issuer computing systems120, recipient computing systems140, and presenter computing systems150.

Referring toFIG.2, the party computing systems110include one or more computing devices, each of which may generally include a controller222, a communications interface224, and a human interface226. The controller222is configured to execute instructions to provide the functionality described herein and may have a hardware configuration as described below with respect toFIG.3or any other suitable configuration. The communications interface224is configured to be in communication with other aspects of the electronic access key system100, directly or indirectly (e.g., via the network102) to send and receive information therebetween, and includes any suitable hardware (e.g. modems, radios) that are configured to communicate via any suitable protocols. The human interface226is configured to provide outputs to and receive inputs from humans (e.g., the issuer12, the recipient14, or the presenter15), for example, including audio-visual outputs (e.g., screens and/or speakers) and various inputs (e.g., keyboard, mouse or touch pad, touch screen, microphones, cameras). The recipient computing systems140and the presenter computing systems150are preferably configured as mobile devices that are portable to communicate directly with the access devices160associated with different ones of the physical spaces16.

Referring toFIG.3, the controller222generally includes a processor222a, a storage222b, a memory222c, a communications interface222d, and a bus222eby which the other components of the controller210are in communication with each other. The processor222amay be any suitable processing device, such as a central processing unit (CPU), configured execute the stored instructions. The storage222bis a non-volatile, long-term storage device, such as a hard disc or solid state storage device capable of storing the instructions executed to be executed by the processor222a(e.g., software programming) and other information and data. The storage222bmay be considered a non-transitory machine- or computer-readable medium. The memory222cis a short term, volatile storage device, such as a random access memory (RAM) module. The communications interface222dis configured to send signals from and receive signals to the controller222from other components of the devices or systems into which the controller222is incorporated.

Referring toFIG.4, the access devices160are each configured to control access to the physical space16associated therewith. Each of the access devices160is associated with one of the issuers12and controlled thereby (e.g., via the issuer computing system120) and includes, stored thereby, a public key610cof the issuer12. The access device160generally includes a controller222and a communications interface224(e.g., as described previously for the party devices) and a lock462, directly or indirectly, operated by the controller222. The lock462may be any type of electronically-operated lock physically associated with other hardware, such as a door, gate, elevator, or turnstile, that prevents access to the physical space16when locked and permits access to the physical space16when unlocked. For example, the lock462may include a bolt or pin that is retractable with via a solenoid or motor or include a magnetic to operably selectively release (i.e., lock and unlock) the lock462. In one example, the controller222may directly control operation of the lock462, for example, sending a signal (e.g., a voltage) directly to the lock462for operation thereof (e.g., to open or lock). In another example, the controller222may indirectly control operation of the lock462, for example, by sending a signal containing information (e.g., a pass code) according to which another control system (e.g., computing device) then sends a signal (e.g., the voltage) directly to the lock for operation thereof.

Referring again toFIG.1, the central computing system182includes one or more computing devices, centrally-located or distributed, that are individually and/or cooperatively configured to provide various of the functions as described here. Each of the computing devices of the central computing system182may, for example, be a cloud or server computing device that generally includes the controller222and the communications interface224similar to those described for the party computing system110.

The blockchain computing system184is configured to store information in one or more blockchains and includes multiple computing devices (e.g., cloud or server computing devices) that operate as nodes that, by consensus, add, modify, and/or delete information from a distributed ledger that forms the blockchain. As discussed in further detail below, the blockchain computing system184is configured to store public digital identities610′ of different parties and/or devices of the electronic access key system100.

Referring toFIGS.5-7, as referenced above, the electronic access key system100is configured to verify electronic access keys to provide recipients14access with the access device160to the physical space16by utilizing digital signatures and blockchain. As discussed in further detail below, the parties are each provided a cryptographic key pair that includes a private key and a public key. The digital signatures are generated using the private keys of the different parties and verified using public keys thereof. In issuing keys from the issuer12to the recipient14, the user computing system120retrieves a public key of the recipient14from the blockhchain and digitally signs the electronic access key with their private key. In granting a presenter15access to the space16, the access device160verifies digital signatures of the issuer12and the presenter15with the public keys thereof in order to verify the electronic access key presented by the presenter15is untampered and issued by the issuer12and that the presenter15is the recipient14of the electronic access key. The access device160further verifies the validity of the access rights of the electronic access key presented thereto.

As used herein digitally signing generally refers to producing a digital signature with a signing algorithm from the private key of the party signing and a set of information. As also used herein, verifying a digital signature generally refers to verifying the authenticity of the set of information (e.g., its source and/or integrity) with a signature verifying algorithm from the public key of the signing party and the set of information. In one example, the signing algorithm may include hashing the set of information with a hashing algorithm (e.g., SHA256) and encrypting the hash with the private key, while the signature verifying algorithm may include decrypting the hash with the public key, re-hashing the set of information, and comparing the decrypted hash with the re-hash. If the hash and the re-hash match, both the source and the integrity of the set of information are verified as being authentic (i.e., the set of information being both from the signing party and unaltered). As understood in the art, the private key and the public key of a party form a cryptographic key pair. For example, the generating and verifying of digital signatures may be performed using JavaScript Object Notation Web Signature (“JWS”) methodology or any other suitiable methodology.

Still referring toFIG.5, as described in further detail below with respect to the method800and the submethods thereof, the electronic access key system100is configured for the issuer12to issue an electronic access key620to the recipient14.

Referring also toFIG.6, each party has a digital identity610, which is a set of information associated with the party and includes a party identifier610a, cryptographic key pair with a private key610band a public key610c, and a service points610d. The digital identity610is stored by the party computing system110(e.g.,120,140,150). The private key610bis stored only by the party computing system110, while the party identifier610a, the public key610c, and the service points610dmay be considered to form a public digital identity610′ that is stored in a blockchain by the blockchain computer system184and is accessible by other parties. The service points610dinclude information for sending messages or other information to the recipient14associated with the digital identifier610a, such as to the recipient computing system140associated therewith. Furthermore, the public key610cof the issuer12is stored by the access devices160associated with the issuer12. The set of information forming the digital identity610may be stored in any suitable format (e.g., a text file, JavaScript Object Notation or “JSON”). Further aspects of the digital identity610are discussed in further detail below.

Referring toFIG.7, an electronic access key720is a set of information that defines permissions for the recipient14to access a given space16. The electronic access key720generally includes the party identifier610aof the recipient14to which the electronic access key720is issued, the public key610cof the recipient14, an access key identifier720a, and the access rights720b. The public key610cof the recipient14is obtained from blockchain by the issuer12(e.g., the issuer computing system120or system). The access key identifier720ais an identifier (e.g., alphanumeric code) that is uniquely associated with the electronic access key720and no other electronic access keys720. The access rights information includes information identifying one or more of the spaces16and the timeframe to which the recipient14is being permitted access to the one or more spaces16. The set of information forming the electronic access key720may be in any suitable format (e.g., JSON). More generally, the electronic access key720may be considered an attestation. An attestation is a set of information provided by a party functioning as an issuer12to another party functioning as a recipient14, which may be digitally signed by the issuer12to assure the integrity and source of the information. It should be noted that the role of a party (e.g., as the issuer12or the recipient14) may change depending on who is issuing the attestation, as was described previously. For example, a hotel operator and a guest of the hotel may function, respectively, as the issuer12and the recipient14with respect to the electronic access key720, but may instead function, respectively, as the recipient14and the issuer12with respect to attestations from the guest to the hotel operator (e.g., personal identification information or stay preferences).

During a setup operation of the access device160, the access device160may be associated with the issuer12and one or more of the spaces16. For example, during the setup operation, the public key610cof the issuer12is provided to and stored by the access device160. The public key610cof the issuer12associated with the access device may be stored thereby at other such times, which are also prior to presentation by a presenter15to the access device160of the electronic access key720issued for that same access device160or the one or more spaces16associated with the access device160. As such, the access device160may verify the digital signature of the issuer12in the electronic access key720without retrieving or accessing the public key610cof the issuer12when the presenter15seeks access to the space16.

When issuing the electronic access key720, the issuer12digitally signs and sends the electronic access key720with the issuer computing system120to the recipient14and, in particular, to the recipient computing system140associated therewith. The electronic access key is digitally signed by the issuer12, as described above, with the private key610bof the issuer12.

When seeking access to one of the spaces16, the presenter15with the presenter computing system150presents (e.g., sends) the electronic access key720and digital signature of the issuer12to the access device160, along with a digital signature of the presenter15. For example, the presenter computing system150may digitally sign the electronic access key720or other set of information.

When presented with the electronic access key720, the digital signature of the issuer12, and the digital signature of the presenter15, the access device160verifies whether the electronic access key720is untampered and was issued by the issuer12, whether the presenter15is the recipient14of the electronic access key720, and validity of the access rights720b(e.g., that the electronic access key720is unrevoked and is valid for the space16associated with the access device160and the current time).

To verify both that the electronic access key720is untampered and that the electronic access key720was issued by the issuer12associated with the access device160, the access device160verifies the digital signature of the electronic access key720, as described above, using the public key610cof the issuer12previously stored thereby (e.g., during the setup operation of the access device160described previously). If the digital signature is verified, the electronic access key720is verified to both have been issued by the issuer12associated with the access device160and untampered (e.g., not altered after issuance). If the digital signature of the electronic access key720is not verified, either the electronic access key720was not issued by the issuer12, was altered (relative to issuance), or both, and the access device160denies the presenter15access to the space16.

To verify that the presenter15is the recipient14of the electronic access key720, the access device160verifies the digital signature of the presenter15, as described above, using the public key610cof the recipient14, which was received in the electronic access key720presented by the presenter15. If the digital signature is verified, the presenter15is verified to be the recipient14of the electronic access key720. If the digital signature of the presenter15is not verified, the access device160denies the presenter15access to the space16.

To verify the validity of the access rights of the electronic access key720, the access device160determines whether the electronic access key720has been revoked and whether the access rights are valid for the space16associated with the access device160and the current time. To determine whether the electronic access key720has been revoked, the access device160compares the electronic access key identifier720ato a list of revoked keys. The list of revoked keys is periodically updated and sent to the access device160(e.g., as any of the electronic access keys720is revoked), and then stored locally by the access device160prior to subsequent presentation of the electronic access key720thereto. It is noted that, because the access device160is able to verify the authenticity of the electronic access key720presented thereto (e.g., using the public key610cof the issuer12stored thereon), the access device160does not itself need to store access rights associated with those persons seeking access. If the electronic key720has been revoked, is not valid for the space16, or is not valid for the current time, the access device160denies the presenter15access to the space16.

If all verifications pass (i.e., digital signature of the issuer12is verified to authenticate the source and unaltered state of the electronic access key720, the digital signature of the presenter15to verify that the presenter15is the recipient of the electronic access key720, and that the electronic access key720is not revoked and is valid for the space16and current time), the lock462is operated (e.g., by the controller222of the access device160) to provide the presenter15access to the space16(e.g., opening the lock462). As referenced above, if any of the verifications fail, the access device160operates the lock462to deny access to the recipient14(e.g., keeps the lock462locked).

It should be noted that the access device160, in a preferred embodiment of the electronic access key system100, is configured to perform the verifications itself without any real-time communication with any other devices other than the presenter computing system150(e.g., the central computing system182, the blockchain computing system184, or the issuer computing systems120). Limiting both the communication and processing performed by the access device160in this manner may be especially advantageous in circumstances where access devices160do not have an ongoing power supply (e.g., are battery-operated) and/or where network communications may be limited. In this manner, verifications, including identity verification, may performed by different ones of the access devices160without communicating with the central computing system182or other central device and, therefore, may be considered to be a decentralized system and/or perform the verification in a decentralized manner.

Other embodiments are contemplated, however. In one embodiment, the access device160communicates with the blockchain computing system184to retrieve the public key610cof the recipient14of the electronic access key720in order to verify that the presenter15is the recipient14of the electronic access key720. In another embodiment, the access device160transmits the electronic access key720and the digital signatures of the issuer12and the presenter15received therewith to another computing system (e.g., an on premises computing device), which then obtains the public keys610cof the recipient14and/or the issuer12of the electronic access key720from the blockchain computing system184, verifies the digital signatures and the access rights as described above, and sends instructions to the access device160to operate the lock462to permit or deny access.

Referring toFIG.8, the electronic access key system100and the various computing devices and systems thereof are configured (e.g., include software or written instructions) that perform the method800for providing users access to physical spaces with electronic access keys. The method800generally includes generating810digital identities for the parties, setting up and updating820the access devices160with the issuers12, issuing830and digitally signing electronic access keys720to recipients14, presenting840the electronic access key720and digital signatures of issuer12and the presenter15to the access device160, and providing or denying access850to the physical spaces16upon verifying with the access device160the authenticity of the electronic access key720, that the presenter15is the recipient, and the access rights720b.

Referring again toFIGS.5and6and alsoFIG.9, as referenced above, the digital identity610digital identities are created for the parties, which may be performed according to the method810.

The digital identity610generally includes the party identifier610a, the private key610b, the public key610c, and one or more service points610dthat are assigned to and/or otherwise associated with the party. The party identifier610ais a unique identifier assigned to the party, such as a numerical code (e.g., 16 digits). The private key610band the public key610cform a key pair in which, as with digital signatures, the private key610bis used for encryption (e.g., of a hash of a message) and the public key610cis used for decryption. The private key610band the public key610cmay be generated according to any suitable cryptographic algorithm. The identifier610a, the public key610c, and the one or more service points610d, but not the private key610b, may be considered to cooperatively form a public digital identity610′. The digital identity610is stored by the device of the respective party (e.g.,120,140). The public digital identity610′ is stored in a blockchain by the blockchain computing system184.

A party may request generation of the digital identity610with the party computing system110associated therewith, which may be at their own initiative or upon invitation (e.g., originating from an issuer12). In response to the request, the central computing system182generates and sends the digital identity610to the party computing system110.

Referring toFIG.9, the submethod810is described for generating and storing digital identities610and public digital identities610′ for parties, which may include the issuers12, the recipients14, and the presenters15, whether or not a recipient14. The submethod810generally includes requesting912, generating914, sending916, and storing918the digital identity610.

The requesting912of the digital identity610is performed by the party computing system110associated with the party requesting the digital identity610. For example, upon receiving an input from the party, the party computing system110sends a digital identity request to the central computing system182. The digital identity request may include information about the requesting party, for example, service points610d, which identify manners for communicating with the party and/or the party computing system110, and/or personal identifying information (e.g., name, government identification number, date of birth). The personal identifying information may be used by the central computing system to verify the identity of the party (e.g., verifying with government databases), which may also provide an identity attestation (i.e., an attestation that the requesting party is the person or organization) that may be digitally signed by the identity verifying party (e.g., the government or another party).

The generating914of the digital identity610is performed by the central computing system182upon receiving the digital identity request from the party computing system110. The generating914of the digital identity610generally includes generating the party identifier610ato be unique from any other party identifiers610aassociated with other parties, and the key pair (i.e., the public and private keys610b,610cassociated with each other) according to any suitable algorithms. The generating914of the digital identity610further includes generating or associating the service points610dwith the digital identity610. The party identifier610a, the private key610b, the public key610c, and the service points610dform the set of information of the digital identity610and may be stored in any suitable file format (e.g., JSON, as referenced above).

The sending916of the digital identity610is performed by the central computing system182. The sending916includes sending916athe digital identity610to the party computing system110associated with the party for which the digital identity610was generated (e.g., according to the service points610dof the digital identity610itself). The sending916also includes sending916bthe public digital identity610′ to the blockchain computing system184for storage thereby.

The storing918includes storing918athe digital identity610of the party, including the private key610b, by the party device910. The digital identity610may be stored in a secure manner, for example, being encrypted and requiring input of a credential of the party (e.g., facial recognition, fingerprint recognition, or passcode) to the party device910to access or otherwise use the digital identity610.

The storing918balso includes storing918bthe public digital identity610′ of the party with the blockchain computing system184in one or more blockchains, as referenced above, by amending the blockchain consensus of the different nodes of the blockchain computing system184to amend the distributed ledger storing the digital identities610of different parties. The public digital identity610of the requesting party is publicly accessible in the blockchain (i.e., by others than the party with which the public digital identity610′ is associated) to allow retrieval of the public key910bassociated therewith (e.g., when issuing electronic access keys720).

Referring toFIG.10, as referenced above, the access devices160are set up and updated820. The setting up and updating820generally includes physically associating1022the access device160with one or more physical spaces16, electronically associating1024the access device with the issuer12and the one more physical spaces16, and updating1026lists of revoked electronic access keys720. The physically associating1022includes installing the access device160to the one or more physical spaces16(e.g., to a door that provides access to the physical space16). The electronic associating1024includes storing, with the access device160, the public key610cof the issuer12and information identifying the physical spaces16physically associated with the access device160. The updating1026includes generating and sending to the access device160and storing thereon listings up electronic access keys720that have been revoked. For example, the issuer12may revoke access rights to a particular physical space16from a recipient14in which case the recipient may still store and present the electronic access key720previously received but when presented to the access device160is identified as a revoked electronic access key720. It should be noted that if access is revoked from one of multiple spaces, a new electronic access key720may be issued to the other physical spaces16to which the recipient14may still be granted access.

Referring again toFIGS.5and7and alsoFIG.11, as referenced above, the electronic access keys720are issued by the issuer12with the issuer computing system120, which may be performed according to the method830.

As shown inFIG.7, the electronic access key720is a set of information issued by the issuer12to the recipient14that authorizes the recipient14access to the physical space16. As reference above, the electronic access key720generally includes the key identifier720a, the access rights720b, the party identifier610aof the recipient14of the electronic access key720, and the public key610cof the recipient14. The key identifier720ais a unique identifier (e.g., numeric or alphanumeric code) that is associated with the electronic access key720and no other electronic access keys720. The access rights720binclude suitable information for identifying the permissions granted, which may generally include an identifier of the space16(e.g., an identifier of the space16itself of the access device160associated with the space16) and a timeframe in which the recipient14is being authorized to access the space16(e.g., starting date and time).

The electronic access key720may be requested by the issuer12with the issuer computing system120, for example, when processing hotel reservation information for the recipient14. As part of the electronic access key request, the issuer12inputs suitable information for sending the electronic access key720to the recipient14, which may include the service points610dof the recipient14, the party identifier610aof the recipient14by which the service points610dfrom the public digital identity610′ stored in the blockchain, and/or other personal identifying information (e.g., name, contact information). In response to the request, the issuer computing system120generates, digitally signs, and sends the electronic access key720to the recipient computing system140of the recipient14with which the electronic access key720is associated, along with the digital signature.

Referring toFIG.11, the submethod of issuing830a signed electronic access key720to the recipient14, generally includes initiating1132, generating1134, signing1136, and sending1138the electronic access key720.

The initiating1132of the electronic access key720is performed, for example, by the issuer12with the issuer computing system120, which includes inputting information pertaining the recipient14and the access rights720b. The information pertaining to the recipient14is suitable to ensure the electronic access key720is sent to the recipient14and may include, for example, the party identifier610a, the service points610d, and/or personal identifying information of the presenter714(e.g., name, date of birth, contact information). As referenced above, the access rights720binclude the identifier of the space16and the timeframe in which the recipient14is authorized to access the space16.

The generating1134of the electronic access key720is performed by the issuer computing system120, which obtains the public key610cfrom the public digital identity610′ stored in the blockchain (e.g., requests and receives the public key610cfor the party identifier610afrom the blockchain computing system184) and generates the key identifier720a. The issuer computing system120then stores the set of information of the electronic access key720into a suitable file format (e.g., JSON, as referenced above), including the party identifier610aof the recipient14, the public key610cof the recipient14, the key identifier720aand the access rights720b.

The signing1136of the electronic access key720is performed by the issuer computing system120, as described above, by generating a digital signature using a signing algorithm from the electronic access key720and the private key610bof the issuer12.

The sending1138of the electronic access key720, includes sending the electronic access key720and the digital signature with the issuer computing system120to the recipient computing system140. The combination of the electronic access key720and the digital signature by the issuer12may be referred to as a digitally signed access key.

Referring to again toFIG.5and alsoFIG.12, when the recipient14seeks access to the physical space16, the recipient computing system140presents the digitally signed electronic access key720(e.g. the electronic access key720and the digital signature of the issuer12) and a digital signature of the presenter15to the access device160associated with the physical space16. The presenter computing system150sends the digitally sends the electronic access key720, the digital signature thereof of the issuer12, and the digital signature of the presenter15to the access device160via any suitable wireless communications protocol (e.g., Bluetooth, Wi-Fi, near-field communication (NFC)). The digitally signed key is as described previously (i.e., including the electronic access key720and the digital signature thereof). The digital signature of the presenter15may be made in relation, for example, to the electronic access key720or other information.

Referring toFIG.12, the submethod of presenting840a signed electronic access key720generally includes generating1242a digital signature of the presenter15with the presenter computing system150, sending1244the signature of the presenter15, and sending1246the electronic access key720and the digital signature thereof by the issuer12.

The generating1242of the digital signature of the presenter15is performed by the presenter computing system150with the private key610bof the presenter15and may be performed, as described above, with respect to the electronic access key720or other information.

The sending1244digital signature of the presenter15and the sending1246of the electronic access key720and the digital signature thereof by the issuer12is performed with the presenter computing system150using any suitable wireless communication protocol (e.g., via Bluetooth, Wi-Fi, NFC, or other suitable communications protocol) when the presenter15seeks access to the space16and, thereby, is in relatively close proximity to the access device160(e.g., can place the presenter computing system150within a few inches of the access device160).

Referring again toFIG.5and also toFIG.13, when the access device160receives the digitally signed electronic access key720(e.g., the electronic access key720and the digital signature thereof by the issuer12) and the digital signature of the presenter15, the access device160verifies the digital signature of the issuer12to verify that the electronic access key720is untampered and issued by the issuer12, verifies the digital signature of the recipient14to verify that the presenter15is the recipient14of the electronic access key720, and verifies the validity of the access rights720b. The public key610cof the issuer12, which was previously stored by the access device160, is used to verify that the digital signature of the issuer12. The public key610cof the recipient14, which was received in the electronic access key720, is used to verify the digital signature of the presenter15.

Referring toFIG.13, the method of providing or denying850access to the presenter15is performed by the access device160and generally includes verifying1352that the electronic access key720is not tampered and cryptographically signed electronic access key720, verifying1354that the presenter15is the recipient14, verifying1356that the access rights are valid, and operating1358the lock462to provide or deny access to the recipient14according to the verifying1352,1354,1356. While the steps of verifying1352,1354,1356and the substeps thereof are depicted as occurring in order, it should be understood that they may be performed in any suitable sequence (e.g., in different orders and/or in parallel).

The verifying1352that the electronic access key720was issued by the issuer12and is untampered is performed by verifying the digital signature by the issuer12thereof with the access device160, as described above, using the public key610cof the issuer stored on the access device160. Alternatively, the verifying1352may be described as verifying the digital signature by the issuer12of the electronic access key720, which is again performed using the public key610cof the issuer previously stored on the access device160.

The verifying1354that the presenter15is the recipient14generally includes verifying the digital signature of the presenter15, which is performed by the access device160, as described above, using the public key610cof the recipient14received as part of the electronic access key720. Alternatively, the verifying1354may be described as verifying the digital signature by the presenter15.

The verifying1356of the validity of the access rights720bof the electronic access key720includes verifying that the electronic access key720has not been revoked, the access rights apply to the space16associated with the access device160, and the access rights are valid for the current time. In verifying that the electronic access key720has not been revoked, the access device160compares the key identifier720ato key identifiers in a revocation list stored by the access device160and received from the issuer computing system120. In verifying that the access rights720bare associated with the space16, the space16identified in the access rights720bis compared to the identified space stored by the access device160(e.g., comparing identifiers of the space16in the electronic access key720and the access device160).

The operating1358of the lock462to permit or deny access includes opening the lock if the presenter15is verified to be the recipient14of the electronic access key720being presented, the non-tampering and source of the electronic access key720, and the access rights720bare all verified. If any are not verified, the lock462is operated (e.g., kept locked) to prevent the presenter15access to the space16.