Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All

RsaEncryptionCookieTransform Class

.NET Framework 4.6 and 4.5

Encrypts a cookie using RSA.


Namespace:  System.IdentityModel
Assembly:  System.IdentityModel (in System.IdentityModel.dll)

public class RsaEncryptionCookieTransform : CookieTransform

The RsaEncryptionCookieTransform type exposes the following members.

Public methodRsaEncryptionCookieTransform(RSA)Initializes a new instance of the RsaEncryptionCookieTransform class that uses the specified key for encryption and decryption.
Public methodRsaEncryptionCookieTransform(X509Certificate2)Initializes a new instance of the RsaEncryptionCookieTransform class that uses the private key of the specified X.509 certificate for encryption and decryption.

Protected propertyDecryptionKeysGets the keys used for decryption By default, this property returns a list that contains only the encryption key.
Public propertyEncryptionKeyGets or sets the RSA key used for encryption
Public propertyHashNameGets or sets the name of the hash algorithm to use.

Public methodDecodeDecrypts the specified data by using the provided RSA key(s) to decrypt an AES key, which decrypts the cookie. (Overrides CookieTransform.Decode(Byte[]).)
Public methodEncodeEncodes the specified data. The data is encrypted using the default encryption algorithm (AES-256), then the AES key is encrypted using RSA and the RSA public key is appended. (Overrides CookieTransform.Encode(Byte[]).)
Public methodEquals(Object)Determines whether the specified object is equal to the current object. (Inherited from Object.)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.)
Public methodGetHashCodeServes as the default hash function. (Inherited from Object.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)

Cookies encrypted with this transform may be decrypted by any computer that shares the same RSA private key (generally associated with an X.509 certificate).

The given data is encrypted using a random AES256 key. This key is then encrypted using RSA, and the RSA public key is sent in plain text so that when decoding the class knows which RSA key to use.

Important noteImportant

When using the RsaEncryptionCookieTransform with a service, if a key provided by a certificate changes the service must be restarted.

.NET Framework

Supported in: 4.6, 4.5

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
© 2015 Microsoft