System and method for an electronic identity brokerage

US11212102B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11212102-B2
Application numberUS-201916503154-A
CountryUS
Kind codeB2
Filing dateJul 3, 2019
Priority dateJul 3, 2018
Publication dateDec 28, 2021
Grant dateDec 28, 2021

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A computer implemented system for electronic verification of credentials including at least one processor and data storage is described in various embodiments. The system includes cryptographic mechanisms and electronic communication between one or more computing systems that in concert, provide verification of a prover's credentials in accordance to logical conditions of a verifier's policy without providing additional information to a verifier entity.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer implemented system for communicating data messages between a verifier computing device and a portable client computing device, the data messages establishing authentication of one or more characteristics of a client associated with the portable client computing device, the system comprising: the portable client computing device including at least a client computing device processor and data storage, the data storage storing one or more token data objects received from or computed jointly in a multiparty protocol with an issuer computing device, the one or more token data objects generated using at least a issuer computing device private issuance key, the one or more token data objects each including one or more signed data elements representing at least one of the one or more characteristics of the client associated with the portable client computing device; and the client computing device processor configured to receive a verification request data message from the verifier computing device and, using a combination of the one or more token data objects and the verification request data message, generate one or more proof data messages without sending any data messages or requests to the issuer computing device by conducting a modular inverse based at least on an attribute value from the one or more token data objects, generating a first random number and a second random number, computing a first group exponentiation and a second group exponentiation based on the first random number and the second random number, and a group multiplication including at least the first group exponentiation and the second group exponentiation, the group multiplication utilized to establish proof responses in a sigma protocol that are encapsulated into a proof data message of the one or more proof data messages. 2. The computer implemented system of claim 1 , wherein the verification request data message includes at least a nonce c 0 ; and the client computing device processor is configured to: compute t=x −1 mod p, where x is an attribute value from the one or more token data objects, and p is an order of the discrete log group; t is a modular inverse of x mod p; uniformly sample a first random number r 1 and a second random number, r 2 , such that r 1 , r 2 ∈ p ; compute R=C x r 1 h r 2 here R is a commitment to random values r 1 and r 2 , C x is a commitment to attribute x, h is a group generator; compute c=H(C x ,R,c 0 ), where c is a proof challenge, based at least on the Fiat-Shamir Heuristic; compute z 1 =ct+r 1 and z 2 =−cty+r 2 , where z 1 and z 2 are proof responses based on a Sigma protocol; and encapsulate and transmit the one or more proof data messages including R, z 1 and z 2 as data objects to the verifier computing device, such that the verifier computing device is able to compute c=H(C x ,R,c 0 ) and confirm that g c R=C x z 1 h z 2 , the verifier computing device controlling provisioning of access to a secured resource responsive to the confirmation that g c R=C x z 1 h z 2 . 3. The computer implemented system of claim 1 , wherein the one or more token data objects are pre-loaded into the data storage such that the generation of the proof can be conducted at a time temporally separated from when the one or more token data objects were generated or preloaded. 4. The computer implemented system of claim 1 , wherein the one or more proof data messages are generated such that the one or more proof data messages can be validated using an issuer computing device public encryption key corresponding to the issuer computing device private issuance key. 5. The computer implemented system of claim 1 , wherein g c R=C x z 1 h z 2 indicates that a condition established in the verification request data message is met without having to present the underlying one or more characteristics of the client associated with the portable client computing device. 6. The computer implemented system of claim 1 , wherein the verification request data message includes a blacklist data structure and the one or more proof data messages are generated to establish that the client associated with the portable client computing device does not match one or more identities stored in the blacklist data structure, or wherein the verification request data message includes a whitelist data structure and the one or more proof data messages are generated to establish that the client associated with the portable client computing device matches one or more identities stored in the blacklist data structure. 7. The computer implemented system of claim 1 , wherein the provisioning of access to the secured resource includes transmitting an electronic signal to a physical lock actuator, or to a digital challenge-response mechanism. 8. The computer implemented system of claim 1 , wherein the client computing device processor is a secure enclave processor or a trusted execution environment that is segregated from a general execution environment of the client computing device or the data storage is a secure enclave memory region that is segregated from a general memory region of the client computing device, the secure enclave memory region not accessible by general execution environment of the client computing device. 9. A computer implemented system for communicating data messages between a verifier computing device and a portable client computing device, the data messages establishing authentication of one or more characteristics of a client associated with the portable client computing device, the system comprising: the portable client computing device including at least a client computing device processor and data storage, the data storage storing one or more token data objects received from or computed jointly in a multiparty protocol with an issuer computing device, the one or more token data objects generated using at least a issuer computing device private issuance key, the one or more token data objects each including one or more signed data elements representing at least one of the one or more characteristics of the client associated with the portable client computing device; and the client computing device processor configured to: receive a verification request data message from the verifier computing device including a request to prove a≤b; generate a proof data message wherein G is defined as a discrete log group of prime order p and g and h be generators with unknown discrete logs, numbers q and l are defined such that q−l=2 N ≤p/2 and two whole numbers a and b such that l≤a≤b<q; and G is a discrete log group of prime order p and g and h be generators with unknown discrete logs, considering consider commitments A=g a h m a and B=g b h m b to a and b, respectively, by: computing C=BA −1 =g b−a h m b −m a =g c h m c ; producing bit commitments A i =g a i h m ai , B i =g b i h m bi , C i =g c i h m ci for i ∈{1, . . . , N−1}, where a i b i and c i are the i′th bits of a−l, b−l and c, respectively, m ai , m bi and m ci are sampled randomly; computing A 0 =g a o h m ao =AΠ i=1 N−1 A i −2 i and likewise B 0 =g b 0 h m b0 =B Π i=1 N−1 B i −2 i and C 0 =g c o h m c0 =C Π i=1 N−1 C i −2 i ; for each i ∈{0,1, . . . , N−1}, and repeated through each of A, B, and C: randomly sampling r ai , d′ ai and z′ ai ; computing R ai,a i =h r ai and R ai,(1−a i ) =h z′ ai (A i g −a i ) −d′ ai ; computing d ai =H(A i , R ai,0 , R ai,1 ); computing z ai =(d ai −d′ ai )m ai +r ai ; assigning z ai,a i =z ai , z

Assignees

Inventors

Classifications

  • using hash chains, e.g. blockchains or hash trees · CPC title

  • using tickets or tokens, e.g. Kerberos (network architectures or network communication protocols for entities authentication using tickets in a packet data network H04L63/0807) · CPC title

  • involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD · CPC title

  • H04L9/3218Primary

    using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs · CPC title

  • G06F21/31Primary

    User authentication · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11212102B2 cover?
A computer implemented system for electronic verification of credentials including at least one processor and data storage is described in various embodiments. The system includes cryptographic mechanisms and electronic communication between one or more computing systems that in concert, provide verification of a prover's credentials in accordance to logical conditions of a verifier's policy wi…
Who is the assignee on this patent?
Royal Bank Of Canada
What technology area does this patent fall under?
Primary CPC classification H04L9/3218. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Dec 28 2021 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 6 related publications on this page (citations in our corpus or others sharing the same primary CPC).