Abstract: Techniques for server control of client authorization proof of possession are described herein. In various embodiments, a first server provisions client authorization proof of possession for a client device a real-world time, a client public key, and a client private key. The first server generates provisioning response message(s) including the client public key, the client private key, the real -world time, and/or an assertion object, and sends the message(s) to the client device. In various embodiments, a client device obtains an authorization proof token generated based on a client public key, a client private key, and a real-world time provisioned by a first server. The client device generates a request and sends the request to a second server, the request includes the authorization proof token and an assertion object from the first server signed by a server private key and an expiration time and a reference to the client public key.
CLAIMS
1. A method comprising:
at a first server including one or more processors and a non-transitory memory:
provisioning for a client device a real-world time, a client public key, and a client
private key;
generating one or more provisioning response messages that include one or more of the
client public key, the client private key, the real-world time, and an assertion object, wherein
the assertion object includes a reference to the client public key; and
sending the one or more provisioning response messages to the client device.
2. The method of claim 1, wherein the provisioning request includes an initial
provisioning token for the client device, and the method further includes:
receiving, via a second server, a request for the initial provisioning token from the client
device, wherein the request includes a unique identifier associated with the client device;
generating the initial provisioning token in response to receiving the request, including
binding data to be included in the assertion object to the unique identifier; and
sending, via the second server, the initial provisioning token to the client device.
3. The method of claim 2, wherein:
a code is generated by the second server, bounded to the unique identifier, and provided
to the client device by the second server upon successful authentication of the client device by
the second server; and
the request for the initial provisioning token is forwarded by the second server upon a
successful validation of a code from the client device.
4. The method of claim 2, wherein the assertion object is signed with a key, and the
method further includes:
sharing the key with the second server to validate the assertion object.
5. The method of claim 2, further comprising:
receiving a validation request from the second server, wherein the validation request
includes the assertion object; and
sending to the second server a validation indicator upon validating the assertion object.
41
6. The method of claim 2, wherein:
the first server and the second server are distinct from a third server for providing
resources to the client device; and
the second server receives an authorization request for access to the third server
including an application access token and parameters associated with the third server, validates
the authorization request, and upon validating the authorization request, generates a resource
server access token for access to the third server based on the parameters and sends the resource
server access token to the device.
7. The method of claim 1, further comprising:
provisioning a symmetric signing key unique for the client device, wherein the client
device uses the symmetric signing key to sign an authorization proof token, and the signed
authorization proof token is verifiable by a third server.
8. The method of claim 7, further comprising:
synchronizing a secret between the first server and a second server, wherein the second
server shares the secret with the third server,
wherein provisioning the symmetric signing key unique for the client device includes:
generating a wrap for the symmetric signing key by encrypting the symmetric
signing key with the secret, and
sending the symmetric signing key, the wrap, and a key identifier associated
with the secret to the client device.
9. The method of claim 7, further comprising:
synchronizing a seed between the first server and a second server, wherein the second
server shares the seed with the third server,
wherein provisioning the symmetric signing key unique for the client device includes:
deriving the symmetric signing key from the seed, and
sending the symmetric signing key and a key identifier associated with the seed
to the client device.
10. The method of claim 7, wherein provisioning the symmetric signing key unique for the
client device includes causing the third server to store the symmetric signing key and a client
identifier associated with the symmetric signing key in a data store.
| # | Name | Date |
|---|---|---|
| 1 | 202447045057-STATEMENT OF UNDERTAKING (FORM 3) [11-06-2024(online)].pdf | 2024-06-11 |
| 2 | 202447045057-REQUEST FOR EXAMINATION (FORM-18) [11-06-2024(online)].pdf | 2024-06-11 |
| 3 | 202447045057-PROOF OF RIGHT [11-06-2024(online)].pdf | 2024-06-11 |
| 4 | 202447045057-PRIORITY DOCUMENTS [11-06-2024(online)].pdf | 2024-06-11 |
| 5 | 202447045057-POWER OF AUTHORITY [11-06-2024(online)].pdf | 2024-06-11 |
| 6 | 202447045057-NOTIFICATION OF INT. APPLN. NO. & FILING DATE (PCT-RO-105-PCT Pamphlet) [11-06-2024(online)].pdf | 2024-06-11 |
| 7 | 202447045057-FORM 18 [11-06-2024(online)].pdf | 2024-06-11 |
| 8 | 202447045057-FORM 1 [11-06-2024(online)].pdf | 2024-06-11 |
| 9 | 202447045057-DRAWINGS [11-06-2024(online)].pdf | 2024-06-11 |
| 10 | 202447045057-DECLARATION OF INVENTORSHIP (FORM 5) [11-06-2024(online)].pdf | 2024-06-11 |
| 11 | 202447045057-COMPLETE SPECIFICATION [11-06-2024(online)].pdf | 2024-06-11 |
| 12 | 202447045057-CLAIMS UNDER RULE 1 (PROVISIO) OF RULE 20 [11-06-2024(online)].pdf | 2024-06-11 |
| 13 | 202447045057-FORM 3 [10-09-2024(online)].pdf | 2024-09-10 |