A method is disclosed for avoiding the storage of client state on a
server. Based on a local key that is not known to a client, a server
encrypts the client's state information. The client's state information
may include, for example, the client's authentication credentials, the
client's authorization characteristics, and a shared secret key that the
server can use to encrypt and authenticate communication to and from the
client. By any of a variety of mechanisms, the encrypted client state
information is provided to the client. The server may free memory that
stored the client's state information. When the server needs the client's
state information, the client sends, to the server, the encrypted state
information that the client stored. The server decrypts the client state
information using the local key. Because each client stores that client's
own state information in encrypted form, the server does not need to
store any client's state information permanently.