US6065117A
Expired / Lapsed
US
⏱️ 0.0 years remaining
Systems, methods and computer program products for sharing state information between a stateless server and a stateful client
Assignee: International Business Machines Corp
•
Filing: 1997-07-16
•
Granted: 2000-05-16
•
Expires: 2017-07-16
Abstract
Abstract Systems, methods and computer program products for sharing state information between a stateless server and a stateful client are provided. A client request to perform an action on the server is accompanied by an encrypted token which contains state information. The server receiving the client request decrypts the token using a symmetric key generated from variable data. The server verifies that the received token is valid and uses the state information contained therein to perform the requested action. The server also provides clients with encrypted tokens using a symmetric key generated from variable data.
Inventors
- 👤 John Gregg White
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-07 18:39
CPC Classifications
G; G06; G06Q; G06Q20/00; G06Q20/38; G06Q20/382; G06Q20/30; G06Q20/36; G06Q20/367; H; H04; H04L; H04L9/00; H04L9/08; H04L9/0861; H04L9/0869; H04L9/32; H04L9/3234; H04L2209/00; H04L2209/56
Claims Analysis
Total Claims: 29
Claim 1
Independent Claim
61 words
A method of providing state information between a stateless server and a stateful client, said method comprising the steps of: receiving a client request to perform a server action; responsive to receiving the client request, performing the action and creating a token containing post-action state information; encrypting the created token; and sending the encrypted token and action output to the client.
Claim 2
Independent Claim
61 words
A method of providing state information between a stateless server and a stateful client, said method comprising the steps of: receiving a client request to perform a server action; responsive to receiving the client request, performing the action and creating a token containing post-action state information; encrypting the created token; and sending the encrypted token and action output to the client.
Claim 3
Dependent Claim
56 words
A method according to claim 1, further comprising the steps of: receiving from the client the encrypted token with a subsequent client request to perform a server action; and responsive to receiving the subsequent client request, decrypting the received encrypted token; and responsive to decrypting the received encrypted token, verifying that the received token is valid.
Claim 4
Dependent Claim
50 words
A method according to claim 2, wherein the step of decrypting a received encrypted token comprises the steps of: selecting a second value of the first variable seed; generating a second symmetric key using the selected seed second value; and decrypting the received encrypted token using the second symmetric key.
Claim 5
Dependent Claim
42 words
A method according to claim 3, wherein the step of generating a second symmetric key comprises using the selected variable seed second value as input to a pseudorandom number generator used by a symmetric encryption routine to generate the second symmetric key.
Claim 6
Dependent Claim
46 words
A method according to claim 1, wherein said step of encrypting the token comprises the steps of: selecting a first value of a first variable seed; generating a first symmetric key using the selected seed first value; and encrypting the token using the first symmetric key.
Claim 7
Dependent Claim
42 words
A method according to claim 5, wherein the step of generating a first symmetric key comprises using the selected variable seed first value as input to a pseudorandom number generator used by a symmetric encryption routine to generate the first symmetric key.
Claim 8
Dependent Claim
29 words
A method according to claim 5, wherein the step of generating a first symmetric key comprises generating the selected variable seed first value from a plurality of variable inputs.
Claim 9
Independent Claim
37 words
A method of providing state information between a stateless server and a stateful client, said method comprising the steps of: sending a client request to perform a server action; and receiving from the server an encrypted token.
Claim 10
Independent Claim
37 words
A method of providing state information between a stateless server and a stateful client, said method comprising the steps of: sending a client request to perform a server action; and receiving from the server an encrypted token.
Claim 11
Dependent Claim
22 words
A method according to claim 8, further comprising sending the encrypted token with a subsequent client request to perform a server action.
Claim 12
Independent Claim
124 words
A method of providing state information between a stateless server and a stateful client, said method comprising the steps of: sending an encrypted token with a client request to perform a server action; receiving the encrypted token with the client request to perform a server action from the client; responsive to receiving the client request, decrypting the received encrypted token; responsive to decrypting the received encrypted authentication token, verifying that the received token is valid; responsive to verifying that the received token is valid, using state information contained therein to perform the requested action; responsive to performing the requested action, replacing previous state information with new state information in the token; encrypting the token; and sending encrypted token and action output to the client.
Claim 13
Independent Claim
124 words
A method of providing state information between a stateless server and a stateful client, said method comprising the steps of: sending an encrypted token with a client request to perform a server action; receiving the encrypted token with the client request to perform a server action from the client; responsive to receiving the client request, decrypting the received encrypted token; responsive to decrypting the received encrypted authentication token, verifying that the received token is valid; responsive to verifying that the received token is valid, using state information contained therein to perform the requested action; responsive to performing the requested action, replacing previous state information with new state information in the token; encrypting the token; and sending encrypted token and action output to the client.
Claim 14
Dependent Claim
44 words
A method according to claim 10, wherein the step of decrypting a received encrypted token comprises the steps of: selecting a variable seed value; generating a symmetric key using the selected variable seed value; and decrypting the received encrypted token using the symmetric key.
Claim 15
Dependent Claim
40 words
A method according to claim 11, wherein the step of encrypting a received token comprises the steps of: using the symmetric key generated key generated during decryption; and encrypting the decrypted token with updated state information using the symmetric key.
Claim 16
Dependent Claim
76 words
A data processing system for providing state information between a stateless server and a stateful client, said data processing system comprising: means for receiving a client request to perform a server action; means, responsive to said client request receiving means, for performing the action and creating a token containing post-action state information; means for encrypting the created token; and means, responsive to said encrypting means, for sending the encrypted token and action output to the client.
Claim 17
Dependent Claim
76 words
A data processing system for providing state information between a stateless server and a stateful client, said data processing system comprising: means for receiving a client request to perform a server action; means, responsive to said client request receiving means, for performing the action and creating a token containing post-action state information; means for encrypting the created token; and means, responsive to said encrypting means, for sending the encrypted token and action output to the client.
Claim 18
Dependent Claim
62 words
A data processing system according to claim 13, further comprising: means for receiving from the client the encrypted token with a subsequent client request to perform a server action; and means, responsive to said means for receiving the subsequent client request, for decrypting the received encrypted token; and means, responsive to said decrypting means, for verifying that the received token is valid.
Claim 19
Dependent Claim
65 words
A data processing system according to claim 14, wherein said means for decrypting a received encrypted token comprises: means for selecting a second value of the first variable seed; means, responsive to said selecting means, for generating a second symmetric key using the selected seed second value; and means, responsive to said generating means, for decrypting the received encrypted token using the second symmetric key.
Claim 20
Dependent Claim
46 words
A data processing system according to claim 15, wherein said means for generating a second symmetric key comprises means for using the selected variable seed second value as input to a pseudorandom number generator used by a symmetric encryption routine to generate the second symmetric key.
Claim 21
Dependent Claim
60 words
A data processing system according to claim 13, wherein said means for encrypting the token comprises: means for selecting a first value of a first seed; means, responsive to said selecting means, for generating a first symmetric key using the selected seed first value; and means, responsive to said generating means, for encrypting the token using the first symmetric key.
Claim 22
Dependent Claim
46 words
A data processing system according to claim 17, wherein said means for generating a first symmetric key comprises means for using the selected variable seed first value as input to a pseudorandom number generator used by a symmetric encryption routine to generate the first symmetric key.
Claim 23
Dependent Claim
33 words
A data processing system according to claim 17, wherein said means for generating a first symmetric key comprises means for generating the selected variable first seed value from a plurality of variable inputs.
Claim 24
Dependent Claim
137 words
A data processing system for providing state information between a stateless server and a stateful client, said data processing system comprising: means for sending an encrypted token with a client request to perform a server action; means for receiving the encrypted token with the client request to perform a server action from the client; means, responsive to said means for receiving the client request, for decrypting the received encrypted token; means, responsive to said decrypting means, for verifying that the received token is valid; means, responsive to said verifying means, for using state information contained therein to perform the requested action; means, responsive to said performing means, for replacing previous state information with new state information in the token; means for encrypting the token; and means for sending the encrypted token and action output to the client.
Claim 25
Dependent Claim
137 words
A data processing system for providing state information between a stateless server and a stateful client, said data processing system comprising: means for sending an encrypted token with a client request to perform a server action; means for receiving the encrypted token with the client request to perform a server action from the client; means, responsive to said means for receiving the client request, for decrypting the received encrypted token; means, responsive to said decrypting means, for verifying that the received token is valid; means, responsive to said verifying means, for using state information contained therein to perform the requested action; means, responsive to said performing means, for replacing previous state information with new state information in the token; means for encrypting the token; and means for sending the encrypted token and action output to the client.
Claim 26
Dependent Claim
49 words
A data processing system according to claim 20, wherein said means for decrypting a received encrypted token comprises: means for selecting a variable seed value; means for generating a symmetric key using the selected variable seed value; and means for decrypting the received encrypted token using the symmetric key.
Claim 27
Dependent Claim
128 words
A computer program product for providing state information between a stateless server and a stateful client, said computer program product comprising: a computer usable medium having computer readable program code means embodied in said medium for receiving a client request to perform a server action; the computer usable medium having computer readable program code means embodied in said medium, responsive to said client request receiving means, for performing the action and creating a token containing post-action state information; the computer usable medium having computer readable program code means embodied in said medium for encrypting the created token; and the computer usable medium having computer readable program code means embodied in said medium, responsive to said encrypting means, for sending the encrypted token and action output to the client.
Claim 28
Dependent Claim
128 words
A computer program product for providing state information between a stateless server and a stateful client, said computer program product comprising: a computer usable medium having computer readable program code means embodied in said medium for receiving a client request to perform a server action; the computer usable medium having computer readable program code means embodied in said medium, responsive to said client request receiving means, for performing the action and creating a token containing post-action state information; the computer usable medium having computer readable program code means embodied in said medium for encrypting the created token; and the computer usable medium having computer readable program code means embodied in said medium, responsive to said encrypting means, for sending the encrypted token and action output to the client.
Claim 29
Dependent Claim
85 words
A computer program product according to claim 22, further comprising: computer readable program code means embodied in said medium for receiving from the client the encrypted token with a subsequent client request to perform a server action; computer readable program code means embodied in said medium, responsive to said means for receiving the subsequent client request, for decrypting the received encrypted token; and computer readable program code means embodied in said medium, responsive to said decrypting means, for verifying that the received token is valid.
References Cited (Backward Citations)
US5138712A
Cited
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2003-05-16 | 2003-11-15 | 2004-05-16 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2007-05-16 | 2007-11-15 | 2008-05-16 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2011-05-16 | 2011-11-15 | 2012-05-16 | $7700.00 | Window Closed / Lapsed |