[ Team LiB ] Previous Section Next Section

AsymmetricAlgorithmdisposable

System.Security.Cryptography (mscorlib.dll)abstract class
public abstract class AsymmetricAlgorithm : IDisposable {
// Protected Constructors
   protected AsymmetricAlgorithm(  );
// Protected Instance Fields
   protected int KeySizeValue;
   protected KeySizes[  ] LegalKeySizesValue;
// Public Instance Properties
   public abstract string KeyExchangeAlgorithm{get; }
   public virtual int KeySize{set; get; }
   public virtual KeySizes[  ] LegalKeySizes{get; }
   public abstract string SignatureAlgorithm{get; }
// Public Static Methods
   public static AsymmetricAlgorithm Create(  );
   public static AsymmetricAlgorithm Create(string algName);
// Public Instance Methods
   public void Clear(  );
   public abstract void FromXmlString(string xmlString);
   public abstract string ToXmlString(bool includePrivateParameters);
// Protected Instance Methods
   protected abstract void Dispose(bool disposing);
}

An asymmetric algorithm is one where the sender and the recipient do not share the same knowledge (i.e. only one party knows the secret key). All asymmetric algorithm implementation classes inherit from this abstract class. Implementations are instantiated using the Create( ) method, which accepts the name of an implementation as a String argument; the default implementation class is created if no name is specified; the system administrator determines the default class.

The LegalKeySizes property returns an array of the KeySizes class, specifing the set of key lengths supported by an implementation class. The KeySize property gets or sets the key length. The FromXmlString( ) and ToXmlString( ) methods import and export key parameters as XML strings.

Differences in the design of asymmetric algorithms mean that there is little common functionality embodied in this type; individual algorithm classes, such as RSA and DSA, define members for data encryption and digital signatures.

Subclasses

DSA, RSA

Returned By

System.Security.Cryptography.Xml.SignedXml.{GetPublicKey( ), SigningKey}

Passed To

Multiple types

    [ Team LiB ] Previous Section Next Section