36. A system comprising: one or more computers; and a computer-readable storage medium coupled to the one or more computers having instructions stored thereon which, when executed by the one or more computers, cause the one or more computers to perform operations comprising: receiving a request to access the RP from a user, the request comprising a second representation of an access token, the second representation of the access token being modifiable by the user based on a first representation of the access token issued to the user by the IdP, the second representation of the access token being unlinkable to the first representation of the access token by the RP and the IdP individually, and the second representation of the access token being unlinkable to the first representation of the access token by the RP and the IdP in collusion; if the first representation of the access token is publicly verifiable, verifying, by a processor, the second representation of the access token; and providing access to the user upon successful verification of the second representation of the access token; if the first representation of the access token is privately verifiable by the IdP, presenting the second representation of the access token to the IdP for verification; and providing access to the user if the IdP successfully verifies the second representation of the access token.
36. A system comprising: one or more computers; and a computer-readable storage medium coupled to the one or more computers having instructions stored thereon which, when executed by the one or more computers, cause the one or more computers to perform operations comprising: receiving a request to access the RP from a user, the request comprising a second representation of an access token, the second representation of the access token being modifiable by the user based on a first representation of the access token issued to the user by the IdP, the second representation of the access token being unlinkable to the first representation of the access token by the RP and the IdP individually, and the second representation of the access token being unlinkable to the first representation of the access token by the RP and the IdP in collusion; if the first representation of the access token is publicly verifiable, verifying, by a processor, the second representation of the access token; and providing access to the user upon successful verification of the second representation of the access token; if the first representation of the access token is privately verifiable by the IdP, presenting the second representation of the access token to the IdP for verification; and providing access to the user if the IdP successfully verifies the second representation of the access token. 40. The system of claim 36 , wherein the request further comprises a pre-image, the pre-image supports both fixed-format and free-format information structures, the pre-image includes user-specific information that is revealed to the RP but not to the IdP, and the first representation of the access token is generated from the pre-image through cryptographic transformations by the user and the IdP.