<?xml version="1.0" encoding="utf-8"?>
<doc>
  <assembly>
    <name>System.Security.Cryptography</name>
  </assembly>
  <members>
    <member name="T:Microsoft.Win32.SafeHandles.SafeNCryptHandle">
      <summary>Provides a safe handle that can be used by Cryptography Next Generation (CNG) objects.</summary>
    </member>
    <member name="M:Microsoft.Win32.SafeHandles.SafeNCryptHandle.#ctor">
      <summary>Initializes a new instance of the <see cref="T:Microsoft.Win32.SafeHandles.SafeNCryptHandle" /> class.</summary>
    </member>
    <member name="M:Microsoft.Win32.SafeHandles.SafeNCryptHandle.#ctor(System.IntPtr,System.Runtime.InteropServices.SafeHandle)">
      <summary>Instantiates a new instance of the <see cref="T:Microsoft.Win32.SafeHandles.SafeNCryptHandle" /> class.</summary>
      <param name="handle">The pre-existing handle to use. Using <see cref="F:System.IntPtr.Zero" /> returns an invalid handle.</param>
      <param name="parentHandle">The parent handle of this <see cref="T:Microsoft.Win32.SafeHandles.SafeNCryptHandle" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="parentHandle" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="parentHandle" /> is closed.  
  
 -or-  
  
 <paramref name="parentHandle" /> is invalid.</exception>
    </member>
    <member name="M:Microsoft.Win32.SafeHandles.SafeNCryptHandle.ReleaseHandle">
      <summary>Releases a handle used by a Cryptography Next Generation (CNG) object.</summary>
      <returns>
        <see langword="true" /> if the handle is released successfully; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:Microsoft.Win32.SafeHandles.SafeNCryptHandle.ReleaseNativeHandle">
      <summary>Releases a native handle used by a Cryptography Next Generation (CNG) object.</summary>
      <returns>
        <see langword="true" /> if the handle is released successfully; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="T:Microsoft.Win32.SafeHandles.SafeNCryptKeyHandle">
      <summary>Provides a safe handle that represents a key (NCRYPT_KEY_HANDLE).</summary>
    </member>
    <member name="M:Microsoft.Win32.SafeHandles.SafeNCryptKeyHandle.#ctor">
      <summary>Initializes a new instance of the <see cref="T:Microsoft.Win32.SafeHandles.SafeNCryptKeyHandle" /> class.</summary>
    </member>
    <member name="M:Microsoft.Win32.SafeHandles.SafeNCryptKeyHandle.#ctor(System.IntPtr,System.Runtime.InteropServices.SafeHandle)">
      <summary>Instantiates a new instance of the <see cref="T:Microsoft.Win32.SafeHandles.SafeNCryptKeyHandle" /> class.</summary>
      <param name="handle">The pre-existing handle to use. Using <see cref="F:System.IntPtr.Zero" /> returns an invalid handle.</param>
      <param name="parentHandle">The parent handle of this <see cref="T:Microsoft.Win32.SafeHandles.SafeNCryptKeyHandle" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="parentHandle" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="parentHandle" /> is closed.  
  
 -or-  
  
 <paramref name="parentHandle" /> is invalid.</exception>
    </member>
    <member name="T:Microsoft.Win32.SafeHandles.SafeNCryptProviderHandle">
      <summary>Provides a safe handle that represents a key storage provider (NCRYPT_PROV_HANDLE).</summary>
    </member>
    <member name="M:Microsoft.Win32.SafeHandles.SafeNCryptProviderHandle.#ctor">
      <summary>Initializes a new instance of the <see cref="T:Microsoft.Win32.SafeHandles.SafeNCryptProviderHandle" /> class.</summary>
    </member>
    <member name="T:Microsoft.Win32.SafeHandles.SafeNCryptSecretHandle">
      <summary>Provides a safe handle that represents a secret agreement value (NCRYPT_SECRET_HANDLE).</summary>
    </member>
    <member name="M:Microsoft.Win32.SafeHandles.SafeNCryptSecretHandle.#ctor">
      <summary>Initializes a new instance of the <see cref="T:Microsoft.Win32.SafeHandles.SafeNCryptSecretHandle" /> class.</summary>
    </member>
    <member name="T:Microsoft.Win32.SafeHandles.SafeX509ChainHandle">
      <summary>Provides a wrapper class that represents the handle of an X.509 chain object. For more information, see <see cref="T:System.Security.Cryptography.X509Certificates.X509Chain" />.</summary>
    </member>
    <member name="M:Microsoft.Win32.SafeHandles.SafeX509ChainHandle.#ctor">
      <summary>Creates a <see cref="T:Microsoft.Win32.SafeHandles.SafeX509ChainHandle" />.</summary>
    </member>
    <member name="T:System.Security.Cryptography.Aes">
      <summary>Represents the abstract base class from which all implementations of the Advanced Encryption Standard (AES) must inherit.</summary>
    </member>
    <member name="M:System.Security.Cryptography.Aes.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Aes" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.Aes.Create">
      <summary>Creates a cryptographic object that is used to perform the symmetric algorithm.</summary>
      <returns>A cryptographic object that is used to perform the symmetric algorithm.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Aes.Create(System.String)">
      <summary>Creates a cryptographic object that specifies the implementation of AES to use to perform the symmetric algorithm.</summary>
      <param name="algorithmName">The name of the specific implementation of AES to use.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="algorithmName" /> parameter is <see langword="null" />.</exception>
      <returns>A cryptographic object that is used to perform the symmetric algorithm.</returns>
    </member>
    <member name="T:System.Security.Cryptography.AesCcm">
      <summary>Represents an Advanced Encryption Standard (AES) key to be used with the Counter with CBC-MAC (CCM) mode of operation.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AesCcm.#ctor(System.Byte[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.AesCcm" /> class with a provided key.</summary>
      <param name="key">The secret key to use for this instance.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="key" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The <paramref name="key" /> parameter length is other than 16, 24, or 32 bytes (128, 192, or 256 bits).</exception>
    </member>
    <member name="M:System.Security.Cryptography.AesCcm.#ctor(System.ReadOnlySpan{System.Byte})">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.AesCcm" /> class with a provided key.</summary>
      <param name="key">The secret key to use for this instance.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The <paramref name="key" /> parameter length is other than 16, 24, or 32 bytes (128, 192, or 256 bits).</exception>
    </member>
    <member name="M:System.Security.Cryptography.AesCcm.Decrypt(System.Byte[],System.Byte[],System.Byte[],System.Byte[],System.Byte[])">
      <summary>Decrypts the ciphertext into the provided destination buffer if the authentication tag can be validated.</summary>
      <param name="nonce">The nonce associated with this message, which must match the value provided during encryption.</param>
      <param name="ciphertext">The encrypted content to decrypt.</param>
      <param name="tag">The authentication tag produced for this message during encryption.</param>
      <param name="plaintext">The byte array to receive the decrypted contents.</param>
      <param name="associatedData">Extra data associated with this message, which must match the value provided during encryption.</param>
      <exception cref="T:System.ArgumentException">The <paramref name="plaintext" /> parameter and the <paramref name="ciphertext" /> do not have the same length.

-or-

The <paramref name="nonce" /> parameter length is not permitted by <see cref="P:System.Security.Cryptography.AesCcm.NonceByteSizes" />.

-or-

The <paramref name="tag" /> parameter length is not permitted by <see cref="P:System.Security.Cryptography.AesCcm.TagByteSizes" />.</exception>
      <exception cref="T:System.ArgumentNullException">The <paramref name="nonce" />, <paramref name="ciphertext" />, <paramref name="tag" />, or <paramref name="plaintext" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The decryption operation failed. Prior to .NET 8, indicates the tag value could not be verified.</exception>
      <exception cref="T:System.Security.Cryptography.AuthenticationTagMismatchException">.NET 8 and later versions: the tag value could not be verified.</exception>
    </member>
    <member name="M:System.Security.Cryptography.AesCcm.Decrypt(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Decrypts the ciphertext into the provided destination buffer if the authentication tag can be validated.</summary>
      <param name="nonce">The nonce associated with this message, which must match the value provided during encryption.</param>
      <param name="ciphertext">The encrypted content to decrypt.</param>
      <param name="tag">The authentication tag produced for this message during encryption.</param>
      <param name="plaintext">The byte span to receive the decrypted contents.</param>
      <param name="associatedData">Extra data associated with this message, which must match the value provided during encryption.</param>
      <exception cref="T:System.ArgumentException">The <paramref name="plaintext" /> parameter and the <paramref name="ciphertext" /> do not have the same length.

-or-

The <paramref name="nonce" /> parameter length is not permitted by <see cref="P:System.Security.Cryptography.AesCcm.NonceByteSizes" />.

-or-

The <paramref name="tag" /> parameter length is not permitted by <see cref="P:System.Security.Cryptography.AesCcm.TagByteSizes" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The decryption operation failed. Prior to .NET 8, indicates the tag value could not be verified.</exception>
      <exception cref="T:System.Security.Cryptography.AuthenticationTagMismatchException">.NET 8 and later versions: the tag value could not be verified.</exception>
    </member>
    <member name="M:System.Security.Cryptography.AesCcm.Dispose">
      <summary>Releases the resources used by the current instance of the <see cref="T:System.Security.Cryptography.AesCcm" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AesCcm.Encrypt(System.Byte[],System.Byte[],System.Byte[],System.Byte[],System.Byte[])">
      <summary>Encrypts the plaintext into the ciphertext destination buffer and generates the authentication tag into a separate buffer.</summary>
      <param name="nonce">The nonce associated with this message, which should be a unique value for every operation with the same key.</param>
      <param name="plaintext">The content to encrypt.</param>
      <param name="ciphertext">The byte array to receive the encrypted contents.</param>
      <param name="tag">The byte array to receive the generated authentication tag.</param>
      <param name="associatedData">Extra data associated with this message, which must also be provided during decryption.</param>
      <exception cref="T:System.ArgumentException">The <paramref name="plaintext" /> parameter and the <paramref name="ciphertext" /> do not have the same length.

-or-

The <paramref name="nonce" /> parameter length is not permitted by <see cref="P:System.Security.Cryptography.AesCcm.NonceByteSizes" />.

-or-

The <paramref name="tag" /> parameter length is not permitted by <see cref="P:System.Security.Cryptography.AesCcm.TagByteSizes" />.</exception>
      <exception cref="T:System.ArgumentNullException">The <paramref name="nonce" />, <paramref name="ciphertext" />, <paramref name="tag" />, or <paramref name="plaintext" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The encryption operation failed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.AesCcm.Encrypt(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Encrypts the plaintext into the ciphertext destination buffer and generates the authentication tag into a separate buffer.</summary>
      <param name="nonce">The nonce associated with this message, which should be a unique value for every operation with the same key.</param>
      <param name="plaintext">The content to encrypt.</param>
      <param name="ciphertext">The byte span to receive the encrypted contents.</param>
      <param name="tag">The byte span to receive the generated authentication tag.</param>
      <param name="associatedData">Extra data associated with this message, which must also be provided during decryption.</param>
      <exception cref="T:System.ArgumentException">The <paramref name="plaintext" /> parameter and the <paramref name="ciphertext" /> do not have the same length.

-or-

The <paramref name="nonce" /> parameter length is not permitted by <see cref="P:System.Security.Cryptography.AesCcm.NonceByteSizes" />.

-or-

The <paramref name="tag" /> parameter length is not permitted by <see cref="P:System.Security.Cryptography.AesCcm.TagByteSizes" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The encryption operation failed.</exception>
    </member>
    <member name="P:System.Security.Cryptography.AesCcm.IsSupported">
      <summary>Gets a value that indicates whether the algorithm is supported on the current platform.</summary>
      <returns>
        <see langword="true" /> if the algorithm is supported; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AesCcm.NonceByteSizes">
      <summary>Gets the nonce sizes, in bytes, supported by this instance.</summary>
      <returns>The nonce sizes supported by this instance: 7, 8, 9, 10, 11, 12, or 13 bytes (56, 64, 72, 80, 88, 96, or 104 bits).</returns>
    </member>
    <member name="P:System.Security.Cryptography.AesCcm.TagByteSizes">
      <summary>Gets the tag sizes, in bytes, supported by this instance.</summary>
      <returns>The tag sizes supported by this instance: 4, 6, 8, 10, 12, 14, or 16 bytes (32, 48, 64, 80, 96, 112, or 128 bits).</returns>
    </member>
    <member name="T:System.Security.Cryptography.AesCng">
      <summary>Provides a Cryptography Next Generation (CNG) implementation of the Advanced Encryption Standard (AES) algorithm.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AesCng.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.AesCng" /> class with an ephemeral key.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AesCng.#ctor(System.String,System.Security.Cryptography.CngProvider,System.Security.Cryptography.CngKeyOpenOptions)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.AesCng" /> class with the specified key name, which represents an existing persisted AES key,  the specified key storage provider (KSP) and key open options.</summary>
      <param name="keyName">The name of the key.</param>
      <param name="provider">The KSP that contains the key.</param>
      <param name="openOptions">A bitwise combination of the enumeration values that specify options for opening the key, such as where the key is opened from (machine or user storage) and whether to suppress UI prompting.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="keyName" /> is <see langword="null" />.

 -or-

 <paramref name="provider" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">Cryptography Next Generation (CNG) is not supported on this system.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">All other errors.</exception>
    </member>
    <member name="M:System.Security.Cryptography.AesCng.#ctor(System.String,System.Security.Cryptography.CngProvider)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.AesCng" /> class with the specified key name, which represents an existing persisted AES key, and the specified key storage provider (KSP).</summary>
      <param name="keyName">The name of the key.</param>
      <param name="provider">The KSP that contains the key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="keyName" /> is <see langword="null" />.

 -or-

 <paramref name="provider" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">Cryptography Next Generation (CNG) is not supported on this system.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">All other errors.</exception>
    </member>
    <member name="M:System.Security.Cryptography.AesCng.#ctor(System.String)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.AesCng" /> class with the specified key name, which represents an existing persisted AES key.</summary>
      <param name="keyName">The name of the key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="keyName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">Cryptography Next Generation (CNG) is not supported on this system.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">All other errors.</exception>
    </member>
    <member name="M:System.Security.Cryptography.AesCng.CreateDecryptor">
      <summary>Creates a symmetric AES decryptor object with the current key and initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />).</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">.NET 6 and later: CFB128 mode is selected and the key is persisted.</exception>
      <returns>A symmetric AES decryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AesCng.CreateDecryptor(System.Byte[],System.Byte[])">
      <summary>Creates a symmetric AES decryptor object with the specified key and initialization vector (IV).</summary>
      <param name="rgbKey">The secret key to use for the AES algorithm. The key size must be 128, 192, or 256 bits.</param>
      <param name="rgbIV">The initialization vector to use for the AES algorithm.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="rgbKey" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="rgbKey" /> is not a valid size for this algorithm.

 -or-

 <paramref name="rgbIV" /> size does not match the block size for this algorithm.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="rgbKey" /> is a known weak key for this algorithm and cannot be used.

 -or-

 <paramref name="rgbIV" /> is <see langword="null" />.</exception>
      <returns>A symmetric AES decryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AesCng.CreateEncryptor">
      <summary>Creates a symmetric AES encryptor object using the current key and initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />).</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">.NET 6 and later: CFB128 mode is selected and the key is persisted.</exception>
      <returns>A symmetric AES encryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AesCng.CreateEncryptor(System.Byte[],System.Byte[])">
      <summary>Creates a symmetric AES encryptor object with the specified key and initialization vector (IV).</summary>
      <param name="rgbKey">The secret key to use for the AES algorithm. The key size must be 128, 192, or 256 bits.</param>
      <param name="rgbIV">The initialization vector to use for the AES algorithm.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="rgbKey" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="rgbKey" /> is not a valid size for this algorithm.

 -or-

 <paramref name="rgbIV" /> size does not match the block size for this algorithm.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="rgbKey" /> is a known weak key for this algorithm and cannot be used.

 -or-

 <paramref name="rgbIV" /> is <see langword="null" />.</exception>
      <returns>A symmetric AES encryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AesCng.GenerateIV">
      <summary>Generates a random initialization vector (IV) to use for the AES algorithm.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AesCng.GenerateKey">
      <summary>Generates a random key to use for the AES algorithm.</summary>
    </member>
    <member name="P:System.Security.Cryptography.AesCng.Key">
      <summary>Gets or sets the key for the <see cref="T:System.Security.Cryptography.AesCng" /> algorithm.</summary>
      <returns>The key for the <see cref="T:System.Security.Cryptography.AesCng" /> algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AesCng.KeySize">
      <summary>Gets or sets the size, in bits, of the secret key used by the <see cref="T:System.Security.Cryptography.AesCng" /> algorithm.</summary>
      <returns>The size, in bits, of the secret key used by the <see cref="T:System.Security.Cryptography.AesCng" /> algorithm.</returns>
    </member>
    <member name="T:System.Security.Cryptography.AesCryptoServiceProvider">
      <summary>Performs symmetric encryption and decryption using the Cryptographic Application Programming Interfaces (CAPI) implementation of the Advanced Encryption Standard (AES) algorithm.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AesCryptoServiceProvider.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.AesCryptoServiceProvider" /> class.</summary>
      <exception cref="T:System.PlatformNotSupportedException">There is no supported key size for the current platform.</exception>
    </member>
    <member name="M:System.Security.Cryptography.AesCryptoServiceProvider.CreateDecryptor">
      <summary>Creates a symmetric AES decryptor object using the current key and initialization vector (IV).</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The current key is invalid or missing.</exception>
      <returns>A symmetric AES decryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AesCryptoServiceProvider.CreateDecryptor(System.Byte[],System.Byte[])">
      <summary>Creates a symmetric AES decryptor object using the specified key and initialization vector (IV).</summary>
      <param name="rgbKey">The secret key to use for the symmetric algorithm.</param>
      <param name="rgbIV">The initialization vector to use for the symmetric algorithm.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="iv" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="key" /> is invalid.</exception>
      <returns>A symmetric AES decryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AesCryptoServiceProvider.CreateEncryptor">
      <summary>Creates a symmetric AES encryptor object using the current key and initialization vector (IV).</summary>
      <returns>A symmetric AES encryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AesCryptoServiceProvider.CreateEncryptor(System.Byte[],System.Byte[])">
      <summary>Creates a symmetric encryptor object using the specified key and initialization vector (IV).</summary>
      <param name="rgbKey">The secret key to use for the symmetric algorithm.</param>
      <param name="rgbIV">The initialization vector to use for the symmetric algorithm.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="key" /> or <paramref name="iv" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="key" /> is invalid.</exception>
      <returns>A symmetric AES encryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AesCryptoServiceProvider.GenerateIV">
      <summary>Generates a random initialization vector (IV) to use for the algorithm.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The initialization vector (IV) could not be generated.</exception>
    </member>
    <member name="M:System.Security.Cryptography.AesCryptoServiceProvider.GenerateKey">
      <summary>Generates a random key to use for the algorithm.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be generated.</exception>
    </member>
    <member name="P:System.Security.Cryptography.AesCryptoServiceProvider.BlockSize">
      <summary>Gets or sets the block size, in bits, of the cryptographic operation.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The block size is invalid.</exception>
      <returns>The block size, in bits.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AesCryptoServiceProvider.FeedbackSize">
      <summary>Gets or sets the feedback size, in bits, of the cryptographic operation for the Cipher Feedback (CFB) and Output Feedback (OFB) cipher modes.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The feedback size is larger than the block size.</exception>
      <returns>The feedback size in bits.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AesCryptoServiceProvider.IV">
      <summary>Gets or sets the initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />) for the symmetric algorithm.</summary>
      <exception cref="T:System.ArgumentNullException">An attempt was made to set the initialization vector to <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An attempt was made to set the initialization vector to an invalid size.</exception>
      <returns>The initialization vector.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AesCryptoServiceProvider.Key">
      <summary>Gets or sets the symmetric key that is used for encryption and decryption.</summary>
      <exception cref="T:System.ArgumentNullException">The value for the key is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The size of the key is invalid.</exception>
      <returns>The symmetric key that is used for encryption and decryption.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AesCryptoServiceProvider.KeySize">
      <summary>Gets or sets the size, in bits, of the secret key.</summary>
      <returns>The size, in bits, of the key.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AesCryptoServiceProvider.LegalBlockSizes">
      <summary>Gets the block sizes, in bits, that are supported by the symmetric algorithm.</summary>
      <returns>An array that contains the block sizes supported by the algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AesCryptoServiceProvider.LegalKeySizes">
      <summary>Gets the key sizes, in bits, that are supported by the symmetric algorithm.</summary>
      <returns>An array that contains the key sizes supported by the algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AesCryptoServiceProvider.Mode">
      <summary>Gets or sets the mode for operation of the symmetric algorithm.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The cipher mode is not one of the <see cref="T:System.Security.Cryptography.CipherMode" /> values.</exception>
      <returns>The mode for operation of the symmetric algorithm. The default is <see cref="F:System.Security.Cryptography.CipherMode.CBC" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AesCryptoServiceProvider.Padding">
      <summary>Gets or sets the padding mode used in the symmetric algorithm.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The padding mode is not one of the <see cref="T:System.Security.Cryptography.PaddingMode" /> values.</exception>
      <returns>The padding mode used in the symmetric algorithm. The default is <see cref="F:System.Security.Cryptography.PaddingMode.PKCS7" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.AesGcm">
      <summary>Represents an Advanced Encryption Standard (AES) key to be used with the Galois/Counter Mode (GCM) mode of operation.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AesGcm.#ctor(System.Byte[],System.Int32)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.AesGcm" /> class with a provided key and required tag size.</summary>
      <param name="key">The secret key to use for this instance.</param>
      <param name="tagSizeInBytes">The size of the tag, in bytes, that encryption and decryption must use.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="key" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The <paramref name="key" /> parameter length is other than 16, 24, or 32 bytes (128, 192, or 256 bits).</exception>
      <exception cref="T:System.ArgumentException">The <paramref name="tagSizeInBytes" /> parameter is an unsupported tag size indicated by
              <see cref="P:System.Security.Cryptography.AesGcm.TagByteSizes" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The current platform does not support AES-GCM.</exception>
    </member>
    <member name="M:System.Security.Cryptography.AesGcm.#ctor(System.Byte[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.AesGcm" /> class with a provided key.</summary>
      <param name="key">The secret key to use for this instance.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="key" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The <paramref name="key" /> parameter length is other than 16, 24, or 32 bytes (128, 192, or 256 bits).</exception>
    </member>
    <member name="M:System.Security.Cryptography.AesGcm.#ctor(System.ReadOnlySpan{System.Byte},System.Int32)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.AesGcm" /> class with a provided key and required tag size.</summary>
      <param name="key">The secret key to use for this instance.</param>
      <param name="tagSizeInBytes">The size of the tag, in bytes, that encryption and decryption must use.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The <paramref name="key" /> parameter length is other than 16, 24, or 32 bytes (128, 192, or 256 bits).</exception>
      <exception cref="T:System.ArgumentException">The <paramref name="tagSizeInBytes" /> parameter is an unsupported tag size indicated by
              <see cref="P:System.Security.Cryptography.AesGcm.TagByteSizes" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The current platform does not support AES-GCM.</exception>
    </member>
    <member name="M:System.Security.Cryptography.AesGcm.#ctor(System.ReadOnlySpan{System.Byte})">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.AesGcm" /> class with a provided key.</summary>
      <param name="key">The secret key to use for this instance.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The <paramref name="key" /> parameter length is other than 16, 24, or 32 bytes (128, 192, or 256 bits).</exception>
    </member>
    <member name="M:System.Security.Cryptography.AesGcm.Decrypt(System.Byte[],System.Byte[],System.Byte[],System.Byte[],System.Byte[])">
      <summary>Decrypts the ciphertext into the provided destination buffer if the authentication tag can be validated.</summary>
      <param name="nonce">The nonce associated with this message, which must match the value provided during encryption.</param>
      <param name="ciphertext">The encrypted content to decrypt.</param>
      <param name="tag">The authentication tag produced for this message during encryption.</param>
      <param name="plaintext">The byte array to receive the decrypted contents.</param>
      <param name="associatedData">Extra data associated with this message, which must match the value provided during encryption.</param>
      <exception cref="T:System.ArgumentException">The <paramref name="plaintext" /> parameter and the <paramref name="ciphertext" /> do not have the same length.

-or-

The <paramref name="nonce" /> parameter length is not permitted by <see cref="P:System.Security.Cryptography.AesGcm.NonceByteSizes" />.

-or-

The <paramref name="tag" /> parameter length is not permitted by <see cref="P:System.Security.Cryptography.AesGcm.TagByteSizes" />.</exception>
      <exception cref="T:System.ArgumentNullException">The <paramref name="nonce" />, <paramref name="ciphertext" />, <paramref name="tag" />, or <paramref name="plaintext" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The decryption operation failed. Prior to .NET 8, indicates the tag value could not be verified.</exception>
      <exception cref="T:System.Security.Cryptography.AuthenticationTagMismatchException">.NET 8 and later versions: the tag value could not be verified.</exception>
    </member>
    <member name="M:System.Security.Cryptography.AesGcm.Decrypt(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Decrypts the ciphertext into the provided destination buffer if the authentication tag can be validated.</summary>
      <param name="nonce">The nonce associated with this message, which must match the value provided during encryption.</param>
      <param name="ciphertext">The encrypted content to decrypt.</param>
      <param name="tag">The authentication tag produced for this message during encryption.</param>
      <param name="plaintext">The byte span to receive the decrypted contents.</param>
      <param name="associatedData">Extra data associated with this message, which must match the value provided during encryption.</param>
      <exception cref="T:System.ArgumentException">The <paramref name="plaintext" /> parameter and the <paramref name="ciphertext" /> do not have the same length.

-or-

The <paramref name="nonce" /> parameter length is not permitted by <see cref="P:System.Security.Cryptography.AesGcm.NonceByteSizes" />.

-or-

The <paramref name="tag" /> parameter length is not permitted by <see cref="P:System.Security.Cryptography.AesGcm.TagByteSizes" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The decryption operation failed. Prior to .NET 8, indicates the tag value could not be verified.</exception>
      <exception cref="T:System.Security.Cryptography.AuthenticationTagMismatchException">.NET 8 and later versions: the tag value could not be verified.</exception>
    </member>
    <member name="M:System.Security.Cryptography.AesGcm.Dispose">
      <summary>Releases the resources used by the current instance of the <see cref="T:System.Security.Cryptography.AesGcm" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AesGcm.Encrypt(System.Byte[],System.Byte[],System.Byte[],System.Byte[],System.Byte[])">
      <summary>Encrypts the plaintext into the ciphertext destination buffer and generates the authentication tag into a separate buffer.</summary>
      <param name="nonce">The nonce associated with this message, which should be a unique value for every operation with the same key.</param>
      <param name="plaintext">The content to encrypt.</param>
      <param name="ciphertext">The byte array to receive the encrypted contents.</param>
      <param name="tag">The byte array to receive the generated authentication tag.</param>
      <param name="associatedData">Extra data associated with this message, which must also be provided during decryption.</param>
      <exception cref="T:System.ArgumentException">The <paramref name="plaintext" /> parameter and the <paramref name="ciphertext" /> do not have the same length.

-or-

The <paramref name="nonce" /> parameter length is not permitted by <see cref="P:System.Security.Cryptography.AesGcm.NonceByteSizes" />.

-or-

The <paramref name="tag" /> parameter length is not permitted by <see cref="P:System.Security.Cryptography.AesGcm.TagByteSizes" />.</exception>
      <exception cref="T:System.ArgumentNullException">The <paramref name="nonce" />, <paramref name="ciphertext" />, <paramref name="tag" />, or <paramref name="plaintext" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The encryption operation failed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.AesGcm.Encrypt(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Encrypts the plaintext into the ciphertext destination buffer and generates the authentication tag into a separate buffer.</summary>
      <param name="nonce">The nonce associated with this message, which should be a unique value for every operation with the same key.</param>
      <param name="plaintext">The content to encrypt.</param>
      <param name="ciphertext">The byte array to receive the encrypted contents.</param>
      <param name="tag">The byte array to receive the generated authentication tag.</param>
      <param name="associatedData">Extra data associated with this message, which must also be provided during decryption.</param>
      <exception cref="T:System.ArgumentException">The <paramref name="plaintext" /> parameter and the <paramref name="ciphertext" /> do not have the same length.

-or-

The <paramref name="nonce" /> parameter length is not permitted by <see cref="P:System.Security.Cryptography.AesGcm.NonceByteSizes" />.

-or-

The <paramref name="tag" /> parameter length is not permitted by <see cref="P:System.Security.Cryptography.AesGcm.TagByteSizes" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The encryption operation failed.</exception>
    </member>
    <member name="P:System.Security.Cryptography.AesGcm.IsSupported">
      <summary>Gets a value that indicates whether the algorithm is supported on the current platform.</summary>
      <returns>
        <see langword="true" /> if the algorithm is supported; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AesGcm.NonceByteSizes">
      <summary>Gets the nonce sizes, in bytes, supported by this instance.</summary>
      <returns>The nonce sizes supported by this instance: 12 bytes (96 bits).</returns>
    </member>
    <member name="P:System.Security.Cryptography.AesGcm.TagByteSizes">
      <summary>Gets the tag sizes, in bytes, supported by this instance.</summary>
      <returns>The tag sizes supported by this instance: 12, 13, 14, 15, or 16 bytes (96, 104, 112, 120, or 128 bits).</returns>
    </member>
    <member name="P:System.Security.Cryptography.AesGcm.TagSizeInBytes">
      <summary>Gets the size of the tag, in bytes.</summary>
      <returns>The size of the tag that must be used for encryption or decryption, or <see langword="null" /> if the tag size is unspecified.</returns>
    </member>
    <member name="T:System.Security.Cryptography.AesManaged">
      <summary>Provides a managed implementation of the Advanced Encryption Standard (AES) symmetric algorithm.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AesManaged.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.AesManaged" /> class.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The Windows security policy setting for FIPS is enabled.</exception>
      <exception cref="T:System.InvalidOperationException">This implementation is not part of the Windows Platform FIPS-validated cryptographic algorithms.</exception>
    </member>
    <member name="M:System.Security.Cryptography.AesManaged.CreateDecryptor">
      <summary>Creates a symmetric decryptor object using the current key and initialization vector (IV).</summary>
      <returns>A symmetric decryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AesManaged.CreateDecryptor(System.Byte[],System.Byte[])">
      <summary>Creates a symmetric decryptor object using the specified key and initialization vector (IV).</summary>
      <param name="rgbKey">The secret key to use for the symmetric algorithm.</param>
      <param name="rgbIV">The initialization vector to use for the symmetric algorithm.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="iv" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="key" /> is invalid.</exception>
      <returns>A symmetric decryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AesManaged.CreateEncryptor">
      <summary>Creates a symmetric encryptor object using the current key and initialization vector (IV).</summary>
      <returns>A symmetric encryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AesManaged.CreateEncryptor(System.Byte[],System.Byte[])">
      <summary>Creates a symmetric encryptor object using the specified key and initialization vector (IV).</summary>
      <param name="rgbKey">The secret key to use for the symmetric algorithm.</param>
      <param name="rgbIV">The initialization vector to use for the symmetric algorithm.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="iv" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="key" /> is invalid.</exception>
      <returns>A symmetric encryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AesManaged.GenerateIV">
      <summary>Generates a random initialization vector (IV) to use for the symmetric algorithm.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AesManaged.GenerateKey">
      <summary>Generates a random key to use for the symmetric algorithm.</summary>
    </member>
    <member name="P:System.Security.Cryptography.AesManaged.BlockSize">
      <summary>Gets or sets the block size, in bits, of the cryptographic operation.</summary>
      <returns>The block size, in bits, of the cryptographic operation. The default is 128 bits.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AesManaged.FeedbackSize">
      <summary>Gets or sets the number of bits to use as feedback.</summary>
      <returns>The feedback size, in bits.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AesManaged.IV">
      <summary>Gets or sets the initialization vector (IV) to use for the symmetric algorithm.</summary>
      <returns>The initialization vector to use for the symmetric algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AesManaged.Key">
      <summary>Gets or sets the secret key used for the symmetric algorithm.</summary>
      <returns>The key for the symmetric algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AesManaged.KeySize">
      <summary>Gets or sets the size, in bits, of the secret key used for the symmetric algorithm.</summary>
      <returns>The size, in bits, of the key used by the symmetric algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AesManaged.LegalBlockSizes">
      <summary>Gets the block sizes, in bits, that are supported by the symmetric algorithm.</summary>
      <returns>The block sizes, in bits, that are supported by the symmetric algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AesManaged.LegalKeySizes">
      <summary>Gets the key sizes, in bits, that are supported by the symmetric algorithm.</summary>
      <returns>The key sizes, in bits, that are supported by the symmetric algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AesManaged.Mode">
      <summary>Gets or sets the mode for operation of the symmetric algorithm.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <see cref="P:System.Security.Cryptography.AesManaged.Mode" /> is set to <see cref="F:System.Security.Cryptography.CipherMode.CFB" /> or <see cref="F:System.Security.Cryptography.CipherMode.OFB" />.</exception>
      <returns>One of the enumeration values that specifies the block cipher mode to use for encryption. The default is <see cref="F:System.Security.Cryptography.CipherMode.CBC" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AesManaged.Padding">
      <summary>Gets or sets the padding mode used in the symmetric algorithm.</summary>
      <returns>One of the enumeration values that specifies the type of padding to apply. The default is <see cref="F:System.Security.Cryptography.PaddingMode.PKCS7" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.AsnEncodedData">
      <summary>Represents Abstract Syntax Notation One (ASN.1)-encoded data.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AsnEncodedData.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.AsnEncodedData" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AsnEncodedData.#ctor(System.Byte[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.AsnEncodedData" /> class using a byte array.</summary>
      <param name="rawData">A byte array that contains Abstract Syntax Notation One (ASN.1)-encoded data.</param>
    </member>
    <member name="M:System.Security.Cryptography.AsnEncodedData.#ctor(System.ReadOnlySpan{System.Byte})">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.AsnEncodedData" /> class from existing encoded data.</summary>
      <param name="rawData">The Abstract Syntax Notation One (ASN.1)-encoded data.</param>
    </member>
    <member name="M:System.Security.Cryptography.AsnEncodedData.#ctor(System.Security.Cryptography.AsnEncodedData)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.AsnEncodedData" /> class using an instance of the <see cref="T:System.Security.Cryptography.AsnEncodedData" /> class.</summary>
      <param name="asnEncodedData">An instance of the <see cref="T:System.Security.Cryptography.AsnEncodedData" /> class.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="asnEncodedData" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.AsnEncodedData.#ctor(System.Security.Cryptography.Oid,System.Byte[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.AsnEncodedData" /> class using an <see cref="T:System.Security.Cryptography.Oid" /> object and a byte array.</summary>
      <param name="oid">An <see cref="T:System.Security.Cryptography.Oid" /> object.</param>
      <param name="rawData">A byte array that contains Abstract Syntax Notation One (ASN.1)-encoded data.</param>
    </member>
    <member name="M:System.Security.Cryptography.AsnEncodedData.#ctor(System.Security.Cryptography.Oid,System.ReadOnlySpan{System.Byte})">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.AsnEncodedData" /> class from an object identifier (OID) and existing encoded data.</summary>
      <param name="oid">The object identifier for this data.</param>
      <param name="rawData">The Abstract Syntax Notation One (ASN.1)-encoded data.</param>
    </member>
    <member name="M:System.Security.Cryptography.AsnEncodedData.#ctor(System.String,System.Byte[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.AsnEncodedData" /> class using a byte array.</summary>
      <param name="oid">A string that represents <see cref="T:System.Security.Cryptography.Oid" /> information.</param>
      <param name="rawData">A byte array that contains Abstract Syntax Notation One (ASN.1)-encoded data.</param>
    </member>
    <member name="M:System.Security.Cryptography.AsnEncodedData.#ctor(System.String,System.ReadOnlySpan{System.Byte})">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.AsnEncodedData" /> class from an object identifier (OID) and existing encoded data.</summary>
      <param name="oid">The object identifier for this data.</param>
      <param name="rawData">The Abstract Syntax Notation One (ASN.1)-encoded data.</param>
    </member>
    <member name="M:System.Security.Cryptography.AsnEncodedData.CopyFrom(System.Security.Cryptography.AsnEncodedData)">
      <summary>Copies information from an <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object.</summary>
      <param name="asnEncodedData">The <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object to base the new object on.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="asnEncodedData" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.AsnEncodedData.Format(System.Boolean)">
      <summary>Returns a formatted version of the Abstract Syntax Notation One (ASN.1)-encoded data as a string.</summary>
      <param name="multiLine">
        <see langword="true" /> if the return string should contain carriage returns; otherwise, <see langword="false" />.</param>
      <returns>A formatted string that represents the Abstract Syntax Notation One (ASN.1)-encoded data.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AsnEncodedData.Oid">
      <summary>Gets or sets the <see cref="T:System.Security.Cryptography.Oid" /> value for an <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object.</summary>
      <returns>An <see cref="T:System.Security.Cryptography.Oid" /> object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AsnEncodedData.RawData">
      <summary>Gets or sets the Abstract Syntax Notation One (ASN.1)-encoded data represented in a byte array.</summary>
      <exception cref="T:System.ArgumentNullException">The value is <see langword="null" />.</exception>
      <returns>A byte array that represents the Abstract Syntax Notation One (ASN.1)-encoded data.</returns>
    </member>
    <member name="T:System.Security.Cryptography.AsnEncodedDataCollection">
      <summary>Represents a collection of <see cref="T:System.Security.Cryptography.AsnEncodedData" /> objects. This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AsnEncodedDataCollection.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.AsnEncodedDataCollection" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AsnEncodedDataCollection.#ctor(System.Security.Cryptography.AsnEncodedData)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.AsnEncodedDataCollection" /> class and adds an <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object to the collection.</summary>
      <param name="asnEncodedData">The <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object to add to the collection.</param>
    </member>
    <member name="M:System.Security.Cryptography.AsnEncodedDataCollection.Add(System.Security.Cryptography.AsnEncodedData)">
      <summary>Adds an <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object to the <see cref="T:System.Security.Cryptography.AsnEncodedDataCollection" /> object.</summary>
      <param name="asnEncodedData">The <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object to add to the collection.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="asnEncodedData" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">Neither of the OIDs are <see langword="null" /> and the OIDs do not match.

-or-

One of the OIDs is <see langword="null" /> and the OIDs do not match.</exception>
      <returns>The index of the added <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AsnEncodedDataCollection.CopyTo(System.Security.Cryptography.AsnEncodedData[],System.Int32)">
      <summary>Copies the <see cref="T:System.Security.Cryptography.AsnEncodedDataCollection" /> object into an array.</summary>
      <param name="array">The array that the <see cref="T:System.Security.Cryptography.AsnEncodedDataCollection" /> object is to be copied into.</param>
      <param name="index">The location where the copy operation starts.</param>
    </member>
    <member name="M:System.Security.Cryptography.AsnEncodedDataCollection.GetEnumerator">
      <summary>Returns an <see cref="T:System.Security.Cryptography.AsnEncodedDataEnumerator" /> object that can be used to navigate the <see cref="T:System.Security.Cryptography.AsnEncodedDataCollection" /> object.</summary>
      <returns>An <see cref="T:System.Security.Cryptography.AsnEncodedDataEnumerator" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AsnEncodedDataCollection.Remove(System.Security.Cryptography.AsnEncodedData)">
      <summary>Removes an <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object from the <see cref="T:System.Security.Cryptography.AsnEncodedDataCollection" /> object.</summary>
      <param name="asnEncodedData">The <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object to remove.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="asnEncodedData" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.AsnEncodedDataCollection.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">
      <summary>Copies the <see cref="T:System.Security.Cryptography.AsnEncodedDataCollection" /> object into an array.</summary>
      <param name="array">The array that the <see cref="T:System.Security.Cryptography.AsnEncodedDataCollection" /> object is to be copied into.</param>
      <param name="index">The location where the copy operation starts.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="array" /> is a multidimensional array, which is not supported by this method.

-or-
        
The length for <paramref name="index" /> is invalid.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="array" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">The length for <paramref name="index" /> is out of range.</exception>
    </member>
    <member name="M:System.Security.Cryptography.AsnEncodedDataCollection.System#Collections#IEnumerable#GetEnumerator">
      <summary>Returns an <see cref="T:System.Security.Cryptography.AsnEncodedDataEnumerator" /> object that can be used to navigate the <see cref="T:System.Security.Cryptography.AsnEncodedDataCollection" /> object.</summary>
      <returns>An <see cref="T:System.Security.Cryptography.AsnEncodedDataEnumerator" /> object that can be used to navigate the collection.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AsnEncodedDataCollection.Count">
      <summary>Gets the number of <see cref="T:System.Security.Cryptography.AsnEncodedData" /> objects in a collection.</summary>
      <returns>The number of <see cref="T:System.Security.Cryptography.AsnEncodedData" /> objects.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AsnEncodedDataCollection.IsSynchronized">
      <summary>Gets a value that indicates whether access to the <see cref="T:System.Security.Cryptography.AsnEncodedDataCollection" /> object is thread safe.</summary>
      <returns>
        <see langword="false" /> in all cases.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AsnEncodedDataCollection.Item(System.Int32)">
      <summary>Gets an <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object from the <see cref="T:System.Security.Cryptography.AsnEncodedDataCollection" /> object.</summary>
      <param name="index">The location in the collection.</param>
      <returns>An <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AsnEncodedDataCollection.SyncRoot">
      <summary>Gets an object that can be used to synchronize access to the <see cref="T:System.Security.Cryptography.AsnEncodedDataCollection" /> object.</summary>
      <returns>An object used to synchronize access to the <see cref="T:System.Security.Cryptography.AsnEncodedDataCollection" /> object.</returns>
    </member>
    <member name="T:System.Security.Cryptography.AsnEncodedDataEnumerator">
      <summary>Provides the ability to navigate through an <see cref="T:System.Security.Cryptography.AsnEncodedDataCollection" /> object. This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AsnEncodedDataEnumerator.MoveNext">
      <summary>Advances to the next <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object in an <see cref="T:System.Security.Cryptography.AsnEncodedDataCollection" /> object.</summary>
      <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was created.</exception>
      <returns>
        <see langword="true" />, if the enumerator was successfully advanced to the next element; <see langword="false" />, if the enumerator has passed the end of the collection.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AsnEncodedDataEnumerator.Reset">
      <summary>Sets an enumerator to its initial position.</summary>
      <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was created.</exception>
    </member>
    <member name="P:System.Security.Cryptography.AsnEncodedDataEnumerator.Current">
      <summary>Gets the current <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object in an <see cref="T:System.Security.Cryptography.AsnEncodedDataCollection" /> object.</summary>
      <returns>The current <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object in the collection.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AsnEncodedDataEnumerator.System#Collections#IEnumerator#Current">
      <summary>Gets the current <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object in an <see cref="T:System.Security.Cryptography.AsnEncodedDataCollection" /> object.</summary>
      <returns>The current <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object.</returns>
    </member>
    <member name="T:System.Security.Cryptography.AsymmetricAlgorithm">
      <summary>Represents the abstract base class from which all implementations of asymmetric algorithms must inherit.</summary>
    </member>
    <member name="F:System.Security.Cryptography.AsymmetricAlgorithm.KeySizeValue">
      <summary>Represents the size, in bits, of the key modulus used by the asymmetric algorithm.</summary>
    </member>
    <member name="F:System.Security.Cryptography.AsymmetricAlgorithm.LegalKeySizesValue">
      <summary>Specifies the key sizes that are supported by the asymmetric algorithm.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.AsymmetricAlgorithm" /> class.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The implementation of the derived class is not valid.</exception>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.Clear">
      <summary>Releases all resources used by the <see cref="T:System.Security.Cryptography.AsymmetricAlgorithm" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.Create">
      <summary>Creates a default cryptographic object used to perform the asymmetric algorithm.</summary>
      <exception cref="T:System.PlatformNotSupportedException">.NET Core 2.0 - 3.1 and .NET 5 and later: In all cases.</exception>
      <returns>A new <see cref="T:System.Security.Cryptography.RSACryptoServiceProvider" /> instance, unless the default settings have been changed with the &lt;cryptoClass&gt; element.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.Create(System.String)">
      <summary>Creates an instance of the specified implementation of an asymmetric algorithm.</summary>
      <param name="algName">The asymmetric algorithm implementation to use. The following table shows the valid values for the <paramref name="algName" /> parameter and the algorithms they map to.

 <list type="table"><listheader><term> Parameter value</term><description> Implements</description></listheader><item><term> System.Security.Cryptography.AsymmetricAlgorithm</term><description><see cref="T:System.Security.Cryptography.AsymmetricAlgorithm" /></description></item><item><term> RSA</term><description><see cref="T:System.Security.Cryptography.RSA" /></description></item><item><term> System.Security.Cryptography.RSA</term><description><see cref="T:System.Security.Cryptography.RSA" /></description></item><item><term> DSA</term><description><see cref="T:System.Security.Cryptography.DSA" /></description></item><item><term> System.Security.Cryptography.DSA</term><description><see cref="T:System.Security.Cryptography.DSA" /></description></item><item><term> ECDsa</term><description><see cref="T:System.Security.Cryptography.ECDsa" /></description></item><item><term> ECDsaCng</term><description><see cref="T:System.Security.Cryptography.ECDsaCng" /></description></item><item><term> System.Security.Cryptography.ECDsaCng</term><description><see cref="T:System.Security.Cryptography.ECDsaCng" /></description></item><item><term> ECDH</term><description><see cref="T:System.Security.Cryptography.ECDiffieHellman" /></description></item><item><term> ECDiffieHellman</term><description><see cref="T:System.Security.Cryptography.ECDiffieHellman" /></description></item><item><term> ECDiffieHellmanCng</term><description><see cref="T:System.Security.Cryptography.ECDiffieHellmanCng" /></description></item><item><term> System.Security.Cryptography.ECDiffieHellmanCng</term><description><see cref="T:System.Security.Cryptography.ECDiffieHellmanCng" /></description></item></list></param>
      <returns>A new instance of the specified asymmetric algorithm implementation.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.Dispose">
      <summary>Releases all resources used by the current instance of the <see cref="T:System.Security.Cryptography.AsymmetricAlgorithm" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.Dispose(System.Boolean)">
      <summary>Releases the unmanaged resources used by the <see cref="T:System.Security.Cryptography.AsymmetricAlgorithm" /> class and optionally releases the managed resources.</summary>
      <param name="disposing">
        <see langword="true" /> to release both managed and unmanaged resources; <see langword="false" /> to release only unmanaged resources.</param>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.ExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.PbeParameters)">
      <summary>Exports the current key in the PKCS#8 EncryptedPrivateKeyInfo format with a byte-based password.</summary>
      <param name="passwordBytes">The bytes to use as a password when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.

-or-

<paramref name="pbeParameters" /> indicates that <see cref="F:System.Security.Cryptography.PbeEncryptionAlgorithm.TripleDes3KeyPkcs12" /> should be used, which requires <see cref="T:System.Char" />-based passwords.</exception>
      <returns>A byte array containing the PKCS#8 EncryptedPrivateKeyInfo representation of this key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.ExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Char},System.Security.Cryptography.PbeParameters)">
      <summary>Exports the current key in the PKCS#8 EncryptedPrivateKeyInfo format with a char-based password.</summary>
      <param name="password">The password to use when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <returns>A byte array containing the PKCS#8 EncryptedPrivateKeyInfo representation of this key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.ExportEncryptedPkcs8PrivateKeyPem(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.PbeParameters)">
      <summary>Exports the current key in the PKCS#8 EncryptedPrivateKeyInfo format with a byte-based password, PEM encoded.</summary>
      <param name="passwordBytes">The bytes to use as a password when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <exception cref="T:System.NotImplementedException">An implementation for <see cref="M:System.Security.Cryptography.AsymmetricAlgorithm.ExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.PbeParameters)" /> or
            <see cref="M:System.Security.Cryptography.AsymmetricAlgorithm.TryExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.PbeParameters,System.Span{System.Byte},System.Int32@)" /> has not been provided.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <returns>A string containing the PEM-encoded PKCS#8 EncryptedPrivateKeyInfo.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.ExportEncryptedPkcs8PrivateKeyPem(System.ReadOnlySpan{System.Char},System.Security.Cryptography.PbeParameters)">
      <summary>Exports the current key in the PKCS#8 EncryptedPrivateKeyInfo format with a char-based password, PEM encoded.</summary>
      <param name="password">The password to use when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <exception cref="T:System.NotImplementedException">An implementation for <see cref="M:System.Security.Cryptography.AsymmetricAlgorithm.ExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Char},System.Security.Cryptography.PbeParameters)" /> or
            <see cref="M:System.Security.Cryptography.AsymmetricAlgorithm.TryExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Char},System.Security.Cryptography.PbeParameters,System.Span{System.Byte},System.Int32@)" /> has not been provided.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <returns>A string containing the PEM-encoded PKCS#8 EncryptedPrivateKeyInfo.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.ExportPkcs8PrivateKey">
      <summary>Exports the current key in the PKCS#8 PrivateKeyInfo format.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <returns>A byte array containing the PKCS#8 PrivateKeyInfo representation of this key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.ExportPkcs8PrivateKeyPem">
      <summary>Exports the current key in the PKCS#8 PrivateKeyInfo format, PEM encoded.</summary>
      <exception cref="T:System.NotImplementedException">An implementation for <see cref="M:System.Security.Cryptography.AsymmetricAlgorithm.ExportPkcs8PrivateKey" /> or
            <see cref="M:System.Security.Cryptography.AsymmetricAlgorithm.TryExportPkcs8PrivateKey(System.Span{System.Byte},System.Int32@)" /> has not been provided.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <returns>A string containing the PEM-encoded PKCS#8 PrivateKeyInfo.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.ExportSubjectPublicKeyInfo">
      <summary>Exports the public-key portion of the current key in the X.509 SubjectPublicKeyInfo format.</summary>
      <returns>A byte array containing the X.509 SubjectPublicKeyInfo representation of the public-key portion of this key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.ExportSubjectPublicKeyInfoPem">
      <summary>Exports the public-key portion of the current key in the X.509 SubjectPublicKeyInfo format, PEM encoded.</summary>
      <exception cref="T:System.NotImplementedException">An implementation for <see cref="M:System.Security.Cryptography.AsymmetricAlgorithm.ExportSubjectPublicKeyInfo" /> or
            <see cref="M:System.Security.Cryptography.AsymmetricAlgorithm.TryExportSubjectPublicKeyInfo(System.Span{System.Byte},System.Int32@)" /> has not been provided.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <returns>A string containing the PEM-encoded X.509 SubjectPublicKeyInfo.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.FromXmlString(System.String)">
      <summary>When overridden in a derived class, reconstructs an <see cref="T:System.Security.Cryptography.AsymmetricAlgorithm" /> object from an XML string. Otherwise, throws a <see cref="T:System.NotImplementedException" />.</summary>
      <param name="xmlString">The XML string to use to reconstruct the <see cref="T:System.Security.Cryptography.AsymmetricAlgorithm" /> object.</param>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.ImportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>When overridden in a derived class, imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a byte-based password, replacing the keys for this object.</summary>
      <param name="passwordBytes">The bytes to use as a password when decrypting the key material.</param>
      <param name="source">The bytes of a PKCS#8 EncryptedPrivateKeyInfo structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <paramref name="source" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The password is incorrect.

-or-

The contents of <paramref name="source" /> indicate the Key Derivation Function (KDF) to apply is the legacy PKCS#12 KDF, which requires <see cref="T:System.Char" />-based passwords.

-or-

The contents of <paramref name="source" /> do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.

-or-

The contents of <paramref name="source" /> indicate the key is for an algorithm other than the algorithm represented by this instance.

-or-

The contents of <paramref name="source" /> represent the key in a format that is not supported.

-or-

The algorithm-specific key import failed.</exception>
      <exception cref="T:System.NotImplementedException">A derived type has not overriden this member.</exception>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.ImportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>When overridden in a derived class, imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a char-based password, replacing the keys for this object.</summary>
      <param name="password">The password to use for decrypting the key material.</param>
      <param name="source">The bytes of a PKCS#8 EncryptedPrivateKeyInfo structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <paramref name="source" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The password is incorrect.

-or-

The contents of <paramref name="source" /> do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.

-or-

The contents of <paramref name="source" /> indicate the key is for an algorithm other than the algorithm represented by this instance.

-or-

The contents of <paramref name="source" /> represent the key in a format that is not supported.

-or-

The algorithm-specific key import failed.</exception>
      <exception cref="T:System.NotImplementedException">A derived type has not overriden this member.</exception>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.ImportFromEncryptedPem(System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Byte})">
      <summary>When overridden in a derived class, imports an encrypted RFC 7468 PEM-encoded key, replacing the keys for this object.</summary>
      <param name="input">The PEM text of the encrypted key to import.</param>
      <param name="passwordBytes">The bytes to use as a password when decrypting the key material.</param>
      <exception cref="T:System.NotImplementedException">A derived type has not overridden this member.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="input" /> does not contain a PEM-encoded key with a recognized label.

-or-

<paramref name="input" /> contains multiple PEM-encoded keys with a recognized label.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">

              The password is incorrect.

-or-

The base-64 decoded contents of the PEM text from <paramref name="input" />
              do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.

-or-

The base-64 decoded contents of the PEM text from <paramref name="input" />
              indicate the key is for an algorithm other than the algorithm
              represented by this instance.

-or-

The base-64 decoded contents of the PEM text from <paramref name="input" />
              represent the key in a format that is not supported.

-or-

The algorithm-specific key import failed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.ImportFromEncryptedPem(System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Char})">
      <summary>When overridden in a derived class, imports an encrypted RFC 7468 PEM-encoded key, replacing the keys for this object.</summary>
      <param name="input">The PEM text of the encrypted key to import.</param>
      <param name="password">The password to use for decrypting the key material.</param>
      <exception cref="T:System.NotImplementedException">A derived type has not overridden this member.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="input" /> does not contain a PEM-encoded key with a recognized label.

-or-

<paramref name="input" /> contains multiple PEM-encoded keys with a recognized label.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">

              The password is incorrect.

-or-

The base-64 decoded contents of the PEM text from <paramref name="input" />
              do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.

-or-

The base-64 decoded contents of the PEM text from <paramref name="input" />
              indicate the key is for an algorithm other than the algorithm
              represented by this instance.

-or-

The base-64 decoded contents of the PEM text from <paramref name="input" />
              represent the key in a format that is not supported.

-or-

The algorithm-specific key import failed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.ImportFromPem(System.ReadOnlySpan{System.Char})">
      <summary>When overridden in a derived class, imports an RFC 7468 textually encoded key, replacing the keys for this object.</summary>
      <param name="input">The text of the PEM key to import.</param>
      <exception cref="T:System.NotImplementedException">A derived type has not overridden this member.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="input" /> does not contain a PEM-encoded key with a recognized label.

-or-

<paramref name="input" /> contains multiple PEM-encoded keys with a recognized label.

-or-

<paramref name="input" /> contains an encrypted PEM-encoded key.</exception>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.ImportPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>When overriden in a derived class, imports the public/private keypair from a PKCS#8 PrivateKeyInfo structure after decryption, replacing the keys for this object.</summary>
      <param name="source">The bytes of a PKCS#8 PrivateKeyInfo structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <paramref name="source" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The contents of <paramref name="source" /> do not represent an ASN.1-BER-encoded PKCS#8 PrivateKeyInfo structure.

-or-

The contents of <paramref name="source" /> indicate the key is for an algorithm other than the algorithm represented by this instance.

-or-

The contents of <paramref name="source" /> represent the key in a format that is not supported.

-or-

The algorithm-specific key import failed.</exception>
      <exception cref="T:System.NotImplementedException">A derived type has not overriden this member.</exception>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.ImportSubjectPublicKeyInfo(System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>When overriden in a derived class, imports the public key from an X.509 SubjectPublicKeyInfo structure after decryption, replacing the keys for this object.</summary>
      <param name="source">The bytes of an X.509 SubjectPublicKeyInfo structure in the ASN.1-DER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <paramref name="source" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The contents of <paramref name="source" /> do not represent an ASN.1-DER-encoded X.509 SubjectPublicKeyInfo structure.

-or-

The contents of <paramref name="source" /> indicate the key is for an algorithm other than the algorithm represented by this instance.

-or-

The contents of <paramref name="source" /> represent the key in a format that is not supported.

-or-

The algorithm-specific key import failed.</exception>
      <exception cref="T:System.NotImplementedException">A derived type has not overriden this member.</exception>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.ToXmlString(System.Boolean)">
      <summary>When overridden in a derived class, creates and returns an XML string representation of the current <see cref="T:System.Security.Cryptography.AsymmetricAlgorithm" /> object. Otherwise, throws a <see cref="T:System.NotImplementedException" />.</summary>
      <param name="includePrivateParameters">
        <see langword="true" /> to include private parameters; otherwise, <see langword="false" />.</param>
      <returns>An XML string encoding of the current <see cref="T:System.Security.Cryptography.AsymmetricAlgorithm" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.TryExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.PbeParameters,System.Span{System.Byte},System.Int32@)">
      <summary>When overridden in a derived class, attempts to export the current key in the PKCS#8 EncryptedPrivateKeyInfo format into a provided buffer, using a byte-based password.</summary>
      <param name="passwordBytes">The bytes to use as a password when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <param name="destination">The byte span to receive the PKCS#8 EncryptedPrivateKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.

-or-

<paramref name="pbeParameters" /> indicates that <see cref="F:System.Security.Cryptography.PbeEncryptionAlgorithm.TripleDes3KeyPkcs12" /> should be used, which requires <see cref="T:System.Char" />-based passwords.</exception>
      <exception cref="T:System.NotImplementedException">A derived type has not overriden this member.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.TryExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Char},System.Security.Cryptography.PbeParameters,System.Span{System.Byte},System.Int32@)">
      <summary>When overriden in a derived class, attempts to export the current key in the PKCS#8 EncryptedPrivateKeyInfo format into a provided buffer, using a char-based password.</summary>
      <param name="password">The password to use when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <param name="destination">The byte span to receive the PKCS#8 EncryptedPrivateKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <exception cref="T:System.NotImplementedException">A derived type has not overriden this member.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.TryExportEncryptedPkcs8PrivateKeyPem(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.PbeParameters,System.Span{System.Char},System.Int32@)">
      <summary>Attempts to export the current key in the PKCS#8 EncryptedPrivateKeyInfo format with a byte-based password, PEM encoded.</summary>
      <param name="passwordBytes">The bytes to use as a password when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <param name="destination">The character span to receive the PEM-encoded PKCS#8 EncryptedPrivateKeyInfo data.</param>
      <param name="charsWritten">When this method returns, contains a value that indicates the number of characters written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.NotImplementedException">An implementation for <see cref="M:System.Security.Cryptography.AsymmetricAlgorithm.TryExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.PbeParameters,System.Span{System.Byte},System.Int32@)" />
            has not been provided.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.TryExportEncryptedPkcs8PrivateKeyPem(System.ReadOnlySpan{System.Char},System.Security.Cryptography.PbeParameters,System.Span{System.Char},System.Int32@)">
      <summary>Exports the current key in the PKCS#8 EncryptedPrivateKeyInfo format with a char-based password, PEM encoded.</summary>
      <param name="password">The password to use when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <param name="destination">The character span to receive the PEM-encoded PKCS#8 EncryptedPrivateKeyInfo data.</param>
      <param name="charsWritten">When this method returns, contains a value that indicates the number of characters written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.NotImplementedException">An implementation for <see cref="M:System.Security.Cryptography.AsymmetricAlgorithm.TryExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Char},System.Security.Cryptography.PbeParameters,System.Span{System.Byte},System.Int32@)" />
            has not been provided.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.TryExportPkcs8PrivateKey(System.Span{System.Byte},System.Int32@)">
      <summary>When overridden in a derived class, attempts to export the current key in the PKCS#8 PrivateKeyInfo format into a provided buffer.</summary>
      <param name="destination">The byte span to receive the PKCS#8 PrivateKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <exception cref="T:System.NotImplementedException">A derived type has not overriden this member.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.TryExportPkcs8PrivateKeyPem(System.Span{System.Char},System.Int32@)">
      <summary>Attempts to export the current key in the PEM-encoded PKCS#8 PrivateKeyInfo format into a provided buffer.</summary>
      <param name="destination">The character span to receive the PEM-encoded PKCS#8 PrivateKeyInfo data.</param>
      <param name="charsWritten">When this method returns, contains a value that indicates the number of characters written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.NotImplementedException">An implementation for <see cref="M:System.Security.Cryptography.AsymmetricAlgorithm.TryExportPkcs8PrivateKey(System.Span{System.Byte},System.Int32@)" />
            has not been provided.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.TryExportSubjectPublicKeyInfo(System.Span{System.Byte},System.Int32@)">
      <summary>When overridden in a derived class, attempts to export the current key in the X.509 SubjectPublicKeyInfo format into a provided buffer.</summary>
      <param name="destination">The byte span to receive the X.509 SubjectPublicKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <exception cref="T:System.NotImplementedException">A derived type has not overriden this member.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricAlgorithm.TryExportSubjectPublicKeyInfoPem(System.Span{System.Char},System.Int32@)">
      <summary>Attempts to export the current key in the PEM-encoded X.509 SubjectPublicKeyInfo format into a provided buffer.</summary>
      <param name="destination">The character span to receive the PEM-encoded X.509 SubjectPublicKeyInfo data.</param>
      <param name="charsWritten">When this method returns, contains a value that indicates the number of characters written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.NotImplementedException">An implementation for <see cref="M:System.Security.Cryptography.AsymmetricAlgorithm.TryExportSubjectPublicKeyInfo(System.Span{System.Byte},System.Int32@)" />
            has not been provided.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AsymmetricAlgorithm.KeyExchangeAlgorithm">
      <summary>When overridden in a derived class, gets the name of the key exchange algorithm. Otherwise, throws an <see cref="T:System.NotImplementedException" />.</summary>
      <returns>The name of the key exchange algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AsymmetricAlgorithm.KeySize">
      <summary>Gets or sets the size, in bits, of the key modulus used by the asymmetric algorithm.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key modulus size is invalid.</exception>
      <returns>The size, in bits, of the key modulus used by the asymmetric algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AsymmetricAlgorithm.LegalKeySizes">
      <summary>Gets the key sizes that are supported by the asymmetric algorithm.</summary>
      <returns>An array that contains the key sizes supported by the asymmetric algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.AsymmetricAlgorithm.SignatureAlgorithm">
      <summary>When implemented in a derived class, gets the name of the signature algorithm. Otherwise, always throws a <see cref="T:System.NotImplementedException" />.</summary>
      <returns>The name of the signature algorithm.</returns>
    </member>
    <member name="T:System.Security.Cryptography.AsymmetricKeyExchangeDeformatter">
      <summary>Represents the base class from which all asymmetric key exchange deformatters derive.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricKeyExchangeDeformatter.#ctor">
      <summary>Initializes a new instance of <see cref="T:System.Security.Cryptography.AsymmetricKeyExchangeDeformatter" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricKeyExchangeDeformatter.DecryptKeyExchange(System.Byte[])">
      <summary>When overridden in a derived class, extracts secret information from the encrypted key exchange data.</summary>
      <param name="rgb">The key exchange data within which the secret information is hidden.</param>
      <returns>The secret information derived from the key exchange data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricKeyExchangeDeformatter.SetKey(System.Security.Cryptography.AsymmetricAlgorithm)">
      <summary>When overridden in a derived class, sets the private key to use for decrypting the secret information.</summary>
      <param name="key">The instance of the implementation of <see cref="T:System.Security.Cryptography.AsymmetricAlgorithm" /> that holds the private key.</param>
    </member>
    <member name="P:System.Security.Cryptography.AsymmetricKeyExchangeDeformatter.Parameters">
      <summary>When overridden in a derived class, gets or sets the parameters for the asymmetric key exchange.</summary>
      <returns>A string in XML format containing the parameters of the asymmetric key exchange operation.</returns>
    </member>
    <member name="T:System.Security.Cryptography.AsymmetricKeyExchangeFormatter">
      <summary>Represents the base class from which all asymmetric key exchange formatters derive.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricKeyExchangeFormatter.#ctor">
      <summary>Initializes a new instance of <see cref="T:System.Security.Cryptography.AsymmetricKeyExchangeFormatter" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricKeyExchangeFormatter.CreateKeyExchange(System.Byte[],System.Type)">
      <summary>When overridden in a derived class, creates the encrypted key exchange data from the specified input data.</summary>
      <param name="data">The secret information to be passed in the key exchange.</param>
      <param name="symAlgType">This parameter is not used in the current version.</param>
      <returns>The encrypted key exchange data to be sent to the intended recipient.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricKeyExchangeFormatter.CreateKeyExchange(System.Byte[])">
      <summary>When overridden in a derived class, creates the encrypted key exchange data from the specified input data.</summary>
      <param name="data">The secret information to be passed in the key exchange.</param>
      <returns>The encrypted key exchange data to be sent to the intended recipient.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricKeyExchangeFormatter.SetKey(System.Security.Cryptography.AsymmetricAlgorithm)">
      <summary>When overridden in a derived class, sets the public key to use for encrypting the secret information.</summary>
      <param name="key">The instance of the implementation of <see cref="T:System.Security.Cryptography.AsymmetricAlgorithm" /> that holds the public key.</param>
    </member>
    <member name="P:System.Security.Cryptography.AsymmetricKeyExchangeFormatter.Parameters">
      <summary>When overridden in a derived class, gets the parameters for the asymmetric key exchange.</summary>
      <returns>A string in XML format containing the parameters of the asymmetric key exchange operation.</returns>
    </member>
    <member name="T:System.Security.Cryptography.AsymmetricSignatureDeformatter">
      <summary>Represents the abstract base class from which all implementations of asymmetric signature deformatters derive.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricSignatureDeformatter.#ctor">
      <summary>Initializes a new instance of <see cref="T:System.Security.Cryptography.AsymmetricSignatureDeformatter" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricSignatureDeformatter.SetHashAlgorithm(System.String)">
      <summary>When overridden in a derived class, sets the hash algorithm to use for verifying the signature.</summary>
      <param name="strName">The name of the hash algorithm to use for verifying the signature.</param>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricSignatureDeformatter.SetKey(System.Security.Cryptography.AsymmetricAlgorithm)">
      <summary>When overridden in a derived class, sets the public key to use for verifying the signature.</summary>
      <param name="key">The instance of an implementation of <see cref="T:System.Security.Cryptography.AsymmetricAlgorithm" /> that holds the public key.</param>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricSignatureDeformatter.VerifySignature(System.Byte[],System.Byte[])">
      <summary>When overridden in a derived class, verifies the signature for the specified data.</summary>
      <param name="rgbHash">The data signed with <paramref name="rgbSignature" />.</param>
      <param name="rgbSignature">The signature to be verified for <paramref name="rgbHash" />.</param>
      <returns>
        <see langword="true" /> if <paramref name="rgbSignature" /> matches the signature computed using the specified hash algorithm and key on <paramref name="rgbHash" />; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricSignatureDeformatter.VerifySignature(System.Security.Cryptography.HashAlgorithm,System.Byte[])">
      <summary>Verifies the signature from the specified hash value.</summary>
      <param name="hash">The hash algorithm to use to verify the signature.</param>
      <param name="rgbSignature">The signature to be verified.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="hash" /> parameter is <see langword="null" />.</exception>
      <returns>
        <see langword="true" /> if the signature is valid for the hash; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.AsymmetricSignatureFormatter">
      <summary>Represents the base class from which all implementations of asymmetric signature formatters derive.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricSignatureFormatter.#ctor">
      <summary>Initializes a new instance of <see cref="T:System.Security.Cryptography.AsymmetricSignatureFormatter" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricSignatureFormatter.CreateSignature(System.Byte[])">
      <summary>When overridden in a derived class, creates the signature for the specified data.</summary>
      <param name="rgbHash">The data to be signed.</param>
      <returns>The digital signature for the <paramref name="rgbHash" /> parameter.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricSignatureFormatter.CreateSignature(System.Security.Cryptography.HashAlgorithm)">
      <summary>Creates the signature from the specified hash value.</summary>
      <param name="hash">The hash algorithm to use to create the signature.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="hash" /> parameter is <see langword="null" />.</exception>
      <returns>The signature for the specified hash value.</returns>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricSignatureFormatter.SetHashAlgorithm(System.String)">
      <summary>When overridden in a derived class, sets the hash algorithm to use for creating the signature.</summary>
      <param name="strName">The name of the hash algorithm to use for creating the signature.</param>
    </member>
    <member name="M:System.Security.Cryptography.AsymmetricSignatureFormatter.SetKey(System.Security.Cryptography.AsymmetricAlgorithm)">
      <summary>When overridden in a derived class, sets the asymmetric algorithm to use to create the signature.</summary>
      <param name="key">The instance of the implementation of <see cref="T:System.Security.Cryptography.AsymmetricAlgorithm" /> to use to create the signature.</param>
    </member>
    <member name="T:System.Security.Cryptography.AuthenticationTagMismatchException">
      <summary>The exception that is thrown when a decryption operation with an authenticated cipher has an authentication tag mismatch.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AuthenticationTagMismatchException.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.AuthenticationTagMismatchException" /> class with default properties.</summary>
    </member>
    <member name="M:System.Security.Cryptography.AuthenticationTagMismatchException.#ctor(System.String,System.Exception)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.AuthenticationTagMismatchException" /> class with a specified error message and a reference to the inner exception that is the cause of this exception.</summary>
      <param name="message">The error message that explains the reason for the exception.</param>
      <param name="inner">The exception that is the cause of the current exception. If the parameter is not <see langword="null" />, the current exception is raised in a catch block that handles the inner exception.</param>
    </member>
    <member name="M:System.Security.Cryptography.AuthenticationTagMismatchException.#ctor(System.String)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.AuthenticationTagMismatchException" /> class with a specified error message.</summary>
      <param name="message">The error message that explains the reason for the exception.</param>
    </member>
    <member name="T:System.Security.Cryptography.ChaCha20Poly1305">
      <summary>Represents a symmetric key to be used with the ChaCha20 stream cipher in the combined mode with the Poly1305 authenticator.</summary>
    </member>
    <member name="M:System.Security.Cryptography.ChaCha20Poly1305.#ctor(System.Byte[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ChaCha20Poly1305" /> class with a provided key.</summary>
      <param name="key">The secret key to use for this instance.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The <paramref name="key" /> parameter length is not 32 bytes (256 bits).</exception>
    </member>
    <member name="M:System.Security.Cryptography.ChaCha20Poly1305.#ctor(System.ReadOnlySpan{System.Byte})">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ChaCha20Poly1305" /> class with a provided key.</summary>
      <param name="key">The secret key to use for this instance.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The <paramref name="key" /> parameter length is not 32 bytes (256 bits).</exception>
    </member>
    <member name="M:System.Security.Cryptography.ChaCha20Poly1305.Decrypt(System.Byte[],System.Byte[],System.Byte[],System.Byte[],System.Byte[])">
      <summary>Decrypts the ciphertext into the provided destination buffer if the authentication tag can be validated.</summary>
      <param name="nonce">The nonce associated with this message, which must match the value provided during encryption.</param>
      <param name="ciphertext">The encrypted content to decrypt.</param>
      <param name="tag">The authentication tag produced for this message during encryption.</param>
      <param name="plaintext">The byte array to receive the decrypted contents.</param>
      <param name="associatedData">Extra data associated with this message, which must match the value provided during encryption.</param>
      <exception cref="T:System.ArgumentException">The <paramref name="plaintext" /> parameter and the <paramref name="ciphertext" /> do not have the same length.

-or-

The <paramref name="nonce" /> parameter length is not 12 bytes (96 bits).

-or-

The <paramref name="tag" /> parameter length is not 16 bytes (128 bits).</exception>
      <exception cref="T:System.ArgumentNullException">The <paramref name="nonce" />, <paramref name="ciphertext" />, <paramref name="tag" />, or <paramref name="plaintext" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The decryption operation failed. Prior to .NET 8, indicates the tag value could not be verified.</exception>
      <exception cref="T:System.Security.Cryptography.AuthenticationTagMismatchException">.NET 8 and later versions: the tag value could not be verified.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ChaCha20Poly1305.Decrypt(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Decrypts the ciphertext into the provided destination buffer if the authentication tag can be validated.</summary>
      <param name="nonce">The nonce associated with this message, which must match the value provided during encryption.</param>
      <param name="ciphertext">The encrypted content to decrypt.</param>
      <param name="tag">The authentication tag produced for this message during encryption.</param>
      <param name="plaintext">The byte array to receive the decrypted contents.</param>
      <param name="associatedData">Extra data associated with this message, which must match the value provided during encryption.</param>
      <exception cref="T:System.ArgumentException">The <paramref name="plaintext" /> parameter and the <paramref name="ciphertext" /> do not have the same length.

-or-

The <paramref name="nonce" /> parameter length is not 12 bytes (96 bits).

-or-

The <paramref name="tag" /> parameter length is not 16 bytes (128 bits).</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The decryption operation failed. Prior to .NET 8, indicates the tag value could not be verified.</exception>
      <exception cref="T:System.Security.Cryptography.AuthenticationTagMismatchException">.NET 8 and later versions: the tag value could not be verified.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ChaCha20Poly1305.Dispose">
      <summary>Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.</summary>
    </member>
    <member name="M:System.Security.Cryptography.ChaCha20Poly1305.Encrypt(System.Byte[],System.Byte[],System.Byte[],System.Byte[],System.Byte[])">
      <summary>Encrypts the plaintext into the ciphertext destination buffer and generates the authentication tag into a separate buffer.</summary>
      <param name="nonce">The nonce associated with this message, which should be a unique value for every operation with the same key.</param>
      <param name="plaintext">The content to encrypt.</param>
      <param name="ciphertext">The byte array to receive the encrypted contents.</param>
      <param name="tag">The byte array to receive the generated authentication tag.</param>
      <param name="associatedData">Extra data associated with this message, which must also be provided during decryption.</param>
      <exception cref="T:System.ArgumentException">The <paramref name="plaintext" /> parameter and the <paramref name="ciphertext" /> do not have the same length.

-or-

The <paramref name="nonce" /> parameter length is not 12 bytes (96 bits).

-or-

The <paramref name="tag" /> parameter length is not 16 bytes (128 bits).</exception>
      <exception cref="T:System.ArgumentNullException">The <paramref name="nonce" />, <paramref name="ciphertext" />, <paramref name="tag" />, or <paramref name="plaintext" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The encryption operation failed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ChaCha20Poly1305.Encrypt(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Encrypts the plaintext into the ciphertext destination buffer and generates the authentication tag into a separate buffer.</summary>
      <param name="nonce">The nonce associated with this message, which should be a unique value for every operation with the same key.</param>
      <param name="plaintext">The content to encrypt.</param>
      <param name="ciphertext">The byte array to receive the encrypted contents.</param>
      <param name="tag">The byte array to receive the generated authentication tag.</param>
      <param name="associatedData">Extra data associated with this message, which must also be provided during decryption.</param>
      <exception cref="T:System.ArgumentException">The <paramref name="plaintext" /> parameter and the <paramref name="ciphertext" /> do not have the same length.

-or-

The <paramref name="nonce" /> parameter length is not 12 bytes (96 bits).

-or-

The <paramref name="tag" /> parameter length is not 16 bytes (128 bits).</exception>
      <exception cref="T:System.ArgumentNullException">The <paramref name="nonce" />, <paramref name="ciphertext" />, <paramref name="tag" />, or <paramref name="plaintext" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The encryption operation failed.</exception>
    </member>
    <member name="P:System.Security.Cryptography.ChaCha20Poly1305.IsSupported">
      <summary>Gets a value that indicates whether the algorithm is supported on the current platform.</summary>
      <returns>
        <see langword="true" /> if the algorithm is supported; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.CipherMode">
      <summary>Specifies the block cipher mode to use for encryption.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CipherMode.CBC">
      <summary>The Cipher Block Chaining (<see langword="CBC" />) mode introduces feedback. Before each plain text block is encrypted, it is combined with the cipher text of the previous block by a bitwise exclusive OR operation. This ensures that even if the plain text contains many identical blocks, they will each encrypt to a different cipher text block. The initialization vector is combined with the first plain text block by a bitwise exclusive OR operation before the block is encrypted. If a single bit of the cipher text block is mangled, the corresponding plain text block will also be mangled. In addition, a bit in the subsequent block, in the same position as the original mangled bit, will be mangled.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CipherMode.CFB">
      <summary>The Cipher Feedback (<see langword="CFB" />) mode processes small increments of plain text into cipher text, instead of processing an entire block at a time. This mode uses a shift register that is one block in length and is divided into sections. For example, if the block size is 8 bytes, with one byte processed at a time, the shift register is divided into eight sections. If a bit in the cipher text is mangled, one plain text bit is mangled and the shift register is corrupted. This results in the next several plain text increments being mangled until the bad bit is shifted out of the shift register. The default feedback size can vary by algorithm, but is typically either 8 bits or the number of bits of the block size. You can alter the number of feedback bits by using the <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.FeedbackSize" /> property. Algorithms that support CFB use this property to set the feedback.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CipherMode.CTS">
      <summary>The Cipher Text Stealing (<see langword="CTS" />) mode handles any length of plain text and produces cipher text whose length matches the plain text length. This mode behaves like the <see langword="CBC" /> mode for all but the last two blocks of the plain text.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CipherMode.ECB">
      <summary>The Electronic Codebook (<see langword="ECB" />) mode encrypts each block individually. Any blocks of plain text that are identical and in the same message, or that are in a different message encrypted with the same key, will be transformed into identical cipher text blocks. Important:  This mode is not recommended because it opens the door for multiple security exploits. If the plain text to be encrypted contains substantial repetition, it is feasible for the cipher text to be broken one block at a time. It is also possible to use block analysis to determine the encryption key. Also, an active adversary can substitute and exchange individual blocks without detection, which allows blocks to be saved and inserted into the stream at other points without detection.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CipherMode.OFB">
      <summary>The Output Feedback (<see langword="OFB" />) mode processes small increments of plain text into cipher text instead of processing an entire block at a time. This mode is similar to <see langword="CFB" />; the only difference between the two modes is the way that the shift register is filled. If a bit in the cipher text is mangled, the corresponding bit of plain text will be mangled. However, if there are extra or missing bits from the cipher text, the plain text will be mangled from that point on.</summary>
    </member>
    <member name="T:System.Security.Cryptography.CngAlgorithm">
      <summary>Encapsulates the name of an encryption algorithm.</summary>
    </member>
    <member name="M:System.Security.Cryptography.CngAlgorithm.#ctor(System.String)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.CngAlgorithm" /> class.</summary>
      <param name="algorithm">The name of the algorithm to initialize.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="algorithm" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">The <paramref name="algorithm" /> parameter length is 0 (zero).</exception>
    </member>
    <member name="M:System.Security.Cryptography.CngAlgorithm.Equals(System.Object)">
      <summary>Compares the specified object to the current <see cref="T:System.Security.Cryptography.CngAlgorithm" /> object.</summary>
      <param name="obj">An object to be compared to the current <see cref="T:System.Security.Cryptography.CngAlgorithm" /> object.</param>
      <returns>
        <see langword="true" /> if the <paramref name="obj" /> parameter is a <see cref="T:System.Security.Cryptography.CngAlgorithm" /> that specifies the same algorithm as the current object; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngAlgorithm.Equals(System.Security.Cryptography.CngAlgorithm)">
      <summary>Compares the specified <see cref="T:System.Security.Cryptography.CngAlgorithm" /> object to the current <see cref="T:System.Security.Cryptography.CngAlgorithm" /> object.</summary>
      <param name="other">An object to be compared to the current <see cref="T:System.Security.Cryptography.CngAlgorithm" /> object.</param>
      <returns>
        <see langword="true" /> if the <paramref name="other" /> parameter specifies the same algorithm as the current object; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngAlgorithm.GetHashCode">
      <summary>Generates a hash value for the algorithm name that is embedded in the current <see cref="T:System.Security.Cryptography.CngAlgorithm" /> object.</summary>
      <returns>The hash value of the embedded algorithm name.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngAlgorithm.op_Equality(System.Security.Cryptography.CngAlgorithm,System.Security.Cryptography.CngAlgorithm)">
      <summary>Determines whether two <see cref="T:System.Security.Cryptography.CngAlgorithm" /> objects specify the same algorithm name.</summary>
      <param name="left">An object that specifies an algorithm name.</param>
      <param name="right">A second object, to be compared to the object that is identified by the <paramref name="left" /> parameter.</param>
      <returns>
        <see langword="true" /> if the two objects specify the same algorithm name; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngAlgorithm.op_Inequality(System.Security.Cryptography.CngAlgorithm,System.Security.Cryptography.CngAlgorithm)">
      <summary>Determines whether two <see cref="T:System.Security.Cryptography.CngAlgorithm" /> objects do not specify the same algorithm.</summary>
      <param name="left">An object that specifies an algorithm name.</param>
      <param name="right">A second object, to be compared to the object that is identified by the <paramref name="left" /> parameter.</param>
      <returns>
        <see langword="true" /> if the two objects do not specify the same algorithm name; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngAlgorithm.ToString">
      <summary>Gets the name of the algorithm that the current <see cref="T:System.Security.Cryptography.CngAlgorithm" /> object specifies.</summary>
      <returns>The embedded algorithm name.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngAlgorithm.Algorithm">
      <summary>Gets the algorithm name that the current <see cref="T:System.Security.Cryptography.CngAlgorithm" /> object specifies.</summary>
      <returns>The embedded algorithm name.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngAlgorithm.ECDiffieHellman">
      <summary>Gets a <see cref="T:System.Security.Cryptography.CngAlgorithm" /> object that specifies an Elliptic Curve Diffie-Hellman (ECDH) key exchange algorithm whose curve is described via a key property.</summary>
      <returns>An object that specifies an ECDH key exchange algorithm whose curve is described via a key property.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngAlgorithm.ECDiffieHellmanP256">
      <summary>Gets a <see cref="T:System.Security.Cryptography.CngAlgorithm" /> object that specifies an Elliptic Curve Diffie-Hellman (ECDH) key exchange algorithm that uses the P-256 curve.</summary>
      <returns>An object that specifies an ECDH algorithm that uses the P-256 curve.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngAlgorithm.ECDiffieHellmanP384">
      <summary>Gets a <see cref="T:System.Security.Cryptography.CngAlgorithm" /> object that specifies an Elliptic Curve Diffie-Hellman (ECDH) key exchange algorithm that uses the P-384 curve.</summary>
      <returns>An object that specifies an ECDH algorithm that uses the P-384 curve.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngAlgorithm.ECDiffieHellmanP521">
      <summary>Gets a <see cref="T:System.Security.Cryptography.CngAlgorithm" /> object that specifies an Elliptic Curve Diffie-Hellman (ECDH) key exchange algorithm that uses the P-521 curve.</summary>
      <returns>An object that specifies an ECDH algorithm that uses the P-521 curve.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngAlgorithm.ECDsa">
      <summary>Gets a <see cref="T:System.Security.Cryptography.CngAlgorithm" /> object that specifies an Elliptic Curve Digital Signature Algorithm (ECDSA) whose curve is described via a key property.</summary>
      <returns>An object that specifies an ECDSA whose curve is described via a key property.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngAlgorithm.ECDsaP256">
      <summary>Gets a <see cref="T:System.Security.Cryptography.CngAlgorithm" /> object that specifies an Elliptic Curve Digital Signature Algorithm (ECDSA) that uses the P-256 curve.</summary>
      <returns>An object that specifies an ECDSA algorithm that uses the P-256 curve.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngAlgorithm.ECDsaP384">
      <summary>Gets a <see cref="T:System.Security.Cryptography.CngAlgorithm" /> object that specifies an Elliptic Curve Digital Signature Algorithm (ECDSA) that uses the P-384 curve.</summary>
      <returns>An object that specifies an ECDSA algorithm that uses the P-384 curve.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngAlgorithm.ECDsaP521">
      <summary>Gets a new <see cref="T:System.Security.Cryptography.CngAlgorithm" /> object that specifies an Elliptic Curve Digital Signature Algorithm (ECDSA) that uses the P-521 curve.</summary>
      <returns>An object that specifies an ECDSA algorithm that uses the P-521 curve.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngAlgorithm.MD5">
      <summary>Gets a new <see cref="T:System.Security.Cryptography.CngAlgorithm" /> object that specifies the Message Digest 5 (MD5) hash algorithm.</summary>
      <returns>An object that specifies the MD5 algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngAlgorithm.Rsa">
      <summary>Gets a new <see cref="T:System.Security.Cryptography.CngAlgorithm" /> object that specifies the RSA hash algorithm.</summary>
      <returns>An object that specifies the RSA algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngAlgorithm.Sha1">
      <summary>Gets a new <see cref="T:System.Security.Cryptography.CngAlgorithm" /> object that specifies the Secure Hash Algorithm 1 (SHA-1) algorithm.</summary>
      <returns>An object that specifies the SHA-1 algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngAlgorithm.Sha256">
      <summary>Gets a new <see cref="T:System.Security.Cryptography.CngAlgorithm" /> object that specifies the Secure Hash Algorithm 256 (SHA-256) algorithm.</summary>
      <returns>An object that specifies the SHA-256 algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngAlgorithm.Sha384">
      <summary>Gets a new <see cref="T:System.Security.Cryptography.CngAlgorithm" /> object that specifies the Secure Hash Algorithm 384 (SHA-384) algorithm.</summary>
      <returns>An object that specifies the SHA-384 algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngAlgorithm.Sha512">
      <summary>Gets a new <see cref="T:System.Security.Cryptography.CngAlgorithm" /> object that specifies the Secure Hash Algorithm 512 (SHA-512) algorithm.</summary>
      <returns>An object that specifies the SHA-512 algorithm.</returns>
    </member>
    <member name="T:System.Security.Cryptography.CngAlgorithmGroup">
      <summary>Encapsulates the name of an encryption algorithm group.</summary>
    </member>
    <member name="M:System.Security.Cryptography.CngAlgorithmGroup.#ctor(System.String)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.CngAlgorithmGroup" /> class.</summary>
      <param name="algorithmGroup">The name of the algorithm group to initialize.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="algorithmGroup" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">The <paramref name="algorithmGroup" /> parameter length is 0 (zero).</exception>
    </member>
    <member name="M:System.Security.Cryptography.CngAlgorithmGroup.Equals(System.Object)">
      <summary>Compares the specified object to the current <see cref="T:System.Security.Cryptography.CngAlgorithmGroup" /> object.</summary>
      <param name="obj">An object to be compared to the current <see cref="T:System.Security.Cryptography.CngAlgorithmGroup" /> object.</param>
      <returns>
        <see langword="true" /> if the <paramref name="obj" /> parameter is a <see cref="T:System.Security.Cryptography.CngAlgorithmGroup" /> that specifies the same algorithm group as the current object; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngAlgorithmGroup.Equals(System.Security.Cryptography.CngAlgorithmGroup)">
      <summary>Compares the specified <see cref="T:System.Security.Cryptography.CngAlgorithmGroup" /> object to the current <see cref="T:System.Security.Cryptography.CngAlgorithmGroup" /> object.</summary>
      <param name="other">An object to be compared to the current <see cref="T:System.Security.Cryptography.CngAlgorithmGroup" /> object.</param>
      <returns>
        <see langword="true" /> if the <paramref name="other" /> parameter specifies the same algorithm group as the current object; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngAlgorithmGroup.GetHashCode">
      <summary>Generates a hash value for the algorithm group name that is embedded in the current <see cref="T:System.Security.Cryptography.CngAlgorithmGroup" /> object.</summary>
      <returns>The hash value of the embedded algorithm group name.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngAlgorithmGroup.op_Equality(System.Security.Cryptography.CngAlgorithmGroup,System.Security.Cryptography.CngAlgorithmGroup)">
      <summary>Determines whether two <see cref="T:System.Security.Cryptography.CngAlgorithmGroup" /> objects specify the same algorithm group.</summary>
      <param name="left">An object that specifies an algorithm group.</param>
      <param name="right">A second object, to be compared to the object that is identified by the <paramref name="left" /> parameter.</param>
      <returns>
        <see langword="true" /> if the two objects specify the same algorithm group; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngAlgorithmGroup.op_Inequality(System.Security.Cryptography.CngAlgorithmGroup,System.Security.Cryptography.CngAlgorithmGroup)">
      <summary>Determines whether two <see cref="T:System.Security.Cryptography.CngAlgorithmGroup" /> objects do not specify the same algorithm group.</summary>
      <param name="left">An object that specifies an algorithm group.</param>
      <param name="right">A second object, to be compared to the object that is identified by the <paramref name="left" /> parameter.</param>
      <returns>
        <see langword="true" /> if the two objects do not specify the same algorithm group; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngAlgorithmGroup.ToString">
      <summary>Gets the name of the algorithm group that the current <see cref="T:System.Security.Cryptography.CngAlgorithm" /> object specifies.</summary>
      <returns>The embedded algorithm group name.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngAlgorithmGroup.AlgorithmGroup">
      <summary>Gets the name of the algorithm group that the current <see cref="T:System.Security.Cryptography.CngAlgorithm" /> object specifies.</summary>
      <returns>The embedded algorithm group name.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngAlgorithmGroup.DiffieHellman">
      <summary>Gets a <see cref="T:System.Security.Cryptography.CngAlgorithmGroup" /> object that specifies the Diffie-Hellman family of algorithms.</summary>
      <returns>An object that specifies the Diffie-Hellman family of algorithms.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngAlgorithmGroup.Dsa">
      <summary>Gets a <see cref="T:System.Security.Cryptography.CngAlgorithmGroup" /> object that specifies the Digital Signature Algorithm (DSA) family of algorithms.</summary>
      <returns>An object that specifies the DSA family of algorithms.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngAlgorithmGroup.ECDiffieHellman">
      <summary>Gets a <see cref="T:System.Security.Cryptography.CngAlgorithmGroup" /> object that specifies the Elliptic Curve Diffie-Hellman (ECDH) family of algorithms.</summary>
      <returns>An object that specifies the ECDH family of algorithms.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngAlgorithmGroup.ECDsa">
      <summary>Gets a <see cref="T:System.Security.Cryptography.CngAlgorithmGroup" /> object that specifies the Elliptic Curve Digital Signature Algorithm (ECDSA) family of algorithms.</summary>
      <returns>An object that specifies the ECDSA family of algorithms.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngAlgorithmGroup.Rsa">
      <summary>Gets a <see cref="T:System.Security.Cryptography.CngAlgorithmGroup" /> object that specifies the Rivest-Shamir-Adleman (RSA) family of algorithms.</summary>
      <returns>An object that specifies the RSA family of algorithms.</returns>
    </member>
    <member name="T:System.Security.Cryptography.CngExportPolicies">
      <summary>Specifies the key export policies for a key.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngExportPolicies.AllowArchiving">
      <summary>The private key can be exported one time for archiving purposes.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngExportPolicies.AllowExport">
      <summary>The private key can be exported multiple times.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngExportPolicies.AllowPlaintextArchiving">
      <summary>The private key can be exported one time as plaintext.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngExportPolicies.AllowPlaintextExport">
      <summary>The private key can be exported multiple times as plaintext.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngExportPolicies.None">
      <summary>The key is not exportable.</summary>
    </member>
    <member name="T:System.Security.Cryptography.CngKey">
      <summary>Defines the core functionality for keys that are used with Cryptography Next Generation (CNG) objects.</summary>
    </member>
    <member name="M:System.Security.Cryptography.CngKey.Create(System.Security.Cryptography.CngAlgorithm,System.String,System.Security.Cryptography.CngKeyCreationParameters)">
      <summary>Creates a named <see cref="T:System.Security.Cryptography.CngKey" /> object that provides the specified algorithm, using the supplied key creation parameters.</summary>
      <param name="algorithm">The algorithm that the key will be used with.</param>
      <param name="keyName">The key name. If a name is not provided, the key will not be persisted.</param>
      <param name="creationParameters">An object that specifies advanced parameters for the method, including the <see cref="T:System.Security.Cryptography.CngProvider" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="algorithm" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">Cryptography Next Generation (CNG) is not supported on this system.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">All other errors.</exception>
      <returns>A persisted or ephemeral key that provides the specified algorithm.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngKey.Create(System.Security.Cryptography.CngAlgorithm,System.String)">
      <summary>Creates a named <see cref="T:System.Security.Cryptography.CngKey" /> object that provides the specified algorithm.</summary>
      <param name="algorithm">The algorithm that the key will be used with.</param>
      <param name="keyName">The key name. If a name is not provided, the key will not be persisted.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="algorithm" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">Cryptography Next Generation (CNG) is not supported on this system.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">All other errors.</exception>
      <returns>A persisted or ephemeral key that provides the specified algorithm.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngKey.Create(System.Security.Cryptography.CngAlgorithm)">
      <summary>Creates a <see cref="T:System.Security.Cryptography.CngKey" /> object that can be used with the specified algorithm.</summary>
      <param name="algorithm">The algorithm that the key will be used with.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="algorithm" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">Cryptography Next Generation (CNG) is not supported on this system.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">All other errors.</exception>
      <returns>An ephemeral key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngKey.Delete">
      <summary>Removes the key that is associated with the object.</summary>
      <exception cref="T:System.ObjectDisposedException">An attempt was made to access a deleted key.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">All other errors.</exception>
    </member>
    <member name="M:System.Security.Cryptography.CngKey.Dispose">
      <summary>Releases all resources used by the current instance of the <see cref="T:System.Security.Cryptography.CngKey" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.CngKey.Exists(System.String,System.Security.Cryptography.CngProvider,System.Security.Cryptography.CngKeyOpenOptions)">
      <summary>Checks to see whether a named key exists in the specified key storage provider (KSP), according to the specified options.</summary>
      <param name="keyName">The key name.</param>
      <param name="provider">The KSP to search for the key.</param>
      <param name="options">A bitwise combination of the enumeration values that specify options for opening a key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="keyName" /> or <paramref name="provider" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">Cryptography Next Generation (CNG) is not supported on this system.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">All other errors.</exception>
      <returns>
        <see langword="true" /> if the named key exists in the specified provider; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngKey.Exists(System.String,System.Security.Cryptography.CngProvider)">
      <summary>Checks to see whether a named key exists in the specified key storage provider (KSP).</summary>
      <param name="keyName">The key name.</param>
      <param name="provider">The KSP to check for the key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="keyName" /> or <paramref name="provider" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">Cryptography Next Generation (CNG) is not supported on this system.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">All other errors.</exception>
      <returns>
        <see langword="true" /> if the named key exists in the specified provider; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngKey.Exists(System.String)">
      <summary>Checks to see whether a named key exists in the default key storage provider (KSP).</summary>
      <param name="keyName">The key name.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="keyName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">Cryptography Next Generation (CNG) is not supported on this system.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">All other errors.</exception>
      <returns>
        <see langword="true" /> if the named key exists in the default KSP; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngKey.Export(System.Security.Cryptography.CngKeyBlobFormat)">
      <summary>Exports the key material into a BLOB, in the specified format.</summary>
      <param name="format">An object that specifies the format of the key BLOB.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="format" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">All other errors. Typically, the <see cref="P:System.Security.Cryptography.CngKey.ExportPolicy" /> does not allow the key to be exported.</exception>
      <returns>A BLOB that contains the key material in the specified format.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngKey.GetProperty(System.String,System.Security.Cryptography.CngPropertyOptions)">
      <summary>Gets a property, given a name and a set of property options.</summary>
      <param name="name">The name of the desired property.</param>
      <param name="options">A bitwise combination of the enumeration values that specify options for the named property.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="name" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">All other errors.</exception>
      <returns>An object that contains the raw value of the specified property.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngKey.HasProperty(System.String,System.Security.Cryptography.CngPropertyOptions)">
      <summary>Checks to see whether the specified property exists on the key.</summary>
      <param name="name">The property name to check.</param>
      <param name="options">A bitwise combination of the enumeration values that specify options for the named property.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="name" /> is <see langword="null" />.</exception>
      <returns>
        <see langword="true" /> if the specified property is found; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngKey.Import(System.Byte[],System.Security.Cryptography.CngKeyBlobFormat,System.Security.Cryptography.CngProvider)">
      <summary>Creates a new key by importing the specified key material into the specified key storage provider (KSP), using the specified format.</summary>
      <param name="keyBlob">An array that contains the key information.</param>
      <param name="format">An object that specifies the format of the <paramref name="keyBlob" /> array.</param>
      <param name="provider">The KSP.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="keyBlob" />, <paramref name="format" />, or <paramref name="provider" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">Cryptography Next Generation (CNG) is not supported on this system.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">All other errors.</exception>
      <returns>A new key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngKey.Import(System.Byte[],System.Security.Cryptography.CngKeyBlobFormat)">
      <summary>Creates a new key by importing the specified key material into the default key storage provider (KSP) and using the specified format.</summary>
      <param name="keyBlob">An array that contains the key information.</param>
      <param name="format">An object that specifies the format of the <paramref name="keyBlob" /> array.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="keyBlob" /> or <paramref name="format" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">Cryptography Next Generation (CNG) is not supported on this system.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">All other errors.</exception>
      <returns>A new key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngKey.Open(Microsoft.Win32.SafeHandles.SafeNCryptKeyHandle,System.Security.Cryptography.CngKeyHandleOpenOptions)">
      <summary>Creates an instance of an <see cref="T:System.Security.Cryptography.CngKey" /> object by using a handle to an existing key.</summary>
      <param name="keyHandle">A handle to an existing key.</param>
      <param name="keyHandleOpenOptions">One of the enumeration values that indicates whether <paramref name="keyHandle" /> represents an ephemeral key or a named key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="keyHandle" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="keyHandle" /> is invalid or malformed, or it is already closed. This exception is also thrown if the key is an ephemeral key that is created by the common language runtime (CLR), but the <see cref="F:System.Security.Cryptography.CngKeyHandleOpenOptions.EphemeralKey" /> value is not specified.</exception>
      <exception cref="T:System.PlatformNotSupportedException">Cryptography Next Generation (CNG) is not supported on this system.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">All other errors.</exception>
      <returns>An existing key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngKey.Open(System.String,System.Security.Cryptography.CngProvider,System.Security.Cryptography.CngKeyOpenOptions)">
      <summary>Creates an instance of an <see cref="T:System.Security.Cryptography.CngKey" /> object that represents an existing named key, using the specified key storage provider (KSP) and key open options.</summary>
      <param name="keyName">The name of the key.</param>
      <param name="provider">The KSP that contains the key.</param>
      <param name="openOptions">A bitwise combination of the enumeration values that specify options for opening the key, such as where the key is opened from (machine or user storage) and whether to suppress UI prompting.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="keyName" /> or <paramref name="provider" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">Cryptography Next Generation (CNG) is not supported on this system.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">All other errors.</exception>
      <returns>An existing key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngKey.Open(System.String,System.Security.Cryptography.CngProvider)">
      <summary>Creates an instance of an <see cref="T:System.Security.Cryptography.CngKey" /> object that represents an existing named key, using the specified key storage provider (KSP).</summary>
      <param name="keyName">The name of the key.</param>
      <param name="provider">The KSP that contains the key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="keyName" /> or <paramref name="provider" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">Cryptography Next Generation (CNG) is not supported on this system.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">All other errors.</exception>
      <returns>An existing key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngKey.Open(System.String)">
      <summary>Creates an instance of an <see cref="T:System.Security.Cryptography.CngKey" /> object that represents an existing named key.</summary>
      <param name="keyName">The name of the key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="keyName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">Cryptography Next Generation (CNG) is not supported on this system.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">All other errors.</exception>
      <returns>An existing key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngKey.SetProperty(System.Security.Cryptography.CngProperty)">
      <summary>Sets a named property on the key.</summary>
      <param name="property">The key property to set.</param>
    </member>
    <member name="P:System.Security.Cryptography.CngKey.Algorithm">
      <summary>Gets the algorithm that is used by the key.</summary>
      <returns>An object that specifies the name of an encryption algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKey.AlgorithmGroup">
      <summary>Gets the algorithm group that is used by the key.</summary>
      <returns>An object that specifies the name of an encryption algorithm group.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKey.ExportPolicy">
      <summary>Gets the export policy that is used by the key.</summary>
      <returns>An object that specifies the export policy for the key.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKey.Handle">
      <summary>Gets a safe handle that represents a native key (NCRYPT_KEY_HANDLE).</summary>
      <returns>A safe handle that represents the key.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKey.IsEphemeral">
      <summary>Gets the persistence state of the key.</summary>
      <returns>
        <see langword="true" /> if the key is ephemeral; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKey.IsMachineKey">
      <summary>Gets the scope (machine or user) of the key.</summary>
      <returns>
        <see langword="true" /> if the key is available on a machine-wide basis; <see langword="false" /> if the key is only for the current user.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKey.KeyName">
      <summary>Gets the name of the key.</summary>
      <returns>The name of the key. If the key is ephemeral, the value is <see langword="null" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKey.KeySize">
      <summary>Gets the key size in bits.</summary>
      <returns>The key size in bits.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKey.KeyUsage">
      <summary>Gets the cryptographic operations specified by the key.</summary>
      <returns>A bitwise combination of the enumeration values that specify the usages allowed for the key.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKey.ParentWindowHandle">
      <summary>Gets or sets the window handle (HWND) that should be used for user interface (UI) prompts caused by accessing the key.</summary>
      <returns>The parent window handle for the key.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKey.Provider">
      <summary>Gets the key storage provider (KSP) that manages the key.</summary>
      <returns>The KSP that manages the key.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKey.ProviderHandle">
      <summary>Gets a native handle (an NCRYPT_PROV_HANDLE) to the key storage provider (KSP).</summary>
      <returns>A handle to the KSP.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKey.UIPolicy">
      <summary>Gets parameters that control the user interface (UI) for accessing the key.</summary>
      <returns>An object that contains configuration parameters for displaying the UI.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKey.UniqueName">
      <summary>Gets the unique name for the key.</summary>
      <returns>An alternate name for the key. If the key is ephemeral, the value is <see langword="null" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.CngKeyBlobFormat">
      <summary>Specifies a key BLOB format for use with Microsoft Cryptography Next Generation (CNG) objects.</summary>
    </member>
    <member name="M:System.Security.Cryptography.CngKeyBlobFormat.#ctor(System.String)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.CngKeyBlobFormat" /> class by using the specified format.</summary>
      <param name="format">The key BLOB format to initialize.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="format" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">The <paramref name="format" /> parameter length is 0 (zero).</exception>
    </member>
    <member name="M:System.Security.Cryptography.CngKeyBlobFormat.Equals(System.Object)">
      <summary>Compares the specified object to the current <see cref="T:System.Security.Cryptography.CngKeyBlobFormat" /> object.</summary>
      <param name="obj">An object to be compared to the current <see cref="T:System.Security.Cryptography.CngKeyBlobFormat" /> object.</param>
      <returns>
        <see langword="true" /> if the <paramref name="obj" /> parameter is a <see cref="T:System.Security.Cryptography.CngKeyBlobFormat" /> object that specifies the same key BLOB format as the current object; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngKeyBlobFormat.Equals(System.Security.Cryptography.CngKeyBlobFormat)">
      <summary>Compares the specified <see cref="T:System.Security.Cryptography.CngKeyBlobFormat" /> object to the current <see cref="T:System.Security.Cryptography.CngKeyBlobFormat" /> object.</summary>
      <param name="other">An object to be compared to the current <see cref="T:System.Security.Cryptography.CngKeyBlobFormat" /> object.</param>
      <returns>
        <see langword="true" /> if the <paramref name="other" /> parameter specifies the same key BLOB format as the current object; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngKeyBlobFormat.GetHashCode">
      <summary>Generates a hash value for the embedded key BLOB format in the current <see cref="T:System.Security.Cryptography.CngKeyBlobFormat" /> object.</summary>
      <returns>The hash value of the embedded key BLOB format.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngKeyBlobFormat.op_Equality(System.Security.Cryptography.CngKeyBlobFormat,System.Security.Cryptography.CngKeyBlobFormat)">
      <summary>Determines whether two <see cref="T:System.Security.Cryptography.CngKeyBlobFormat" /> objects specify the same key BLOB format.</summary>
      <param name="left">An object that specifies a key BLOB format.</param>
      <param name="right">A second object, to be compared to the object identified by the <paramref name="left" /> parameter.</param>
      <returns>
        <see langword="true" /> if the two objects specify the same key BLOB format; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngKeyBlobFormat.op_Inequality(System.Security.Cryptography.CngKeyBlobFormat,System.Security.Cryptography.CngKeyBlobFormat)">
      <summary>Determines whether two <see cref="T:System.Security.Cryptography.CngKeyBlobFormat" /> objects do not specify the same key BLOB format.</summary>
      <param name="left">An object that specifies a key BLOB format.</param>
      <param name="right">A second object, to be compared to the object identified by the <paramref name="left" /> parameter.</param>
      <returns>
        <see langword="true" /> if the two objects do not specify the same key BLOB format; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngKeyBlobFormat.ToString">
      <summary>Gets the name of the key BLOB format that the current <see cref="T:System.Security.Cryptography.CngKeyBlobFormat" /> object specifies.</summary>
      <returns>The embedded key BLOB format name.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKeyBlobFormat.EccFullPrivateBlob">
      <summary>Gets a <see cref="T:System.Security.Cryptography.CngKeyBlobFormat" /> object that specifies a private key BLOB for an elliptic curve cryptography (ECC) key which contains explicit curve parameters.</summary>
      <returns>An object describing a private key BLOB.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKeyBlobFormat.EccFullPublicBlob">
      <summary>Gets a <see cref="T:System.Security.Cryptography.CngKeyBlobFormat" /> object that specifies a public key BLOB for an elliptic curve cryptography (ECC) key which contains explicit curve parameters.</summary>
      <returns>An object describing a public key BLOB.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKeyBlobFormat.EccPrivateBlob">
      <summary>Gets a <see cref="T:System.Security.Cryptography.CngKeyBlobFormat" /> object that specifies a private key BLOB for an elliptic curve cryptography (ECC) key.</summary>
      <returns>An object that specifies an ECC private key BLOB.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKeyBlobFormat.EccPublicBlob">
      <summary>Gets a <see cref="T:System.Security.Cryptography.CngKeyBlobFormat" /> object that specifies a public key BLOB for an elliptic curve cryptography (ECC) key.</summary>
      <returns>An object that specifies an ECC public key BLOB.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKeyBlobFormat.Format">
      <summary>Gets the name of the key BLOB format that the current <see cref="T:System.Security.Cryptography.CngKeyBlobFormat" /> object specifies.</summary>
      <returns>The embedded key BLOB format name.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKeyBlobFormat.GenericPrivateBlob">
      <summary>Gets a <see cref="T:System.Security.Cryptography.CngKeyBlobFormat" /> object that specifies a generic private key BLOB.</summary>
      <returns>An object that specifies a generic private key BLOB.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKeyBlobFormat.GenericPublicBlob">
      <summary>Gets a <see cref="T:System.Security.Cryptography.CngKeyBlobFormat" /> object that specifies a generic public key BLOB.</summary>
      <returns>An object that specifies a generic public key BLOB.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKeyBlobFormat.OpaqueTransportBlob">
      <summary>Gets a <see cref="T:System.Security.Cryptography.CngKeyBlobFormat" /> object that specifies an opaque transport key BLOB.</summary>
      <returns>An object that specifies an opaque transport key BLOB.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKeyBlobFormat.Pkcs8PrivateBlob">
      <summary>Gets a <see cref="T:System.Security.Cryptography.CngKeyBlobFormat" /> object that specifies a Private Key Information Syntax Standard (PKCS #8) key BLOB.</summary>
      <returns>An object that specifies a PKCS #8 private key BLOB.</returns>
    </member>
    <member name="T:System.Security.Cryptography.CngKeyCreationOptions">
      <summary>Specifies options used for key creation.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngKeyCreationOptions.MachineKey">
      <summary>A machine-wide key is created.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngKeyCreationOptions.None">
      <summary>No key creation options are used.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngKeyCreationOptions.OverwriteExistingKey">
      <summary>The existing key is overwritten during key creation.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngKeyCreationOptions.PreferVbs">
      <summary>Indicates a key should be protected with Virtualization-based security (VBS).</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngKeyCreationOptions.RequireVbs">
      <summary>Indicates a key must be protected with Virtualization-based security (VBS).</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngKeyCreationOptions.UsePerBootKey">
      <summary>
        <para>Instructs Virtualization-based security (VBS) to protect the client key with a per-boot key when combined with <see cref="F:System.Security.Cryptography.CngKeyCreationOptions.RequireVbs" /> or <see cref="F:System.Security.Cryptography.CngKeyCreationOptions.PreferVbs" />.</para>
      </summary>
    </member>
    <member name="T:System.Security.Cryptography.CngKeyCreationParameters">
      <summary>Contains advanced properties for key creation.</summary>
    </member>
    <member name="M:System.Security.Cryptography.CngKeyCreationParameters.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.CngKeyCreationParameters" /> class.</summary>
    </member>
    <member name="P:System.Security.Cryptography.CngKeyCreationParameters.ExportPolicy">
      <summary>Gets or sets the key export policy.</summary>
      <returns>An object that specifies a key export policy. The default value is <see langword="null" />, which indicates that the key storage provider's default export policy is set.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKeyCreationParameters.KeyCreationOptions">
      <summary>Gets or sets the key creation options.</summary>
      <returns>An object that specifies options for creating keys. The default value is <see langword="null" />, which indicates that the key storage provider's default key creation options are set.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKeyCreationParameters.KeyUsage">
      <summary>Gets or sets the cryptographic operations that apply to the current key.</summary>
      <returns>A bitwise combination of one or more enumeration values that specify key usage. The default value is <see langword="null" />, which indicates that the key storage provider's default key usage is set.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKeyCreationParameters.Parameters">
      <summary>Enables a <see cref="T:System.Security.Cryptography.CngKey" /> object to be created with additional properties that are set before the key is finalized.</summary>
      <returns>A collection object that contains any additional parameters that you must set on a <see cref="T:System.Security.Cryptography.CngKey" /> object during key creation.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKeyCreationParameters.ParentWindowHandle">
      <summary>Gets or sets the window handle that should be used as the parent window for dialog boxes that are created by Cryptography Next Generation (CNG) classes.</summary>
      <returns>The HWND of the parent window that is used for CNG dialog boxes.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKeyCreationParameters.Provider">
      <summary>Gets or sets the key storage provider (KSP) to create a key in.</summary>
      <exception cref="T:System.ArgumentNullException">The <see cref="P:System.Security.Cryptography.CngKeyCreationParameters.Provider" /> property is set to a <see langword="null" /> value.</exception>
      <returns>An object that specifies the KSP that a new key will be created in.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngKeyCreationParameters.UIPolicy">
      <summary>Gets or sets information about the user interface to display when a key is created or accessed.</summary>
      <returns>An object that contains details about the user interface shown by Cryptography Next Generation (CNG) classes when a key is created or accessed. A <see langword="null" /> value indicates that the key storage provider's default user interface policy is set.</returns>
    </member>
    <member name="T:System.Security.Cryptography.CngKeyHandleOpenOptions">
      <summary>Specifies options for opening key handles.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngKeyHandleOpenOptions.EphemeralKey">
      <summary>The key handle being opened specifies an ephemeral key.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngKeyHandleOpenOptions.None">
      <summary>The key handle being opened does not specify an ephemeral key.</summary>
    </member>
    <member name="T:System.Security.Cryptography.CngKeyOpenOptions">
      <summary>Specifies options for opening a key.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngKeyOpenOptions.MachineKey">
      <summary>A machine-wide key is opened.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngKeyOpenOptions.None">
      <summary>No key open options are specified.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngKeyOpenOptions.Silent">
      <summary>UI prompting is suppressed.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngKeyOpenOptions.UserKey">
      <summary>If the <see cref="F:System.Security.Cryptography.CngKeyOpenOptions.MachineKey" /> value is not specified, a user key is opened instead.</summary>
    </member>
    <member name="T:System.Security.Cryptography.CngKeyUsages">
      <summary>Specifies the cryptographic operations that a Cryptography Next Generation (CNG) key may be used with.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngKeyUsages.AllUsages">
      <summary>The key can be used for all purposes.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngKeyUsages.Decryption">
      <summary>The key can be used for encryption and decryption.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngKeyUsages.KeyAgreement">
      <summary>The key can be used for secret agreement generation and key exchange.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngKeyUsages.None">
      <summary>No usage values are assigned to the key.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngKeyUsages.Signing">
      <summary>The key can be used for signing and verification.</summary>
    </member>
    <member name="T:System.Security.Cryptography.CngProperty">
      <summary>Encapsulates a property of a Cryptography Next Generation (CNG) key or provider.</summary>
    </member>
    <member name="M:System.Security.Cryptography.CngProperty.#ctor(System.String,System.Byte[],System.Security.Cryptography.CngPropertyOptions)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.CngProperty" /> struct.</summary>
      <param name="name">The property name to initialize.</param>
      <param name="value">The property value to initialize.</param>
      <param name="options">A bitwise combination of the enumeration values that specify how the property is stored.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="name" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.CngProperty.Equals(System.Object)">
      <summary>Compares the specified object to the current <see cref="T:System.Security.Cryptography.CngProperty" /> object.</summary>
      <param name="obj">An object to be compared to the current <see cref="T:System.Security.Cryptography.CngProperty" /> object.</param>
      <returns>
        <see langword="true" /> if the <paramref name="obj" /> parameter is a <see cref="T:System.Security.Cryptography.CngProperty" /> object that specifies the same property as the current object; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngProperty.Equals(System.Security.Cryptography.CngProperty)">
      <summary>Compares the specified <see cref="T:System.Security.Cryptography.CngProperty" /> object to the current <see cref="T:System.Security.Cryptography.CngProperty" /> object.</summary>
      <param name="other">An object to be compared to the current <see cref="T:System.Security.Cryptography.CngProperty" /> object.</param>
      <returns>
        <see langword="true" /> if the <paramref name="other" /> parameter represents the same property as the current object; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngProperty.GetHashCode">
      <summary>Generates a hash value for the current <see cref="T:System.Security.Cryptography.CngProperty" /> object.</summary>
      <returns>The hash value of the current <see cref="T:System.Security.Cryptography.CngProperty" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngProperty.GetValue">
      <summary>Gets the property value that the current <see cref="T:System.Security.Cryptography.CngProperty" /> object specifies.</summary>
      <returns>An array that represents the value stored in the property.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngProperty.op_Equality(System.Security.Cryptography.CngProperty,System.Security.Cryptography.CngProperty)">
      <summary>Determines whether two <see cref="T:System.Security.Cryptography.CngProperty" /> objects specify the same property name, value, and options.</summary>
      <param name="left">An object that specifies a property of a Cryptography Next Generation (CNG) key or provider.</param>
      <param name="right">A second object, to be compared to the object that is identified by the <paramref name="left" /> parameter.</param>
      <returns>
        <see langword="true" /> if the two objects specify the same property; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngProperty.op_Inequality(System.Security.Cryptography.CngProperty,System.Security.Cryptography.CngProperty)">
      <summary>Determines whether two <see cref="T:System.Security.Cryptography.CngProperty" /> objects do not specify the same property name, value, and options.</summary>
      <param name="left">An object that specifies a property of a Cryptography Next Generation (CNG) key or provider.</param>
      <param name="right">A second object, to be compared to the object that is identified by the <paramref name="left" /> parameter.</param>
      <returns>
        <see langword="true" /> if the two objects do not specify the same property; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngProperty.Name">
      <summary>Gets the property name that the current <see cref="T:System.Security.Cryptography.CngProperty" /> object specifies.</summary>
      <returns>The property name that is set in the current <see cref="T:System.Security.Cryptography.CngProperty" /> object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngProperty.Options">
      <summary>Gets the property options that the current <see cref="T:System.Security.Cryptography.CngProperty" /> object specifies.</summary>
      <returns>An object that specifies the options that are set in the current <see cref="T:System.Security.Cryptography.CngProperty" /> object.</returns>
    </member>
    <member name="T:System.Security.Cryptography.CngPropertyCollection">
      <summary>Provides a strongly typed collection of Cryptography Next Generation (CNG) properties.</summary>
    </member>
    <member name="M:System.Security.Cryptography.CngPropertyCollection.#ctor">
      <summary>Initializes a new <see cref="T:System.Security.Cryptography.CngPropertyCollection" /> object.</summary>
    </member>
    <member name="T:System.Security.Cryptography.CngPropertyOptions">
      <summary>Specifies Cryptography Next Generation (CNG) key property options.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngPropertyOptions.CustomProperty">
      <summary>The property is not specified by CNG. Use this option to avoid future name conflicts with CNG properties.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngPropertyOptions.None">
      <summary>The referenced property has no options.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngPropertyOptions.Persist">
      <summary>The property should be persisted.</summary>
    </member>
    <member name="T:System.Security.Cryptography.CngProvider">
      <summary>Encapsulates the name of a key storage provider (KSP) for use with Cryptography Next Generation (CNG) objects.</summary>
    </member>
    <member name="M:System.Security.Cryptography.CngProvider.#ctor(System.String)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.CngProvider" /> class.</summary>
      <param name="provider">The name of the key storage provider (KSP) to initialize.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="provider" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">The <paramref name="provider" /> parameter length is 0 (zero).</exception>
    </member>
    <member name="M:System.Security.Cryptography.CngProvider.Equals(System.Object)">
      <summary>Compares the specified object to the current <see cref="T:System.Security.Cryptography.CngProvider" /> object.</summary>
      <param name="obj">An object to be compared to the current <see cref="T:System.Security.Cryptography.CngProvider" /> object.</param>
      <returns>
        <see langword="true" /> if the <paramref name="obj" /> parameter is a <see cref="T:System.Security.Cryptography.CngProvider" /> that specifies the same key storage provider(KSP) as the current object; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngProvider.Equals(System.Security.Cryptography.CngProvider)">
      <summary>Compares the specified <see cref="T:System.Security.Cryptography.CngProvider" /> object to the current <see cref="T:System.Security.Cryptography.CngProvider" /> object.</summary>
      <param name="other">An object to be compared to the current <see cref="T:System.Security.Cryptography.CngProvider" /> object.</param>
      <returns>
        <see langword="true" /> if the <paramref name="other" /> parameter specifies the same key storage provider (KSP) as the current object; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngProvider.GetHashCode">
      <summary>Generates a hash value for the name of the key storage provider (KSP) that is embedded in the current <see cref="T:System.Security.Cryptography.CngProvider" /> object.</summary>
      <returns>The hash value of the embedded KSP name.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngProvider.op_Equality(System.Security.Cryptography.CngProvider,System.Security.Cryptography.CngProvider)">
      <summary>Determines whether two <see cref="T:System.Security.Cryptography.CngProvider" /> objects specify the same key storage provider (KSP).</summary>
      <param name="left">An object that specifies a KSP.</param>
      <param name="right">A second object, to be compared to the object that is identified by the <paramref name="left" /> parameter.</param>
      <returns>
        <see langword="true" /> if the two objects represent the same KSP; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngProvider.op_Inequality(System.Security.Cryptography.CngProvider,System.Security.Cryptography.CngProvider)">
      <summary>Determines whether two <see cref="T:System.Security.Cryptography.CngProvider" /> objects do not represent the same key storage provider (KSP).</summary>
      <param name="left">An object that specifies a KSP.</param>
      <param name="right">A second object, to be compared to the object that is identified by the <paramref name="left" /> parameter.</param>
      <returns>
        <see langword="true" /> if the two objects do not represent the same KSP; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CngProvider.ToString">
      <summary>Gets the name of the key storage provider (KSP) that the current <see cref="T:System.Security.Cryptography.CngProvider" /> object specifies.</summary>
      <returns>The embedded KSP name.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngProvider.MicrosoftPlatformCryptoProvider">
      <summary>Gets a <see cref="T:System.Security.Cryptography.CngProvider" /> object that specifies the Microsoft Platform Crypto Storage Provider.</summary>
      <returns>An object that specifies the Microsoft Platform Crypto Storage Provider.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngProvider.MicrosoftSmartCardKeyStorageProvider">
      <summary>Gets a <see cref="T:System.Security.Cryptography.CngProvider" /> object that specifies the Microsoft Smart Card Key Storage Provider.</summary>
      <returns>An object that specifies the Microsoft Smart Card Key Storage Provider.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngProvider.MicrosoftSoftwareKeyStorageProvider">
      <summary>Gets a <see cref="T:System.Security.Cryptography.CngProvider" /> object that specifies the Microsoft Software Key Storage Provider.</summary>
      <returns>An object that specifies the Microsoft Software Key Storage Provider.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngProvider.Provider">
      <summary>Gets the name of the key storage provider (KSP) that the current <see cref="T:System.Security.Cryptography.CngProvider" /> object specifies.</summary>
      <returns>The embedded KSP name.</returns>
    </member>
    <member name="T:System.Security.Cryptography.CngUIPolicy">
      <summary>Encapsulates optional configuration parameters for the user interface (UI) that Cryptography Next Generation (CNG) displays when you access a protected key.</summary>
    </member>
    <member name="M:System.Security.Cryptography.CngUIPolicy.#ctor(System.Security.Cryptography.CngUIProtectionLevels,System.String,System.String,System.String,System.String)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.CngUIPolicy" /> class by using the specified protection level, friendly name, description string, use context, and title.</summary>
      <param name="protectionLevel">A bitwise combination of the enumeration values that specify the protection level.</param>
      <param name="friendlyName">A friendly name for the key to be used in the UI prompt. Specify a null string to use the default name.</param>
      <param name="description">The full-text description of the key. Specify a null string to use the default description.</param>
      <param name="useContext">A description of how the key will be used. Specify a null string to use the default description.</param>
      <param name="creationTitle">The title for the dialog box that provides the UI prompt. Specify a null string to use the default title.</param>
    </member>
    <member name="M:System.Security.Cryptography.CngUIPolicy.#ctor(System.Security.Cryptography.CngUIProtectionLevels,System.String,System.String,System.String)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.CngUIPolicy" /> class by using the specified protection level, friendly name, description string, and use context.</summary>
      <param name="protectionLevel">A bitwise combination of the enumeration values that specify the protection level.</param>
      <param name="friendlyName">A friendly name for the key to be used in the UI prompt. Specify a null string to use the default name.</param>
      <param name="description">The full-text description of the key. Specify a null string to use the default description.</param>
      <param name="useContext">A description of how the key will be used. Specify a null string to use the default description.</param>
    </member>
    <member name="M:System.Security.Cryptography.CngUIPolicy.#ctor(System.Security.Cryptography.CngUIProtectionLevels,System.String,System.String)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.CngUIPolicy" /> class by using the specified protection level, friendly name, and description.</summary>
      <param name="protectionLevel">A bitwise combination of the enumeration values that specify the protection level.</param>
      <param name="friendlyName">A friendly name for the key to be used in the UI prompt. Specify a null string to use the default name.</param>
      <param name="description">The full-text description of the key. Specify a null string to use the default description.</param>
    </member>
    <member name="M:System.Security.Cryptography.CngUIPolicy.#ctor(System.Security.Cryptography.CngUIProtectionLevels,System.String)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.CngUIPolicy" /> class by using the specified protection level and friendly name.</summary>
      <param name="protectionLevel">A bitwise combination of the enumeration values that specify the protection level.</param>
      <param name="friendlyName">A friendly name for the key to be used in the UI prompt. Specify a null string to use the default name.</param>
    </member>
    <member name="M:System.Security.Cryptography.CngUIPolicy.#ctor(System.Security.Cryptography.CngUIProtectionLevels)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.CngUIPolicy" /> class by using the specified protection level.</summary>
      <param name="protectionLevel">A bitwise combination of the enumeration values that specify the protection level.</param>
    </member>
    <member name="P:System.Security.Cryptography.CngUIPolicy.CreationTitle">
      <summary>Gets the title that is displayed by the UI prompt.</summary>
      <returns>The title of the dialog box that appears when the key is accessed.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngUIPolicy.Description">
      <summary>Gets the description string that is displayed by the UI prompt.</summary>
      <returns>The description text for the dialog box that appears when the key is accessed.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngUIPolicy.FriendlyName">
      <summary>Gets the friendly name that is displayed by the UI prompt.</summary>
      <returns>The friendly name that is used to describe the key in the dialog box that appears when the key is accessed.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngUIPolicy.ProtectionLevel">
      <summary>Gets the UI protection level for the key.</summary>
      <returns>An object that describes the level of UI protection to apply to the key.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CngUIPolicy.UseContext">
      <summary>Gets the description of how the key will be used.</summary>
      <returns>The description of how the key will be used.</returns>
    </member>
    <member name="T:System.Security.Cryptography.CngUIProtectionLevels">
      <summary>Specifies the protection level for the key in user interface (UI) prompting scenarios.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngUIProtectionLevels.ForceHighProtection">
      <summary>A UI prompt is displayed every time the key is accessed.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngUIProtectionLevels.None">
      <summary>No UI prompt is displayed when the key is accessed.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CngUIProtectionLevels.ProtectKey">
      <summary>A UI prompt is displayed the first time the key is accessed in a process.</summary>
    </member>
    <member name="T:System.Security.Cryptography.CryptoConfig">
      <summary>Accesses the cryptography configuration information.</summary>
    </member>
    <member name="M:System.Security.Cryptography.CryptoConfig.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.CryptoConfig" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.CryptoConfig.AddAlgorithm(System.Type,System.String[])">
      <summary>Adds a set of names to algorithm mappings to be used for the current application domain.</summary>
      <param name="algorithm">The algorithm to map to.</param>
      <param name="names">An array of names to map to the algorithm.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="algorithm" /> or <paramref name="names" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="algorithm" /> cannot be accessed from outside the assembly.  
  
 -or-  
  
 One of the entries in the <paramref name="names" /> parameter is empty or <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.CryptoConfig.AddOID(System.String,System.String[])">
      <summary>Adds a set of names to object identifier (OID) mappings to be used for the current application domain.</summary>
      <param name="oid">The object identifier (OID) to map to.</param>
      <param name="names">An array of names to map to the OID.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="oid" /> or <paramref name="names" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">One of the entries in the <paramref name="names" /> parameter is empty or <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.CryptoConfig.CreateFromName(System.String,System.Object[])">
      <summary>Creates a new instance of the specified cryptographic object with the specified arguments.</summary>
      <param name="name">The simple name of the cryptographic object of which to create an instance.</param>
      <param name="args">The arguments used to create the specified cryptographic object.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="name" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.Reflection.TargetInvocationException">The algorithm described by the <paramref name="name" /> parameter was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.</exception>
      <returns>A new instance of the specified cryptographic object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptoConfig.CreateFromName(System.String)">
      <summary>Creates a new instance of the specified cryptographic object.</summary>
      <param name="name">The simple name of the cryptographic object of which to create an instance.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="name" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.Reflection.TargetInvocationException">The algorithm described by the <paramref name="name" /> parameter was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.</exception>
      <returns>A new instance of the specified cryptographic object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptoConfig.EncodeOID(System.String)">
      <summary>Encodes the specified object identifier (OID).</summary>
      <param name="str">The OID to encode.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="str" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException">An error occurred while encoding the OID.</exception>
      <returns>A byte array containing the encoded OID.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptoConfig.MapNameToOID(System.String)">
      <summary>Gets the object identifier (OID) of the algorithm corresponding to the specified simple name.</summary>
      <param name="name">The simple name of the algorithm for which to get the OID.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="name" /> parameter is <see langword="null" />.</exception>
      <returns>The OID of the specified algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CryptoConfig.AllowOnlyFipsAlgorithms">
      <summary>Indicates whether the runtime should enforce the policy to create only Federal Information Processing Standard (FIPS) certified algorithms.</summary>
      <returns>
        <see langword="true" /> to enforce the policy; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.CryptographicOperations">
      <summary>Provides methods for use in working with cryptography to reduce the risk of side-channel information leakage.</summary>
    </member>
    <member name="M:System.Security.Cryptography.CryptographicOperations.FixedTimeEquals(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Determines the equality of two byte sequences in an amount of time that depends on the length of the sequences, but not their values.</summary>
      <param name="left">The first buffer to compare.</param>
      <param name="right">The second buffer to compare.</param>
      <returns>
        <see langword="true" /> if <paramref name="left" /> and <paramref name="right" /> have the same values for <see cref="P:System.ReadOnlySpan`1.Length" /> and the same contents; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptographicOperations.HashData(System.Security.Cryptography.HashAlgorithmName,System.Byte[])">
      <summary>Computes the hash of data.</summary>
      <param name="hashAlgorithm">The algorithm used to compute the hash.</param>
      <param name="source">The data to hash.</param>
      <exception cref="T:System.ArgumentNullException">
        <para>
          <paramref name="source" /> is <see langword="null" />.</para>
        <para>-or-</para>
        <para>
          <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is
                <see langword="null" />.</para>
      </exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is empty.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="hashAlgorithm" /> specifies a hash algorithm not supported by the current platform.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> specifies an unknown hash algorithm.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptographicOperations.HashData(System.Security.Cryptography.HashAlgorithmName,System.IO.Stream,System.Span{System.Byte})">
      <summary>Computes the hash of a stream.</summary>
      <param name="hashAlgorithm">The algorithm used to compute the hash.</param>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <exception cref="T:System.ArgumentNullException">
        <para>
          <paramref name="source" /> is <see langword="null" />.</para>
        <para>-or-</para>
        <para>
          <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is
                <see langword="null" />.</para>
      </exception>
      <exception cref="T:System.ArgumentException">
        <para>The buffer in <paramref name="destination" /> is too small to hold the calculated hash size.</para>
        <para>-or-</para>
        <para>
          <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is empty.</para>
        <para>-or-</para>
        <para>
          <paramref name="source" /> does not support reading.</para>
      </exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="hashAlgorithm" /> specifies a hash algorithm not supported by the current platform.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> specifies an unknown hash algorithm.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptographicOperations.HashData(System.Security.Cryptography.HashAlgorithmName,System.IO.Stream)">
      <summary>Computes the hash of a stream.</summary>
      <param name="hashAlgorithm">The algorithm used to compute the hash.</param>
      <param name="source">The stream to hash.</param>
      <exception cref="T:System.ArgumentNullException">
        <para>
          <paramref name="source" /> is <see langword="null" />.</para>
        <para>-or-</para>
        <para>
          <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is
                <see langword="null" />.</para>
      </exception>
      <exception cref="T:System.ArgumentException">
        <para>
          <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is empty.</para>
        <para>-or-</para>
        <para>
          <paramref name="source" /> does not support reading.</para>
      </exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="hashAlgorithm" /> specifies a hash algorithm not supported by the current platform.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> specifies an unknown hash algorithm.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptographicOperations.HashData(System.Security.Cryptography.HashAlgorithmName,System.ReadOnlySpan{System.Byte},System.Span{System.Byte})">
      <summary>Computes the hash of data.</summary>
      <param name="hashAlgorithm">The algorithm used to compute the hash.</param>
      <param name="source">The data to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <exception cref="T:System.ArgumentException">
        <para>The buffer in <paramref name="destination" /> is too small to hold the calculated hash size.</para>
        <para>-or-</para>
        <para>
          <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is empty.</para>
      </exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is
              <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="hashAlgorithm" /> specifies a hash algorithm not supported by the current platform.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> specifies an unknown hash algorithm.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptographicOperations.HashData(System.Security.Cryptography.HashAlgorithmName,System.ReadOnlySpan{System.Byte})">
      <summary>Computes the hash of data.</summary>
      <param name="hashAlgorithm">The algorithm used to compute the hash.</param>
      <param name="source">The data to hash.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is
              <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is empty.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="hashAlgorithm" /> specifies a hash algorithm not supported by the current platform.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> specifies an unknown hash algorithm.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptographicOperations.HashDataAsync(System.Security.Cryptography.HashAlgorithmName,System.IO.Stream,System.Memory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream.</summary>
      <param name="hashAlgorithm">The algorithm used to compute the hash.</param>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests. The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <para>
          <paramref name="source" /> is <see langword="null" />.</para>
        <para>-or-</para>
        <para>
          <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is
                <see langword="null" />.</para>
      </exception>
      <exception cref="T:System.ArgumentException">
        <para>The buffer in <paramref name="destination" /> is too small to hold the calculated hash size.</para>
        <para>-or-</para>
        <para>
          <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is empty.</para>
        <para>-or-</para>
        <para>
          <paramref name="source" /> does not support reading.</para>
      </exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="hashAlgorithm" /> specifies a hash algorithm not supported by the current platform.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> specifies an unknown hash algorithm.</exception>
      <exception cref="T:System.OperationCanceledException">
        <paramref name="cancellationToken" /> has been canceled.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptographicOperations.HashDataAsync(System.Security.Cryptography.HashAlgorithmName,System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream.</summary>
      <param name="hashAlgorithm">The algorithm used to compute the hash.</param>
      <param name="source">The stream to hash.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests. The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <para>
          <paramref name="source" /> is <see langword="null" />.</para>
        <para>-or-</para>
        <para>
          <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is
                <see langword="null" />.</para>
      </exception>
      <exception cref="T:System.ArgumentException">
        <para>
          <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is empty.</para>
        <para>-or-</para>
        <para>
          <paramref name="source" /> does not support reading.</para>
      </exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="hashAlgorithm" /> specifies a hash algorithm not supported by the current platform.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> specifies an unknown hash algorithm.</exception>
      <exception cref="T:System.OperationCanceledException">
        <paramref name="cancellationToken" /> has been canceled.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptographicOperations.HmacData(System.Security.Cryptography.HashAlgorithmName,System.Byte[],System.Byte[])">
      <summary>Computes the HMAC of data.</summary>
      <param name="hashAlgorithm">The algorithm used to compute the HMAC.</param>
      <param name="key">The secret key. The key can be any length.</param>
      <param name="source">The data to compute the HMAC over.</param>
      <exception cref="T:System.ArgumentNullException">
        <para>
          <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</para>
        <para>-or-</para>
        <para>
          <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is
                <see langword="null" />.</para>
      </exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is empty.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="hashAlgorithm" /> specifies a hash algorithm not supported by the current platform.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> specifies an unknown hash algorithm.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptographicOperations.HmacData(System.Security.Cryptography.HashAlgorithmName,System.Byte[],System.IO.Stream)">
      <summary>Computes the HMAC of a stream.</summary>
      <param name="hashAlgorithm">The algorithm used to compute the HMAC.</param>
      <param name="key">The secret key. The key can be any length.</param>
      <param name="source">The data to compute the HMAC over.</param>
      <exception cref="T:System.ArgumentNullException">
        <para>
          <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</para>
        <para>-or-</para>
        <para>
          <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is
                <see langword="null" />.</para>
      </exception>
      <exception cref="T:System.ArgumentException">
        <para>
          <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is empty.</para>
        <para>-or-</para>
        <para>
          <paramref name="source" /> does not support reading.</para>
      </exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="hashAlgorithm" /> specifies a hash algorithm not supported by the current platform.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> specifies an unknown hash algorithm.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptographicOperations.HmacData(System.Security.Cryptography.HashAlgorithmName,System.ReadOnlySpan{System.Byte},System.IO.Stream,System.Span{System.Byte})">
      <summary>Computes the HMAC of a stream.</summary>
      <param name="hashAlgorithm">The algorithm used to compute the HMAC.</param>
      <param name="key">The secret key. The key can be any length.</param>
      <param name="source">The data to compute the HMAC over.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <exception cref="T:System.ArgumentNullException">
        <para>
          <paramref name="source" /> is <see langword="null" />.</para>
        <para>-or-</para>
        <para>
          <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is
                <see langword="null" />.</para>
      </exception>
      <exception cref="T:System.ArgumentException">
        <para>
          <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is empty.</para>
        <para>-or-</para>
        <para>
          <paramref name="source" /> does not support reading.</para>
        <para>-or-</para>
        <para>The buffer in <paramref name="destination" /> is too small to hold the calculated HMAC size.</para>
      </exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="hashAlgorithm" /> specifies a hash algorithm not supported by the current platform.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> specifies an unknown hash algorithm.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptographicOperations.HmacData(System.Security.Cryptography.HashAlgorithmName,System.ReadOnlySpan{System.Byte},System.IO.Stream)">
      <summary>Computes the HMAC of a stream.</summary>
      <param name="hashAlgorithm">The algorithm used to compute the HMAC.</param>
      <param name="key">The secret key. The key can be any length.</param>
      <param name="source">The data to compute the HMAC over.</param>
      <exception cref="T:System.ArgumentNullException">
        <para>
          <paramref name="source" /> is <see langword="null" />.</para>
        <para>-or-</para>
        <para>
          <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is
                <see langword="null" />.</para>
      </exception>
      <exception cref="T:System.ArgumentException">
        <para>
          <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is empty.</para>
        <para>-or-</para>
        <para>
          <paramref name="source" /> does not support reading.</para>
      </exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="hashAlgorithm" /> specifies a hash algorithm not supported by the current platform.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> specifies an unknown hash algorithm.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptographicOperations.HmacData(System.Security.Cryptography.HashAlgorithmName,System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte})">
      <summary>Computes the HMAC of data.</summary>
      <param name="hashAlgorithm">The algorithm used to compute the HMAC.</param>
      <param name="key">The secret key. The key can be any length.</param>
      <param name="source">The data to compute the HMAC over.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <exception cref="T:System.ArgumentException">
        <para>The buffer in <paramref name="destination" /> is too small to hold the calculated hash size.</para>
        <para>-or-</para>
        <para>
          <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is empty.</para>
      </exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is
              <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="hashAlgorithm" /> specifies a hash algorithm not supported by the current platform.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> specifies an unknown hash algorithm.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptographicOperations.HmacData(System.Security.Cryptography.HashAlgorithmName,System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Computes the HMAC of data.</summary>
      <param name="hashAlgorithm">The algorithm used to compute the HMAC.</param>
      <param name="key">The secret key. The key can be any length.</param>
      <param name="source">The data to compute the HMAC over.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is
              <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is empty.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="hashAlgorithm" /> specifies a hash algorithm not supported by the current platform.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> specifies an unknown hash algorithm.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptographicOperations.HmacDataAsync(System.Security.Cryptography.HashAlgorithmName,System.Byte[],System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the HMAC of a stream.</summary>
      <param name="hashAlgorithm">The algorithm used to compute the HMAC.</param>
      <param name="key">The secret key. The key can be any length.</param>
      <param name="source">The stream to compute the HMAC over.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests. The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <para>
          <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</para>
        <para>-or-</para>
        <para>
          <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is
                <see langword="null" />.</para>
      </exception>
      <exception cref="T:System.ArgumentException">
        <para>
          <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is empty.</para>
        <para>-or-</para>
        <para>
          <paramref name="source" /> does not support reading.</para>
      </exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="hashAlgorithm" /> specifies a hash algorithm not supported by the current platform.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> specifies an unknown hash algorithm.</exception>
      <exception cref="T:System.OperationCanceledException">
        <paramref name="cancellationToken" /> has been canceled.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptographicOperations.HmacDataAsync(System.Security.Cryptography.HashAlgorithmName,System.ReadOnlyMemory{System.Byte},System.IO.Stream,System.Memory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the HMAC of a stream.</summary>
      <param name="hashAlgorithm">The algorithm used to compute the HMAC.</param>
      <param name="key">The secret key. The key can be any length.</param>
      <param name="source">The stream to compute the HMAC over.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests. The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <para>
          <paramref name="source" /> is <see langword="null" />.</para>
        <para>-or-</para>
        <para>
          <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is
                <see langword="null" />.</para>
      </exception>
      <exception cref="T:System.ArgumentException">
        <para>The buffer in <paramref name="destination" /> is too small to hold the calculated HMAC size.</para>
        <para>-or-</para>
        <para>
          <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is empty.</para>
        <para>-or-</para>
        <para>
          <paramref name="source" /> does not support reading.</para>
      </exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="hashAlgorithm" /> specifies a hash algorithm not supported by the current platform.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> specifies an unknown hash algorithm.</exception>
      <exception cref="T:System.OperationCanceledException">
        <paramref name="cancellationToken" /> has been canceled.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptographicOperations.HmacDataAsync(System.Security.Cryptography.HashAlgorithmName,System.ReadOnlyMemory{System.Byte},System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the HMAC of a stream.</summary>
      <param name="hashAlgorithm">The algorithm used to compute the HMAC.</param>
      <param name="key">The secret key. The key can be any length.</param>
      <param name="source">The stream to compute the HMAC over.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests. The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <para>
          <paramref name="source" /> is <see langword="null" />.</para>
        <para>-or-</para>
        <para>
          <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is
                <see langword="null" />.</para>
      </exception>
      <exception cref="T:System.ArgumentException">
        <para>
          <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is empty.</para>
        <para>-or-</para>
        <para>
          <paramref name="source" /> does not support reading.</para>
      </exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="hashAlgorithm" /> specifies a hash algorithm not supported by the current platform.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> specifies an unknown hash algorithm.</exception>
      <exception cref="T:System.OperationCanceledException">
        <paramref name="cancellationToken" /> has been canceled.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptographicOperations.TryHashData(System.Security.Cryptography.HashAlgorithmName,System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to compute the hash of data.</summary>
      <param name="hashAlgorithm">The algorithm used to compute the hash.</param>
      <param name="source">The data to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is empty.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is
              <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="hashAlgorithm" /> specifies a hash algorithm not supported by the current platform.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> specifies an unknown hash algorithm.</exception>
      <returns>
        <see langword="false" /> if <paramref name="destination" /> is too small to hold the calculated hash, <see langword="true" /> otherwise.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptographicOperations.TryHmacData(System.Security.Cryptography.HashAlgorithmName,System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to compute the HMAC of data.</summary>
      <param name="hashAlgorithm">The algorithm used to compute the HMAC.</param>
      <param name="key">The secret key. The key can be any length.</param>
      <param name="source">The data to compute the HMAC over.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is empty.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is
              <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="hashAlgorithm" /> specifies a hash algorithm not supported by the current platform.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> specifies an unknown hash algorithm.</exception>
      <returns>
        <see langword="false" /> if <paramref name="destination" /> is too small to hold the calculated HMAC, <see langword="true" /> otherwise.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptographicOperations.ZeroMemory(System.Span{System.Byte})">
      <summary>Fills the provided buffer with zeros.</summary>
      <param name="buffer">The buffer to fill with zeros.</param>
    </member>
    <member name="T:System.Security.Cryptography.CryptographicUnexpectedOperationException">
      <summary>The exception that is thrown when an unexpected operation occurs during a cryptographic operation.</summary>
    </member>
    <member name="M:System.Security.Cryptography.CryptographicUnexpectedOperationException.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException" /> class with default properties.</summary>
    </member>
    <member name="M:System.Security.Cryptography.CryptographicUnexpectedOperationException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException" /> class with serialized data.</summary>
      <param name="info">The object that holds the serialized object data.</param>
      <param name="context">The contextual information about the source or destination.</param>
    </member>
    <member name="M:System.Security.Cryptography.CryptographicUnexpectedOperationException.#ctor(System.String,System.Exception)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException" /> class with a specified error message and a reference to the inner exception that is the cause of this exception.</summary>
      <param name="message">The error message that explains the reason for the exception.</param>
      <param name="inner">The exception that is the cause of the current exception. If the <paramref name="inner" /> parameter is not <see langword="null" />, the current exception is raised in a <see langword="catch" /> block that handles the inner exception.</param>
    </member>
    <member name="M:System.Security.Cryptography.CryptographicUnexpectedOperationException.#ctor(System.String,System.String)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException" /> class with a specified error message in the specified format.</summary>
      <param name="format">The format used to output the error message.</param>
      <param name="insert">The error message that explains the reason for the exception.</param>
    </member>
    <member name="M:System.Security.Cryptography.CryptographicUnexpectedOperationException.#ctor(System.String)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException" /> class with a specified error message.</summary>
      <param name="message">The error message that explains the reason for the exception.</param>
    </member>
    <member name="T:System.Security.Cryptography.CryptoStream">
      <summary>Defines a stream that links data streams to cryptographic transformations.</summary>
    </member>
    <member name="M:System.Security.Cryptography.CryptoStream.#ctor(System.IO.Stream,System.Security.Cryptography.ICryptoTransform,System.Security.Cryptography.CryptoStreamMode,System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.CryptoStream" /> class.</summary>
      <param name="stream">The stream on which to perform the cryptographic transformation.</param>
      <param name="transform">The cryptographic transformation that is to be performed on the stream.</param>
      <param name="mode">The mode of the stream.</param>
      <param name="leaveOpen">
        <see langword="true" /> to not close the underlying stream when the <see cref="T:System.Security.Cryptography.CryptoStream" /> object is disposed; otherwise, <see langword="false" />.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="mode" /> is invalid.</exception>
    </member>
    <member name="M:System.Security.Cryptography.CryptoStream.#ctor(System.IO.Stream,System.Security.Cryptography.ICryptoTransform,System.Security.Cryptography.CryptoStreamMode)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.CryptoStream" /> class with a target data stream, the transformation to use, and the mode of the stream.</summary>
      <param name="stream">The stream on which to perform the cryptographic transformation.</param>
      <param name="transform">The cryptographic transformation that is to be performed on the stream.</param>
      <param name="mode">One of the <see cref="T:System.Security.Cryptography.CryptoStreamMode" /> values.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="stream" /> is invalid.</exception>
    </member>
    <member name="M:System.Security.Cryptography.CryptoStream.BeginRead(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)">
      <summary>Begins an asynchronous read operation. (Consider using <see cref="Overload:System.Security.Cryptography.CryptoStream.ReadAsync" /> instead.)</summary>
      <param name="buffer">The buffer to read the data into.</param>
      <param name="offset">The byte offset in <paramref name="buffer" /> at which to begin writing data read from the stream.</param>
      <param name="count">The maximum number of bytes to read.</param>
      <param name="callback">An optional asynchronous callback, to be called when the read is complete.</param>
      <param name="state">A user-provided object that distinguishes this particular asynchronous read request from other requests.</param>
      <exception cref="T:System.IO.IOException">Attempted an asynchronous read past the end of the stream, or a disk error occurred.</exception>
      <exception cref="T:System.ArgumentException">One or more of the arguments is invalid.</exception>
      <exception cref="T:System.ObjectDisposedException">Methods were called after the stream was closed.</exception>
      <exception cref="T:System.NotSupportedException">The current <see langword="Stream" /> implementation does not support the read operation.</exception>
      <returns>An <see cref="T:System.IAsyncResult" /> that represents the asynchronous read, which could still be pending.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptoStream.BeginWrite(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)">
      <summary>Begins an asynchronous write operation. (Consider using <see cref="Overload:System.Security.Cryptography.CryptoStream.WriteAsync" /> instead.)</summary>
      <param name="buffer">The buffer to write data from.</param>
      <param name="offset">The byte offset in <paramref name="buffer" /> from which to begin writing.</param>
      <param name="count">The maximum number of bytes to write.</param>
      <param name="callback">An optional asynchronous callback, to be called when the write is complete.</param>
      <param name="state">A user-provided object that distinguishes this particular asynchronous write request from other requests.</param>
      <exception cref="T:System.IO.IOException">Attempted an asynchronous write past the end of the stream, or a disk error occurred.</exception>
      <exception cref="T:System.ArgumentException">One or more of the arguments is invalid.</exception>
      <exception cref="T:System.ObjectDisposedException">Methods were called after the stream was closed.</exception>
      <exception cref="T:System.NotSupportedException">The current <see langword="Stream" /> implementation does not support the write operation.</exception>
      <returns>An <see langword="IAsyncResult" /> that represents the asynchronous write, which could still be pending.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptoStream.Clear">
      <summary>Releases all resources used by the <see cref="T:System.Security.Cryptography.CryptoStream" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.CryptoStream.CopyTo(System.IO.Stream,System.Int32)">
      <summary>Reads the bytes from the underlying stream, applies the relevant cryptographic transforms, and writes the result to the destination stream.</summary>
      <param name="destination">The stream to which the contents of the current stream will be copied.</param>
      <param name="bufferSize">The size, in bytes, of the buffer to use for reading from the underlying stream. This value must be greater than zero. The default size is 81920 bytes.</param>
    </member>
    <member name="M:System.Security.Cryptography.CryptoStream.CopyToAsync(System.IO.Stream,System.Int32,System.Threading.CancellationToken)">
      <summary>Asynchronously reads the bytes from the underlying stream, applies the relevant cryptographic transforms, and writes the result to the destination stream.</summary>
      <param name="destination">The stream to which the contents of the current stream will be copied.</param>
      <param name="bufferSize">The size, in bytes, of the buffer. This value must be greater than zero. The default size is 81920.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests. The default value is <xref data-throw-if-not-resolved="true" uid="System.Threading.CancellationToken.None"></xref>.</param>
      <returns>A task that represents the asynchronous copy operation.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptoStream.Dispose(System.Boolean)">
      <summary>Releases the unmanaged resources used by the <see cref="T:System.Security.Cryptography.CryptoStream" /> and optionally releases the managed resources.</summary>
      <param name="disposing">
        <see langword="true" /> to release both managed and unmanaged resources; <see langword="false" /> to release only unmanaged resources.</param>
    </member>
    <member name="M:System.Security.Cryptography.CryptoStream.DisposeAsync">
      <summary>Asynchronously releases the unmanaged resources used by the <see cref="T:System.Security.Cryptography.CryptoStream" />.</summary>
      <returns>A task that represents the asynchronous dispose operation.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptoStream.EndRead(System.IAsyncResult)">
      <summary>Waits for the pending asynchronous read to complete. (Consider using <see cref="Overload:System.Security.Cryptography.CryptoStream.ReadAsync" /> instead.)</summary>
      <param name="asyncResult">The reference to the pending asynchronous request to finish.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="asyncResult" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">A handle to the pending read operation is not available.

 -or-

 The pending operation does not support reading.</exception>
      <exception cref="T:System.InvalidOperationException">
        <paramref name="asyncResult" /> did not originate from a <see cref="M:System.Security.Cryptography.CryptoStream.BeginRead(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)" /> method on the current stream.</exception>
      <exception cref="T:System.IO.IOException">The stream is closed or an internal error has occurred.</exception>
      <returns>The number of bytes read from the stream, between zero (0) and the number of bytes you requested. Streams return zero (0) only at the end of the stream, otherwise, they should block until at least one byte is available.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptoStream.EndWrite(System.IAsyncResult)">
      <summary>Ends an asynchronous write operation. (Consider using <see cref="Overload:System.Security.Cryptography.CryptoStream.WriteAsync" /> instead.)</summary>
      <param name="asyncResult">A reference to the outstanding asynchronous I/O request.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="asyncResult" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">A handle to the pending write operation is not available.

 -or-

 The pending operation does not support writing.</exception>
      <exception cref="T:System.InvalidOperationException">
        <paramref name="asyncResult" /> did not originate from a <see cref="M:System.IO.Stream.BeginWrite(System.Byte[],System.Int32,System.Int32,System.AsyncCallback,System.Object)" /> method on the current stream.</exception>
      <exception cref="T:System.IO.IOException">The stream is closed or an internal error has occurred.</exception>
    </member>
    <member name="M:System.Security.Cryptography.CryptoStream.Flush">
      <summary>Clears all buffers for the current stream and causes any buffered data to be written to the underlying device.</summary>
    </member>
    <member name="M:System.Security.Cryptography.CryptoStream.FlushAsync(System.Threading.CancellationToken)">
      <summary>Clears all buffers for the current stream asynchronously, causes any buffered data to be written to the underlying device, and monitors cancellation requests.</summary>
      <param name="cancellationToken">The token to monitor for cancellation requests. The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ObjectDisposedException">The stream has been disposed.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>A task that represents the asynchronous flush operation.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptoStream.FlushFinalBlock">
      <summary>Updates the underlying data source or repository with the current state of the buffer, then clears the buffer.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key is corrupt which can cause invalid padding to the stream.</exception>
      <exception cref="T:System.NotSupportedException">The current stream is not writable.

 -or-

 The final block has already been transformed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.CryptoStream.FlushFinalBlockAsync(System.Threading.CancellationToken)">
      <summary>Asynchronously updates the underlying data source or repository with the current state of the buffer, then clears the buffer.</summary>
      <param name="cancellationToken">The token to monitor for cancellation requests. The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>A task that represents the asynchronous flush operation.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptoStream.Read(System.Byte[],System.Int32,System.Int32)">
      <summary>Reads a sequence of bytes from the current stream and advances the position within the stream by the number of bytes read.</summary>
      <param name="buffer">An array of bytes. A maximum of <paramref name="count" /> bytes are read from the current stream and stored in <paramref name="buffer" />.</param>
      <param name="offset">The byte offset in <paramref name="buffer" /> at which to begin storing the data read from the current stream.</param>
      <param name="count">The maximum number of bytes to be read from the current stream.</param>
      <exception cref="T:System.NotSupportedException">The <see cref="T:System.Security.Cryptography.CryptoStreamMode" /> associated with current <see cref="T:System.Security.Cryptography.CryptoStream" /> object does not match the underlying stream. For example, this exception is thrown when using <see cref="F:System.Security.Cryptography.CryptoStreamMode.Read" /> with an underlying stream that is write only.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="offset" /> or <paramref name="count" /> is less than zero.</exception>
      <exception cref="T:System.ArgumentException">The sum of the <paramref name="count" /> and <paramref name="offset" /> parameters is longer than the length of the buffer.</exception>
      <returns>The total number of bytes read into the buffer. This can be less than the number of bytes requested if that many bytes are not currently available, or zero if the end of the stream has been reached.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptoStream.ReadAsync(System.Byte[],System.Int32,System.Int32,System.Threading.CancellationToken)">
      <summary>Reads a sequence of bytes from the current stream asynchronously, advances the position within the stream by the number of bytes read, and monitors cancellation requests.</summary>
      <param name="buffer">The buffer to write the data into.</param>
      <param name="offset">The byte offset in <paramref name="buffer" /> at which to begin writing data from the stream.</param>
      <param name="count">The maximum number of bytes to read.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests. The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="buffer" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="offset" /> or <paramref name="count" /> is negative.</exception>
      <exception cref="T:System.ArgumentException">The sum of <paramref name="offset" /> and <paramref name="count" /> is larger than the buffer length.</exception>
      <exception cref="T:System.NotSupportedException">The stream does not support reading.</exception>
      <exception cref="T:System.ObjectDisposedException">The stream has been disposed.</exception>
      <exception cref="T:System.InvalidOperationException">The stream is currently in use by a previous read operation.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>A task that represents the asynchronous read operation. The value of the task object's <paramref name="TResult" /> parameter contains the total number of bytes read into the buffer. The result can be less than the number of bytes requested if the number of bytes currently available is less than the requested number, or it can be 0 (zero) if the end of the stream has been reached.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptoStream.ReadAsync(System.Memory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously reads a sequence of bytes from the current stream, advances the position within the stream by the number of bytes read, and monitors cancellation requests.</summary>
      <param name="buffer">The region of memory to write the data into.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests. The default value is <xref data-throw-if-not-resolved="true" uid="System.Threading.CancellationToken.None"></xref>.</param>
      <returns>A task that represents the asynchronous read operation. The value of its <xref data-throw-if-not-resolved="true" uid="System.Threading.Tasks.ValueTask`1.Result"></xref> property contains the total number of bytes read into the buffer. The result value can be less than the number of bytes allocated in the buffer if that many bytes are not currently available, or it can be 0 (zero) if the end of the stream has been reached.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptoStream.ReadByte">
      <summary>Reads a byte from the stream and advances the position within the stream by one byte, or returns -1 if at the end of the stream.</summary>
      <exception cref="T:System.NotSupportedException">The stream does not support reading.</exception>
      <exception cref="T:System.ObjectDisposedException">Methods were called after the stream was closed.</exception>
      <returns>The unsigned byte cast to an <see cref="T:System.Int32" />, or -1 if at the end of the stream.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptoStream.Seek(System.Int64,System.IO.SeekOrigin)">
      <summary>Sets the position within the current stream.</summary>
      <param name="offset">A byte offset relative to the <paramref name="origin" /> parameter.</param>
      <param name="origin">A <see cref="T:System.IO.SeekOrigin" /> object indicating the reference point used to obtain the new position.</param>
      <exception cref="T:System.NotSupportedException">This method is not supported.</exception>
      <returns>This method is not supported.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptoStream.SetLength(System.Int64)">
      <summary>Sets the length of the current stream.</summary>
      <param name="value">The desired length of the current stream in bytes.</param>
      <exception cref="T:System.NotSupportedException">This property exists only to support inheritance from <see cref="T:System.IO.Stream" />, and cannot be used.</exception>
    </member>
    <member name="M:System.Security.Cryptography.CryptoStream.Write(System.Byte[],System.Int32,System.Int32)">
      <summary>Writes a sequence of bytes to the current <see cref="T:System.Security.Cryptography.CryptoStream" /> and advances the current position within the stream by the number of bytes written.</summary>
      <param name="buffer">An array of bytes. This method copies <paramref name="count" /> bytes from <paramref name="buffer" /> to the current stream.</param>
      <param name="offset">The byte offset in <paramref name="buffer" /> at which to begin copying bytes to the current stream.</param>
      <param name="count">The number of bytes to be written to the current stream.</param>
      <exception cref="T:System.NotSupportedException">The <see cref="T:System.Security.Cryptography.CryptoStreamMode" /> associated with current <see cref="T:System.Security.Cryptography.CryptoStream" /> object does not match the underlying stream. For example, this exception is thrown when using <see cref="F:System.Security.Cryptography.CryptoStreamMode.Write" /> with an underlying stream that is read only.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="offset" /> or <paramref name="count" /> is less than zero.</exception>
      <exception cref="T:System.ArgumentException">The sum of the <paramref name="count" /> and <paramref name="offset" /> parameters is longer than the length of the buffer.</exception>
    </member>
    <member name="M:System.Security.Cryptography.CryptoStream.WriteAsync(System.Byte[],System.Int32,System.Int32,System.Threading.CancellationToken)">
      <summary>Writes a sequence of bytes to the current stream asynchronously, advances the current position within the stream by the number of bytes written, and monitors cancellation requests.</summary>
      <param name="buffer">The buffer to write data from.</param>
      <param name="offset">The zero-based byte offset in <paramref name="buffer" /> from which to begin writing bytes to the stream.</param>
      <param name="count">The maximum number of bytes to write.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests. The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="buffer" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="offset" /> or <paramref name="count" /> is negative.</exception>
      <exception cref="T:System.ArgumentException">The sum of <paramref name="offset" /> and <paramref name="count" /> is larger than the buffer length.</exception>
      <exception cref="T:System.NotSupportedException">The stream does not support writing.</exception>
      <exception cref="T:System.ObjectDisposedException">The stream has been disposed.</exception>
      <exception cref="T:System.InvalidOperationException">The stream is currently in use by a previous write operation.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>A task that represents the asynchronous write operation.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptoStream.WriteAsync(System.ReadOnlyMemory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously writes a sequence of bytes to the current stream, advances the current position within this stream by the number of bytes written, and monitors cancellation requests.</summary>
      <param name="buffer">The region of memory to write data from.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests. The default value is <xref data-throw-if-not-resolved="true" uid="System.Threading.CancellationToken.None"></xref>.</param>
      <returns>A task that represents the asynchronous write operation.</returns>
    </member>
    <member name="M:System.Security.Cryptography.CryptoStream.WriteByte(System.Byte)">
      <summary>Writes a byte to the current position in the stream and advances the position within the stream by one byte.</summary>
      <param name="value">The byte to write to the stream.</param>
      <exception cref="T:System.IO.IOException">An I/O error occurs.</exception>
      <exception cref="T:System.NotSupportedException">The stream does not support writing, or the stream is already closed.</exception>
      <exception cref="T:System.ObjectDisposedException">Methods were called after the stream was closed.</exception>
    </member>
    <member name="P:System.Security.Cryptography.CryptoStream.CanRead">
      <summary>Gets a value indicating whether the current <see cref="T:System.Security.Cryptography.CryptoStream" /> is readable.</summary>
      <returns>
        <see langword="true" /> if the current stream is readable; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CryptoStream.CanSeek">
      <summary>Gets a value indicating whether you can seek within the current <see cref="T:System.Security.Cryptography.CryptoStream" />.</summary>
      <returns>Always <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CryptoStream.CanWrite">
      <summary>Gets a value indicating whether the current <see cref="T:System.Security.Cryptography.CryptoStream" /> is writable.</summary>
      <returns>
        <see langword="true" /> if the current stream is writable; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CryptoStream.HasFlushedFinalBlock">
      <summary>Gets a value indicating whether the final buffer block has been written to the underlying stream.</summary>
      <returns>
        <see langword="true" /> if the final block has been flushed; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CryptoStream.Length">
      <summary>Gets the length in bytes of the stream.</summary>
      <exception cref="T:System.NotSupportedException">This property is not supported.</exception>
      <returns>This property is not supported.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CryptoStream.Position">
      <summary>Gets or sets the position within the current stream.</summary>
      <exception cref="T:System.NotSupportedException">This property is not supported.</exception>
      <returns>This property is not supported.</returns>
    </member>
    <member name="T:System.Security.Cryptography.CryptoStreamMode">
      <summary>Specifies the mode of a cryptographic stream.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CryptoStreamMode.Read">
      <summary>Read access to a cryptographic stream.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CryptoStreamMode.Write">
      <summary>Write access to a cryptographic stream.</summary>
    </member>
    <member name="T:System.Security.Cryptography.CspKeyContainerInfo">
      <summary>Provides additional information about a cryptographic key pair. This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.CspKeyContainerInfo.#ctor(System.Security.Cryptography.CspParameters)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.CspKeyContainerInfo" /> class using the specified parameters.</summary>
      <param name="parameters">A <see cref="T:System.Security.Cryptography.CspParameters" /> object that provides information about the key.</param>
    </member>
    <member name="P:System.Security.Cryptography.CspKeyContainerInfo.Accessible">
      <summary>Gets a value indicating whether a key in a key container is accessible.</summary>
      <exception cref="T:System.NotSupportedException">The key type is not supported.</exception>
      <returns>
        <see langword="true" /> if the key is accessible; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CspKeyContainerInfo.Exportable">
      <summary>Gets a value indicating whether a key can be exported from a key container.</summary>
      <exception cref="T:System.NotSupportedException">The key type is not supported.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The cryptographic service provider cannot be found.  
  
 -or-  
  
 The key container was not found.</exception>
      <returns>
        <see langword="true" /> if the key can be exported; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CspKeyContainerInfo.HardwareDevice">
      <summary>Gets a value indicating whether a key is a hardware key.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The cryptographic service provider cannot be found.</exception>
      <returns>
        <see langword="true" /> if the key is a hardware key; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CspKeyContainerInfo.KeyContainerName">
      <summary>Gets a key container name.</summary>
      <returns>The key container name.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CspKeyContainerInfo.KeyNumber">
      <summary>Gets a value that describes whether an asymmetric key was created as a signature key or an exchange key.</summary>
      <returns>One of the <see cref="T:System.Security.Cryptography.KeyNumber" /> values that describes whether an asymmetric key was created as a signature key or an exchange key.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CspKeyContainerInfo.MachineKeyStore">
      <summary>Gets a value indicating whether a key is from a machine key set.</summary>
      <returns>
        <see langword="true" /> if the key is from the machine key set; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CspKeyContainerInfo.Protected">
      <summary>Gets a value indicating whether a key pair is protected.</summary>
      <exception cref="T:System.NotSupportedException">The key type is not supported.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The cryptographic service provider cannot be found.  
  
 -or-  
  
 The key container was not found.</exception>
      <returns>
        <see langword="true" /> if the key pair is protected; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CspKeyContainerInfo.ProviderName">
      <summary>Gets the provider name of a key.</summary>
      <returns>The provider name.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CspKeyContainerInfo.ProviderType">
      <summary>Gets the provider type of a key.</summary>
      <returns>The provider type. The default is 1.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CspKeyContainerInfo.RandomlyGenerated">
      <summary>Gets a value indicating whether a key container was randomly generated by a managed cryptography class.</summary>
      <returns>
        <see langword="true" /> if the key container was randomly generated; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CspKeyContainerInfo.Removable">
      <summary>Gets a value indicating whether a key can be removed from a key container.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The cryptographic service provider (CSP) was not found.</exception>
      <returns>
        <see langword="true" /> if the key is removable; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CspKeyContainerInfo.UniqueKeyContainerName">
      <summary>Gets a unique key container name.</summary>
      <exception cref="T:System.NotSupportedException">The key type is not supported.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The cryptographic service provider cannot be found.  
  
 -or-  
  
 The key container was not found.</exception>
      <returns>The unique key container name.</returns>
    </member>
    <member name="T:System.Security.Cryptography.CspParameters">
      <summary>Contains parameters that are passed to the cryptographic service provider (CSP) that performs cryptographic computations. This class cannot be inherited.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CspParameters.KeyContainerName">
      <summary>Represents the key container name for <see cref="T:System.Security.Cryptography.CspParameters" />.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CspParameters.KeyNumber">
      <summary>Specifies whether an asymmetric key is created as a signature key or an exchange key.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CspParameters.ProviderName">
      <summary>Represents the provider name for <see cref="T:System.Security.Cryptography.CspParameters" />.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CspParameters.ProviderType">
      <summary>Represents the provider type code for <see cref="T:System.Security.Cryptography.CspParameters" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.CspParameters.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.CspParameters" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.CspParameters.#ctor(System.Int32,System.String,System.String)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.CspParameters" /> class with the specified provider type code and name, and the specified container name.</summary>
      <param name="dwTypeIn">The provider type code that specifies the kind of provider to create.</param>
      <param name="strProviderNameIn">A provider name.</param>
      <param name="strContainerNameIn">A container name.</param>
    </member>
    <member name="M:System.Security.Cryptography.CspParameters.#ctor(System.Int32,System.String)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.CspParameters" /> class with the specified provider type code and name.</summary>
      <param name="dwTypeIn">A provider type code that specifies the kind of provider to create.</param>
      <param name="strProviderNameIn">A provider name.</param>
    </member>
    <member name="M:System.Security.Cryptography.CspParameters.#ctor(System.Int32)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.CspParameters" /> class with the specified provider type code.</summary>
      <param name="dwTypeIn">A provider type code that specifies the kind of provider to create.</param>
    </member>
    <member name="P:System.Security.Cryptography.CspParameters.Flags">
      <summary>Represents the flags for <see cref="T:System.Security.Cryptography.CspParameters" /> that modify the behavior of the cryptographic service provider (CSP).</summary>
      <exception cref="T:System.ArgumentException">Value is not a valid enumeration value.</exception>
      <returns>An enumeration value, or a bitwise combination of enumeration values.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CspParameters.KeyPassword">
      <summary>Gets or sets a password associated with a smart card key.</summary>
      <returns>A password associated with a smart card key.</returns>
    </member>
    <member name="P:System.Security.Cryptography.CspParameters.ParentWindowHandle">
      <summary>Gets or sets a handle to the unmanaged parent window for a smart card password dialog box.</summary>
      <returns>A handle to the parent window for a smart card password dialog box.</returns>
    </member>
    <member name="T:System.Security.Cryptography.CspProviderFlags">
      <summary>Specifies flags that modify the behavior of the cryptographic service providers (CSP).</summary>
    </member>
    <member name="F:System.Security.Cryptography.CspProviderFlags.CreateEphemeralKey">
      <summary>Create a temporary key that is released when the associated Rivest-Shamir-Adleman (RSA) object is closed. Do not use this flag if you want your key to be independent of the RSA object.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CspProviderFlags.NoFlags">
      <summary>Do not specify any settings.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CspProviderFlags.NoPrompt">
      <summary>Prevent the CSP from displaying any user interface (UI) for this context.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CspProviderFlags.UseArchivableKey">
      <summary>Allow a key to be exported for archival or recovery.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CspProviderFlags.UseDefaultKeyContainer">
      <summary>Use key information from the default key container.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CspProviderFlags.UseExistingKey">
      <summary>Use key information from the current key.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CspProviderFlags.UseMachineKeyStore">
      <summary>Use key information from the computer's key store.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CspProviderFlags.UseNonExportableKey">
      <summary>Use key information that cannot be exported.</summary>
    </member>
    <member name="F:System.Security.Cryptography.CspProviderFlags.UseUserProtectedKey">
      <summary>Notify the user through a dialog box or another method when certain actions are attempting to use a key.  This flag is not compatible with the <see cref="F:System.Security.Cryptography.CspProviderFlags.NoPrompt" /> flag.</summary>
    </member>
    <member name="T:System.Security.Cryptography.DeriveBytes">
      <summary>Represents the abstract base class from which all classes that derive byte sequences of a specified length inherit.</summary>
    </member>
    <member name="M:System.Security.Cryptography.DeriveBytes.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.DeriveBytes" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.DeriveBytes.Dispose">
      <summary>When overridden in a derived class, releases all resources used by the current instance of the <see cref="T:System.Security.Cryptography.DeriveBytes" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.DeriveBytes.Dispose(System.Boolean)">
      <summary>When overridden in a derived class, releases the unmanaged resources used by the <see cref="T:System.Security.Cryptography.DeriveBytes" /> class and optionally releases the managed resources.</summary>
      <param name="disposing">
        <see langword="true" /> to release both managed and unmanaged resources; <see langword="false" /> to release only unmanaged resources.</param>
    </member>
    <member name="M:System.Security.Cryptography.DeriveBytes.GetBytes(System.Int32)">
      <summary>When overridden in a derived class, returns pseudo-random key bytes.</summary>
      <param name="cb">The number of pseudo-random key bytes to generate.</param>
      <returns>A byte array filled with pseudo-random key bytes.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DeriveBytes.Reset">
      <summary>When overridden in a derived class, resets the state of the operation.</summary>
    </member>
    <member name="T:System.Security.Cryptography.DES">
      <summary>Represents the base class for the Data Encryption Standard (DES) algorithm from which all <see cref="T:System.Security.Cryptography.DES" /> implementations must derive.</summary>
    </member>
    <member name="M:System.Security.Cryptography.DES.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.DES" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.DES.Create">
      <summary>Creates an instance of a cryptographic object to perform the Data Encryption Standard (<see cref="T:System.Security.Cryptography.DES" />) algorithm.</summary>
      <returns>A cryptographic object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DES.Create(System.String)">
      <summary>Creates an instance of a cryptographic object to perform the specified implementation of the Data Encryption Standard (<see cref="T:System.Security.Cryptography.DES" />) algorithm.</summary>
      <param name="algName">The name of the specific implementation of <see cref="T:System.Security.Cryptography.DES" /> to use.</param>
      <returns>A cryptographic object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DES.IsSemiWeakKey(System.Byte[])">
      <summary>Determines whether the specified key is semi-weak.</summary>
      <param name="rgbKey">The secret key to test for semi-weakness.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The size of the <paramref name="rgbKey" /> parameter is not valid.</exception>
      <returns>
        <see langword="true" /> if the key is semi-weak; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DES.IsWeakKey(System.Byte[])">
      <summary>Determines whether the specified key is weak.</summary>
      <param name="rgbKey">The secret key to test for weakness.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The size of the <paramref name="rgbKey" /> parameter is not valid.</exception>
      <returns>
        <see langword="true" /> if the key is weak; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.DES.Key">
      <summary>Gets or sets the secret key for the Data Encryption Standard (<see cref="T:System.Security.Cryptography.DES" />) algorithm.</summary>
      <exception cref="T:System.ArgumentNullException">An attempt was made to set the key to <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">An attempt was made to set a key whose length is not equal to <see cref="F:System.Security.Cryptography.SymmetricAlgorithm.BlockSizeValue" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An attempt was made to set a weak key (see <see cref="M:System.Security.Cryptography.DES.IsWeakKey(System.Byte[])" />) or a semi-weak key (see <see cref="M:System.Security.Cryptography.DES.IsSemiWeakKey(System.Byte[])" />).</exception>
      <returns>The secret key for the <see cref="T:System.Security.Cryptography.DES" /> algorithm.</returns>
    </member>
    <member name="T:System.Security.Cryptography.DESCryptoServiceProvider">
      <summary>Defines a wrapper object to access the cryptographic service provider (CSP) version of the Data Encryption Standard (<see cref="T:System.Security.Cryptography.DES" />) algorithm. This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.DESCryptoServiceProvider.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.DESCryptoServiceProvider" /> class.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The Data Encryption Standard (<see cref="T:System.Security.Cryptography.DES" />) cryptographic service provider is not available.</exception>
    </member>
    <member name="M:System.Security.Cryptography.DESCryptoServiceProvider.CreateDecryptor">
      <summary>Creates a symmetric decryptor object with the current <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key" /> property and initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />).</summary>
      <returns>A symmetric decryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DESCryptoServiceProvider.CreateDecryptor(System.Byte[],System.Byte[])">
      <summary>Creates a symmetric Data Encryption Standard (<see cref="T:System.Security.Cryptography.DES" />) decryptor object with the specified key (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key" />) and initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />).</summary>
      <param name="rgbKey">The secret key to use for the symmetric algorithm.</param>
      <param name="rgbIV">The initialization vector to use for the symmetric algorithm.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The value of the <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Mode" /> property is <see cref="F:System.Security.Cryptography.CipherMode.OFB" />.  
  
 -or-  
  
 The value of the <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Mode" /> property is <see cref="F:System.Security.Cryptography.CipherMode.CFB" /> and the value of the <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.FeedbackSize" /> property is not 8.  
  
 -or-  
  
 An invalid key size was used.  
  
 -or-  
  
 The algorithm key size was not available.</exception>
      <returns>A symmetric <see cref="T:System.Security.Cryptography.DES" /> decryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DESCryptoServiceProvider.CreateEncryptor">
      <summary>Creates a symmetric encryptor object with the current <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key" /> property and initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />).</summary>
      <returns>A symmetric encryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DESCryptoServiceProvider.CreateEncryptor(System.Byte[],System.Byte[])">
      <summary>Creates a symmetric Data Encryption Standard (<see cref="T:System.Security.Cryptography.DES" />) encryptor object with the specified key (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key" />) and initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />).</summary>
      <param name="rgbKey">The secret key to use for the symmetric algorithm.</param>
      <param name="rgbIV">The initialization vector to use for the symmetric algorithm.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The value of the <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Mode" /> property is <see cref="F:System.Security.Cryptography.CipherMode.OFB" />.  
  
 -or-  
  
 The value of the <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Mode" /> property is <see cref="F:System.Security.Cryptography.CipherMode.CFB" /> and the value of the <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.FeedbackSize" /> property is not 8.  
  
 -or-  
  
 An invalid key size was used.  
  
 -or-  
  
 The algorithm key size was not available.</exception>
      <returns>A symmetric <see cref="T:System.Security.Cryptography.DES" /> encryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DESCryptoServiceProvider.GenerateIV">
      <summary>Generates a random initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />) to use for the algorithm.</summary>
    </member>
    <member name="M:System.Security.Cryptography.DESCryptoServiceProvider.GenerateKey">
      <summary>Generates a random key (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key" />) to be used for the algorithm.</summary>
    </member>
    <member name="T:System.Security.Cryptography.DSA">
      <summary>Represents the abstract base class from which all implementations of the Digital Signature Algorithm (<see cref="T:System.Security.Cryptography.DSA" />) must inherit.</summary>
    </member>
    <member name="M:System.Security.Cryptography.DSA.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.DSA" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.DSA.Create">
      <summary>Creates the default cryptographic object used to perform the asymmetric algorithm.</summary>
      <returns>A cryptographic object used to perform the asymmetric algorithm.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.Create(System.Int32)">
      <summary>Creates a new ephemeral DSA key with the specified key size.</summary>
      <param name="keySizeInBits">The key size, in bits.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="keySizeInBits" /> is not permitted by <see cref="P:System.Security.Cryptography.AsymmetricAlgorithm.LegalKeySizes" />.</exception>
      <returns>A new ephemeral DSA key with the specified key size.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.Create(System.Security.Cryptography.DSAParameters)">
      <summary>Creates a new ephemeral DSA key with the specified DSA key parameters.</summary>
      <param name="parameters">The parameters for the <see cref="T:System.Security.Cryptography.DSA" /> algorithm.</param>
      <returns>A new ephemeral DSA key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.Create(System.String)">
      <summary>Creates the specified cryptographic object used to perform the asymmetric algorithm.</summary>
      <param name="algName">The name of the specific implementation of <see cref="T:System.Security.Cryptography.DSA" /> to use.</param>
      <returns>A cryptographic object used to perform the asymmetric algorithm.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.CreateSignature(System.Byte[],System.Security.Cryptography.DSASignatureFormat)">
      <summary>Creates the DSA signature for the specified hash value in the indicated format.</summary>
      <param name="rgbHash">The hash value to sign.</param>
      <param name="signatureFormat">The encoding format to use for the signature.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="rgbHash" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the signing operation.</exception>
      <returns>The DSA signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.CreateSignature(System.Byte[])">
      <summary>When overridden in a derived class, creates the <see cref="T:System.Security.Cryptography.DSA" /> signature for the specified hash value.</summary>
      <param name="rgbHash">The hash value to be signed.</param>
      <returns>The digital signature for the specified hash value.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.CreateSignatureCore(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.DSASignatureFormat)">
      <summary>Creates the DSA signature for the specified hash value in the indicated format.</summary>
      <param name="hash">The hash value to sign.</param>
      <param name="signatureFormat">The encoding format to use for the signature.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the signing operation.</exception>
      <returns>The DSA signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.ExportParameters(System.Boolean)">
      <summary>When overridden in a derived class, exports the <see cref="T:System.Security.Cryptography.DSAParameters" />.</summary>
      <param name="includePrivateParameters">
        <see langword="true" /> to include private parameters; otherwise, <see langword="false" />.</param>
      <returns>The parameters for <see cref="T:System.Security.Cryptography.DSA" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.FromXmlString(System.String)">
      <summary>Reconstructs a <see cref="T:System.Security.Cryptography.DSA" /> object from an XML string.</summary>
      <param name="xmlString">The XML string to use to reconstruct the <see cref="T:System.Security.Cryptography.DSA" /> object.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="xmlString" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The format of the <paramref name="xmlString" /> parameter is not valid.</exception>
    </member>
    <member name="M:System.Security.Cryptography.DSA.GetMaxSignatureSize(System.Security.Cryptography.DSASignatureFormat)">
      <summary>Gets the largest size, in bytes, for a signature produced by this key in the indicated format.</summary>
      <param name="signatureFormat">The encoding format for a signature.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.</exception>
      <returns>The largest size, in bytes, for a signature produced by this key in the indicated format.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.HashData(System.Byte[],System.Int32,System.Int32,System.Security.Cryptography.HashAlgorithmName)">
      <summary>When overridden in a derived class, computes the hash value of a specified portion of a byte array by using a specified hashing algorithm.</summary>
      <param name="data">The data to be hashed.</param>
      <param name="offset">The index of the first byte in <paramref name="data" /> that is to be hashed.</param>
      <param name="count">The number of bytes to hash.</param>
      <param name="hashAlgorithm">The algorithm to use to hash the data.</param>
      <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
      <returns>The hashed data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.HashData(System.IO.Stream,System.Security.Cryptography.HashAlgorithmName)">
      <summary>When overridden in a derived class, computes the hash value of a specified binary stream by using a specified hashing algorithm.</summary>
      <param name="data">The binary stream to hash.</param>
      <param name="hashAlgorithm">The algorithm to use to hash the data.</param>
      <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
      <returns>The hashed data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.ImportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a byte-based password, replacing the keys for this object.</summary>
      <param name="passwordBytes">The bytes to use as a password when decrypting the key material.</param>
      <param name="source">The bytes of a PKCS#8 EncryptedPrivateKeyInfo structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <paramref name="source" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The password is incorrect.

-or-

The contents of <paramref name="source" /> indicate the Key Derivation Function (KDF) to apply is the legacy PKCS#12 KDF, which requires <see cref="T:System.Char" />-based passwords.

-or-

The contents of <paramref name="source" /> do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.

-or-

The contents of <paramref name="source" /> indicate the key is for an algorithm other than the algorithm represented by this instance.

-or-

The contents of <paramref name="source" /> represent the key in a format that is not supported.

-or-

The algorithm-specific key import failed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.DSA.ImportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a char-based password, replacing the keys for this object.</summary>
      <param name="password">The password to use for decrypting the key material.</param>
      <param name="source">The bytes of a PKCS#8 EncryptedPrivateKeyInfo structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <paramref name="source" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The password is incorrect.

-or-

The contents of <paramref name="source" /> do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.

-or-

The contents of <paramref name="source" /> indicate the key is for an algorithm other than the algorithm represented by this instance.

-or-

The contents of <paramref name="source" /> represent the key in a format that is not supported.

-or-

The algorithm-specific key import failed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.DSA.ImportFromEncryptedPem(System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Byte})">
      <summary>Imports an encrypted RFC 7468 PEM-encoded private key, replacing the keys for this object.</summary>
      <param name="input">The PEM text of the encrypted key to import.</param>
      <param name="passwordBytes">The bytes to use as a password when decrypting the key material.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="input" /> does not contain a PEM-encoded key with a recognized label.

            -or-

            <paramref name="input" /> contains multiple PEM-encoded keys with a recognized label.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The password is incorrect.

            -or-

            The base-64 decoded contents of the PEM text from <paramref name="input" /> do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.

            -or-

            The base-64 decoded contents of the PEM text from <paramref name="input" /> indicate the key is for an algorithm other than the algorithm represented by this instance.

            -or-

            The base-64 decoded contents of the PEM text from <paramref name="input" /> represent the key in a format that is not supported.

            -or-

            The algorithm-specific key import failed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.DSA.ImportFromEncryptedPem(System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Char})">
      <summary>Imports an encrypted RFC 7468 PEM-encoded private key, replacing the keys for this object.</summary>
      <param name="input">The PEM text of the encrypted key to import.</param>
      <param name="password">The password to use for decrypting the key material.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="input" /> does not contain a PEM-encoded key with a recognized label.

            -or-

            <paramref name="input" /> contains multiple PEM-encoded keys with a recognized label.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The password is incorrect.

            -or-

            The base-64 decoded contents of the PEM text from <paramref name="input" /> do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.

            -or-

            The base-64 decoded contents of the PEM text from <paramref name="input" /> indicate the key is for an algorithm other than the algorithm represented by this instance.

            -or-

            The base-64 decoded contents of the PEM text from <paramref name="input" /> represent the key in a format that is not supported.

            -or-

            The algorithm-specific key import failed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.DSA.ImportFromPem(System.ReadOnlySpan{System.Char})">
      <summary>Imports an RFC 7468 PEM-encoded key, replacing the keys for this object.</summary>
      <param name="input">The PEM text of the key to import.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="input" /> does not contain a PEM-encoded key with a recognized label.

            -or-

            <paramref name="input" /> contains multiple PEM-encoded keys with a recognized label.

            -or-

            <paramref name="input" /> contains an encrypted PEM-encoded key.</exception>
    </member>
    <member name="M:System.Security.Cryptography.DSA.ImportParameters(System.Security.Cryptography.DSAParameters)">
      <summary>When overridden in a derived class, imports the specified <see cref="T:System.Security.Cryptography.DSAParameters" />.</summary>
      <param name="parameters">The parameters for <see cref="T:System.Security.Cryptography.DSA" />.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="parameters" /> is missing required fields.

-or-

<paramref name="parameters" /> has fields with inconsistent lengths for a valid key.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="parameters" /> does not represent a valid DSA key parameter set.</exception>
    </member>
    <member name="M:System.Security.Cryptography.DSA.ImportPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public/private keypair from a PKCS#8 PrivateKeyInfo structure after decryption, replacing the keys for this object.</summary>
      <param name="source">The bytes of a PKCS#8 PrivateKeyInfo structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <paramref name="source" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The contents of <paramref name="source" /> do not represent an ASN.1-BER-encoded PKCS#8 PrivateKeyInfo structure.

-or-

The contents of <paramref name="source" /> indicate the key is for an algorithm other than the algorithm represented by this instance.

-or-

The contents of <paramref name="source" /> represent the key in a format that is not supported.

-or-

The algorithm-specific key import failed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.DSA.ImportSubjectPublicKeyInfo(System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public key from an X.509 SubjectPublicKeyInfo structure after decryption, replacing the keys for this object.</summary>
      <param name="source">The bytes of an X.509 SubjectPublicKeyInfo structure in the ASN.1-DER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <paramref name="source" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The contents of <paramref name="source" /> do not represent an ASN.1-DER-encoded X.509 SubjectPublicKeyInfo structure.

-or-

The contents of <paramref name="source" /> indicate the key is for an algorithm other than the algorithm represented by this instance.

-or-

The contents of <paramref name="source" /> represent the key in a format that is not supported.

-or-

The algorithm-specific key import failed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.DSA.SignData(System.Byte[],System.Int32,System.Int32,System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat)">
      <summary>Computes the hash value of the specified data and signs it using the specified signature format.</summary>
      <param name="data">The data to sign.</param>
      <param name="offset">The offset into <paramref name="data" /> at which to begin hashing.</param>
      <param name="count">The number of bytes to read from <paramref name="data" />.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <param name="signatureFormat">The encoding format to use for the signature.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.
 
          -or- 
          <paramref name="offset" /> is less than zero.
 
          -or- 
          <paramref name="count" /> is less than zero.
 
          -or- 
          <paramref name="offset" /> + <paramref name="count" /> - 1 results in an index that is beyond the upper bound of <paramref name="data" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see langword="null" /> or empty <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the hashing or signing operation.</exception>
      <returns>The DSA signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.SignData(System.Byte[],System.Int32,System.Int32,System.Security.Cryptography.HashAlgorithmName)">
      <summary>Computes the hash value of a portion of the specified byte array using the specified hash algorithm and signs the resulting hash value.</summary>
      <param name="data">The input data for which to compute the hash.</param>
      <param name="offset">The offset into the array at which to begin using data.</param>
      <param name="count">The number of bytes in the array to use as data.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="offset" /> is less than zero.  
  
 -or-  
  
 <paramref name="count" /> is less than zero.  
  
 -or-  
  
 <paramref name="offset" /> + <paramref name="count" /> - 1 results in an index that is beyond the upper bound of <paramref name="data" />.</exception>
      <returns>The DSA signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.SignData(System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat)">
      <summary>Computes the hash value of the specified data and signs it using the specified signature format.</summary>
      <param name="data">The data to sign.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <param name="signatureFormat">The encoding format to use for the signature.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see langword="null" /> or empty <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the hashing or signing operation.</exception>
      <returns>The DSA signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.SignData(System.Byte[],System.Security.Cryptography.HashAlgorithmName)">
      <summary>Computes the hash value of the specified byte array using the specified hash algorithm and signs the resulting hash value.</summary>
      <param name="data">The input data for which to compute the hash.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <returns>The DSA signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.SignData(System.IO.Stream,System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat)">
      <summary>Computes the hash value of the specified data and signs it using the specified signature format.</summary>
      <param name="data">The data to sign.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <param name="signatureFormat">The encoding format to use for the signature.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see langword="null" /> or empty <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the hashing or signing operation.</exception>
      <returns>The DSA signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.SignData(System.IO.Stream,System.Security.Cryptography.HashAlgorithmName)">
      <summary>Computes the hash value of the specified stream using the specified hash algorithm and signs the resulting hash value.</summary>
      <param name="data">The input stream for which to compute the hash.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <returns>The DSA signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.SignDataCore(System.IO.Stream,System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat)">
      <summary>Computes the hash value of the specified data and signs it using the specified signature format.</summary>
      <param name="data">The data to sign.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <param name="signatureFormat">The encoding format to use for the signature.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the hashing or signing operation.</exception>
      <returns>The DSA signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.SignDataCore(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat)">
      <summary>Computes the hash value of the specified data and signs it using the specified signature format.</summary>
      <param name="data">The data to sign.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <param name="signatureFormat">The encoding format to use for the signature.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the hashing or signing operation.</exception>
      <returns>The DSA signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.ToXmlString(System.Boolean)">
      <summary>Creates and returns an XML string representation of the current <see cref="T:System.Security.Cryptography.DSA" /> object.</summary>
      <param name="includePrivateParameters">
        <see langword="true" /> to include private parameters; otherwise, <see langword="false" />.</param>
      <returns>An XML string encoding of the current <see cref="T:System.Security.Cryptography.DSA" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.TryCreateSignature(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to create the DSA signature for the specified hash into the provided buffer.</summary>
      <param name="hash">The hash to sign.</param>
      <param name="destination">The byte span to receive the signature.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">This instance represents only a public key.

-or-

The implementation type only supports legacy DSA (FIPS 186-2), and <paramref name="hash" /> is not a 20-byte value.

-or-

Creating the signature otherwise failed.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is large enough to receive the result; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.TryCreateSignature(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.DSASignatureFormat,System.Int32@)">
      <summary>Attempts to create the DSA signature for the specified hash value in the indicated format and place it into the provided buffer.</summary>
      <param name="hash">The hash value to sign.</param>
      <param name="destination">The buffer to receive the signature.</param>
      <param name="signatureFormat">The encoding format to use for the signature.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the signing operation.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is large enough to receive the signature; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.TryCreateSignatureCore(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.DSASignatureFormat,System.Int32@)">
      <summary>Attempts to create the DSA signature for the specified hash value in the indicated format and place it into the provided buffer.</summary>
      <param name="hash">The hash value to sign.</param>
      <param name="destination">The buffer to receive the signature.</param>
      <param name="signatureFormat">The encoding format to use for the signature.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the signing operation.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is large enough to receive the signature; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.TryExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.PbeParameters,System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the PKCS#8 EncryptedPrivateKeyInfo format into a provided buffer, using a byte-based password.</summary>
      <param name="passwordBytes">The bytes to use as a password when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <param name="destination">The byte span to receive the PKCS#8 EncryptedPrivateKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.

-or-

<paramref name="pbeParameters" /> indicates that <see cref="F:System.Security.Cryptography.PbeEncryptionAlgorithm.TripleDes3KeyPkcs12" /> should be used, which requires <see cref="T:System.Char" />-based passwords.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.TryExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Char},System.Security.Cryptography.PbeParameters,System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the PKCS#8 EncryptedPrivateKeyInfo format into a provided buffer, using a char-based password.</summary>
      <param name="password">The password to use when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <param name="destination">The byte span to receive the PKCS#8 EncryptedPrivateKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.TryExportPkcs8PrivateKey(System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the PKCS#8 PrivateKeyInfo format into a provided buffer.</summary>
      <param name="destination">The byte span to receive the PKCS#8 PrivateKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.TryExportSubjectPublicKeyInfo(System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the X.509 SubjectPublicKeyInfo format into a provided buffer.</summary>
      <param name="destination">The byte span to receive the X.509 SubjectPublicKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.TryHashData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Int32@)">
      <summary>Attempts to compute the hash value of the provided data into a provided buffer.</summary>
      <param name="data">The data to be hashed.</param>
      <param name="destination">The byte span to receive the hash value.</param>
      <param name="hashAlgorithm">The name of the hash algorithm to use.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />.</param>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is large enough to receive the result; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.TrySignData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Int32@)">
      <summary>Attempts to create the DSA signature for the specified data into the provided buffer.</summary>
      <param name="data">The data to hash and sign.</param>
      <param name="destination">The byte span to receive the signature.</param>
      <param name="hashAlgorithm">The name of the hash algorithm to use.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />.</param>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is large enough to receive the result; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.TrySignData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat,System.Int32@)">
      <summary>Attempts to create the DSA signature for the specified data in the indicated format and place it into the provided buffer.</summary>
      <param name="data">The data to hash and sign.</param>
      <param name="destination">The buffer to receive the signature.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <param name="signatureFormat">The encoding format to use for the signature.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see langword="null" /> or empty <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the signing operation.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the signature; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.TrySignDataCore(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat,System.Int32@)">
      <summary>Attempts to create the DSA signature for the specified data in the indicated format and place it into the provided buffer.</summary>
      <param name="data">The data to hash and sign.</param>
      <param name="destination">The buffer to receive the signature.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <param name="signatureFormat">The encoding format to use for the signature.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the signing operation.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the signature; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.VerifyData(System.Byte[],System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat)">
      <summary>Verifies that a digital signature is valid for the provided data.</summary>
      <param name="data">The signed data.</param>
      <param name="signature">The signature to verify.</param>
      <param name="hashAlgorithm">The hash algorithm used to hash the data for the verification process.</param>
      <param name="signatureFormat">The encoding format for <paramref name="signature" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> or <paramref name="signature" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see langword="null" /> or empty <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the hashing or verification operation.</exception>
      <returns>
        <see langword="true" /> if the digital signature is valid for the provided data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.VerifyData(System.Byte[],System.Byte[],System.Security.Cryptography.HashAlgorithmName)">
      <summary>Verifies that a digital signature is valid by calculating the hash value of the specified data using the specified hash algorithm and comparing it to the provided signature.</summary>
      <param name="data">The signed data.</param>
      <param name="signature">The signature data to be verified.</param>
      <param name="hashAlgorithm">The hash algorithm used to create the hash value of the data.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.  
  
 -or-  
  
 <paramref name="signature" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The implementation type only supports legacy DSA (FIPS 186-2), and the hash algorithm is not SHA-1.

-or-

Verifying the signature otherwise failed.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <returns>
        <see langword="true" /> if the digital signature is valid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.VerifyData(System.Byte[],System.Int32,System.Int32,System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat)">
      <summary>Verifies that a digital signature is valid for the provided data.</summary>
      <param name="data">An array that contains the signed data.</param>
      <param name="offset">The starting index of the signed portion of <paramref name="data" />.</param>
      <param name="count">The number of bytes in <paramref name="data" /> that were signed.</param>
      <param name="signature">The signature to verify.</param>
      <param name="hashAlgorithm">The hash algorithm used to hash the data for the verification process.</param>
      <param name="signatureFormat">The encoding format for <paramref name="signature" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> or <paramref name="signature" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.
 
 -or- 
 <paramref name="offset" /> is less than zero.
 
 -or- 
 <paramref name="count" /> is less than zero.
 
 -or- 
 <paramref name="offset" /> + <paramref name="count" /> - 1 results in an index that is beyond the upper bound of <paramref name="data" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see langword="null" /> or empty <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the hashing or verification operation.</exception>
      <returns>
        <see langword="true" /> if the digital signature is valid for the provided data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.VerifyData(System.Byte[],System.Int32,System.Int32,System.Byte[],System.Security.Cryptography.HashAlgorithmName)">
      <summary>Verifies that a digital signature is valid by calculating the hash value of the data in a portion of a byte array using the specified hash algorithm and comparing it to the provided signature.</summary>
      <param name="data">The signed data.</param>
      <param name="offset">The starting index at which to compute the hash.</param>
      <param name="count">The number of bytes to hash.</param>
      <param name="signature">The signature data to be verified.</param>
      <param name="hashAlgorithm">The hash algorithm used to create the hash value of the data.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.  
  
 -or-  
  
 <paramref name="signature" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="offset" /> is less than zero.  
  
 -or-  
  
 <paramref name="count" /> is less than zero.  
  
 -or-  
  
 <paramref name="offset" /> + <paramref name="count" /> - 1 results in an index that is beyond the upper bound of <paramref name="data" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The implementation type only supports legacy DSA (FIPS 186-2), and the hash algorithm is not SHA-1.

-or-

Verifying the signature otherwise failed.</exception>
      <returns>
        <see langword="true" /> if the digital signature is valid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.VerifyData(System.IO.Stream,System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat)">
      <summary>Verifies that a digital signature is valid for the provided data.</summary>
      <param name="data">The signed data.</param>
      <param name="signature">The signature to verify.</param>
      <param name="hashAlgorithm">The hash algorithm used to hash the data for the verification process.</param>
      <param name="signatureFormat">The encoding format for <paramref name="signature" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> or <paramref name="signature" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see langword="null" /> or empty <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the hashing or verification operation.</exception>
      <returns>
        <see langword="true" /> if the digital signature is valid for the provided data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.VerifyData(System.IO.Stream,System.Byte[],System.Security.Cryptography.HashAlgorithmName)">
      <summary>Verifies that a digital signature is valid by calculating the hash value of the specified stream using the specified hash algorithm and comparing it to the provided signature.</summary>
      <param name="data">The signed data.</param>
      <param name="signature">The signature data to be verified.</param>
      <param name="hashAlgorithm">The hash algorithm used to create the hash value of the data.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.  
  
 -or-  
  
 <paramref name="signature" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The implementation type only supports legacy DSA (FIPS 186-2), and the hash algorithm is not SHA-1.

-or-

Verifying the signature otherwise failed.</exception>
      <returns>
        <see langword="true" /> if the digital signature is valid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.VerifyData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat)">
      <summary>Verifies that a digital signature is valid for the provided data.</summary>
      <param name="data">The signed data.</param>
      <param name="signature">The signature to verify.</param>
      <param name="hashAlgorithm">The hash algorithm used to hash the data for the verification process.</param>
      <param name="signatureFormat">The encoding format for <paramref name="signature" />.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the hashing or verification operation.</exception>
      <returns>
        <see langword="true" /> if the digital signature is valid for the provided data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.VerifyData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Security.Cryptography.HashAlgorithmName)">
      <summary>Verifies that a digital signature is valid by calculating the hash value of the data in a byte span using the specified hash algorithm and comparing it to the provided signature.</summary>
      <param name="data">The signed data.</param>
      <param name="signature">The signature to be verified.</param>
      <param name="hashAlgorithm">The hash algorithm used to create the hash value of the data.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The implementation type only supports legacy DSA (FIPS 186-2), and the hash algorithm is not SHA-1.

-or-

Verifying the signature otherwise failed.</exception>
      <returns>
        <see langword="true" /> if the digital signature is valid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.VerifyDataCore(System.IO.Stream,System.ReadOnlySpan{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat)">
      <summary>Verifies that a digital signature is valid for the provided data.</summary>
      <param name="data">The signed data.</param>
      <param name="signature">The signature to verify.</param>
      <param name="hashAlgorithm">The hash algorithm used to hash the data for the verification process.</param>
      <param name="signatureFormat">The encoding format for <paramref name="signature" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the hashing or verification operation.</exception>
      <returns>
        <see langword="true" /> if the digital signature is valid for the provided data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.VerifyDataCore(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat)">
      <summary>Verifies that a digital signature is valid for the provided data.</summary>
      <param name="data">The signed data.</param>
      <param name="signature">The signature to verify.</param>
      <param name="hashAlgorithm">The hash algorithm used to hash the data for the verification process.</param>
      <param name="signatureFormat">The encoding format for <paramref name="signature" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the hashing or verification operation.</exception>
      <returns>
        <see langword="true" /> if the digital signature is valid for the provided data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.VerifySignature(System.Byte[],System.Byte[],System.Security.Cryptography.DSASignatureFormat)">
      <summary>Verifies that a digital signature is valid for the provided hash.</summary>
      <param name="rgbHash">The signed hash.</param>
      <param name="rgbSignature">The signature to verify.</param>
      <param name="signatureFormat">The encoding format for <paramref name="rgbSignature" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="rgbHash" /> or <paramref name="rgbSignature" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the verification operation.</exception>
      <returns>
        <see langword="true" /> if the digital signature is valid for the provided data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.VerifySignature(System.Byte[],System.Byte[])">
      <summary>When overridden in a derived class, verifies the <see cref="T:System.Security.Cryptography.DSA" /> signature for the specified data.</summary>
      <param name="rgbHash">The hash of the data signed with <paramref name="rgbSignature" />.</param>
      <param name="rgbSignature">The signature to be verified for <c>rgbData</c>.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The implementation type only supports legacy DSA (FIPS 186-2), and the hash value is not 20 bytes long.

-or-

Verifying the signature otherwise failed.</exception>
      <returns>
        <see langword="true" /> if <paramref name="rgbSignature" /> matches the signature computed using the specified hash algorithm and key on <paramref name="rgbHash" />; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.VerifySignature(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Security.Cryptography.DSASignatureFormat)">
      <summary>Verifies that a digital signature is valid for the provided hash.</summary>
      <param name="hash">The signed hash.</param>
      <param name="signature">The signature to verify.</param>
      <param name="signatureFormat">The encoding format for <paramref name="signature" />.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the verification operation.</exception>
      <returns>
        <see langword="true" /> if the digital signature is valid for the provided data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.VerifySignature(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Verifies that a digital signature is valid for a provided data hash.</summary>
      <param name="hash">The data hash to verify.</param>
      <param name="signature">The signature to be verify.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The implementation type only supports legacy DSA (FIPS 186-2), and the hash value is not 20 bytes long.

-or-

Verifying the signature otherwise failed.</exception>
      <returns>
        <see langword="true" /> if the digital signature is valid for the hash; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSA.VerifySignatureCore(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Security.Cryptography.DSASignatureFormat)">
      <summary>Verifies that a digital signature is valid for the provided hash.</summary>
      <param name="hash">The signed hash.</param>
      <param name="signature">The signature to verify.</param>
      <param name="signatureFormat">The encoding format for <paramref name="signature" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the verification operation.</exception>
      <returns>
        <see langword="true" /> if the digital signature is valid for the provided data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.DSACng">
      <summary>Provides a Cryptography Next Generation (CNG) implementation of the Digital Signature Algorithm (DSA).</summary>
    </member>
    <member name="M:System.Security.Cryptography.DSACng.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.DSACng" /> class with a random 2,048-bit key pair.</summary>
    </member>
    <member name="M:System.Security.Cryptography.DSACng.#ctor(System.Int32)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.DSACng" /> class with a randomly generated key of the specified size.</summary>
      <param name="keySize">The size of the key to generate in bits.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="keySize" /> is not valid.</exception>
    </member>
    <member name="M:System.Security.Cryptography.DSACng.#ctor(System.Security.Cryptography.CngKey)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.DSACng" /> class with the specified key.</summary>
      <param name="key">The key to use for DSA operations.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="key" /> is not a valid DSA key.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.DSACng.CreateSignature(System.Byte[])">
      <summary>Creates the <see cref="T:System.Security.Cryptography.DSA" /> signature for the specified data.</summary>
      <param name="rgbHash">The hash value to be signed.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="rgbHash" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">This instance represents only a public key.

-or-

An error occurred during signature creation.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="rgbHash" /> is shorter in length than the Q value of the DSA key.</exception>
      <returns>The digital signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSACng.ExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.PbeParameters)">
      <summary>Exports the current key in the PKCS#8 EncryptedPrivateKeyInfo format with a byte-based password.</summary>
      <param name="passwordBytes">The bytes to use as a password when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <returns>A byte array containing the PKCS#8 EncryptedPrivateKeyInfo representation of this key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSACng.ExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Char},System.Security.Cryptography.PbeParameters)">
      <summary>Exports the current key in the PKCS#8 EncryptedPrivateKeyInfo format with a char-based password.</summary>
      <param name="password">The password to use when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <returns>A byte array containing the PKCS#8 EncryptedPrivateKeyInfo representation of this key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSACng.ExportParameters(System.Boolean)">
      <summary>Exports the DSA algorithm parameters.</summary>
      <param name="includePrivateParameters">
        <see langword="true" /> to include private parameters; otherwise, <see langword="false" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">DSA key is not a valid public or private key.</exception>
      <returns>The DSA algorithm parameters.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSACng.ImportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a byte-based password, replacing the keys for this object.</summary>
      <param name="passwordBytes">The bytes to use as a password when decrypting the key material.</param>
      <param name="source">The bytes of a PKCS#8 EncryptedPrivateKeyInfo structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <code data-dev-comment-type="paramref">source</code>. This parameter is treated as uninitialized.</param>
    </member>
    <member name="M:System.Security.Cryptography.DSACng.ImportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a char-based password, replacing the keys for this object.</summary>
      <param name="password">The password to use for decrypting the key material.</param>
      <param name="source">The bytes of a PKCS#8 EncryptedPrivateKeyInfo structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <code data-dev-comment-type="paramref">source</code>. This parameter is treated as uninitialized.</param>
    </member>
    <member name="M:System.Security.Cryptography.DSACng.ImportParameters(System.Security.Cryptography.DSAParameters)">
      <summary>Replaces the existing key that the current instance is working with by creating a new <see cref="T:System.Security.Cryptography.CngKey" /> for the parameters structure.</summary>
      <param name="parameters">The DSA parameters.</param>
      <exception cref="T:System.ArgumentException">The specified DSA parameters are not valid.</exception>
    </member>
    <member name="M:System.Security.Cryptography.DSACng.TryExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.PbeParameters,System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the PKCS#8 EncryptedPrivateKeyInfo format into a provided buffer, using a byte-based password.</summary>
      <param name="passwordBytes">The bytes to use as a password when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <param name="destination">The byte span to receive the PKCS#8 EncryptedPrivateKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <code data-dev-comment-type="paramref">destination</code>. This parameter is treated as uninitialized.</param>
      <returns>
        <code data-dev-comment-type="langword">true</code> if <code data-dev-comment-type="paramref">destination</code> is big enough to receive the output; otherwise, <code data-dev-comment-type="langword">false</code>.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSACng.TryExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Char},System.Security.Cryptography.PbeParameters,System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the PKCS#8 EncryptedPrivateKeyInfo format into a provided buffer, using a char-based password.</summary>
      <param name="password">The password to use when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <param name="destination">The byte span to receive the PKCS#8 EncryptedPrivateKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <code data-dev-comment-type="paramref">destination</code>. This parameter is treated as uninitialized.</param>
      <returns>
        <code data-dev-comment-type="langword">true</code> if <code data-dev-comment-type="paramref">destination</code> is big enough to receive the output; otherwise, <code data-dev-comment-type="langword">false</code>.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSACng.TryExportPkcs8PrivateKey(System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the PKCS#8 PrivateKeyInfo format into a provided buffer.</summary>
      <param name="destination">The byte span to receive the PKCS#8 PrivateKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <code data-dev-comment-type="paramref">destination</code>. This parameter is treated as uninitialized.</param>
      <returns>
        <code data-dev-comment-type="langword">true</code> if <code data-dev-comment-type="paramref">destination</code> is big enough to receive the output; otherwise, <code data-dev-comment-type="langword">false</code>.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSACng.VerifySignature(System.Byte[],System.Byte[])">
      <summary>Verifies if the specified digital signature matches the specified hash.</summary>
      <param name="rgbHash">The signed hash.</param>
      <param name="rgbSignature">The digital signature to be verified.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="rgbHash" /> or <paramref name="rgbSignature" /> parameters are <see langword="null" />.</exception>
      <returns>
        <see langword="true" /> if <paramref name="rgbSignature" /> matches the signature computed using the specified hash; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.DSACng.Key">
      <summary>Gets the key that will be used by the <see cref="T:System.Security.Cryptography.DSACng" /> object for any cryptographic operation that it performs.</summary>
      <returns>The key used by the <see cref="T:System.Security.Cryptography.DSACng" /> object to perform cryptographic operations.</returns>
    </member>
    <member name="P:System.Security.Cryptography.DSACng.KeyExchangeAlgorithm">
      <summary>Gets the name of the key exchange algorithm.</summary>
      <returns>Always <see langword="null" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.DSACng.LegalKeySizes">
      <summary>Gets the key sizes, in bits, that are supported by the DSA algorithm.</summary>
      <returns>An array that contains the key sizes supported by the algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.DSACng.SignatureAlgorithm">
      <summary>Gets the name of the signature algorithm.</summary>
      <returns>The string "DSA".</returns>
    </member>
    <member name="T:System.Security.Cryptography.DSACryptoServiceProvider">
      <summary>Defines a wrapper object to access the cryptographic service provider (CSP) implementation of the <see cref="T:System.Security.Cryptography.DSA" /> algorithm. This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.DSACryptoServiceProvider.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.DSACryptoServiceProvider" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.DSACryptoServiceProvider.#ctor(System.Int32,System.Security.Cryptography.CspParameters)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.DSACryptoServiceProvider" /> class with the specified key size and parameters for the cryptographic service provider (CSP).</summary>
      <param name="dwKeySize">The size of the key for the cryptographic algorithm in bits.</param>
      <param name="parameters">The parameters for the CSP.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The CSP cannot be acquired.

 -or-

 The key cannot be created.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="dwKeySize" /> is out of range.</exception>
    </member>
    <member name="M:System.Security.Cryptography.DSACryptoServiceProvider.#ctor(System.Int32)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.DSACryptoServiceProvider" /> class with the specified key size.</summary>
      <param name="dwKeySize">The size of the key for the asymmetric algorithm in bits.</param>
    </member>
    <member name="M:System.Security.Cryptography.DSACryptoServiceProvider.#ctor(System.Security.Cryptography.CspParameters)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.DSACryptoServiceProvider" /> class with the specified parameters for the cryptographic service provider (CSP).</summary>
      <param name="parameters">The parameters for the CSP.</param>
    </member>
    <member name="M:System.Security.Cryptography.DSACryptoServiceProvider.CreateSignature(System.Byte[])">
      <summary>Creates the <see cref="T:System.Security.Cryptography.DSA" /> signature for the specified data.</summary>
      <param name="rgbHash">The data to be signed.</param>
      <returns>The digital signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSACryptoServiceProvider.ExportCspBlob(System.Boolean)">
      <summary>Exports a blob containing the key information associated with a <see cref="T:System.Security.Cryptography.DSACryptoServiceProvider" /> object.</summary>
      <param name="includePrivateParameters">
        <see langword="true" /> to include the private key; otherwise, <see langword="false" />.</param>
      <returns>A byte array containing the key information associated with a <see cref="T:System.Security.Cryptography.DSACryptoServiceProvider" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSACryptoServiceProvider.ExportParameters(System.Boolean)">
      <summary>Exports the <see cref="T:System.Security.Cryptography.DSAParameters" />.</summary>
      <param name="includePrivateParameters">
        <see langword="true" /> to include private parameters; otherwise, <see langword="false" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key cannot be exported.</exception>
      <returns>The parameters for <see cref="T:System.Security.Cryptography.DSA" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSACryptoServiceProvider.ImportCspBlob(System.Byte[])">
      <summary>Imports a blob that represents DSA key information.</summary>
      <param name="keyBlob">A byte array that represents a DSA key blob.</param>
    </member>
    <member name="M:System.Security.Cryptography.DSACryptoServiceProvider.ImportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a byte-based password, replacing the keys for this object.</summary>
      <param name="passwordBytes">The bytes to use as a password when decrypting the key material.</param>
      <param name="source">The bytes of a PKCS#8 EncryptedPrivateKeyInfo structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <code data-dev-comment-type="paramref">source</code>. This parameter is treated as uninitialized.</param>
    </member>
    <member name="M:System.Security.Cryptography.DSACryptoServiceProvider.ImportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a char-based password, replacing the keys for this object.</summary>
      <param name="password">The password to use for decrypting the key material.</param>
      <param name="source">The bytes of a PKCS#8 EncryptedPrivateKeyInfo structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <code data-dev-comment-type="paramref">source</code>. This parameter is treated as uninitialized.</param>
    </member>
    <member name="M:System.Security.Cryptography.DSACryptoServiceProvider.ImportParameters(System.Security.Cryptography.DSAParameters)">
      <summary>Imports the specified <see cref="T:System.Security.Cryptography.DSAParameters" />.</summary>
      <param name="parameters">The parameters for <see cref="T:System.Security.Cryptography.DSA" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The cryptographic service provider (CSP) cannot be acquired.

 -or-

 The <paramref name="parameters" /> parameter has missing fields.</exception>
    </member>
    <member name="M:System.Security.Cryptography.DSACryptoServiceProvider.SignData(System.Byte[],System.Int32,System.Int32)">
      <summary>Signs a byte array from the specified start point to the specified end point.</summary>
      <param name="buffer">The input data to sign.</param>
      <param name="offset">The offset into the array from which to begin using data.</param>
      <param name="count">The number of bytes in the array to use as data.</param>
      <returns>The <see cref="T:System.Security.Cryptography.DSA" /> signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSACryptoServiceProvider.SignData(System.Byte[])">
      <summary>Computes the hash value of the specified byte array and signs the resulting hash value.</summary>
      <param name="buffer">The input data for which to compute the hash.</param>
      <returns>The <see cref="T:System.Security.Cryptography.DSA" /> signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSACryptoServiceProvider.SignData(System.IO.Stream)">
      <summary>Computes the hash value of the specified input stream and signs the resulting hash value.</summary>
      <param name="inputStream">The input data for which to compute the hash.</param>
      <returns>The <see cref="T:System.Security.Cryptography.DSA" /> signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSACryptoServiceProvider.SignHash(System.Byte[],System.String)">
      <summary>Computes the signature for the specified hash value by encrypting it with the private key.</summary>
      <param name="rgbHash">The hash value of the data to be signed.</param>
      <param name="str">The name of the hash algorithm used to create the hash value of the data.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="rgbHash" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The cryptographic service provider (CSP) cannot be acquired.

 -or-

 There is no private key.</exception>
      <returns>The <see cref="T:System.Security.Cryptography.DSA" /> signature for the specified hash value.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSACryptoServiceProvider.VerifyData(System.Byte[],System.Byte[])">
      <summary>Verifies the specified signature data by comparing it to the signature computed for the specified data.</summary>
      <param name="rgbData">The data that was signed.</param>
      <param name="rgbSignature">The signature data to be verified.</param>
      <returns>
        <see langword="true" /> if the signature verifies as valid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSACryptoServiceProvider.VerifyHash(System.Byte[],System.String,System.Byte[])">
      <summary>Verifies the specified signature data by comparing it to the signature computed for the specified hash value.</summary>
      <param name="rgbHash">The hash value of the data to be signed.</param>
      <param name="str">The name of the hash algorithm used to create the hash value of the data.</param>
      <param name="rgbSignature">The signature data to be verified.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="rgbHash" /> parameter is <see langword="null" />.

 -or-

 The <paramref name="rgbSignature" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The cryptographic service provider (CSP) cannot be acquired.

 -or-

 The signature cannot be verified.</exception>
      <returns>
        <see langword="true" /> if the signature verifies as valid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSACryptoServiceProvider.VerifySignature(System.Byte[],System.Byte[])">
      <summary>Verifies the <see cref="T:System.Security.Cryptography.DSA" /> signature for the specified data.</summary>
      <param name="rgbHash">The data signed with <paramref name="rgbSignature" />.</param>
      <param name="rgbSignature">The signature to be verified for <paramref name="rgbData" />.</param>
      <returns>
        <see langword="true" /> if <paramref name="rgbSignature" /> matches the signature computed using the specified hash algorithm and key on <paramref name="rgbHash" />; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.DSACryptoServiceProvider.CspKeyContainerInfo">
      <summary>Gets a <see cref="T:System.Security.Cryptography.CspKeyContainerInfo" /> object that describes additional information about a cryptographic key pair.</summary>
      <returns>A <see cref="T:System.Security.Cryptography.CspKeyContainerInfo" /> object that describes additional information about a cryptographic key pair.</returns>
    </member>
    <member name="P:System.Security.Cryptography.DSACryptoServiceProvider.KeyExchangeAlgorithm">
      <summary>Gets the name of the key exchange algorithm.</summary>
      <returns>The name of the key exchange algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.DSACryptoServiceProvider.KeySize">
      <summary>Gets the size of the key used by the asymmetric algorithm in bits.</summary>
      <returns>The size of the key used by the asymmetric algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.DSACryptoServiceProvider.LegalKeySizes">
      <summary>Gets the key sizes that are supported by the asymmetric algorithm.</summary>
      <returns>Only key sizes that match an entry in this array are supported by the asymmetric algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.DSACryptoServiceProvider.PersistKeyInCsp">
      <summary>Gets or sets a value indicating whether the key should be persisted in the cryptographic service provider (CSP).</summary>
      <returns>
        <see langword="true" /> if the key should be persisted in the CSP; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.DSACryptoServiceProvider.PublicOnly">
      <summary>Gets a value that indicates whether the <see cref="T:System.Security.Cryptography.DSACryptoServiceProvider" /> object contains only a public key.</summary>
      <returns>
        <see langword="true" /> if the <see cref="T:System.Security.Cryptography.DSACryptoServiceProvider" /> object contains only a public key; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.DSACryptoServiceProvider.SignatureAlgorithm">
      <summary>Gets the name of the signature algorithm.</summary>
      <returns>The name of the signature algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.DSACryptoServiceProvider.UseMachineKeyStore">
      <summary>Gets or sets a value indicating whether the key should be persisted in the computer's key store instead of the user profile store.</summary>
      <returns>
        <see langword="true" /> if the key should be persisted in the computer key store; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.DSAOpenSsl">
      <summary>Provides an implementation of the Digital Signature Algorithm (DSA) backed by OpenSSL.</summary>
    </member>
    <member name="M:System.Security.Cryptography.DSAOpenSsl.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.DSAOpenSsl" /> class with a default key size of 2048 bits.</summary>
    </member>
    <member name="M:System.Security.Cryptography.DSAOpenSsl.#ctor(System.Int32)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.DSAOpenSsl" /> class with a specified key size.</summary>
      <param name="keySize">The size of the key to generate, when a key is needed.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The <paramref name="keySize" /> value is not supported by this implementation.</exception>
    </member>
    <member name="M:System.Security.Cryptography.DSAOpenSsl.#ctor(System.IntPtr)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.DSAOpenSsl" /> class from an existing OpenSSL key represented as a <c>DSA*</c>.</summary>
      <param name="handle">The OpenSSL <c>DSA*</c> value to use as the key.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="handle" /> is <see cref="F:System.IntPtr.Zero" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="handle" /> is not a valid <c>DSA*</c>.</exception>
    </member>
    <member name="M:System.Security.Cryptography.DSAOpenSsl.#ctor(System.Security.Cryptography.DSAParameters)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.DSAOpenSsl" /> class and imports parameters from an existing key.</summary>
      <param name="parameters">The key parameters to import.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="parameters" /> is missing required fields.

-or-

<paramref name="parameters" /> has fields with inconsistent lengths for a valid key.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="parameters" /> does not represent a valid DSA key parameter set.</exception>
    </member>
    <member name="M:System.Security.Cryptography.DSAOpenSsl.#ctor(System.Security.Cryptography.SafeEvpPKeyHandle)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.DSAOpenSsl" /> class from an existing OpenSSL key represented as an <c>EVP_PKEY*</c>.</summary>
      <param name="pkeyHandle">The OpenSSL <c>EVP_PKEY*</c> value to use as the key, represented as a <see cref="T:System.Security.Cryptography.SafeEvpPKeyHandle" />.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="pkeyHandle" /> represents an invalid handle.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="pkeyHandle" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="pkeyHandle" /> does not represent a DSA key.</exception>
    </member>
    <member name="M:System.Security.Cryptography.DSAOpenSsl.CreateSignature(System.Byte[])">
      <summary>When overridden in a derived class, creates the <see cref="T:System.Security.Cryptography.DSA" /> signature for the specified hash value.</summary>
      <param name="rgbHash">The hash value to be signed.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="rgbHash" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">This instance represents only a public key.

-or-

An error occurred during signature creation.</exception>
      <returns>The digital signature for the specified hash value.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSAOpenSsl.DuplicateKeyHandle">
      <summary>Gets a <see cref="T:System.Security.Cryptography.SafeEvpPKeyHandle" /> representation of the cryptographic key.</summary>
      <returns>A <see cref="T:System.Security.Cryptography.SafeEvpPKeyHandle" /> representation of the cryptographic key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSAOpenSsl.ExportParameters(System.Boolean)">
      <summary>Exports the <see cref="T:System.Security.Cryptography.DSAParameters" /> representing this key.</summary>
      <param name="includePrivateParameters">
        <see langword="true" /> to include private parameters; otherwise, <see langword="false" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="includePrivateParameters" /> is <see langword="true" />, but this instance represents only a DSA public key.</exception>
      <returns>The DSA parameters for the current cryptographic key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSAOpenSsl.ImportParameters(System.Security.Cryptography.DSAParameters)">
      <summary>Imports the specified <see cref="T:System.Security.Cryptography.DSAParameters" />.</summary>
      <param name="parameters">The key parameters to import.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="parameters" /> is missing required fields.

-or-

<paramref name="parameters" /> has fields with inconsistent lengths for a valid key.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="parameters" /> does not represent a valid DSA key parameter set.</exception>
    </member>
    <member name="M:System.Security.Cryptography.DSAOpenSsl.VerifySignature(System.Byte[],System.Byte[])">
      <summary>Verifies if the specified digital signature matches the specified hash.</summary>
      <param name="rgbHash">The signed hash.</param>
      <param name="rgbSignature">The digital signature to be verified.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="rgbHash" /> or <paramref name="rgbSignature" /> parameters are <see langword="null" />.</exception>
      <returns>
        <see langword="true" /> if <paramref name="rgbSignature" /> matches the signature computed using the specified hash; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.DSAParameters">
      <summary>Contains the typical parameters for the <see cref="T:System.Security.Cryptography.DSA" /> algorithm.</summary>
    </member>
    <member name="F:System.Security.Cryptography.DSAParameters.Counter">
      <summary>Specifies the counter for the <see cref="T:System.Security.Cryptography.DSA" /> algorithm.</summary>
    </member>
    <member name="F:System.Security.Cryptography.DSAParameters.G">
      <summary>Specifies the <see langword="G" /> parameter for the <see cref="T:System.Security.Cryptography.DSA" /> algorithm.</summary>
    </member>
    <member name="F:System.Security.Cryptography.DSAParameters.J">
      <summary>Specifies the <see langword="J" /> parameter for the <see cref="T:System.Security.Cryptography.DSA" /> algorithm.</summary>
    </member>
    <member name="F:System.Security.Cryptography.DSAParameters.P">
      <summary>Specifies the <see langword="P" /> parameter for the <see cref="T:System.Security.Cryptography.DSA" /> algorithm.</summary>
    </member>
    <member name="F:System.Security.Cryptography.DSAParameters.Q">
      <summary>Specifies the <see langword="Q" /> parameter for the <see cref="T:System.Security.Cryptography.DSA" /> algorithm.</summary>
    </member>
    <member name="F:System.Security.Cryptography.DSAParameters.Seed">
      <summary>Specifies the seed for the <see cref="T:System.Security.Cryptography.DSA" /> algorithm.</summary>
    </member>
    <member name="F:System.Security.Cryptography.DSAParameters.X">
      <summary>Specifies the <see langword="X" /> parameter for the <see cref="T:System.Security.Cryptography.DSA" /> algorithm.</summary>
    </member>
    <member name="F:System.Security.Cryptography.DSAParameters.Y">
      <summary>Specifies the <see langword="Y" /> parameter for the <see cref="T:System.Security.Cryptography.DSA" /> algorithm.</summary>
    </member>
    <member name="T:System.Security.Cryptography.DSASignatureDeformatter">
      <summary>Verifies a Digital Signature Algorithm (<see cref="T:System.Security.Cryptography.DSA" />) PKCS#1 v1.5 signature.</summary>
    </member>
    <member name="M:System.Security.Cryptography.DSASignatureDeformatter.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.DSASignatureDeformatter" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.DSASignatureDeformatter.#ctor(System.Security.Cryptography.AsymmetricAlgorithm)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.DSASignatureDeformatter" /> class with the specified key.</summary>
      <param name="key">The instance of Digital Signature Algorithm (<see cref="T:System.Security.Cryptography.DSA" />) that holds the key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.DSASignatureDeformatter.SetHashAlgorithm(System.String)">
      <summary>Specifies the hash algorithm for the Digital Signature Algorithm (<see cref="T:System.Security.Cryptography.DSA" />) signature deformatter.</summary>
      <param name="strName">The name of the hash algorithm to use for the signature deformatter.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException">The <paramref name="strName" /> parameter does not map to the <see cref="T:System.Security.Cryptography.SHA1" /> hash algorithm.</exception>
    </member>
    <member name="M:System.Security.Cryptography.DSASignatureDeformatter.SetKey(System.Security.Cryptography.AsymmetricAlgorithm)">
      <summary>Specifies the key to be used for the Digital Signature Algorithm (<see cref="T:System.Security.Cryptography.DSA" />) signature deformatter.</summary>
      <param name="key">The instance of <see cref="T:System.Security.Cryptography.DSA" /> that holds the key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.DSASignatureDeformatter.VerifySignature(System.Byte[],System.Byte[])">
      <summary>Verifies the Digital Signature Algorithm (<see cref="T:System.Security.Cryptography.DSA" />) signature on the data.</summary>
      <param name="rgbHash">The data signed with <paramref name="rgbSignature" />.</param>
      <param name="rgbSignature">The signature to be verified for <paramref name="rgbHash" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="rgbHash" /> is <see langword="null" />.  
  
 -or-  
  
 <paramref name="rgbSignature" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException">The DSA key is missing.</exception>
      <returns>
        <see langword="true" /> if the signature is valid for the data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.DSASignatureFormat">
      <summary>Specifies the data format for signatures with the DSA family of algorithms.</summary>
    </member>
    <member name="F:System.Security.Cryptography.DSASignatureFormat.IeeeP1363FixedFieldConcatenation">
      <summary>The signature format from IEEE P1363, which produces a fixed-size signature for a given key.</summary>
    </member>
    <member name="F:System.Security.Cryptography.DSASignatureFormat.Rfc3279DerSequence">
      <summary>The signature format from IETF RFC 3279, which produces a variably-sized signature.</summary>
    </member>
    <member name="T:System.Security.Cryptography.DSASignatureFormatter">
      <summary>Creates a Digital Signature Algorithm (<see cref="T:System.Security.Cryptography.DSA" />) signature.</summary>
    </member>
    <member name="M:System.Security.Cryptography.DSASignatureFormatter.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.DSASignatureFormatter" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.DSASignatureFormatter.#ctor(System.Security.Cryptography.AsymmetricAlgorithm)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.DSASignatureFormatter" /> class with the specified key.</summary>
      <param name="key">The instance of the Digital Signature Algorithm (<see cref="T:System.Security.Cryptography.DSA" />) that holds the key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.DSASignatureFormatter.CreateSignature(System.Byte[])">
      <summary>Creates the Digital Signature Algorithm (<see cref="T:System.Security.Cryptography.DSA" />) PKCS #1 signature for the specified data.</summary>
      <param name="rgbHash">The data to be signed.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="rgbHash" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException">The OID is <see langword="null" />.  
  
 -or-  
  
 The DSA key is <see langword="null" />.</exception>
      <returns>The digital signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.DSASignatureFormatter.SetHashAlgorithm(System.String)">
      <summary>Specifies the hash algorithm for the Digital Signature Algorithm (<see cref="T:System.Security.Cryptography.DSA" />) signature formatter.</summary>
      <param name="strName">The name of the hash algorithm to use for the signature formatter.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException">The <paramref name="strName" /> parameter does not map to the <see cref="T:System.Security.Cryptography.SHA1" /> hash algorithm.</exception>
    </member>
    <member name="M:System.Security.Cryptography.DSASignatureFormatter.SetKey(System.Security.Cryptography.AsymmetricAlgorithm)">
      <summary>Specifies the key to be used for the Digital Signature Algorithm (<see cref="T:System.Security.Cryptography.DSA" />) signature formatter.</summary>
      <param name="key">The instance of <see cref="T:System.Security.Cryptography.DSA" /> that holds the key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
    </member>
    <member name="T:System.Security.Cryptography.ECAlgorithm">
      <summary>Represents the abstract class from which elliptic-curve asymmetric algorithms can inherit.</summary>
    </member>
    <member name="M:System.Security.Cryptography.ECAlgorithm.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ECAlgorithm" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.ECAlgorithm.ExportECPrivateKey">
      <summary>Exports the current key in the ECPrivateKey format.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <returns>A byte array containing the ECPrivateKey representation of this key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECAlgorithm.ExportECPrivateKeyPem">
      <summary>Exports the current key in the ECPrivateKey format, PEM encoded.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <returns>A string containing the PEM-encoded ECPrivateKey.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECAlgorithm.ExportExplicitParameters(System.Boolean)">
      <summary>When overridden in a derived class, exports the explicit <see cref="T:System.Security.Cryptography.ECParameters" /> for an ECCurve.</summary>
      <param name="includePrivateParameters">
        <see langword="true" /> to include private parameters, otherwise, <see langword="false" />.</param>
      <exception cref="T:System.NotSupportedException">A derived class has not provided an implementation.</exception>
      <returns>The exported explicit parameters.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECAlgorithm.ExportParameters(System.Boolean)">
      <summary>When overridden in a derived class, exports the named or explicit <see cref="T:System.Security.Cryptography.ECParameters" /> for an ECCurve.
            If the curve has a name, the Curve property will contain named curve parameters otherwise it will contain explicit parameters.</summary>
      <param name="includePrivateParameters">
        <see langword="true" /> to include private parameters, otherwise, <see langword="false" />.</param>
      <exception cref="T:System.NotSupportedException">A derived class has not provided an implementation.</exception>
      <returns>The exported parameters.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECAlgorithm.GenerateKey(System.Security.Cryptography.ECCurve)">
      <summary>When overridden in a derived class, generates a new public/private keypair for the specified curve.</summary>
      <param name="curve">The curve to use.</param>
      <exception cref="T:System.NotSupportedException">A derived class has not provided an implementation.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECAlgorithm.ImportECPrivateKey(System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public/private keypair from an ECPrivateKey structure, replacing the keys for this object.</summary>
      <param name="source">The bytes of an ECPrivateKey structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <paramref name="source" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.NotSupportedException">A derived class has not provided an implementation for <see cref="M:System.Security.Cryptography.ECAlgorithm.ImportParameters(System.Security.Cryptography.ECParameters)" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <p>
              The contents of <paramref name="source" /> do not represent an
              ASN.1-BER-encoded PKCS#8 ECPrivateKey structure.</p>
        <p>-or-</p>
        <p>The key import failed.</p>
      </exception>
    </member>
    <member name="M:System.Security.Cryptography.ECAlgorithm.ImportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a byte-based password, replacing the keys for this object.</summary>
      <param name="passwordBytes">The bytes to use as a password when decrypting the key material.</param>
      <param name="source">The bytes of a PKCS#8 EncryptedPrivateKeyInfo structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <paramref name="source" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <p>The password is incorrect.</p>
        <p>-or-</p>
        <p>
              The contents of <paramref name="source" /> indicate the Key Derivation Function (KDF)
              to apply is the legacy PKCS#12 KDF, which requires <see langword="char" />-based passwords.</p>
        <p>-or-</p>
        <p>
              The contents of <paramref name="source" /> do not represent an
              ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.</p>
        <p>-or-</p>
        <p>
              The contents of <paramref name="source" /> indicate the key is for
              an algorithm other than the algorithm represented by this instance.</p>
        <p>-or-</p>
        <p>
              The contents of <paramref name="source" /> represent the key in a format
              that is not supported.</p>
        <p>-or-</p>
        <p>The algorithm-specific key import failed.</p>
      </exception>
      <exception cref="T:System.NotSupportedException">A derived class has not provided an implementation for <see cref="M:System.Security.Cryptography.ECAlgorithm.ImportParameters(System.Security.Cryptography.ECParameters)" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECAlgorithm.ImportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a byte-based password, replacing the keys for this object.</summary>
      <param name="password">The password to use when decrypting the key material.</param>
      <param name="source">The bytes of a PKCS#8 EncryptedPrivateKeyInfo structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <paramref name="source" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <p>
              The contents of <paramref name="source" /> do not represent an
              ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.</p>
        <p>-or-</p>
        <p>
              The contents of <paramref name="source" /> indicate the key is for
              an algorithm other than the algorithm represented by this instance.</p>
        <p>-or-</p>
        <p>
              The contents of <paramref name="source" /> represent the key in a format
              that is not supported.</p>
        <p>-or-</p>
        <p>The algorithm-specific key import failed.</p>
      </exception>
      <exception cref="T:System.NotSupportedException">A derived class has not provided an implementation for <see cref="M:System.Security.Cryptography.ECAlgorithm.ImportParameters(System.Security.Cryptography.ECParameters)" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECAlgorithm.ImportFromEncryptedPem(System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Byte})">
      <summary>Imports an encrypted RFC 7468 PEM-encoded private key, replacing the keys for this object.</summary>
      <param name="input">The PEM text of the encrypted key to import.</param>
      <param name="passwordBytes">The bytes to use as a password when decrypting the key material.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="input" /> does not contain a PEM-encoded key with a recognized label.

-or-

<paramref name="input" /> contains multiple PEM-encoded keys with a recognized label.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">

              The password is incorrect.

-or-

The base-64 decoded contents of the PEM text from <paramref name="input" />
              do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.

-or-

The base-64 decoded contents of the PEM text from <paramref name="input" />
              indicate the key is for an algorithm other than the algorithm
              represented by this instance.

-or-

The base-64 decoded contents of the PEM text from <paramref name="input" />
              represent the key in a format that is not supported.

-or-

The algorithm-specific key import failed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECAlgorithm.ImportFromEncryptedPem(System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Char})">
      <summary>Imports an encrypted RFC 7468 PEM-encoded private key, replacing the keys for this object.</summary>
      <param name="input">The PEM text of the encrypted key to import.</param>
      <param name="password">The password to use for decrypting the key material.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="input" /> does not contain a PEM-encoded key with a recognized label.

-or-

<paramref name="input" /> contains multiple PEM-encoded keys with a recognized label.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">

              The password is incorrect.

-or-

The base-64 decoded contents of the PEM text from <paramref name="input" />
              do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.

-or-

The base-64 decoded contents of the PEM text from <paramref name="input" />
              indicate the key is for an algorithm other than the algorithm
              represented by this instance.

-or-

The base-64 decoded contents of the PEM text from <paramref name="input" />
              represent the key in a format that is not supported.

-or-

The algorithm-specific key import failed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECAlgorithm.ImportFromPem(System.ReadOnlySpan{System.Char})">
      <summary>Imports an RFC 7468 PEM-encoded key, replacing the keys for this object.</summary>
      <param name="input">The PEM text of the key to import.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="input" /> does not contain a PEM-encoded key with a recognized label.

-or-

<paramref name="input" /> contains multiple PEM-encoded keys with a recognized label.

-or-

<paramref name="input" /> contains an encrypted PEM-encoded key.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECAlgorithm.ImportParameters(System.Security.Cryptography.ECParameters)">
      <summary>When overridden in a derived class, imports the specified <see cref="T:System.Security.Cryptography.ECParameters" />.</summary>
      <param name="parameters">The curve parameters.</param>
      <exception cref="T:System.NotSupportedException">A derived class has not provided an implementation.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECAlgorithm.ImportPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public/private keypair from a PKCS#8 PrivateKeyInfo structure after decryption, replacing the keys for this object.</summary>
      <param name="source">The bytes of a PKCS#8 PrivateKeyInfo structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <paramref name="source" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.NotSupportedException">A derived class has not provided an implementation for <see cref="M:System.Security.Cryptography.ECAlgorithm.ImportParameters(System.Security.Cryptography.ECParameters)" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <p>
              The contents of <paramref name="source" /> do not represent an ASN.1-BER-encoded
              PKCS#8 PrivateKeyInfo structure.</p>
        <p>-or-</p>
        <p>
              The contents of <paramref name="source" /> indicate the key is for an algorithm
              other than the algorithm represented by this instance.</p>
        <p>-or-</p>
        <p>The contents of <paramref name="source" /> represent the key in a format that is not supported.</p>
        <p>-or-</p>
        <p>
              The algorithm-specific key import failed.</p>
      </exception>
    </member>
    <member name="M:System.Security.Cryptography.ECAlgorithm.ImportSubjectPublicKeyInfo(System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public key from an X.509 SubjectPublicKeyInfo structure after decryption, replacing the keys for this object</summary>
      <param name="source">The bytes of an X.509 SubjectPublicKeyInfo structure in the ASN.1-DER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <paramref name="source" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.NotSupportedException">A derived class has not provided an implementation for <see cref="M:System.Security.Cryptography.ECAlgorithm.ImportParameters(System.Security.Cryptography.ECParameters)" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <p>
              The contents of <paramref name="source" /> do not represent an
              ASN.1-DER-encoded X.509 SubjectPublicKeyInfo structure.</p>
        <p>-or-</p>
        <p>
              The contents of <paramref name="source" /> indicate the key is for an algorithm
            other than the algorithm represented by this instance.</p>
        <p>-or-</p>
        <p>
              The contents of <paramref name="source" /> represent the key in a format that is not supported.</p>
        <p>-or-</p>
        <p>The algorithm-specific key import failed.</p>
      </exception>
    </member>
    <member name="M:System.Security.Cryptography.ECAlgorithm.TryExportECPrivateKey(System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the ECPrivateKey format into a provided buffer.</summary>
      <param name="destination">The byte span to receive the ECPrivateKey data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />.
            This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <exception cref="T:System.NotSupportedException">A derived class has not provided an implementation for <see cref="M:System.Security.Cryptography.ECAlgorithm.ExportParameters(System.Boolean)" />.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECAlgorithm.TryExportECPrivateKeyPem(System.Span{System.Char},System.Int32@)">
      <summary>Attempts to export the current key in the PEM-encoded ECPrivateKey format into a provided buffer.</summary>
      <param name="destination">The character span to receive the PEM-encoded ECPrivateKey data.</param>
      <param name="charsWritten">When this method returns, contains a value that indicates the number of characters written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECAlgorithm.TryExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.PbeParameters,System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the PKCS#8 EncryptedPrivateKeyInfo format into a provided buffer, using a byte-based password.</summary>
      <param name="passwordBytes">The bytes to use as a password when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <param name="destination">The byte span to receive the PKCS#8 EncryptedPrivateKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="pbeParameters" /> is <see langword="null" />.</exception>
      <exception cref="T:System.NotSupportedException">A derived class has not provided an implementation for <see cref="M:System.Security.Cryptography.ECAlgorithm.ExportParameters(System.Boolean)" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <p>
              The key could not be exported.</p>
        <p>-or-</p>
        <p>
          <paramref name="pbeParameters" /> indicates that <see cref="F:System.Security.Cryptography.PbeEncryptionAlgorithm.TripleDes3KeyPkcs12" />
              should be used, which requires <see langword="char" />-based passwords.</p>
      </exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECAlgorithm.TryExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Char},System.Security.Cryptography.PbeParameters,System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the PKCS#8 EncryptedPrivateKeyInfo format into a provided buffer, using a char-based password.</summary>
      <param name="password">The password to use when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <param name="destination">The byte span to receive the PKCS#8 EncryptedPrivateKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="pbeParameters" /> is <see langword="null" />.</exception>
      <exception cref="T:System.NotSupportedException">A derived class has not provided an implementation for <see cref="M:System.Security.Cryptography.ECAlgorithm.ExportParameters(System.Boolean)" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECAlgorithm.TryExportPkcs8PrivateKey(System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the PKCS#8 PrivateKeyInfo format into a provided buffer.</summary>
      <param name="destination">The byte span to receive the PKCS#8 PrivateKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <exception cref="T:System.NotSupportedException">A derived class has not provided an implementation for <see cref="M:System.Security.Cryptography.ECAlgorithm.ExportParameters(System.Boolean)" />.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECAlgorithm.TryExportSubjectPublicKeyInfo(System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the X.509 SubjectPublicKeyInfo format into a provided buffer.</summary>
      <param name="destination">The byte span to receive the X.509 SubjectPublicKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />.
            This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <exception cref="T:System.NotSupportedException">A derived class has not provided an implementation for <see cref="M:System.Security.Cryptography.ECAlgorithm.ExportParameters(System.Boolean)" />.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.ECCurve">
      <summary>Represents an elliptic curve.</summary>
    </member>
    <member name="F:System.Security.Cryptography.ECCurve.A">
      <summary>The first coefficient for an explicit curve. <c>A</c> for short Weierstrass, Montgomery, and Twisted Edwards curves.</summary>
    </member>
    <member name="F:System.Security.Cryptography.ECCurve.B">
      <summary>The second coefficient for an explicit curve. <c>B</c> for short Weierstrass and <c>d</c> for Twisted Edwards curves.</summary>
    </member>
    <member name="F:System.Security.Cryptography.ECCurve.Cofactor">
      <summary>The cofactor of the curve.</summary>
    </member>
    <member name="F:System.Security.Cryptography.ECCurve.CurveType">
      <summary>Identifies the composition of the <see cref="T:System.Security.Cryptography.ECCurve" /> object.</summary>
    </member>
    <member name="F:System.Security.Cryptography.ECCurve.G">
      <summary>The generator, or base point, for operations on the curve.</summary>
    </member>
    <member name="F:System.Security.Cryptography.ECCurve.Hash">
      <summary>The name of the hash algorithm which was used to generate the curve coefficients (<see cref="F:System.Security.Cryptography.ECCurve.A" /> and <see cref="F:System.Security.Cryptography.ECCurve.B" />) from the <see cref="F:System.Security.Cryptography.ECCurve.Seed" /> under the ANSI X9.62 generation algorithm. Applies only to explicit curves.</summary>
    </member>
    <member name="F:System.Security.Cryptography.ECCurve.Order">
      <summary>The order of the curve. Applies only to explicit curves.</summary>
    </member>
    <member name="F:System.Security.Cryptography.ECCurve.Polynomial">
      <summary>The curve polynomial. Applies only to characteristic 2 curves.</summary>
    </member>
    <member name="F:System.Security.Cryptography.ECCurve.Prime">
      <summary>The prime specifying the base field. Applies only to prime curves.</summary>
    </member>
    <member name="F:System.Security.Cryptography.ECCurve.Seed">
      <summary>The seed value for coefficient generation under the ANSI X9.62 generation algorithm. Applies only to explicit curves.</summary>
    </member>
    <member name="M:System.Security.Cryptography.ECCurve.CreateFromFriendlyName(System.String)">
      <summary>Creates a named curve using the specified friendly name of the identifier.</summary>
      <param name="oidFriendlyName">The friendly name of the identifier.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="oidFriendlyName" /> is <see langword="null" />.</exception>
      <returns>An object representing the named curve.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECCurve.CreateFromOid(System.Security.Cryptography.Oid)">
      <summary>Creates a named curve using the specified <see cref="T:System.Security.Cryptography.Oid" /> object.</summary>
      <param name="curveOid">The object identifier to use.</param>
      <returns>An object representing the named curve.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECCurve.CreateFromValue(System.String)">
      <summary>Creates a named curve using the specified dotted-decimal representation of the identifier.</summary>
      <param name="oidValue">The dotted number of the identifier.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="oidValue" /> is <see langword="null" />.</exception>
      <returns>An object representing the named curve.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECCurve.Validate">
      <summary>Validates the integrity of the current curve. Throws a <see cref="T:System.Security.Cryptography.CryptographicException" /> exception if the structure is not valid.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The curve parameters are not valid for the current curve type.</exception>
    </member>
    <member name="P:System.Security.Cryptography.ECCurve.IsCharacteristic2">
      <summary>Gets a value that indicates whether the curve type indicates an explicit characteristic 2 curve.</summary>
      <returns>
        <see langword="true" /> if the curve is an explicit characteristic 2 curve; <see langword="false" /> if the curve is a named characteristic 2, prime, or implicit curve.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECCurve.IsExplicit">
      <summary>Gets a value that indicates whether the curve type indicates an explicit curve (either prime or characteristic 2).</summary>
      <returns>
        <see langword="true" /> if the curve is an explicit curve (either prime or characteristic 2); <see langword="false" /> if the curve is a named or implicit curve.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECCurve.IsNamed">
      <summary>Gets a value that indicates whether the curve type indicates a named curve.</summary>
      <returns>
        <see langword="true" /> if the curve is a named curve; <see langword="false" /> if the curve is an implicit or an explicit curve (either prime or characteristic 2).</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECCurve.IsPrime">
      <summary>Gets a value that indicates whether the curve type indicates an explicit prime curve.</summary>
      <returns>
        <see langword="true" /> if the curve is an explicit prime curve; <see langword="false" /> if the curve is a named prime, characteristic 2 or implicit curves.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECCurve.Oid">
      <summary>Gets the identifier of a named curve.</summary>
      <returns>The identifier of a named curve.</returns>
    </member>
    <member name="T:System.Security.Cryptography.ECCurve.ECCurveType">
      <summary>Indicates how to interpret the data contained in an <see cref="T:System.Security.Cryptography.ECCurve" /> object.</summary>
    </member>
    <member name="F:System.Security.Cryptography.ECCurve.ECCurveType.Characteristic2">
      <summary>The curve parameters represent a characteristic 2 curve.</summary>
    </member>
    <member name="F:System.Security.Cryptography.ECCurve.ECCurveType.Implicit">
      <summary>No curve data is interpreted. The caller is assumed to know what the curve is.</summary>
    </member>
    <member name="F:System.Security.Cryptography.ECCurve.ECCurveType.Named">
      <summary>The curve parameters represent a named curve.</summary>
    </member>
    <member name="F:System.Security.Cryptography.ECCurve.ECCurveType.PrimeMontgomery">
      <summary>The curve parameters represent a prime curve with the formula B*y^2 = x^3 + A*x^2 + x.</summary>
    </member>
    <member name="F:System.Security.Cryptography.ECCurve.ECCurveType.PrimeShortWeierstrass">
      <summary>The curve parameters represent a prime curve with the formula y^2 = x^3 + A*x + B in the prime field P.</summary>
    </member>
    <member name="F:System.Security.Cryptography.ECCurve.ECCurveType.PrimeTwistedEdwards">
      <summary>The curve parameters represent a prime curve with the formula A*x^2 + y^2 = 1 + B*x^2*y^2 in the prime field P.</summary>
    </member>
    <member name="T:System.Security.Cryptography.ECCurve.NamedCurves">
      <summary>Represents a factory class for creating named curves.</summary>
    </member>
    <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP160r1">
      <summary>Gets a brainpoolP160r1 named curve.</summary>
      <returns>A brainpoolP160r1 named curve.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP160t1">
      <summary>Gets a brainpoolP160t1 named curve.</summary>
      <returns>A brainpoolP160t1 named curve.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP192r1">
      <summary>Gets a brainpoolP192r1 named curve.</summary>
      <returns>A brainpoolP192r1 named curve.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP192t1">
      <summary>Gets a brainpoolP192t1 named curve.</summary>
      <returns>A brainpoolP192t1 named curve.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP224r1">
      <summary>Gets a brainpoolP224r1 named curve.</summary>
      <returns>A brainpoolP224r1 named curve.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP224t1">
      <summary>Gets a brainpoolP224t1 named curve.</summary>
      <returns>A brainpoolP224t1 named curve.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP256r1">
      <summary>Gets a brainpoolP256r1 named curve.</summary>
      <returns>A brainpoolP256r1 named curve.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP256t1">
      <summary>Gets a brainpoolP256t1 named curve.</summary>
      <returns>A brainpoolP256t1 named curve.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP320r1">
      <summary>Gets a brainpoolP320r1 named curve.</summary>
      <returns>A brainpoolP320r1 named curve.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP320t1">
      <summary>Gets a brainpoolP320t1 named curve.</summary>
      <returns>A brainpoolP320t1 named curve.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP384r1">
      <summary>Gets a brainpoolP384r1 named curve.</summary>
      <returns>A brainpoolP384r1 named curve.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP384t1">
      <summary>Gets a brainpoolP384t1 named curve.</summary>
      <returns>A brainpoolP384t1 named curve.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP512r1">
      <summary>Gets a brainpoolP512r1 named curve.</summary>
      <returns>A brainpoolP512r1 named curve.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP512t1">
      <summary>Gets a brainpoolP512t1 named curve.</summary>
      <returns>A brainpoolP512t1 named curve.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.nistP256">
      <summary>Gets a nistP256 named curve.</summary>
      <returns>A nistP256 named curve.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.nistP384">
      <summary>Gets a nistP384 named curve.</summary>
      <returns>A nistP384 named curve.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.nistP521">
      <summary>Gets a nistP521 named curve.</summary>
      <returns>A nistP521 named curve.</returns>
    </member>
    <member name="T:System.Security.Cryptography.ECDiffieHellman">
      <summary>Provides an abstract base class that Elliptic Curve Diffie-Hellman (ECDH) algorithm implementations can derive from. This class provides the basic set of operations that all ECDH implementations must support.</summary>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellman.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ECDiffieHellman" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellman.Create">
      <summary>Creates a new instance of the default implementation of the Elliptic Curve Diffie-Hellman (ECDH) algorithm.</summary>
      <returns>A new instance of the default implementation of this class.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellman.Create(System.Security.Cryptography.ECCurve)">
      <summary>Creates a new instance of the default implementation of the Elliptic Curve Diffie-Hellman (ECDH) algorithm with a new public/private key-pair generated over the specified curve.</summary>
      <param name="curve">The curve to use to generate a new public/private key-pair.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="curve" /> does not validate.</exception>
      <returns>A new instance of the default implementation of the Elliptic Curve Diffie-Hellman (ECDH) algorithm.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellman.Create(System.Security.Cryptography.ECParameters)">
      <summary>Creates a new instance of the default implementation of the Elliptic Curve Diffie-Hellman (ECDH) algorithm with the key described by the specified  <see cref="T:System.Security.Cryptography.ECParameters" /> object.</summary>
      <param name="parameters">The parameters  for the elliptic curve cryptography (ECC) algorithm.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="parameters" /> does not validate.</exception>
      <returns>A new instance of the default implementation of the Elliptic Curve Diffie-Hellman (ECDH) algorithm.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellman.Create(System.String)">
      <summary>Creates a new instance of the specified implementation of the Elliptic Curve Diffie-Hellman (ECDH) algorithm.</summary>
      <param name="algorithm">The name of an implementation of the ECDH algorithm.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="algorithm" /> parameter is <see langword="null" />.</exception>
      <returns>A new instance of the specified implementation of this class. If the specified algorithm name does not map to an ECDH implementation, this method returns <see langword="null" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellman.DeriveKeyFromHash(System.Security.Cryptography.ECDiffieHellmanPublicKey,System.Security.Cryptography.HashAlgorithmName,System.Byte[],System.Byte[])">
      <summary>When implemented in a derived class, performs key derivation using a specified hash algorithm with optional prepended or appended data.</summary>
      <param name="otherPartyPublicKey">The other party's public key.</param>
      <param name="hashAlgorithm">The hash algorithm to use to derive the key material.</param>
      <param name="secretPrepend">A value to prepend to the derived secret before hashing.</param>
      <param name="secretAppend">A value to append to the derived secret before hashing.</param>
      <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
      <exception cref="T:System.ArgumentException">The curve used by <paramref name="otherPartyPublicKey" /> has a different size than the curve from this key.

-or-

The <paramref name="hashAlgorithm" /> parameter does not specify a hash.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="otherPartyPublicKey" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The curve used by <paramref name="otherPartyPublicKey" /> is different than the curve from this key.

-or-

This instance represents only a public key.</exception>
      <returns>The hash of the shared secret after prepending or appending data as requested.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellman.DeriveKeyFromHash(System.Security.Cryptography.ECDiffieHellmanPublicKey,System.Security.Cryptography.HashAlgorithmName)">
      <summary>Performs key derivation using a specified hash algorithm.</summary>
      <param name="otherPartyPublicKey">The other party's public key.</param>
      <param name="hashAlgorithm">The hash algorithm to use to derive the key material.</param>
      <exception cref="T:System.ArgumentException">The curve used by <paramref name="otherPartyPublicKey" /> has a different size than the curve from this key.

-or-

The <paramref name="hashAlgorithm" /> parameter does not specify a hash.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="otherPartyPublicKey" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The curve used by <paramref name="otherPartyPublicKey" /> is different than the curve from this key.

-or-

This instance represents only a public key.</exception>
      <returns>The hash of the shared secret.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellman.DeriveKeyFromHmac(System.Security.Cryptography.ECDiffieHellmanPublicKey,System.Security.Cryptography.HashAlgorithmName,System.Byte[],System.Byte[],System.Byte[])">
      <summary>When implemented in a derived class, performs key derivation using a specified HMAC (Hash-based Message Authentication Code) algorithm with optional prepended or appended data.</summary>
      <param name="otherPartyPublicKey">The other party's public key.</param>
      <param name="hashAlgorithm">The hash algorithm to use to derive the key material.</param>
      <param name="hmacKey">The key for the HMAC.</param>
      <param name="secretPrepend">A value to prepend to the derived secret before hashing.</param>
      <param name="secretAppend">A value to append to the derived secret before hashing.</param>
      <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
      <exception cref="T:System.ArgumentException">The curve used by <paramref name="otherPartyPublicKey" /> has a different size than the curve from this key.

-or-

The <paramref name="hashAlgorithm" /> parameter does not specify a hash.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="otherPartyPublicKey" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The curve used by <paramref name="otherPartyPublicKey" /> is different than the curve from this key.

-or-

This instance represents only a public key.</exception>
      <returns>The HMAC of the shared secret after prepending or appending data as requested.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellman.DeriveKeyFromHmac(System.Security.Cryptography.ECDiffieHellmanPublicKey,System.Security.Cryptography.HashAlgorithmName,System.Byte[])">
      <summary>Performs key derivation using a specified HMAC (Hash-based Message Authentication Code) algorithm.</summary>
      <param name="otherPartyPublicKey">The other party's public key.</param>
      <param name="hashAlgorithm">The hash algorithm to use to derive the key material.</param>
      <param name="hmacKey">The key for the HMAC.</param>
      <exception cref="T:System.ArgumentException">The curve used by <paramref name="otherPartyPublicKey" /> has a different size than the curve from this key.

-or-

The <paramref name="hashAlgorithm" /> parameter does not specify a hash.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="otherPartyPublicKey" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The curve used by <paramref name="otherPartyPublicKey" /> is different than the curve from this key.

-or-

This instance represents only a public key.</exception>
      <returns>The HMAC of the shared secret.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellman.DeriveKeyMaterial(System.Security.Cryptography.ECDiffieHellmanPublicKey)">
      <summary>When implemented in a derived class, performs a key derivation on the shared secret.</summary>
      <param name="otherPartyPublicKey">The other party's public key.</param>
      <exception cref="T:System.ArgumentException">The curve used by <paramref name="otherPartyPublicKey" /> has a different size than the curve from this key.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="otherPartyPublicKey" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The curve used by <paramref name="otherPartyPublicKey" /> is different than the curve from this key.

-or-

This instance represents only a public key.</exception>
      <returns>The result of the key derivation function, using the shared secret as an input.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellman.DeriveKeyTls(System.Security.Cryptography.ECDiffieHellmanPublicKey,System.Byte[],System.Byte[])">
      <summary>When implemented in a derived class, performs key derivation using the TLS (Transport Layer Security) 1.1 PRF (Pseudo-Random Function).</summary>
      <param name="otherPartyPublicKey">The other party's public key.</param>
      <param name="prfLabel">The ASCII-encoded PRF label.</param>
      <param name="prfSeed">The 64-byte PRF seed.</param>
      <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
      <exception cref="T:System.ArgumentException">The curve used by <paramref name="otherPartyPublicKey" /> has a different size than the curve from this key.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="otherPartyPublicKey" />, <paramref name="prfLabel" /> or <paramref name="prfSeed" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="prfSeed" /> is not exactly 64 bytes in length.

-or-

The curve used by <paramref name="otherPartyPublicKey" /> is different than the curve from this key.

-or-

This instance represents only a public key.</exception>
      <returns>The first 48 bytes from the TLS 1.1 PRF, using the shared secret as the key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellman.DeriveRawSecretAgreement(System.Security.Cryptography.ECDiffieHellmanPublicKey)">
      <summary>Derive raw key material.</summary>
      <param name="otherPartyPublicKey">The public key of the party with which to derive a mutual secret.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="otherPartyPublicKey" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="otherPartyPublicKey" /> is over a different curve than this key.</exception>
      <exception cref="T:System.NotImplementedException">A derived implementation has not provided an implementation of the method.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The current platform does not support raw key agreement.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>The raw key agreement.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellman.FromXmlString(System.String)">
      <summary>This method throws in all cases.</summary>
      <param name="xmlString">The XML string to use to reconstruct the <see cref="T:System.Security.Cryptography.AsymmetricAlgorithm" /> object.</param>
      <exception cref="T:System.NotImplementedException">In all cases.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellman.ToXmlString(System.Boolean)">
      <summary>This method throws in all cases.</summary>
      <param name="includePrivateParameters">
        <see langword="true" /> to include private parameters; otherwise, <see langword="false" />.</param>
      <exception cref="T:System.NotImplementedException">In all cases.</exception>
      <returns>This method does not return a value.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECDiffieHellman.KeyExchangeAlgorithm">
      <summary>Gets the name of the key exchange algorithm.</summary>
      <returns>The name of the key exchange algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECDiffieHellman.PublicKey">
      <summary>Gets the public key that is being used by the current Elliptic Curve Diffie-Hellman (ECDH) instance.</summary>
      <returns>The public part of the ECDH key pair that is being used by this <see cref="T:System.Security.Cryptography.ECDiffieHellman" /> instance.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECDiffieHellman.SignatureAlgorithm">
      <summary>Gets the name of the signature algorithm.</summary>
      <returns>Always <see langword="null" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.ECDiffieHellmanCng">
      <summary>Provides a Cryptography Next Generation (CNG) implementation of the Elliptic Curve Diffie-Hellman (ECDH) algorithm. This class is used to perform cryptographic operations.</summary>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCng.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ECDiffieHellmanCng" /> class with a random key pair.</summary>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCng.#ctor(System.Int32)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ECDiffieHellmanCng" /> class with a random key pair, using the specified key size.</summary>
      <param name="keySize">The size of the key. Valid key sizes are 256, 384, and 521 bits.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="keySize" /> specifies an invalid length.</exception>
      <exception cref="T:System.PlatformNotSupportedException">Cryptography Next Generation (CNG) classes are not supported on this system.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCng.#ctor(System.Security.Cryptography.CngKey)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ECDiffieHellmanCng" /> class by using the specified <see cref="T:System.Security.Cryptography.CngKey" /> object.</summary>
      <param name="key">The key that will be used as input to the cryptographic operations performed by the current object.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="key" /> does not specify an Elliptic Curve Diffie-Hellman (ECDH) algorithm group.</exception>
      <exception cref="T:System.PlatformNotSupportedException">Cryptography Next Generation (CNG) classes are not supported on this system.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCng.#ctor(System.Security.Cryptography.ECCurve)">
      <summary>Creates a new instance of the <see cref="T:System.Security.Cryptography.ECDiffieHellmanCng" /> class whose public/private key pair is generated over the specified curve.</summary>
      <param name="curve">The curve used to generate the public/private key pair.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="curve" /> does not validate.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCng.DeriveKeyFromHash(System.Security.Cryptography.ECDiffieHellmanPublicKey,System.Security.Cryptography.HashAlgorithmName,System.Byte[],System.Byte[])">
      <summary>Performs key derivation using a specified hash algorithm with optional prepended or appended data.</summary>
      <param name="otherPartyPublicKey">The other party's public key.</param>
      <param name="hashAlgorithm">The hash algorithm to use to derive the key material.</param>
      <param name="secretPrepend">A value to prepend to the derived secret before hashing.</param>
      <param name="secretAppend">A value to append to the derived secret before hashing.</param>
      <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
      <exception cref="T:System.ArgumentException">The curve used by <paramref name="otherPartyPublicKey" /> has a different size than the curve from this key.

-or-

The <paramref name="hashAlgorithm" /> parameter does not specify a hash.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="otherPartyPublicKey" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The curve used by <paramref name="otherPartyPublicKey" /> is different than the curve from this key.

-or-

This instance represents only a public key.</exception>
      <returns>The hash of the shared secret after prepending or appending data as requested.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCng.DeriveKeyFromHmac(System.Security.Cryptography.ECDiffieHellmanPublicKey,System.Security.Cryptography.HashAlgorithmName,System.Byte[],System.Byte[],System.Byte[])">
      <summary>Performs key derivation using a specified HMAC (Hash-based Message Authentication Code) algorithm with optional prepended or appended data.</summary>
      <param name="otherPartyPublicKey">The other party's public key.</param>
      <param name="hashAlgorithm">The hash algorithm to use to derive the key material.</param>
      <param name="hmacKey">The key for the HMAC.</param>
      <param name="secretPrepend">A value to prepend to the derived secret before hashing.</param>
      <param name="secretAppend">A value to append to the derived secret before hashing.</param>
      <exception cref="T:System.ArgumentException">The curve used by <paramref name="otherPartyPublicKey" /> has a different size than the curve from this key.

-or-

The <paramref name="hashAlgorithm" /> parameter does not specify a hash.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="otherPartyPublicKey" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The curve used by <paramref name="otherPartyPublicKey" /> is different than the curve from this key.

-or-

This instance represents only a public key.</exception>
      <returns>The HMAC of the shared secret after prepending or appending data as requested.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCng.DeriveKeyMaterial(System.Security.Cryptography.CngKey)">
      <summary>Derives the key material that is generated from the secret agreement between two parties, given a <see cref="T:System.Security.Cryptography.CngKey" /> object that contains the second party's public key.</summary>
      <param name="otherPartyPublicKey">An object that contains the public part of the Elliptic Curve Diffie-Hellman (ECDH) key from the other party in the key exchange.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="otherPartyPublicKey" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="otherPartyPublicKey" /> is invalid. Either its <see cref="P:System.Security.Cryptography.CngKey.AlgorithmGroup" /> property does not specify <see cref="P:System.Security.Cryptography.CngAlgorithmGroup.ECDiffieHellman" /> or its key size does not match the key size of this instance.</exception>
      <exception cref="T:System.InvalidOperationException">This object's <see cref="P:System.Security.Cryptography.ECDiffieHellmanCng.KeyDerivationFunction" /> property specifies the <see cref="F:System.Security.Cryptography.ECDiffieHellmanKeyDerivationFunction.Tls" /> key derivation function, but either <see cref="P:System.Security.Cryptography.ECDiffieHellmanCng.Label" /> or <see cref="P:System.Security.Cryptography.ECDiffieHellmanCng.Seed" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">All other errors.</exception>
      <returns>A byte array that contains the key material. This information is generated from the secret agreement that is calculated from the current object's private key and the specified public key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCng.DeriveKeyMaterial(System.Security.Cryptography.ECDiffieHellmanPublicKey)">
      <summary>Derives the key material that is generated from the secret agreement between two parties, given an <see cref="T:System.Security.Cryptography.ECDiffieHellmanPublicKey" /> object that contains the second party's public key.</summary>
      <param name="otherPartyPublicKey">The public key from the other party in the key exchange.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="otherPartyPublicKey" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="otherPartyPublicKey" /> is not an <see cref="T:System.Security.Cryptography.ECDiffieHellmanCngPublicKey" /> key.</exception>
      <returns>A byte array that contains the key material. This information is generated from the secret agreement that is calculated from the current object's private key and the specified public key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCng.DeriveKeyTls(System.Security.Cryptography.ECDiffieHellmanPublicKey,System.Byte[],System.Byte[])">
      <summary>Performs key derivation using the TLS (Transport Layer Security) 1.1 PRF (Pseudo-Random Function).</summary>
      <param name="otherPartyPublicKey">The other party's public key.</param>
      <param name="prfLabel">The ASCII-encoded PRF label.</param>
      <param name="prfSeed">The 64-byte PRF seed.</param>
      <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
      <exception cref="T:System.ArgumentException">The curve used by <paramref name="otherPartyPublicKey" /> has a different size than the curve from this key.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="otherPartyPublicKey" />, <paramref name="prfLabel" /> or <paramref name="prfSeed" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="prfSeed" /> is not exactly 64 bytes in length.

-or-

The curve used by <paramref name="otherPartyPublicKey" /> is different than the curve from this key.

-or-

This instance represents only a public key.</exception>
      <returns>The first 48 bytes from the TLS 1.1 PRF, using the shared secret as the key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCng.DeriveSecretAgreementHandle(System.Security.Cryptography.CngKey)">
      <summary>Gets a handle to the secret agreement generated between two parties, given a <see cref="T:System.Security.Cryptography.CngKey" /> object that contains the second party's public key.</summary>
      <param name="otherPartyPublicKey">An object that contains the public part of the Elliptic Curve Diffie-Hellman (ECDH) key from the other party in the key exchange.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="otherPartyPublicKey" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="otherPartyPublicKey" /> is not an ECDH key, or it is not the correct size.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">All other errors.</exception>
      <returns>A handle to the secret agreement. This information is calculated from the current object's private key and the specified public key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCng.DeriveSecretAgreementHandle(System.Security.Cryptography.ECDiffieHellmanPublicKey)">
      <summary>Gets a handle to the secret agreement generated between two parties, given an <see cref="T:System.Security.Cryptography.ECDiffieHellmanPublicKey" /> object that contains the second party's public key.</summary>
      <param name="otherPartyPublicKey">The public key from the other party in the key exchange.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="otherPartyPublicKey" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="otherPartyPublicKey" /> is not an <see cref="T:System.Security.Cryptography.ECDiffieHellmanPublicKey" /> key.</exception>
      <returns>A handle to the secret agreement. This information is calculated from the current object's private key and the specified public key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCng.ExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.PbeParameters)">
      <summary>Exports the current key in the PKCS#8 EncryptedPrivateKeyInfo format with a byte-based password.</summary>
      <param name="passwordBytes">The bytes to use as a password when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <returns>A byte array containing the PKCS#8 EncryptedPrivateKeyInfo representation of this key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCng.ExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Char},System.Security.Cryptography.PbeParameters)">
      <summary>Exports the current key in the PKCS#8 EncryptedPrivateKeyInfo format with a char-based password.</summary>
      <param name="password">The password to use when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <returns>A byte array containing the PKCS#8 EncryptedPrivateKeyInfo representation of this key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCng.ExportExplicitParameters(System.Boolean)">
      <summary>Exports the key and explicit curve parameters used by the <see cref="T:System.Security.Cryptography.ECCurve" /> object into an <see cref="T:System.Security.Cryptography.ECParameters" /> object.</summary>
      <param name="includePrivateParameters">
        <see langword="true" /> to include private parameters; otherwise, <see langword="false" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The method cannot obtain curve values.</exception>
      <exception cref="T:System.PlatformNotSupportedException">Explicit export is not supported by this platform. Windows 10 or higher is required.</exception>
      <returns>The key and explicit curve parameters used by the <see cref="T:System.Security.Cryptography.ECCurve" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCng.ExportParameters(System.Boolean)">
      <summary>Exports the key used by the <see cref="T:System.Security.Cryptography.ECCurve" /> object into an <see cref="T:System.Security.Cryptography.ECParameters" /> object.</summary>
      <param name="includePrivateParameters">
        <see langword="true" /> to include private parameters; otherwise, <see langword="false" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The method cannot obtain curve values.</exception>
      <returns>The key and named curve parameters used by the <see cref="T:System.Security.Cryptography.ECCurve" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCng.FromXmlString(System.String,System.Security.Cryptography.ECKeyXmlFormat)">
      <summary>Deserializes the key information from an XML string by using the specified format.</summary>
      <param name="xml">The XML-based key information to be deserialized.</param>
      <param name="format">One of the enumeration values that specifies the format of the XML string. The only currently accepted format is <see cref="F:System.Security.Cryptography.ECKeyXmlFormat.Rfc4050" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="xml" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="xml" /> is malformed.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="format" /> specifies an invalid format. The only accepted value is <see cref="F:System.Security.Cryptography.ECKeyXmlFormat.Rfc4050" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">All other errors.</exception>
      <exception cref="T:System.PlatformNotSupportedException">.NET Core and .NET 5+: In all cases.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCng.GenerateKey(System.Security.Cryptography.ECCurve)">
      <summary>Generates a new ephemeral public/private key pair for the specified curve.</summary>
      <param name="curve">The curve used to generate an ephemeral public/private key pair.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="curve" /> does not validate.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCng.ImportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a byte-based password, replacing the keys for this object.</summary>
      <param name="passwordBytes">The bytes to use as a password when decrypting the key material.</param>
      <param name="source">The bytes of a PKCS#8 EncryptedPrivateKeyInfo structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <code data-dev-comment-type="paramref">source</code>. This parameter is treated as uninitialized.</param>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCng.ImportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a char-based password, replacing the keys for this object.</summary>
      <param name="password">The password to use for decrypting the key material.</param>
      <param name="source">The bytes of a PKCS#8 EncryptedPrivateKeyInfo structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <code data-dev-comment-type="paramref">source</code>. This parameter is treated as uninitialized.</param>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCng.ImportParameters(System.Security.Cryptography.ECParameters)">
      <summary>Imports the specified parameters for an <see cref="T:System.Security.Cryptography.ECCurve" /> object as a key into the current instance.</summary>
      <param name="parameters">The curve's parameters to import.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="parameters" /> does not validate.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="parameters" /> references a curve that cannot be imported.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="parameters" /> references a curve that is not supported by this platform.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCng.ImportPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public/private keypair from a PKCS#8 PrivateKeyInfo structure after decryption, replacing the keys for this object.</summary>
      <param name="source">The bytes of a PKCS#8 PrivateKeyInfo structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <code data-dev-comment-type="paramref">source</code>. This parameter is treated as uninitialized.</param>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCng.ToXmlString(System.Security.Cryptography.ECKeyXmlFormat)">
      <summary>Serializes the key information to an XML string by using the specified format.</summary>
      <param name="format">One of the enumeration values that specifies the format of the XML string. The only currently accepted format is <see cref="F:System.Security.Cryptography.ECKeyXmlFormat.Rfc4050" />.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="format" /> specifies an invalid format. The only accepted value is <see cref="F:System.Security.Cryptography.ECKeyXmlFormat.Rfc4050" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">.NET Core and .NET 5+: In all cases.</exception>
      <returns>A string object that contains the key information, serialized to an XML string, according to the requested format.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCng.TryExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.PbeParameters,System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the PKCS#8 EncryptedPrivateKeyInfo format into a provided buffer, using a byte-based password.</summary>
      <param name="passwordBytes">The bytes to use as a password when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <param name="destination">The byte span to receive the PKCS#8 EncryptedPrivateKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <code data-dev-comment-type="paramref">destination</code>. This parameter is treated as uninitialized.</param>
      <returns>
        <code data-dev-comment-type="langword">true</code> if <code data-dev-comment-type="paramref">destination</code> is big enough to receive the output; otherwise, <code data-dev-comment-type="langword">false</code>.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCng.TryExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Char},System.Security.Cryptography.PbeParameters,System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the PKCS#8 EncryptedPrivateKeyInfo format into a provided buffer, using a char-based password.</summary>
      <param name="password">The password to use when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <param name="destination">The byte span to receive the PKCS#8 EncryptedPrivateKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <code data-dev-comment-type="paramref">destination</code>. This parameter is treated as uninitialized.</param>
      <returns>
        <code data-dev-comment-type="langword">true</code> if <code data-dev-comment-type="paramref">destination</code> is big enough to receive the output; otherwise, <code data-dev-comment-type="langword">false</code>.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCng.TryExportPkcs8PrivateKey(System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the PKCS#8 PrivateKeyInfo format into a provided buffer.</summary>
      <param name="destination">The byte span to receive the PKCS#8 PrivateKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <code data-dev-comment-type="paramref">destination</code>. This parameter is treated as uninitialized.</param>
      <returns>
        <code data-dev-comment-type="langword">true</code> if <code data-dev-comment-type="paramref">destination</code> is big enough to receive the output; otherwise, <code data-dev-comment-type="langword">false</code>.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECDiffieHellmanCng.HashAlgorithm">
      <summary>Gets or sets the hash algorithm to use when generating key material.</summary>
      <exception cref="T:System.ArgumentNullException">The value is <see langword="null" />.</exception>
      <returns>An object that specifies the hash algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECDiffieHellmanCng.HmacKey">
      <summary>Gets or sets the Hash-based Message Authentication Code (HMAC) key to use when deriving key material.</summary>
      <returns>The Hash-based Message Authentication Code (HMAC) key to use when deriving key material.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECDiffieHellmanCng.Key">
      <summary>Specifies the <see cref="T:System.Security.Cryptography.CngKey" /> that is used by the current object for cryptographic operations.</summary>
      <returns>The key pair used by this object to perform cryptographic operations.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECDiffieHellmanCng.KeyDerivationFunction">
      <summary>Gets or sets the key derivation function for the <see cref="T:System.Security.Cryptography.ECDiffieHellmanCng" /> class.</summary>
      <exception cref="T:System.ArgumentOutOfRangeException">The enumeration value is out of range.</exception>
      <returns>One of the <see cref="T:System.Security.Cryptography.ECDiffieHellmanKeyDerivationFunction" /> enumeration values: <see cref="F:System.Security.Cryptography.ECDiffieHellmanKeyDerivationFunction.Hash" />, <see cref="F:System.Security.Cryptography.ECDiffieHellmanKeyDerivationFunction.Hmac" />, or <see cref="F:System.Security.Cryptography.ECDiffieHellmanKeyDerivationFunction.Tls" />. The default value is <see cref="F:System.Security.Cryptography.ECDiffieHellmanKeyDerivationFunction.Hash" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECDiffieHellmanCng.KeySize">
      <summary>Gets or sets the size, in bits, of the key modulus used by the asymmetric algorithm.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="value" /> is not permitted by <see cref="P:System.Security.Cryptography.AsymmetricAlgorithm.LegalKeySizes" />.</exception>
      <returns>The size, in bits, of the key modulus used by the asymmetric algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECDiffieHellmanCng.Label">
      <summary>Gets or sets the label value that is used for key derivation.</summary>
      <returns>The label value.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECDiffieHellmanCng.LegalKeySizes">
      <summary>Gets the key sizes that are supported by the asymmetric algorithm.</summary>
      <returns>An array that contains the key sizes supported by the asymmetric algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECDiffieHellmanCng.PublicKey">
      <summary>Gets the public key that can be used by another <see cref="T:System.Security.Cryptography.ECDiffieHellmanCng" /> object to generate a shared secret agreement.</summary>
      <returns>The public key that is associated with this instance of the <see cref="T:System.Security.Cryptography.ECDiffieHellmanCng" /> object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECDiffieHellmanCng.SecretAppend">
      <summary>Gets or sets a value that will be appended to the secret agreement when generating key material.</summary>
      <returns>The value that is appended to the secret agreement.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECDiffieHellmanCng.SecretPrepend">
      <summary>Gets or sets a value that will be added to the beginning of the secret agreement when deriving key material.</summary>
      <returns>The value that is appended to the beginning of the secret agreement during key derivation.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECDiffieHellmanCng.Seed">
      <summary>Gets or sets the seed value that will be used when deriving key material.</summary>
      <returns>The seed value.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECDiffieHellmanCng.UseSecretAgreementAsHmacKey">
      <summary>Gets a value that indicates whether the secret agreement is used as a Hash-based Message Authentication Code (HMAC) key to derive key material.</summary>
      <returns>
        <see langword="true" /> if the secret agreement is used as an HMAC key to derive key material; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.ECDiffieHellmanCngPublicKey">
      <summary>Specifies an Elliptic Curve Diffie-Hellman (ECDH) public key for use with the <see cref="T:System.Security.Cryptography.ECDiffieHellmanCng" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCngPublicKey.ExportExplicitParameters">
      <summary>Exports the key and explicit curve parameters used by the <see cref="T:System.Security.Cryptography.ECCurve" /> object into an <see cref="T:System.Security.Cryptography.ECParameters" /> object.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The method cannot obtain curve values.</exception>
      <exception cref="T:System.PlatformNotSupportedException">Explicit export is not supported by this platform. Windows 10 or higher is required.</exception>
      <returns>The key and explicit curve parameters used by the <see cref="T:System.Security.Cryptography.ECCurve" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCngPublicKey.ExportParameters">
      <summary>Exports the key used by the <see cref="T:System.Security.Cryptography.ECCurve" /> object into an <see cref="T:System.Security.Cryptography.ECParameters" /> object.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The method cannot obtain curve values.</exception>
      <returns>The key and named curve parameters used by the <see cref="T:System.Security.Cryptography.ECCurve" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCngPublicKey.FromByteArray(System.Byte[],System.Security.Cryptography.CngKeyBlobFormat)">
      <summary>Converts a byte array that contains a public key to a <see cref="T:System.Security.Cryptography.ECDiffieHellmanCngPublicKey" /> object according to the specified format.</summary>
      <param name="publicKeyBlob">A byte array that contains an Elliptic Curve Diffie-Hellman (ECDH) public key.</param>
      <param name="format">An object that specifies the format of the key BLOB.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="publicKeyBlob" /> or <paramref name="format" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">The <paramref name="publicKeyBlob" /> parameter does not contain an <see cref="T:System.Security.Cryptography.ECDiffieHellman" /> key.</exception>
      <returns>An object that contains the ECDH public key that is serialized in the byte array.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCngPublicKey.FromXmlString(System.String)">
      <summary>Converts an XML string to an <see cref="T:System.Security.Cryptography.ECDiffieHellmanCngPublicKey" /> object.</summary>
      <param name="xml">An XML string that contains an Elliptic Curve Diffie-Hellman (ECDH) key.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="xml" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">The <paramref name="xml" /> parameter does not specify an <see cref="T:System.Security.Cryptography.ECDiffieHellman" /> key.</exception>
      <exception cref="T:System.PlatformNotSupportedException">.NET Core and .NET 5+: In all cases.</exception>
      <returns>An object that contains the ECDH public key that is specified by the given XML.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCngPublicKey.Import">
      <summary>Converts the <see cref="T:System.Security.Cryptography.ECDiffieHellmanCngPublicKey" /> object to a <see cref="T:System.Security.Cryptography.CngKey" /> object.</summary>
      <returns>An object that contains the key represented by the <see cref="T:System.Security.Cryptography.ECDiffieHellmanCngPublicKey" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanCngPublicKey.ToXmlString">
      <summary>Serializes the <see cref="T:System.Security.Cryptography.ECDiffieHellmanCngPublicKey" /> public key to an XML string in RFC 4050 format.</summary>
      <exception cref="T:System.PlatformNotSupportedException">.NET Core and .NET 5+: In all cases.</exception>
      <returns>An XML string that contains the serialized <see cref="T:System.Security.Cryptography.ECDiffieHellmanCngPublicKey" /> public key.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECDiffieHellmanCngPublicKey.BlobFormat">
      <summary>Gets the key BLOB format for a <see cref="T:System.Security.Cryptography.ECDiffieHellmanCngPublicKey" /> object.</summary>
      <returns>The format that the key BLOB is expressed in.</returns>
    </member>
    <member name="T:System.Security.Cryptography.ECDiffieHellmanKeyDerivationFunction">
      <summary>Specifies the key derivation function that the <see cref="T:System.Security.Cryptography.ECDiffieHellmanCng" /> class will use to convert secret agreements into key material.</summary>
    </member>
    <member name="F:System.Security.Cryptography.ECDiffieHellmanKeyDerivationFunction.Hash">
      <summary>A hash algorithm is used to generate key material. The <see cref="P:System.Security.Cryptography.ECDiffieHellmanCng.HashAlgorithm" /> property specifies the name of the algorithm to use. If the algorithm name is not specified, <see cref="T:System.Security.Cryptography.SHA256" /> is used as the default algorithm. You can also specify the <see cref="P:System.Security.Cryptography.ECDiffieHellmanCng.SecretPrepend" /> and <see cref="P:System.Security.Cryptography.ECDiffieHellmanCng.SecretAppend" /> properties, but they are not required. The amount of key material that is generated is equivalent to the size of the hash value for the specified algorithm.</summary>
    </member>
    <member name="F:System.Security.Cryptography.ECDiffieHellmanKeyDerivationFunction.Hmac">
      <summary>A Hash-based Message Authentication Code (HMAC) algorithm is used to generate key material. The <see cref="P:System.Security.Cryptography.ECDiffieHellmanCng.HmacKey" /> property specifies the key to use. Either this property must be set or the <see cref="P:System.Security.Cryptography.ECDiffieHellmanCng.UseSecretAgreementAsHmacKey" /> property must be set to <see langword="true" />; otherwise, a <see cref="T:System.Security.Cryptography.CryptographicException" /> is thrown when you use <see cref="F:System.Security.Cryptography.ECDiffieHellmanKeyDerivationFunction.Hmac" />. If both properties are set, the secret agreement is used as the HMAC key. You can also specify the <see cref="P:System.Security.Cryptography.ECDiffieHellmanCng.SecretPrepend" /> and <see cref="P:System.Security.Cryptography.ECDiffieHellmanCng.SecretAppend" /> properties, but they are not required. The amount of key material that is generated is equivalent to the size of the HMAC value.</summary>
    </member>
    <member name="F:System.Security.Cryptography.ECDiffieHellmanKeyDerivationFunction.Tls">
      <summary>The Transport Layer Security (TLS) protocol is used to generate key material. The <see cref="P:System.Security.Cryptography.ECDiffieHellmanCng.Seed" /> and <see cref="P:System.Security.Cryptography.ECDiffieHellmanCng.Label" /> properties must be set; otherwise, a <see cref="T:System.Security.Cryptography.CryptographicException" /> is thrown when you use <see cref="F:System.Security.Cryptography.ECDiffieHellmanKeyDerivationFunction.Tls" />. This value generates 160 bits of key material.</summary>
    </member>
    <member name="T:System.Security.Cryptography.ECDiffieHellmanOpenSsl">
      <summary>Provides an implementation of the Elliptic Curve Diffie-Hellman (ECDH) algorithm backed by OpenSSL.</summary>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanOpenSsl.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ECDiffieHellmanOpenSsl" /> class with a default curve of NIST P-521/secp521r1.</summary>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanOpenSsl.#ctor(System.Int32)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ECDiffieHellmanOpenSsl" /> class defaulting to the NIST prime curve of the specified size.</summary>
      <param name="keySize">The size of the key to generate, when a key is needed.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The <paramref name="keySize" /> value is not supported by this implementation.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanOpenSsl.#ctor(System.IntPtr)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ECDiffieHellmanOpenSsl" /> class from an existing OpenSSL key represented as an <c>EC_KEY*</c>.</summary>
      <param name="handle">The OpenSSL <c>EC_KEY*</c> value to use as the key.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="handle" /> is <see cref="F:System.IntPtr.Zero" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="handle" /> is not a valid <c>EC_KEY*</c>.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanOpenSsl.#ctor(System.Security.Cryptography.ECCurve)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ECDiffieHellmanOpenSsl" /> class and generates a new key on the specified curve.</summary>
      <param name="curve">The curve used to generate an ephemeral public/private key pair.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="curve" /> does not validate.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanOpenSsl.#ctor(System.Security.Cryptography.SafeEvpPKeyHandle)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ECDiffieHellmanOpenSsl" /> class from an existing OpenSSL key represented as an <c>EVP_PKEY*</c>.</summary>
      <param name="pkeyHandle">The OpenSSL <c>EVP_PKEY*</c> value to use as the key, represented as a <see cref="T:System.Security.Cryptography.SafeEvpPKeyHandle" />.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="pkeyHandle" /> represents an invalid handle.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="pkeyHandle" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="pkeyHandle" /> does not represent a elliptic curve (EC) key.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanOpenSsl.DuplicateKeyHandle">
      <summary>Gets a <see cref="T:System.Security.Cryptography.SafeEvpPKeyHandle" /> representation of the cryptographic key.</summary>
      <returns>A <see cref="T:System.Security.Cryptography.SafeEvpPKeyHandle" /> representation of the cryptographic key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanOpenSsl.ExportParameters(System.Boolean)">
      <summary>Exports the key used by the <see cref="T:System.Security.Cryptography.ECCurve" /> object into an <see cref="T:System.Security.Cryptography.ECParameters" /> object.</summary>
      <param name="includePrivateParameters">
        <see langword="true" /> to include private parameters; otherwise, <see langword="false" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The method cannot obtain curve values.</exception>
      <returns>The key and named curve parameters used by the <see cref="T:System.Security.Cryptography.ECCurve" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanOpenSsl.ImportParameters(System.Security.Cryptography.ECParameters)">
      <summary>Imports the specified parameters for an <see cref="T:System.Security.Cryptography.ECCurve" /> object as a key into the current instance.</summary>
      <param name="parameters">The curve's parameters to import.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="parameters" /> does not validate.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="parameters" /> references a curve that cannot be imported.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="parameters" /> references a curve that is not supported by this platform.</exception>
    </member>
    <member name="P:System.Security.Cryptography.ECDiffieHellmanOpenSsl.PublicKey">
      <summary>Gets the public key that can be used by another <see cref="T:System.Security.Cryptography.ECDiffieHellman" /> object to generate a shared secret agreement.</summary>
      <returns>The public key that is associated with this instance of the <see cref="T:System.Security.Cryptography.ECDiffieHellmanOpenSsl" /> object.</returns>
    </member>
    <member name="T:System.Security.Cryptography.ECDiffieHellmanPublicKey">
      <summary>Provides an abstract base class from which all <see cref="T:System.Security.Cryptography.ECDiffieHellmanCngPublicKey" /> implementations must inherit.</summary>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanPublicKey.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ECDiffieHellmanPublicKey" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanPublicKey.#ctor(System.Byte[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ECDiffieHellmanPublicKey" /> class.</summary>
      <param name="keyBlob">A byte array that represents an <see cref="T:System.Security.Cryptography.ECDiffieHellmanPublicKey" /> object.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="keyBlob" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanPublicKey.Dispose">
      <summary>Releases all resources used by the current instance of the <see cref="T:System.Security.Cryptography.ECDiffieHellman" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanPublicKey.Dispose(System.Boolean)">
      <summary>Releases the unmanaged resources used by the <see cref="T:System.Security.Cryptography.ECDiffieHellman" /> class and optionally releases the managed resources.</summary>
      <param name="disposing">
        <see langword="true" /> to release both managed and unmanaged resources; <see langword="false" /> to release only unmanaged resources.</param>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanPublicKey.ExportExplicitParameters">
      <summary>When overridden in a derived class, exports the explicit <see cref="T:System.Security.Cryptography.ECParameters" /> for an <see cref="T:System.Security.Cryptography.ECCurve" /> object.</summary>
      <exception cref="T:System.NotSupportedException">A derived class must override this method.</exception>
      <returns>An object that represents the point on the curve for this key, using the explicit curve format.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanPublicKey.ExportParameters">
      <summary>When overridden in a derived class, exports the named or explicit <see cref="T:System.Security.Cryptography.ECParameters" /> for an <see cref="T:System.Security.Cryptography.ECCurve" /> object.</summary>
      <exception cref="T:System.NotSupportedException">A derived class must override this method.</exception>
      <returns>An object that represents the point on the curve for this key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanPublicKey.ExportSubjectPublicKeyInfo">
      <summary>Exports the current key in the X.509 SubjectPublicKeyInfo format.</summary>
      <exception cref="T:System.NotSupportedException">The member <see cref="M:System.Security.Cryptography.ECDiffieHellmanPublicKey.ExportParameters" /> has not been overridden in a derived class.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key is invalid and could not be exported.</exception>
      <returns>A byte array containing the X.509 SubjectPublicKeyInfo representation of this key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanPublicKey.ToByteArray">
      <summary>Serializes the <see cref="T:System.Security.Cryptography.ECDiffieHellmanPublicKey" /> key BLOB to a byte array.</summary>
      <exception cref="T:System.PlatformNotSupportedException">Linux and macOS: In all cases.</exception>
      <returns>A byte array that contains the serialized Elliptic Curve Diffie-Hellman (ECDH) public key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanPublicKey.ToXmlString">
      <summary>Serializes the <see cref="T:System.Security.Cryptography.ECDiffieHellmanPublicKey" /> public key to an XML string.</summary>
      <exception cref="T:System.PlatformNotSupportedException">.NET Core and .NET 5+: In all cases.</exception>
      <returns>An XML string that contains the serialized Elliptic Curve Diffie-Hellman (ECDH) public key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDiffieHellmanPublicKey.TryExportSubjectPublicKeyInfo(System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the X.509 SubjectPublicKeyInfo format.</summary>
      <param name="destination">The byte span to receive the X.509 SubjectPublicKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />.
            This parameter is treated as uninitialized.</param>
      <exception cref="T:System.NotSupportedException">The member <see cref="M:System.Security.Cryptography.ECDiffieHellmanPublicKey.ExportParameters" /> has not been overridden in a derived class.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key is invalid and could not be exported.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.ECDsa">
      <summary>Provides an abstract base class that encapsulates the Elliptic Curve Digital Signature Algorithm (ECDSA).</summary>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ECDsa" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.Create">
      <summary>Creates a new instance of the default implementation of the Elliptic Curve Digital Signature Algorithm (ECDSA).</summary>
      <returns>A new instance of the default implementation (<see cref="T:System.Security.Cryptography.ECDsaCng" />) of this class.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.Create(System.Security.Cryptography.ECCurve)">
      <summary>Creates a new instance of the default implementation of the Elliptic Curve Digital Signature Algorithm (ECDSA) with a newly generated key over the specified curve.</summary>
      <param name="curve">The curve to use for key generation.</param>
      <returns>A new instance of the default implementation (<see cref="T:System.Security.Cryptography.ECDsaCng" />) of this class.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.Create(System.Security.Cryptography.ECParameters)">
      <summary>Creates a new instance of the default implementation of the Elliptic Curve Digital Signature Algorithm (ECDSA) using the specified parameters as the key.</summary>
      <param name="parameters">The parameters representing the key to use.</param>
      <returns>A new instance of the default implementation (<see cref="T:System.Security.Cryptography.ECDsaCng" />) of this class.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.Create(System.String)">
      <summary>Creates a new instance of the specified implementation of the Elliptic Curve Digital Signature Algorithm (ECDSA).</summary>
      <param name="algorithm">The name of an ECDSA implementation. The following strings all refer to the same implementation, which is the only implementation currently supported in the .NET Framework:  
  
- "ECDsa"  
  
- "ECDsaCng"  
  
- "System.Security.Cryptography.ECDsaCng"  
  
 You can also provide the name of a custom ECDSA implementation.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="algorithm" /> parameter is <see langword="null" />.</exception>
      <returns>A new instance of the specified implementation of this class. If the specified algorithm name does not map to an ECDSA implementation, this method returns <see langword="null" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.FromXmlString(System.String)">
      <summary>This method throws in all cases.</summary>
      <param name="xmlString">The XML string to use to reconstruct the <see cref="T:System.Security.Cryptography.AsymmetricAlgorithm" /> object.</param>
      <exception cref="T:System.NotImplementedException">In all cases.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.GetMaxSignatureSize(System.Security.Cryptography.DSASignatureFormat)">
      <summary>Gets the largest size, in bytes, for a signature produced by this key in the indicated format.</summary>
      <param name="signatureFormat">The encoding format for a signature.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.</exception>
      <returns>The largest size, in bytes, for a signature produced by this key in the indicated format.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.HashData(System.Byte[],System.Int32,System.Int32,System.Security.Cryptography.HashAlgorithmName)">
      <summary>When overridden in a derived class, computes the hash value of the specified portion of a byte array by using the specified hashing algorithm.</summary>
      <param name="data">The data to be hashed.</param>
      <param name="offset">The index of the first byte in <paramref name="data" /> to be hashed.</param>
      <param name="count">The number of bytes to hash.</param>
      <param name="hashAlgorithm">The algorithm to use to hash the data.</param>
      <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
      <returns>The hashed data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.HashData(System.IO.Stream,System.Security.Cryptography.HashAlgorithmName)">
      <summary>When overridden in a derived class, computes the hash value of the specified binary stream by using the specified hashing algorithm.</summary>
      <param name="data">The binary stream to hash.</param>
      <param name="hashAlgorithm">The algorithm to use to hash the data.</param>
      <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
      <returns>The hashed data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.SignData(System.Byte[],System.Int32,System.Int32,System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat)">
      <summary>Computes the hash value of the specified data and signs it using the specified signature format.</summary>
      <param name="data">The data to sign.</param>
      <param name="offset">The offset into <paramref name="data" /> at which to begin hashing.</param>
      <param name="count">The number of bytes to read from <paramref name="data" />.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <param name="signatureFormat">The encoding format to use for the signature.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.
 
 -or- 
 
 <paramref name="offset" /> is less than zero.
 
 -or- 
 
 <paramref name="count" /> is less than zero.
 
 -or- 
 
 <paramref name="offset" /> + <paramref name="count" /> - 1 results in an index that is beyond the upper bound of <paramref name="data" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see langword="null" /> or empty <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the hashing or signing operation.</exception>
      <returns>The ECDSA signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.SignData(System.Byte[],System.Int32,System.Int32,System.Security.Cryptography.HashAlgorithmName)">
      <summary>Computes the hash value of a portion of the specified byte array using the specified hash algorithm and signs the resulting hash value.</summary>
      <param name="data">The input data for which to compute the hash.</param>
      <param name="offset">The offset into the array at which to begin using data.</param>
      <param name="count">The number of bytes in the array to use as data.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="offset" /> is less than zero.  
  
 -or-  
  
 <paramref name="count" /> is less than zero.  
  
 -or-  
  
 <paramref name="offset" /> + <paramref name="count" /> - 1 results in an index that is beyond the upper bound of <paramref name="data" />.</exception>
      <returns>The ECDSA signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.SignData(System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat)">
      <summary>Computes the hash value of the specified data and signs it using the specified signature format.</summary>
      <param name="data">The data to sign.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <param name="signatureFormat">The encoding format to use for the signature.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see langword="null" /> or empty <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the hashing or signing operation.</exception>
      <returns>The ECDSA signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.SignData(System.Byte[],System.Security.Cryptography.HashAlgorithmName)">
      <summary>Computes the hash value of the specified byte array using the specified hash algorithm and signs the resulting hash value.</summary>
      <param name="data">The input data for which to compute the hash.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <returns>The ECDSA signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.SignData(System.IO.Stream,System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat)">
      <summary>Computes the hash value of the specified data and signs it using the specified signature format.</summary>
      <param name="data">The data to sign.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <param name="signatureFormat">The encoding format to use for the signature.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see langword="null" /> or empty <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the hashing or signing operation.</exception>
      <returns>The ECDSA signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.SignData(System.IO.Stream,System.Security.Cryptography.HashAlgorithmName)">
      <summary>Computes the hash value of the specified stream using the specified hash algorithm and signs the resulting hash value.</summary>
      <param name="data">The input stream for which to compute the hash.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <returns>The ECDSA signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.SignData(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat)">
      <summary>Computes the hash value of the specified data and signs it using the specified signature format.</summary>
      <param name="data">The data to hash and sign.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <param name="signatureFormat">The encoding format to use for the signature.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />'s <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is an empty string.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="hashAlgorithm" />'s <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.</exception>
      <returns>The ECDSA signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.SignData(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.HashAlgorithmName)">
      <summary>Computes the hash value of the specified data and signs it.</summary>
      <param name="data">The data to hash and sign.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />'s <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is an empty string.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="hashAlgorithm" />'s <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" />.</exception>
      <returns>The ECDSA signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.SignData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat)">
      <summary>Computes the hash value of the specified data and signs it in the indicated format into the provided buffer.</summary>
      <param name="data">The data to hash and sign.</param>
      <param name="destination">The buffer to receive the signature.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <param name="signatureFormat">The encoding format to use for the signature.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />'s <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is an empty string.

-or-

The buffer in <paramref name="destination" /> is too small to hold the signature.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="hashAlgorithm" />'s <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.SignData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName)">
      <summary>Computes the hash value of the specified data and signs it in the indicated format into the provided buffer.</summary>
      <param name="data">The data to hash and sign.</param>
      <param name="destination">The buffer to receive the signature.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />'s <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is an empty string.

-or-

The buffer in <paramref name="destination" /> is too small to hold the signature.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="hashAlgorithm" />'s <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" />.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.SignDataCore(System.IO.Stream,System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat)">
      <summary>Computes the hash value of the specified data and signs it using the specified signature format.</summary>
      <param name="data">The data to sign.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <param name="signatureFormat">The encoding format to use for the signature.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the hashing or signing operation.</exception>
      <returns>The ECDSA signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.SignDataCore(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat)">
      <summary>Computes the hash value of the specified data and signs it using the specified signature format.</summary>
      <param name="data">The data to sign.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <param name="signatureFormat">The encoding format to use for the signature.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the hashing or signing operation.</exception>
      <returns>The ECDSA signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.SignHash(System.Byte[],System.Security.Cryptography.DSASignatureFormat)">
      <summary>Computes the ECDSA signature for the specified hash value in the indicated format.</summary>
      <param name="hash">The hash value to sign.</param>
      <param name="signatureFormat">The encoding format to use for the signature.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="hash" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the signing operation.</exception>
      <returns>The ECDSA signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.SignHash(System.Byte[])">
      <summary>Generates a digital signature for the specified hash value.</summary>
      <param name="hash">The hash value of the data that is being signed.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="hash" /> parameter is <see langword="null" />.</exception>
      <returns>A digital signature for the specified hash value.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.SignHash(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.DSASignatureFormat)">
      <summary>Computes the ECDSA signature for the specified hash value in the indicated format.</summary>
      <param name="hash">The hash value of the data that is being signed.</param>
      <param name="signatureFormat">The encoding format to use for the signature.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the signing operation.</exception>
      <returns>A digital signature for the specified hash value.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.SignHash(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.DSASignatureFormat)">
      <summary>Computes the ECDSA signature for the specified hash value in the indicated format into the provided buffer.</summary>
      <param name="hash">The hash value of the data that is being signed.</param>
      <param name="destination">The buffer to receive the signature.</param>
      <param name="signatureFormat">The encoding format to use for the signature.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the signing operation.</exception>
      <exception cref="T:System.ArgumentException">The buffer in <paramref name="destination" /> is too small to hold the signature.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.SignHash(System.ReadOnlySpan{System.Byte},System.Span{System.Byte})">
      <summary>Computes the ECDSA signature for the specified hash value into the provided buffer.</summary>
      <param name="hash">The hash value of the data that is being signed.</param>
      <param name="destination">The buffer to receive the signature.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the signing operation.</exception>
      <exception cref="T:System.ArgumentException">The buffer in <paramref name="destination" /> is too small to hold the signature.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.SignHash(System.ReadOnlySpan{System.Byte})">
      <summary>Computes the ECDSA signature for the specified hash value.</summary>
      <param name="hash">The hash value of the data that is being signed.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the signing operation.</exception>
      <returns>A digital signature for the specified hash value.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.SignHashCore(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.DSASignatureFormat)">
      <summary>Computes the ECDSA signature for the specified hash value in the indicated format.</summary>
      <param name="hash">The hash value to sign.</param>
      <param name="signatureFormat">The encoding format to use for the signature.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the signing operation.</exception>
      <returns>The ECDSA signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.ToXmlString(System.Boolean)">
      <summary>This method throws in all cases.</summary>
      <param name="includePrivateParameters">
        <see langword="true" /> to include private parameters; otherwise, <see langword="false" />.</param>
      <exception cref="T:System.NotImplementedException">In all cases.</exception>
      <returns>This method does not return a value.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.TryHashData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Int32@)">
      <summary>Attempts to compute the hash value of the specified read-only span of bytes into the provided destination by using the specified hashing algorithm.</summary>
      <param name="data">The data to be hashed.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <param name="hashAlgorithm">The algorithm to use to hash the data.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <returns>
        <see langword="false" /> if <paramref name="destination" /> is not long enough to receive the hash value.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.TrySignData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Int32@)">
      <summary>Attempts to compute the ECDSA digital signature for the specified read-only span of bytes into the provided destination by using the specified hashing algorithm and the current key.</summary>
      <param name="data">The data to be signed.</param>
      <param name="destination">The buffer to receive the signature.</param>
      <param name="hashAlgorithm">The algorithm to use to hash the data for signing.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <returns>
        <see langword="false" /> if <paramref name="destination" /> is not long enough to receive the signature.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.TrySignData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat,System.Int32@)">
      <summary>Attempts to create the ECDSA signature for the specified data in the indicated format into the provided buffer.</summary>
      <param name="data">The data to hash and sign.</param>
      <param name="destination">The buffer to receive the signature.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <param name="signatureFormat">The encoding format to use for the signature.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see langword="null" /> or empty <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the signing operation.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the signature; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.TrySignDataCore(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat,System.Int32@)">
      <summary>Attempts to create the ECDSA signature for the specified data in the indicated format into the provided buffer.</summary>
      <param name="data">The data to hash and sign.</param>
      <param name="destination">The buffer to receive the signature.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <param name="signatureFormat">The encoding format to use for the signature.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the signing operation.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the signature; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.TrySignHash(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to compute the ECDSA digital signature for the specified read-only span of bytes representing a data hash into the provided destination by using the current key.</summary>
      <param name="hash">The hash value of the data that is being signed.</param>
      <param name="destination">The buffer to receive the signature.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <returns>
        <see langword="false" /> if <paramref name="destination" /> is not long enough to receive the signature.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.TrySignHash(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.DSASignatureFormat,System.Int32@)">
      <summary>Attempts to create the ECDSA signature for the specified hash value in the indicated format into the provided buffer.</summary>
      <param name="hash">The hash value to sign.</param>
      <param name="destination">The buffer to receive the signature.</param>
      <param name="signatureFormat">The encoding format to use for the signature.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the signing operation.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the signature; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.TrySignHashCore(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.DSASignatureFormat,System.Int32@)">
      <summary>Attempts to create the ECDSA signature for the specified hash value in the indicated format into the provided buffer.</summary>
      <param name="hash">The hash value to sign.</param>
      <param name="destination">The buffer to receive the signature.</param>
      <param name="signatureFormat">The encoding format to use for the signature.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the signing operation.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the signature; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.VerifyData(System.Byte[],System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat)">
      <summary>Verifies that a digital signature is valid for the provided data.</summary>
      <param name="data">The signed data.</param>
      <param name="signature">The signature to verify.</param>
      <param name="hashAlgorithm">The hash algorithm used to hash the data for the verification process.</param>
      <param name="signatureFormat">The encoding format for <paramref name="signature" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> or <paramref name="signature" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see langword="null" /> or empty <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the hashing or verification operation.</exception>
      <returns>
        <see langword="true" /> if the digital signature is valid for the provided data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.VerifyData(System.Byte[],System.Byte[],System.Security.Cryptography.HashAlgorithmName)">
      <summary>Verifies that a digital signature is appropriate for the current key and provided data with a specified hash algorithm.</summary>
      <param name="data">The signed data.</param>
      <param name="signature">The signature data to be verified.</param>
      <param name="hashAlgorithm">The hash algorithm used to create the hash value of the data.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.  
  
 -or-  
  
 <paramref name="signature" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <returns>
        <see langword="true" /> if the signature is valid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.VerifyData(System.Byte[],System.Int32,System.Int32,System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat)">
      <summary>Verifies that a digital signature is valid for the provided data.</summary>
      <param name="data">An array that contains the signed data.</param>
      <param name="offset">The starting index of the signed portion of <paramref name="data" />.</param>
      <param name="count">The number of bytes in <paramref name="data" /> that were signed.</param>
      <param name="signature">The signature to verify.</param>
      <param name="hashAlgorithm">The hash algorithm used to hash the data for the verification process.</param>
      <param name="signatureFormat">The encoding format for <paramref name="signature" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> or <paramref name="signature" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.
 
 -or- 
 
 <paramref name="offset" /> is less than zero.
 
 -or- 
 
 <paramref name="count" /> is less than zero.
 
 -or- 
 
 <paramref name="offset" /> + <paramref name="count" /> - 1 results in an index that is beyond the upper bound of <paramref name="data" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see langword="null" /> or empty <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the hashing or verification operation.</exception>
      <returns>
        <see langword="true" /> if the digital signature is valid for the provided data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.VerifyData(System.Byte[],System.Int32,System.Int32,System.Byte[],System.Security.Cryptography.HashAlgorithmName)">
      <summary>Verifies that a digital signature is appropriate for the current key and provided portion of data with a specified hash algorithm.</summary>
      <param name="data">The signed data.</param>
      <param name="offset">The starting index at which to compute the hash.</param>
      <param name="count">The number of bytes to hash.</param>
      <param name="signature">The signature data to be verified.</param>
      <param name="hashAlgorithm">The hash algorithm used to create the hash value of the data.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.  
  
 -or-  
  
 <paramref name="signature" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="offset" /> is less than zero.  
  
 -or-  
  
 <paramref name="count" /> is less than zero.  
  
 -or-  
  
 <paramref name="offset" /> + <paramref name="count" /> - 1 results in an index that is beyond the upper bound of <paramref name="data" />.</exception>
      <returns>
        <see langword="true" /> if the signature is valid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.VerifyData(System.IO.Stream,System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat)">
      <summary>Verifies that a digital signature is valid for the provided data.</summary>
      <param name="data">The signed data.</param>
      <param name="signature">The signature to verify.</param>
      <param name="hashAlgorithm">The hash algorithm used to hash the data for the verification process.</param>
      <param name="signatureFormat">The encoding format for <paramref name="signature" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> or <paramref name="signature" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see langword="null" /> or empty <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the hashing or verification operation.</exception>
      <returns>
        <see langword="true" /> if the digital signature is valid for the provided data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.VerifyData(System.IO.Stream,System.Byte[],System.Security.Cryptography.HashAlgorithmName)">
      <summary>Verifies that a digital signature is appropriate for the current key and provided data with a specified hash algorithm.</summary>
      <param name="data">The signed data.</param>
      <param name="signature">The signature data to be verified.</param>
      <param name="hashAlgorithm">The hash algorithm used to create the hash value of the data.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.  
  
 -or-  
  
 <paramref name="signature" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <returns>
        <see langword="true" /> if the signature is valid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.VerifyData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat)">
      <summary>Verifies that a digital signature is valid for the provided data.</summary>
      <param name="data">The signed data.</param>
      <param name="signature">The signature to verify.</param>
      <param name="hashAlgorithm">The hash algorithm used to hash the data for the verification process.</param>
      <param name="signatureFormat">The encoding format for <paramref name="signature" />.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the hashing or verification operation.</exception>
      <returns>
        <see langword="true" /> if the digital signature is valid for the provided data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.VerifyData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Security.Cryptography.HashAlgorithmName)">
      <summary>Verifies that a digital signature is appropriate for the current key and provided data with a specified hash algorithm.</summary>
      <param name="data">The signed data.</param>
      <param name="signature">The signature to be verified.</param>
      <param name="hashAlgorithm">The hash algorithm used to create the hash value of the data.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <returns>
        <see langword="true" /> if the signature is valid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.VerifyDataCore(System.IO.Stream,System.ReadOnlySpan{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat)">
      <summary>Verifies that a digital signature is valid for the provided data.</summary>
      <param name="data">The signed data.</param>
      <param name="signature">The signature to verify.</param>
      <param name="hashAlgorithm">The hash algorithm used to hash the data for the verification process.</param>
      <param name="signatureFormat">The encoding format for <paramref name="signature" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the hashing or verification operation.</exception>
      <returns>
        <see langword="true" /> if the digital signature is valid for the provided data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.VerifyDataCore(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.DSASignatureFormat)">
      <summary>Verifies that a digital signature is valid for the provided data.</summary>
      <param name="data">The signed data.</param>
      <param name="signature">The signature to verify.</param>
      <param name="hashAlgorithm">The hash algorithm used to hash the data for the verification process.</param>
      <param name="signatureFormat">The encoding format for <paramref name="signature" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the hashing or verification operation.</exception>
      <returns>
        <see langword="true" /> if the digital signature is valid for the provided data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.VerifyHash(System.Byte[],System.Byte[],System.Security.Cryptography.DSASignatureFormat)">
      <summary>Verifies that a digital signature is valid for the provided hash.</summary>
      <param name="hash">The signed hash.</param>
      <param name="signature">The signature to verify.</param>
      <param name="signatureFormat">The encoding format for <paramref name="signature" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="hash" /> or <paramref name="signature" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the verification operation.</exception>
      <returns>
        <see langword="true" /> if the digital signature is valid for the provided data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.VerifyHash(System.Byte[],System.Byte[])">
      <summary>Verifies that a digital signature is appropriate for the current key and provided data hash.</summary>
      <param name="hash">The hash value of the data to be verified.</param>
      <param name="signature">The digital signature of the data to be verified against the hash value.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="hash" /> or <paramref name="signature" /> is <see langword="null" />.</exception>
      <returns>
        <see langword="true" /> if the signature is valid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.VerifyHash(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Security.Cryptography.DSASignatureFormat)">
      <summary>Verifies that a digital signature is valid for the provided hash.</summary>
      <param name="hash">The signed hash.</param>
      <param name="signature">The signature to verify.</param>
      <param name="signatureFormat">The encoding format for <paramref name="signature" />.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="signatureFormat" /> is not a known format.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the verification operation.</exception>
      <returns>
        <see langword="true" /> if the digital signature is valid for the provided data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.VerifyHash(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Verifies that a digital signature is appropriate for the current key and provided data hash.</summary>
      <param name="hash">The hash value of the data to be verified.</param>
      <param name="signature">The digital signature of the data to be verified against the hash value.</param>
      <returns>
        <see langword="true" /> if the signature is valid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsa.VerifyHashCore(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Security.Cryptography.DSASignatureFormat)">
      <summary>Verifies that a digital signature is valid for the provided hash.</summary>
      <param name="hash">The signed hash.</param>
      <param name="signature">The signature to verify.</param>
      <param name="signatureFormat">The encoding format for <paramref name="signature" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred in the verification operation.</exception>
      <returns>
        <see langword="true" /> if the digital signature is valid for the provided data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECDsa.KeyExchangeAlgorithm">
      <summary>Gets the name of the key exchange algorithm.</summary>
      <returns>Always <see langword="null" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECDsa.SignatureAlgorithm">
      <summary>Gets the name of the signature algorithm.</summary>
      <returns>The string "ECDsa".</returns>
    </member>
    <member name="T:System.Security.Cryptography.ECDsaCng">
      <summary>Provides a Cryptography Next Generation (CNG) implementation of the Elliptic Curve Digital Signature Algorithm (ECDSA).</summary>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ECDsaCng" /> class with a random key pair.</summary>
      <exception cref="T:System.PlatformNotSupportedException">Cryptography Next Generation (CNG) classes are not supported on this system.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.#ctor(System.Int32)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ECDsaCng" /> class with a specified target key size.</summary>
      <param name="keySize">The size of the key. Valid key sizes are 256, 384, and 521 bits.</param>
      <exception cref="T:System.PlatformNotSupportedException">Cryptography Next Generation (CNG) classes are not supported on this system.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="keySize" /> specifies an invalid length.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.#ctor(System.Security.Cryptography.CngKey)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ECDsaCng" /> class by using the specified <see cref="T:System.Security.Cryptography.CngKey" /> object.</summary>
      <param name="key">The key that will be used as input to the cryptographic operations performed by the current object.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="key" /> does not specify an Elliptic Curve Digital Signature Algorithm (ECDSA) group.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">Cryptography Next Generation (CNG) classes are not supported on this system.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.#ctor(System.Security.Cryptography.ECCurve)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ECDsaCng" /> class whose public/private key pair is generated over the specified curve.</summary>
      <param name="curve">The curve used to generate the public/private key pair.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="curve" /> does not validate.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="curve" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">if <paramref name="curve" /> does not contain an Oid with a FriendlyName.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.ExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.PbeParameters)">
      <summary>Exports the current key in the PKCS#8 EncryptedPrivateKeyInfo format with a byte-based password.</summary>
      <param name="passwordBytes">The bytes to use as a password when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <returns>A byte array containing the PKCS#8 EncryptedPrivateKeyInfo representation of this key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.ExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Char},System.Security.Cryptography.PbeParameters)">
      <summary>Exports the current key in the PKCS#8 EncryptedPrivateKeyInfo format with a char-based password.</summary>
      <param name="password">The password to use when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <returns>A byte array containing the PKCS#8 EncryptedPrivateKeyInfo representation of this key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.ExportExplicitParameters(System.Boolean)">
      <summary>Exports the key and explicit curve parameters used by the Elliptic curve cryptography (ECC) object into an <see cref="T:System.Security.Cryptography.ECParameters" /> object.</summary>
      <param name="includePrivateParameters">
        <see langword="true" /> to include private parameters; otherwise, <see langword="false" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred while obtaining the curve values.</exception>
      <exception cref="T:System.PlatformNotSupportedException">Explicit export is not supported by this platform. Windows 10 or higher is required.</exception>
      <returns>The key and explicit curve parameters used by the ECC object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.ExportParameters(System.Boolean)">
      <summary>Exports the key used by the Elliptic curve cryptography (ECC) object into an <see cref="T:System.Security.Cryptography.ECParameters" /> object. If the key was created as a named curve, the <see cref="F:System.Security.Cryptography.ECParameters.Curve" /> field contains named curve parameters; otherwise, it contains explicit parameters.</summary>
      <param name="includePrivateParameters">
        <see langword="true" /> to include private parameters; otherwise, <see langword="false" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred while obtaining the curve values.</exception>
      <returns>The key and named curve parameters used by the ECC object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.FromXmlString(System.String,System.Security.Cryptography.ECKeyXmlFormat)">
      <summary>Deserializes the key information from an XML string by using the specified format.</summary>
      <param name="xml">The XML-based key information to be deserialized.</param>
      <param name="format">One of the enumeration values that specifies the format of the XML string. The only currently accepted format is <see cref="F:System.Security.Cryptography.ECKeyXmlFormat.Rfc4050" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="xml" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="format" /> specifies an invalid format. The only accepted value is <see cref="F:System.Security.Cryptography.ECKeyXmlFormat.Rfc4050" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">All other errors.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.GenerateKey(System.Security.Cryptography.ECCurve)">
      <summary>Generates a new ephemeral public/private key pair for the specified curve, replacing the current key.</summary>
      <param name="curve">The curve to use to generate the key.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="curve" /> does not validate.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.ImportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a byte-based password, replacing the keys for this object.</summary>
      <param name="passwordBytes">The bytes to use as a password when decrypting the key material.</param>
      <param name="source">The bytes of a PKCS#8 EncryptedPrivateKeyInfo structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <code data-dev-comment-type="paramref">source</code>. This parameter is treated as uninitialized.</param>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.ImportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a char-based password, replacing the keys for this object.</summary>
      <param name="password">The password to use for decrypting the key material.</param>
      <param name="source">The bytes of a PKCS#8 EncryptedPrivateKeyInfo structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <code data-dev-comment-type="paramref">source</code>. This parameter is treated as uninitialized.</param>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.ImportParameters(System.Security.Cryptography.ECParameters)">
      <summary>Replaces the existing key that the current instance is working with by creating a new <see cref="T:System.Security.Cryptography.CngKey" /> for the parameters structure.</summary>
      <param name="parameters">The curve parameters.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="parameters" /> does not contain valid values.</exception>
      <exception cref="T:System.NotSupportedException">
        <paramref name="parameters" /> references a curve that cannot be imported.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="parameters" /> references a curve that is not supported by this platform.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.ImportPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public/private keypair from a PKCS#8 PrivateKeyInfo structure after decryption, replacing the keys for this object.</summary>
      <param name="source">The bytes of a PKCS#8 PrivateKeyInfo structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <code data-dev-comment-type="paramref">source</code>. This parameter is treated as uninitialized.</param>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.SignData(System.Byte[],System.Int32,System.Int32)">
      <summary>Generates a digital signature for the specified length of data, beginning at the specified offset.</summary>
      <param name="data">The message data to be signed.</param>
      <param name="offset">The location in the string at which to start signing.</param>
      <param name="count">The length of the string, in characters, following <paramref name="offset" /> that will be signed.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="count" /> or <paramref name="offset" /> caused reading outside the bounds of the data string.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key information that is associated with the instance does not have a private key.</exception>
      <returns>A digital signature for the specified length of data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.SignData(System.Byte[])">
      <summary>Generates a signature for the specified data.</summary>
      <param name="data">The message data to be signed.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key information that is associated with the instance does not have a private key.</exception>
      <returns>A digital signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.SignData(System.IO.Stream)">
      <summary>Generates a signature for the specified data stream, reading to the end of the stream.</summary>
      <param name="data">The data stream to be signed.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key information that is associated with the instance does not have a private key.</exception>
      <returns>A digital signature for the specified data stream.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.SignHash(System.Byte[])">
      <summary>Generates a signature for the specified hash value.</summary>
      <param name="hash">The hash value of the data to be signed.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="hash" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key information that is associated with the instance does not have a private key.</exception>
      <returns>A digital signature for the specified hash value.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.ToXmlString(System.Security.Cryptography.ECKeyXmlFormat)">
      <summary>Serializes the key information to an XML string by using the specified format.</summary>
      <param name="format">One of the enumeration values that specifies the format of the XML string. The only currently accepted format is <see cref="F:System.Security.Cryptography.ECKeyXmlFormat.Rfc4050" />.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="format" /> specifies an invalid format. The only accepted value is <see cref="F:System.Security.Cryptography.ECKeyXmlFormat.Rfc4050" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">All other errors.</exception>
      <returns>A string object that contains the key information, serialized to an XML string according to the requested format.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.TryExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.PbeParameters,System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the PKCS#8 EncryptedPrivateKeyInfo format into a provided buffer, using a byte-based password.</summary>
      <param name="passwordBytes">The bytes to use as a password when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <param name="destination">The byte span to receive the PKCS#8 EncryptedPrivateKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <code data-dev-comment-type="paramref">destination</code>. This parameter is treated as uninitialized.</param>
      <returns>
        <code data-dev-comment-type="langword">true</code> if <code data-dev-comment-type="paramref">destination</code> is big enough to receive the output; otherwise, <code data-dev-comment-type="langword">false</code>.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.TryExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Char},System.Security.Cryptography.PbeParameters,System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the PKCS#8 EncryptedPrivateKeyInfo format into a provided buffer, using a char-based password.</summary>
      <param name="password">The password to use when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <param name="destination">The byte span to receive the PKCS#8 EncryptedPrivateKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <code data-dev-comment-type="paramref">destination</code>. This parameter is treated as uninitialized.</param>
      <returns>
        <code data-dev-comment-type="langword">true</code> if <code data-dev-comment-type="paramref">destination</code> is big enough to receive the output; otherwise, <code data-dev-comment-type="langword">false</code>.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.TryExportPkcs8PrivateKey(System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the PKCS#8 PrivateKeyInfo format into a provided buffer.</summary>
      <param name="destination">The byte span to receive the PKCS#8 PrivateKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <code data-dev-comment-type="paramref">destination</code>. This parameter is treated as uninitialized.</param>
      <returns>
        <code data-dev-comment-type="langword">true</code> if <code data-dev-comment-type="paramref">destination</code> is big enough to receive the output; otherwise, <code data-dev-comment-type="langword">false</code>.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.TrySignHash(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to compute the ECDSA digital signature for the specified read-only span of bytes representing a data hash into the provided destination by using the current key.</summary>
      <param name="source" />
      <param name="destination">The buffer to receive the signature.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <code data-dev-comment-type="paramref">destination</code>. This parameter is treated as uninitialized.</param>
      <returns>
        <code data-dev-comment-type="langword">false</code> if <code data-dev-comment-type="paramref">destination</code> is not long enough to receive the signature.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.VerifyData(System.Byte[],System.Byte[])">
      <summary>Verifies the digital signature of the specified data.</summary>
      <param name="data">The data that was signed.</param>
      <param name="signature">The signature to be verified.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> or <paramref name="signature" /> is <see langword="null" />.</exception>
      <returns>
        <see langword="true" /> if the signature is valid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.VerifyData(System.Byte[],System.Int32,System.Int32,System.Byte[])">
      <summary>Verifies a signature for the specified length of data, beginning at the specified offset.</summary>
      <param name="data">The data that was signed.</param>
      <param name="offset">The location in the data at which the signed data begins.</param>
      <param name="count">The length of the data, in characters, following <paramref name="offset" /> that will be signed.</param>
      <param name="signature">The signature to be verified.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="offset" /> or <paramref name="count" /> is less then zero.

 -or-

 <paramref name="offset" /> or <paramref name="count" /> is larger than the length of the byte array passed in the <paramref name="data" /> parameter.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> or <paramref name="signature" /> is <see langword="null" />.</exception>
      <returns>
        <see langword="true" /> if the signature is valid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.VerifyData(System.IO.Stream,System.Byte[])">
      <summary>Verifies the digital signature of the specified data stream, reading to the end of the stream.</summary>
      <param name="data">The data stream that was signed.</param>
      <param name="signature">The signature to be verified.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> or <paramref name="signature" /> is <see langword="null" />.</exception>
      <returns>
        <see langword="true" /> if the signature is valid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.VerifyHash(System.Byte[],System.Byte[])">
      <summary>Verifies that a digital signature is appropriate for the current key and provided data hash.</summary>
      <param name="hash">The hash value of the data to be verified.</param>
      <param name="signature">The digital signature of the data to be verified against the hash value.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="hash" /> or <paramref name="signature" /> is <see langword="null" />.</exception>
      <returns>
        <see langword="true" /> if the signature is valid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaCng.VerifyHash(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Verifies that a digital signature is appropriate for the current key and provided data hash.</summary>
      <param name="hash">The hash value of the data to be verified.</param>
      <param name="signature">The digital signature of the data to be verified against the hash value.</param>
      <returns>
        <code data-dev-comment-type="langword">true</code> if the signature is valid; otherwise, <code data-dev-comment-type="langword">false</code>.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECDsaCng.HashAlgorithm">
      <summary>Gets or sets the hash algorithm to use when signing and verifying data.</summary>
      <exception cref="T:System.ArgumentNullException">The value is <see langword="null" />.</exception>
      <returns>An object that specifies the hash algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECDsaCng.Key">
      <summary>Gets or sets the key to use when signing and verifying data.</summary>
      <returns>An object that specifies the key.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECDsaCng.KeySize">
      <summary>Gets or sets the size, in bits, of the key modulus used by the asymmetric algorithm.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="value" /> is not permitted by <see cref="P:System.Security.Cryptography.ECDsaCng.LegalKeySizes" />.</exception>
      <returns>The size, in bits, of the key modulus used by the asymmetric algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ECDsaCng.LegalKeySizes">
      <summary>Gets the key sizes, in bits, that are supported by the <see cref="P:System.Security.Cryptography.ECDsaCng.KeySize" /> property setter.</summary>
      <returns>An array that contains the key sizes supported by the <see cref="P:System.Security.Cryptography.ECDsaCng.KeySize" /> property setter.</returns>
    </member>
    <member name="T:System.Security.Cryptography.ECDsaOpenSsl">
      <summary>Provides an implementation of the Elliptic Curve Digital Signature Algorithm (ECDSA) backed by OpenSSL.</summary>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaOpenSsl.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ECDsaOpenSsl" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaOpenSsl.#ctor(System.Int32)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ECDsaOpenSsl" /> class with a specified target key size.</summary>
      <param name="keySize">The size of the key. Valid key sizes are 256, 384, and 521 bits.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="keySize" /> specifies an invalid length.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaOpenSsl.#ctor(System.IntPtr)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ECDsaOpenSsl" /> class from an existing OpenSSL key represented as an <c>EC_KEY*</c>.</summary>
      <param name="handle">The OpenSSL <c>EC_KEY*</c> value to use as the key.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="handle" /> is <see cref="F:System.IntPtr.Zero" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="handle" /> is not a valid <c>EC_KEY*</c>.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaOpenSsl.#ctor(System.Security.Cryptography.ECCurve)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ECDsaOpenSsl" /> class and generates a new key on the specified curve.</summary>
      <param name="curve">The curve used to generate an ephemeral public/private key pair.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="curve" /> does not validate.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="curve" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaOpenSsl.#ctor(System.Security.Cryptography.SafeEvpPKeyHandle)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ECDsaOpenSsl" /> class from an existing OpenSSL key represented as an <c>EVP_PKEY*</c>.</summary>
      <param name="pkeyHandle">The OpenSSL <c>EVP_PKEY*</c> value to use as the key, represented as a <see cref="T:System.Security.Cryptography.SafeEvpPKeyHandle" />.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="pkeyHandle" /> represents an invalid handle.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="pkeyHandle" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="pkeyHandle" /> does not represent a elliptic curve (EC) key.</exception>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaOpenSsl.DuplicateKeyHandle">
      <summary>Gets a <see cref="T:System.Security.Cryptography.SafeEvpPKeyHandle" /> representation of the cryptographic key.</summary>
      <returns>A <see cref="T:System.Security.Cryptography.SafeEvpPKeyHandle" /> representation of the cryptographic key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaOpenSsl.SignHash(System.Byte[])">
      <summary>Generates a digital signature for the specified hash value.</summary>
      <param name="hash">The hash value of the data that is being signed.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="hash" /> parameter is <see langword="null" />.</exception>
      <returns>A digital signature for the specified hash value.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ECDsaOpenSsl.VerifyHash(System.Byte[],System.Byte[])">
      <summary>Verifies that a digital signature is appropriate for the current key and provided data hash.</summary>
      <param name="hash">The hash value of the data to be verified.</param>
      <param name="signature">The digital signature of the data to be verified against the hash value.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="hash" /> or <paramref name="signature" /> is <see langword="null" />.</exception>
      <returns>
        <see langword="true" /> if the signature is valid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.ECKeyXmlFormat">
      <summary>Defines XML serialization formats for elliptic curve keys.</summary>
    </member>
    <member name="F:System.Security.Cryptography.ECKeyXmlFormat.Rfc4050">
      <summary>An XML serialization format described in RFC 4050, "Using the Elliptic Curve Signature Algorithm (ECDSA) for XML Digital Signatures."</summary>
    </member>
    <member name="T:System.Security.Cryptography.ECParameters">
      <summary>Represents the standard parameters for the elliptic curve cryptography (ECC) algorithm.</summary>
    </member>
    <member name="F:System.Security.Cryptography.ECParameters.Curve">
      <summary>Represents the curve associated with the public key (<see cref="F:System.Security.Cryptography.ECParameters.Q" />) and the optional private key (<see cref="F:System.Security.Cryptography.ECParameters.D" />).</summary>
    </member>
    <member name="F:System.Security.Cryptography.ECParameters.D">
      <summary>Represents the private key <see langword="D" /> for the elliptic curve cryptography (ECC) algorithm, stored in big-endian format.</summary>
    </member>
    <member name="F:System.Security.Cryptography.ECParameters.Q">
      <summary>Represents the public key <see langword="Q" /> for the elliptic curve cryptography (ECC) algorithm.</summary>
    </member>
    <member name="M:System.Security.Cryptography.ECParameters.Validate">
      <summary>Validates the current object.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key or curve parameters are not valid for the current curve type.</exception>
    </member>
    <member name="T:System.Security.Cryptography.ECPoint">
      <summary>Represents a (X,Y) coordinate pair for elliptic curve cryptography (ECC) structures.</summary>
    </member>
    <member name="F:System.Security.Cryptography.ECPoint.X">
      <summary>Represents the X coordinate.</summary>
    </member>
    <member name="F:System.Security.Cryptography.ECPoint.Y">
      <summary>Represents the Y coordinate.</summary>
    </member>
    <member name="T:System.Security.Cryptography.FromBase64Transform">
      <summary>Converts a <see cref="T:System.Security.Cryptography.CryptoStream" /> from base 64.</summary>
    </member>
    <member name="M:System.Security.Cryptography.FromBase64Transform.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.FromBase64Transform" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.FromBase64Transform.#ctor(System.Security.Cryptography.FromBase64TransformMode)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.FromBase64Transform" /> class with the specified transformation mode.</summary>
      <param name="whitespaces">One of the <see cref="T:System.Security.Cryptography.FromBase64Transform" /> values.</param>
    </member>
    <member name="M:System.Security.Cryptography.FromBase64Transform.Clear">
      <summary>Releases all resources used by the <see cref="T:System.Security.Cryptography.FromBase64Transform" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.FromBase64Transform.Dispose">
      <summary>Releases all resources used by the current instance of the <see cref="T:System.Security.Cryptography.FromBase64Transform" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.FromBase64Transform.Dispose(System.Boolean)">
      <summary>Releases the unmanaged resources used by the <see cref="T:System.Security.Cryptography.FromBase64Transform" /> and optionally releases the managed resources.</summary>
      <param name="disposing">
        <see langword="true" /> to release both managed and unmanaged resources; <see langword="false" /> to release only unmanaged resources.</param>
    </member>
    <member name="M:System.Security.Cryptography.FromBase64Transform.Finalize">
      <summary>Releases the unmanaged resources used by the <see cref="T:System.Security.Cryptography.FromBase64Transform" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.FromBase64Transform.TransformBlock(System.Byte[],System.Int32,System.Int32,System.Byte[],System.Int32)">
      <summary>Converts the specified region of the input byte array from base 64 and copies the result to the specified region of the output byte array.</summary>
      <param name="inputBuffer">The input to compute from base 64.</param>
      <param name="inputOffset">The offset into the input byte array from which to begin using data.</param>
      <param name="inputCount">The number of bytes in the input byte array to use as data.</param>
      <param name="outputBuffer">The output to which to write the result.</param>
      <param name="outputOffset">The offset into the output byte array from which to begin writing data.</param>
      <exception cref="T:System.ObjectDisposedException">The current <see cref="T:System.Security.Cryptography.FromBase64Transform" /> object has already been disposed.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="inputCount" /> uses an invalid value.

 -or-

 <paramref name="inputBuffer" /> has an invalid offset length.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="inputOffset" /> is out of range. This parameter requires a non-negative number.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="inputBuffer" /> is <see langword="null" />.</exception>
      <returns>The number of bytes written.</returns>
    </member>
    <member name="M:System.Security.Cryptography.FromBase64Transform.TransformFinalBlock(System.Byte[],System.Int32,System.Int32)">
      <summary>Converts the specified region of the specified byte array from base 64.</summary>
      <param name="inputBuffer">The input to convert from base 64.</param>
      <param name="inputOffset">The offset into the byte array from which to begin using data.</param>
      <param name="inputCount">The number of bytes in the byte array to use as data.</param>
      <exception cref="T:System.ObjectDisposedException">The current <see cref="T:System.Security.Cryptography.FromBase64Transform" /> object has already been disposed.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="inputBuffer" /> has an invalid offset length.

 -or-

 <paramref name="inputCount" /> has an invalid value.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="inputOffset" /> is out of range. This parameter requires a non-negative number.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="inputBuffer" /> is <see langword="null" />.</exception>
      <returns>The computed conversion.</returns>
    </member>
    <member name="P:System.Security.Cryptography.FromBase64Transform.CanReuseTransform">
      <summary>Gets a value indicating whether the current transform can be reused.</summary>
      <returns>Always <see langword="true" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.FromBase64Transform.CanTransformMultipleBlocks">
      <summary>Gets a value that indicates whether multiple blocks can be transformed.</summary>
      <returns>Always <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.FromBase64Transform.InputBlockSize">
      <summary>Gets the input block size.</summary>
      <returns>The size of the input data blocks in bytes.</returns>
    </member>
    <member name="P:System.Security.Cryptography.FromBase64Transform.OutputBlockSize">
      <summary>Gets the output block size.</summary>
      <returns>The size of the output data blocks in bytes.</returns>
    </member>
    <member name="T:System.Security.Cryptography.FromBase64TransformMode">
      <summary>Specifies whether white space should be ignored in the base 64 transformation.</summary>
    </member>
    <member name="F:System.Security.Cryptography.FromBase64TransformMode.DoNotIgnoreWhiteSpaces">
      <summary>White space should not be ignored.</summary>
    </member>
    <member name="F:System.Security.Cryptography.FromBase64TransformMode.IgnoreWhiteSpaces">
      <summary>White space should be ignored.</summary>
    </member>
    <member name="T:System.Security.Cryptography.HashAlgorithm">
      <summary>Represents the base class from which all implementations of cryptographic hash algorithms must derive.</summary>
    </member>
    <member name="F:System.Security.Cryptography.HashAlgorithm.HashSizeValue">
      <summary>Represents the size, in bits, of the computed hash code.</summary>
    </member>
    <member name="F:System.Security.Cryptography.HashAlgorithm.HashValue">
      <summary>Represents the value of the computed hash code.</summary>
    </member>
    <member name="F:System.Security.Cryptography.HashAlgorithm.State">
      <summary>Represents the state of the hash computation.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HashAlgorithm.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HashAlgorithm" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HashAlgorithm.Clear">
      <summary>Releases all resources used by the <see cref="T:System.Security.Cryptography.HashAlgorithm" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HashAlgorithm.ComputeHash(System.Byte[],System.Int32,System.Int32)">
      <summary>Computes the hash value for the specified region of the specified byte array.</summary>
      <param name="buffer">The input to compute the hash code for.</param>
      <param name="offset">The offset into the byte array from which to begin using data.</param>
      <param name="count">The number of bytes in the array to use as data.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="count" /> is an invalid value.

 -or-

 <paramref name="buffer" /> length is invalid.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="buffer" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="offset" /> is out of range. This parameter requires a non-negative number.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>The computed hash code.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HashAlgorithm.ComputeHash(System.Byte[])">
      <summary>Computes the hash value for the specified byte array.</summary>
      <param name="buffer">The input to compute the hash code for.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="buffer" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>The computed hash code.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HashAlgorithm.ComputeHash(System.IO.Stream)">
      <summary>Computes the hash value for the specified <see cref="T:System.IO.Stream" /> object.</summary>
      <param name="inputStream">The input to compute the hash code for.</param>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>The computed hash code.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HashAlgorithm.ComputeHashAsync(System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash value for the specified <see cref="T:System.IO.Stream" /> object.</summary>
      <param name="inputStream">The input to compute the hash code for.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.</param>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>A task that represents the asynchronous compute hash operation and wraps the computed hash code.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HashAlgorithm.Create">
      <summary>Creates an instance of the default implementation of a hash algorithm.</summary>
      <exception cref="T:System.PlatformNotSupportedException">.NET Core 2.0 - 3.1 and .NET 5 and later: In all cases.</exception>
      <returns>A new <see cref="T:System.Security.Cryptography.SHA1CryptoServiceProvider" /> instance, unless the default settings have been changed using the .</returns>
    </member>
    <member name="M:System.Security.Cryptography.HashAlgorithm.Create(System.String)">
      <summary>Creates an instance of the specified implementation of a hash algorithm.</summary>
      <param name="hashName">The hash algorithm implementation to use. The following table shows the valid values for the <paramref name="hashName" /> parameter and the algorithms they map to.

 <list type="table"><listheader><term> Parameter value</term><description> Implements</description></listheader><item><term> SHA</term><description><see cref="T:System.Security.Cryptography.SHA1CryptoServiceProvider" /></description></item><item><term> SHA1</term><description><see cref="T:System.Security.Cryptography.SHA1CryptoServiceProvider" /></description></item><item><term> System.Security.Cryptography.SHA1</term><description><see cref="T:System.Security.Cryptography.SHA1CryptoServiceProvider" /></description></item><item><term> System.Security.Cryptography.HashAlgorithm</term><description><see cref="T:System.Security.Cryptography.SHA1CryptoServiceProvider" /></description></item><item><term> MD5</term><description><see cref="T:System.Security.Cryptography.MD5CryptoServiceProvider" /></description></item><item><term> System.Security.Cryptography.MD5</term><description><see cref="T:System.Security.Cryptography.MD5CryptoServiceProvider" /></description></item><item><term> SHA256</term><description><see cref="T:System.Security.Cryptography.SHA256Managed" /></description></item><item><term> SHA-256</term><description><see cref="T:System.Security.Cryptography.SHA256Managed" /></description></item><item><term> System.Security.Cryptography.SHA256</term><description><see cref="T:System.Security.Cryptography.SHA256Managed" /></description></item><item><term> SHA384</term><description><see cref="T:System.Security.Cryptography.SHA384Managed" /></description></item><item><term> SHA-384</term><description><see cref="T:System.Security.Cryptography.SHA384Managed" /></description></item><item><term> System.Security.Cryptography.SHA384</term><description><see cref="T:System.Security.Cryptography.SHA384Managed" /></description></item><item><term> SHA512</term><description><see cref="T:System.Security.Cryptography.SHA512Managed" /></description></item><item><term> SHA-512</term><description><see cref="T:System.Security.Cryptography.SHA512Managed" /></description></item><item><term> System.Security.Cryptography.SHA512</term><description><see cref="T:System.Security.Cryptography.SHA512Managed" /></description></item></list></param>
      <returns>A new instance of the specified hash algorithm, or <see langword="null" /> if <paramref name="hashName" /> is not a valid hash algorithm.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HashAlgorithm.Dispose">
      <summary>Releases all resources used by the current instance of the <see cref="T:System.Security.Cryptography.HashAlgorithm" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HashAlgorithm.Dispose(System.Boolean)">
      <summary>Releases the unmanaged resources used by the <see cref="T:System.Security.Cryptography.HashAlgorithm" /> and optionally releases the managed resources.</summary>
      <param name="disposing">
        <see langword="true" /> to release both managed and unmanaged resources; <see langword="false" /> to release only unmanaged resources.</param>
    </member>
    <member name="M:System.Security.Cryptography.HashAlgorithm.HashCore(System.Byte[],System.Int32,System.Int32)">
      <summary>When overridden in a derived class, routes data written to the object into the hash algorithm for computing the hash.</summary>
      <param name="array">The input to compute the hash code for.</param>
      <param name="ibStart">The offset into the byte array from which to begin using data.</param>
      <param name="cbSize">The number of bytes in the byte array to use as data.</param>
    </member>
    <member name="M:System.Security.Cryptography.HashAlgorithm.HashCore(System.ReadOnlySpan{System.Byte})">
      <summary>Routes data written to the object into the hash algorithm for computing the hash.</summary>
      <param name="source">The input to compute the hash code for.</param>
    </member>
    <member name="M:System.Security.Cryptography.HashAlgorithm.HashFinal">
      <summary>When overridden in a derived class, finalizes the hash computation after the last data is processed by the cryptographic hash algorithm.</summary>
      <returns>The computed hash code.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HashAlgorithm.Initialize">
      <summary>Resets the hash algorithm to its initial state.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HashAlgorithm.TransformBlock(System.Byte[],System.Int32,System.Int32,System.Byte[],System.Int32)">
      <summary>Computes the hash value for the specified region of the input byte array and copies the specified region of the input byte array to the specified region of the output byte array.</summary>
      <param name="inputBuffer">The input to compute the hash code for.</param>
      <param name="inputOffset">The offset into the input byte array from which to begin using data.</param>
      <param name="inputCount">The number of bytes in the input byte array to use as data.</param>
      <param name="outputBuffer">A copy of the part of the input array used to compute the hash code.</param>
      <param name="outputOffset">The offset into the output byte array from which to begin writing data.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="inputCount" /> uses an invalid value.

 -or-

 <paramref name="inputBuffer" /> has an invalid length.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="inputBuffer" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="inputOffset" /> is out of range. This parameter requires a non-negative number.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>The number of bytes written.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HashAlgorithm.TransformFinalBlock(System.Byte[],System.Int32,System.Int32)">
      <summary>Computes the hash value for the specified region of the specified byte array.</summary>
      <param name="inputBuffer">The input to compute the hash code for.</param>
      <param name="inputOffset">The offset into the byte array from which to begin using data.</param>
      <param name="inputCount">The number of bytes in the byte array to use as data.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="inputCount" /> uses an invalid value.

 -or-

 <paramref name="inputBuffer" /> has an invalid offset length.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="inputBuffer" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="inputOffset" /> is out of range. This parameter requires a non-negative number.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>An array that is a copy of the part of the input that is hashed.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HashAlgorithm.TryComputeHash(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to compute the hash value for the specified byte array.</summary>
      <param name="source">The input to compute the hash code for.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is long enough to receive the hash value; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HashAlgorithm.TryHashFinal(System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to finalize the hash computation after the last data is processed by the hash algorithm.</summary>
      <param name="destination">The buffer to receive the hash value.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is long enough to receive the hash value; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.HashAlgorithm.CanReuseTransform">
      <summary>Gets a value indicating whether the current transform can be reused.</summary>
      <returns>Always <see langword="true" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.HashAlgorithm.CanTransformMultipleBlocks">
      <summary>When overridden in a derived class, gets a value indicating whether multiple blocks can be transformed.</summary>
      <returns>
        <see langword="true" /> if multiple blocks can be transformed; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.HashAlgorithm.Hash">
      <summary>Gets the value of the computed hash code.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException">
        <see cref="F:System.Security.Cryptography.HashAlgorithm.HashValue" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>The current value of the computed hash code.</returns>
    </member>
    <member name="P:System.Security.Cryptography.HashAlgorithm.HashSize">
      <summary>Gets the size, in bits, of the computed hash code.</summary>
      <returns>The size, in bits, of the computed hash code.</returns>
    </member>
    <member name="P:System.Security.Cryptography.HashAlgorithm.InputBlockSize">
      <summary>When overridden in a derived class, gets the input block size.</summary>
      <returns>The input block size.</returns>
    </member>
    <member name="P:System.Security.Cryptography.HashAlgorithm.OutputBlockSize">
      <summary>When overridden in a derived class, gets the output block size.</summary>
      <returns>The output block size.</returns>
    </member>
    <member name="T:System.Security.Cryptography.HashAlgorithmName">
      <summary>Specifies the name of a cryptographic hash algorithm.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HashAlgorithmName.#ctor(System.String)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HashAlgorithmName" /> structure with a custom name.</summary>
      <param name="name">The custom hash algorithm name.</param>
    </member>
    <member name="M:System.Security.Cryptography.HashAlgorithmName.Equals(System.Object)">
      <summary>Returns a value that indicates whether the current instance and a specified object are equal.</summary>
      <param name="obj">The object to compare with the current instance.</param>
      <returns>
        <see langword="true" /> if <paramref name="obj" /> is a <see cref="T:System.Security.Cryptography.HashAlgorithmName" /> object and its <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> property is equal to that of the current instance. The comparison is ordinal and case-sensitive.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HashAlgorithmName.Equals(System.Security.Cryptography.HashAlgorithmName)">
      <summary>Returns a value that indicates whether two <see cref="T:System.Security.Cryptography.HashAlgorithmName" /> instances are equal.</summary>
      <param name="other">The object to compare with the current instance.</param>
      <returns>
        <see langword="true" /> if the <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> property of <paramref name="other" /> is equal to that of the current instance. The comparison is ordinal and case-sensitive.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HashAlgorithmName.FromOid(System.String)">
      <summary>Converts the specified OID to a hash algorithm name.</summary>
      <param name="oidValue">The OID of the hash algorithm.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="oidValue" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="oidValue" /> does not represent a known hash algorithm.</exception>
      <returns>The hash algorithm name identified by the OID.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HashAlgorithmName.GetHashCode">
      <summary>Returns the hash code for the current instance.</summary>
      <returns>The hash code for the current instance, or 0 if no <paramref name="name" /> value was supplied to the <see cref="T:System.Security.Cryptography.HashAlgorithmName" /> constructor.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HashAlgorithmName.op_Equality(System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.HashAlgorithmName)">
      <summary>Determines whether two specified <see cref="T:System.Security.Cryptography.HashAlgorithmName" /> objects are equal.</summary>
      <param name="left">The first object to compare.</param>
      <param name="right">The second object to compare.</param>
      <returns>
        <see langword="true" /> if both <paramref name="left" /> and <paramref name="right" /> have the same <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> value; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HashAlgorithmName.op_Inequality(System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.HashAlgorithmName)">
      <summary>Determines whether two specified <see cref="T:System.Security.Cryptography.HashAlgorithmName" /> objects are not equal.</summary>
      <param name="left">The first object to compare.</param>
      <param name="right">The second object to compare.</param>
      <returns>
        <see langword="true" /> if both <paramref name="left" /> and <paramref name="right" /> do not have the same <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> value; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HashAlgorithmName.ToString">
      <summary>Returns the string representation of the current <see cref="T:System.Security.Cryptography.HashAlgorithmName" /> instance.</summary>
      <returns>The string representation of the current <see cref="T:System.Security.Cryptography.HashAlgorithmName" /> instance.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HashAlgorithmName.TryFromOid(System.String,System.Security.Cryptography.HashAlgorithmName@)">
      <summary>Tries to convert the specified OID to a hash algorithm name.</summary>
      <param name="oidValue">The OID of the hash algorithm.</param>
      <param name="value">When this method returns <see langword="true" />, the hash algorithm. When this method returns <see langword="false" />, contains <c>default</c>.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="oidValue" /> is <see langword="null" />.</exception>
      <returns>
        <see langword="true" /> if the OID was successfully mapped to a hash algorithm; otherwise <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.HashAlgorithmName.MD5">
      <summary>Gets a hash algorithm name that represents "MD5".</summary>
      <returns>A hash algorithm name that represents "MD5".</returns>
    </member>
    <member name="P:System.Security.Cryptography.HashAlgorithmName.Name">
      <summary>Gets the underlying string representation of the algorithm name.</summary>
      <returns>The string representation of the algorithm name, or <see langword="default" /> if no hash algorithm is available.</returns>
    </member>
    <member name="P:System.Security.Cryptography.HashAlgorithmName.SHA1">
      <summary>Gets a hash algorithm name that represents "SHA1".</summary>
      <returns>A hash algorithm name that represents "SHA1".</returns>
    </member>
    <member name="P:System.Security.Cryptography.HashAlgorithmName.SHA256">
      <summary>Gets a hash algorithm name that represents "SHA256".</summary>
      <returns>A hash algorithm name that represents "SHA256".</returns>
    </member>
    <member name="P:System.Security.Cryptography.HashAlgorithmName.SHA3_256">
      <summary>Gets a <see cref="T:System.Security.Cryptography.HashAlgorithmName" /> representing "SHA3-256"</summary>
    </member>
    <member name="P:System.Security.Cryptography.HashAlgorithmName.SHA3_384">
      <summary>Gets a <see cref="T:System.Security.Cryptography.HashAlgorithmName" /> representing "SHA3-384"</summary>
    </member>
    <member name="P:System.Security.Cryptography.HashAlgorithmName.SHA3_512">
      <summary>Gets a <see cref="T:System.Security.Cryptography.HashAlgorithmName" /> representing "SHA3-512"</summary>
    </member>
    <member name="P:System.Security.Cryptography.HashAlgorithmName.SHA384">
      <summary>Gets a hash algorithm name that represents "SHA384".</summary>
      <returns>A hash algorithm name that represents "SHA384".</returns>
    </member>
    <member name="P:System.Security.Cryptography.HashAlgorithmName.SHA512">
      <summary>Gets a hash algorithm name that represents "SHA512".</summary>
      <returns>A hash algorithm name that represents "SHA512".</returns>
    </member>
    <member name="T:System.Security.Cryptography.HKDF">
      <summary>RFC5869  HMAC-based Extract-and-Expand Key Derivation (HKDF)</summary>
    </member>
    <member name="M:System.Security.Cryptography.HKDF.DeriveKey(System.Security.Cryptography.HashAlgorithmName,System.Byte[],System.Int32,System.Byte[],System.Byte[])">
      <summary>Performs the key derivation HKDF Expand and Extract functions.</summary>
      <param name="hashAlgorithmName">The hash algorithm used for HMAC operations.</param>
      <param name="ikm">The input keying material.</param>
      <param name="outputLength">The length of the output keying material.</param>
      <param name="salt">The optional salt value (a non-secret random value). If not provided, it defaults to a byte array of the same length as the output of the specified hash algorithm.</param>
      <param name="info">The optional context and application specific information.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="ikm" />is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is less than 1.</exception>
      <returns>The output keying material.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HKDF.DeriveKey(System.Security.Cryptography.HashAlgorithmName,System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Performs the key derivation HKDF Expand and Extract functions.</summary>
      <param name="hashAlgorithmName">The hash algorithm used for HMAC operations.</param>
      <param name="ikm">The input keying material.</param>
      <param name="output">The output buffer that represents output keying material.</param>
      <param name="salt">The salt value (a non-secret random value).</param>
      <param name="info">The context and application specific information (can be an empty span).</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="ikm" /> is empty, or is larger than the maximum allowed length.</exception>
    </member>
    <member name="M:System.Security.Cryptography.HKDF.Expand(System.Security.Cryptography.HashAlgorithmName,System.Byte[],System.Int32,System.Byte[])">
      <summary>Performs the HKDF-Expand function See section 2.3 of RFC5869.</summary>
      <param name="hashAlgorithmName">The hash algorithm used for HMAC operations.</param>
      <param name="prk">The pseudorandom key that is at least as long as the output byte array of the specified hash algorithm (usually the output from the Extract step).</param>
      <param name="outputLength">The length of the output keying material.</param>
      <param name="info">The optional context and application specific information.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="prk" />is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is less than 1.</exception>
      <returns>The output keying material.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HKDF.Expand(System.Security.Cryptography.HashAlgorithmName,System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Performs the HKDF-Expand function. See section 2.3 of RFC5869.</summary>
      <param name="hashAlgorithmName">The hash algorithm used for HMAC operations.</param>
      <param name="prk">The pseudorandom key that is at least as long as as the output byte array of the specified hash algorithm (usually the output from the Extract step).</param>
      <param name="output">The destination buffer to receive the output keying material.</param>
      <param name="info">The context and application specific information (can be an empty span).</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="output" /> is empty, or is larger than the maximum allowed length.</exception>
    </member>
    <member name="M:System.Security.Cryptography.HKDF.Extract(System.Security.Cryptography.HashAlgorithmName,System.Byte[],System.Byte[])">
      <summary>Performs the HKDF-Extract function.
 See section 2.2 of RFC5869.</summary>
      <param name="hashAlgorithmName">The hash algorithm used for HMAC operations.</param>
      <param name="ikm">The input keying material.</param>
      <param name="salt">The optional salt value (a non-secret random value). If not provided it defaults to a byte array of the same length as the output of the specified hash algorithm.</param>
      <returns>The pseudorandom key (prk).</returns>
    </member>
    <member name="M:System.Security.Cryptography.HKDF.Extract(System.Security.Cryptography.HashAlgorithmName,System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte})">
      <summary>Performs the HKDF-Extract function.
 See section 2.2 of RFC5869.</summary>
      <param name="hashAlgorithmName">The hash algorithm used for HMAC operations.</param>
      <param name="ikm">The input keying material.</param>
      <param name="salt">The salt value (a non-secret random value).</param>
      <param name="prk">The destination buffer to receive the pseudorandom key (prk).</param>
      <returns>The number of bytes written to the <paramref name="prk" /> buffer.</returns>
    </member>
    <member name="T:System.Security.Cryptography.HMAC">
      <summary>Represents the abstract class from which all implementations of Hash-based Message Authentication Code (HMAC) must derive.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HMAC.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMAC" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HMAC.Create">
      <summary>Creates an instance of the default implementation of a Hash-based Message Authentication Code (HMAC).</summary>
      <exception cref="T:System.PlatformNotSupportedException">.NET Core 2.0 - 3.1 and .NET 5 and later: In all cases.</exception>
      <returns>A new SHA-1 instance, unless the default settings have been changed by using the &lt;cryptoClass&gt; element.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMAC.Create(System.String)">
      <summary>Creates an instance of the specified implementation of a Hash-based Message Authentication Code (HMAC).</summary>
      <param name="algorithmName">The HMAC implementation to use. The following table shows the valid values for the <paramref name="algorithmName" /> parameter and the algorithms they map to.

 <list type="table"><listheader><term> Parameter value</term><description> Implements</description></listheader><item><term> System.Security.Cryptography.HMAC</term><description><see cref="T:System.Security.Cryptography.HMACSHA1" /></description></item><item><term> System.Security.Cryptography.KeyedHashAlgorithm</term><description><see cref="T:System.Security.Cryptography.HMACSHA1" /></description></item><item><term> HMACMD5</term><description><see cref="T:System.Security.Cryptography.HMACMD5" /></description></item><item><term> System.Security.Cryptography.HMACMD5</term><description><see cref="T:System.Security.Cryptography.HMACMD5" /></description></item><item><term> HMACRIPEMD160</term><description><see cref="T:System.Security.Cryptography.HMACRIPEMD160" /></description></item><item><term> System.Security.Cryptography.HMACRIPEMD160</term><description><see cref="T:System.Security.Cryptography.HMACRIPEMD160" /></description></item><item><term> HMACSHA1</term><description><see cref="T:System.Security.Cryptography.HMACSHA1" /></description></item><item><term> System.Security.Cryptography.HMACSHA1</term><description><see cref="T:System.Security.Cryptography.HMACSHA1" /></description></item><item><term> HMACSHA256</term><description><see cref="T:System.Security.Cryptography.HMACSHA256" /></description></item><item><term> System.Security.Cryptography.HMACSHA256</term><description><see cref="T:System.Security.Cryptography.HMACSHA256" /></description></item><item><term> HMACSHA384</term><description><see cref="T:System.Security.Cryptography.HMACSHA384" /></description></item><item><term> System.Security.Cryptography.HMACSHA384</term><description><see cref="T:System.Security.Cryptography.HMACSHA384" /></description></item><item><term> HMACSHA512</term><description><see cref="T:System.Security.Cryptography.HMACSHA512" /></description></item><item><term> System.Security.Cryptography.HMACSHA512</term><description><see cref="T:System.Security.Cryptography.HMACSHA512" /></description></item><item><term> MACTripleDES</term><description><see cref="T:System.Security.Cryptography.MACTripleDES" /></description></item><item><term> System.Security.Cryptography.MACTripleDES</term><description><see cref="T:System.Security.Cryptography.MACTripleDES" /></description></item></list></param>
      <returns>A new instance of the specified HMAC implementation.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMAC.Dispose(System.Boolean)">
      <summary>Releases the unmanaged resources used by the <see cref="T:System.Security.Cryptography.HMAC" /> class when a key change is legitimate and optionally releases the managed resources.</summary>
      <param name="disposing">
        <see langword="true" /> to release both managed and unmanaged resources; <see langword="false" /> to release only unmanaged resources.</param>
    </member>
    <member name="M:System.Security.Cryptography.HMAC.HashCore(System.Byte[],System.Int32,System.Int32)">
      <summary>When overridden in a derived class, routes data written to the object into the HMAC algorithm for computing the HMAC value.</summary>
      <param name="rgb">The input data.</param>
      <param name="ib">The offset into the byte array from which to begin using data.</param>
      <param name="cb">The number of bytes in the array to use as data.</param>
    </member>
    <member name="M:System.Security.Cryptography.HMAC.HashCore(System.ReadOnlySpan{System.Byte})">
      <summary>Routes data written to the object into the HMAC algorithm for computing the HMAC.</summary>
      <param name="source">The input to compute the HMAC code for.</param>
      <exception cref="T:System.PlatformNotSupportedException">In all cases.</exception>
    </member>
    <member name="M:System.Security.Cryptography.HMAC.HashFinal">
      <summary>When overridden in a derived class, finalizes the HMAC computation after the last data is processed by the algorithm.</summary>
      <returns>The computed HMAC value in a byte array.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMAC.Initialize">
      <summary>Initializes an instance of the default implementation of <see cref="T:System.Security.Cryptography.HMAC" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HMAC.TryHashFinal(System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to finalize the HMAC computation after the last data is processed by the HMAC algorithm.</summary>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.PlatformNotSupportedException">The method is not overriden in the derived type.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is long enough to receive the HMAC value; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.HMAC.BlockSizeValue">
      <summary>Gets or sets the block size to use in the hash value.</summary>
      <returns>The block size to use in the hash value.</returns>
    </member>
    <member name="P:System.Security.Cryptography.HMAC.HashName">
      <summary>Gets or sets the name of the hash algorithm to use for hashing.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The current hash algorithm cannot be changed.</exception>
      <returns>The name of the hash algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.HMAC.Key">
      <summary>Gets or sets the key to use in the HMAC calculation.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An attempt is made to change the <see cref="P:System.Security.Cryptography.HMAC.Key" /> property after hashing has begun.</exception>
      <returns>The key to use in the HMAC calculation.</returns>
    </member>
    <member name="T:System.Security.Cryptography.HMACMD5">
      <summary>Computes a Hash-based Message Authentication Code (HMAC) by using the <see cref="T:System.Security.Cryptography.MD5" /> hash function.</summary>
    </member>
    <member name="F:System.Security.Cryptography.HMACMD5.HashSizeInBits">
      <summary>The hash size produced by the HMAC MD5 algorithm, in bits.</summary>
    </member>
    <member name="F:System.Security.Cryptography.HMACMD5.HashSizeInBytes">
      <summary>The hash size produced by the HMAC MD5 algorithm, in bytes.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HMACMD5.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACMD5" /> class by using a randomly generated key.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HMACMD5.#ctor(System.Byte[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACMD5" /> class by using the specified key.</summary>
      <param name="key">The secret key for HMAC computation. The key can be any length, but if it is more than 64 bytes long it will be hashed (using MD5) to derive a 16-byte key. Therefore, the recommended size of the secret key is 64 bytes.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="key" /> parameter is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.HMACMD5.Dispose(System.Boolean)">
      <summary>Releases the unmanaged resources used by the <see cref="T:System.Security.Cryptography.HMACMD5" /> and optionally releases the managed resources.</summary>
      <param name="disposing">
        <see langword="true" /> to release both managed and unmanaged resources; <see langword="false" /> to release only unmanaged resources.</param>
    </member>
    <member name="M:System.Security.Cryptography.HMACMD5.HashCore(System.Byte[],System.Int32,System.Int32)">
      <summary>Routes data written to the object into the HMAC algorithm for computing the HMAC.</summary>
      <param name="rgb">The input to compute the HMAC for.</param>
      <param name="ib">The offset into the byte array from which to begin using data.</param>
      <param name="cb">The number of bytes in the byte array to use as data.</param>
    </member>
    <member name="M:System.Security.Cryptography.HMACMD5.HashCore(System.ReadOnlySpan{System.Byte})">
      <summary>Routes data written to the object into the HMAC algorithm for computing the HMAC.</summary>
      <param name="source">The input to compute the HMAC for.</param>
    </member>
    <member name="M:System.Security.Cryptography.HMACMD5.HashData(System.Byte[],System.Byte[])">
      <summary>Computes the HMAC of data using the MD5 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACMD5.HashData(System.Byte[],System.IO.Stream)">
      <summary>Computes the HMAC of a stream using the MD5 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACMD5.HashData(System.ReadOnlySpan{System.Byte},System.IO.Stream,System.Span{System.Byte})">
      <summary>Computes the HMAC of a stream using the MD5 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <para>The buffer in <paramref name="destination" /> is too small to hold the calculated HMAC
              size. The MD5 algorithm always produces a 128-bit HMAC, or 16 bytes.</para>
        <para>-or-</para>
        <para>
          <paramref name="source" /> does not support reading.</para>
      </exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACMD5.HashData(System.ReadOnlySpan{System.Byte},System.IO.Stream)">
      <summary>Computes the HMAC of a stream using the MD5 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACMD5.HashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte})">
      <summary>Computes the HMAC of data using the MD5 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <exception cref="T:System.ArgumentException">The buffer in <paramref name="destination" /> is too small to hold the calculated hash size. The MD5 algorithm always produces a 128-bit HMAC, or 16 bytes.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACMD5.HashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Computes the HMAC of data using the MD5 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACMD5.HashDataAsync(System.Byte[],System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the HMAC of a stream using the MD5 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACMD5.HashDataAsync(System.ReadOnlyMemory{System.Byte},System.IO.Stream,System.Memory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the HMAC of a stream using the MD5 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <para>
              The buffer in <paramref name="destination" /> is too small to hold the calculated hash
              size. The MD5 algorithm always produces a 128-bit hash, or 16 bytes.</para>
        <para>-or-</para>
        <para>
          <paramref name="source" /> does not support reading.</para>
      </exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACMD5.HashDataAsync(System.ReadOnlyMemory{System.Byte},System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the HMAC of a stream using the MD5 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACMD5.HashFinal">
      <summary>Finalizes the HMAC computation after the last data is processed by the algorithm.</summary>
      <returns>The computed HMAC value in a byte array.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACMD5.Initialize">
      <summary>Resets the hash algorithm to its initial state.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HMACMD5.TryHashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to compute the HMAC of data using the MD5 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <param name="bytesWritten">When this method returns, contains the total number of bytes written into <paramref name="destination" />.</param>
      <returns>
        <see langword="false" /> if <paramref name="destination" /> is too small to hold the calculated hash, <see langword="true" /> otherwise.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACMD5.TryHashFinal(System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to finalize the HMAC computation after the last data is processed by the HMAC algorithm.</summary>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is long enough to receive the HMAC value; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.HMACMD5.Key">
      <summary>Gets or sets the key to use in the HMAC calculation.</summary>
      <returns>The key to use in the HMAC calculation.</returns>
    </member>
    <member name="T:System.Security.Cryptography.HMACSHA1">
      <summary>Computes a Hash-based Message Authentication Code (HMAC) using the <see cref="T:System.Security.Cryptography.SHA1" /> hash function.</summary>
    </member>
    <member name="F:System.Security.Cryptography.HMACSHA1.HashSizeInBits">
      <summary>The hash size produced by the HMAC SHA1 algorithm, in bits.</summary>
    </member>
    <member name="F:System.Security.Cryptography.HMACSHA1.HashSizeInBytes">
      <summary>The hash size produced by the HMAC SHA1 algorithm, in bytes.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA1.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACSHA1" /> class with a randomly generated key.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA1.#ctor(System.Byte[],System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACSHA1" /> class with the specified key data and a value that specifies whether to use the managed version of the SHA1 algorithm.</summary>
      <param name="key">The secret key for HMAC computation. The key can be any length, but if it is more than 64 bytes long, it is hashed (using SHA-1) to derive a 20-byte key. Therefore, the recommended size of the secret key is 64 bytes.</param>
      <param name="useManagedSha1">
        <see langword="true" /> to use the managed implementation of the SHA1 algorithm (the <see cref="T:System.Security.Cryptography.SHA1Managed" /> class); <see langword="false" /> to use the unmanaged implementation (the <see cref="T:System.Security.Cryptography.SHA1CryptoServiceProvider" /> class).</param>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA1.#ctor(System.Byte[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACSHA1" /> class with the specified key data.</summary>
      <param name="key">The secret key for <see cref="T:System.Security.Cryptography.HMACSHA1" /> encryption. The key can be any length, but if it is more than 64 bytes long it is hashed (using SHA-1) to derive a 64-byte key. Therefore, the recommended size of the secret key is 64 bytes.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="key" /> parameter is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA1.Dispose(System.Boolean)">
      <summary>This member overrides <see cref="M:System.Security.Cryptography.KeyedHashAlgorithm.Dispose(System.Boolean)" />, and more complete documentation might be available in that topic.

Releases the unmanaged resources used by the <see cref="T:System.Security.Cryptography.KeyedHashAlgorithm" /> and optionally releases the managed resources.</summary>
      <param name="disposing">
        <see langword="true" /> to release both managed and unmanaged resources; false to release only unmanaged resources.</param>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA1.HashCore(System.Byte[],System.Int32,System.Int32)">
      <summary>Routes data written to the object into the SHA1 hash algorithm for computing the Hash-based Message Authentication Code (HMAC).</summary>
      <param name="rgb">The input data.</param>
      <param name="ib">The offset into the byte array from which to begin using data.</param>
      <param name="cb">The number of bytes in the array to use as data.</param>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA1.HashCore(System.ReadOnlySpan{System.Byte})">
      <summary>Routes data written to the object into the HMAC algorithm for computing the HMAC.</summary>
      <param name="source">The input to compute the HMAC for.</param>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA1.HashData(System.Byte[],System.Byte[])">
      <summary>Computes the HMAC of data using the SHA1 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA1.HashData(System.Byte[],System.IO.Stream)">
      <summary>Computes the HMAC of a stream using the SHA1 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA1.HashData(System.ReadOnlySpan{System.Byte},System.IO.Stream,System.Span{System.Byte})">
      <summary>Computes the HMAC of a stream using the SHA1 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <para>
              The buffer in <paramref name="destination" /> is too small to hold the calculated HMAC
              size. The SHA1 algorithm always produces a 160-bit HMAC, or 20 bytes.</para>
        <para>-or-</para>
        <para>
          <paramref name="source" /> does not support reading.</para>
      </exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA1.HashData(System.ReadOnlySpan{System.Byte},System.IO.Stream)">
      <summary>Computes the HMAC of a stream using the SHA1 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA1.HashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte})">
      <summary>Computes the HMAC of data using the SHA1 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <exception cref="T:System.ArgumentException">The buffer in <paramref name="destination" /> is too small to hold the calculated hash size. The SHA1 algorithm always produces a 160-bit HMAC, or 20 bytes.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA1.HashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Computes the HMAC of data using the SHA1 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA1.HashDataAsync(System.Byte[],System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the HMAC of a stream using the SHA1 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA1.HashDataAsync(System.ReadOnlyMemory{System.Byte},System.IO.Stream,System.Memory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the HMAC of a stream using the SHA1 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <para>
              The buffer in <paramref name="destination" /> is too small to hold the calculated hash
              size. The SHA1 algorithm always produces a 160-bit hash, or 20 bytes.</para>
        <para>-or-</para>
        <para>
          <paramref name="source" /> does not support reading.</para>
      </exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA1.HashDataAsync(System.ReadOnlyMemory{System.Byte},System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the HMAC of a stream using the SHA1 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA1.HashFinal">
      <summary>Finalizes the HMAC computation after the last data is processed by the algorithm.</summary>
      <returns>The computed HMAC value in a byte array.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA1.Initialize">
      <summary>Resets the hash algorithm to its initial state.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA1.TryHashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to compute the HMAC of data using the SHA1 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <param name="bytesWritten">When this method returns, contains the total number of bytes written into <paramref name="destination" />.</param>
      <returns>
        <see langword="false" /> if <paramref name="destination" /> is too small to hold the calculated hash, <see langword="true" /> otherwise.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA1.TryHashFinal(System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to finalize the HMAC computation after the last data is processed by the HMAC algorithm.</summary>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is long enough to receive the HMAC value; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.HMACSHA1.Key">
      <summary>Gets or sets the key to use in the hash algorithm.</summary>
      <returns>The key to use in the hash algorithm.</returns>
    </member>
    <member name="T:System.Security.Cryptography.HMACSHA256">
      <summary>Computes a Hash-based Message Authentication Code (HMAC) by using the <see cref="T:System.Security.Cryptography.SHA256" /> hash function.</summary>
    </member>
    <member name="F:System.Security.Cryptography.HMACSHA256.HashSizeInBits">
      <summary>The hash size produced by the HMAC SHA256 algorithm, in bits.</summary>
    </member>
    <member name="F:System.Security.Cryptography.HMACSHA256.HashSizeInBytes">
      <summary>The hash size produced by the HMAC SHA256 algorithm, in bytes.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA256.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACSHA256" /> class with a randomly generated key.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA256.#ctor(System.Byte[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACSHA256" /> class with the specified key data.</summary>
      <param name="key">The secret key for HMAC computation. The key can be any length. However, the recommended size is 64 bytes. If the key is more than 64 bytes long, it is hashed (using SHA-256) to derive a 32-byte key.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="key" /> parameter is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA256.Dispose(System.Boolean)">
      <summary>Releases the unmanaged resources used by the <see cref="T:System.Security.Cryptography.HMACSHA256" /> and optionally releases the managed resources.</summary>
      <param name="disposing">
        <see langword="true" /> to release both managed and unmanaged resources; <see langword="false" /> to release only unmanaged resources.</param>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA256.HashCore(System.Byte[],System.Int32,System.Int32)">
      <summary>Routes data written to the object into the HMAC algorithm for computing the HMAC.</summary>
      <param name="rgb">The input to compute the HMAC for.</param>
      <param name="ib">The offset into the byte array from which to begin using data.</param>
      <param name="cb">The number of bytes in the byte array to use as data.</param>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA256.HashCore(System.ReadOnlySpan{System.Byte})">
      <summary>Routes data written to the object into the HMAC algorithm for computing the HMAC.</summary>
      <param name="source">The input to compute the HMAC for.</param>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA256.HashData(System.Byte[],System.Byte[])">
      <summary>Computes the HMAC of data using the SHA256 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA256.HashData(System.Byte[],System.IO.Stream)">
      <summary>Computes the HMAC of a stream using the SHA256 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA256.HashData(System.ReadOnlySpan{System.Byte},System.IO.Stream,System.Span{System.Byte})">
      <summary>Computes the HMAC of a stream using the SHA256 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <para>
              The buffer in <paramref name="destination" /> is too small to hold the calculated HMAC
              size. The SHA256 algorithm always produces a 256-bit HMAC, or 32 bytes.</para>
        <para>-or-</para>
        <para>
          <paramref name="source" /> does not support reading.</para>
      </exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA256.HashData(System.ReadOnlySpan{System.Byte},System.IO.Stream)">
      <summary>Computes the HMAC of a stream using the SHA256 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA256.HashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte})">
      <summary>Computes the HMAC of data using the SHA256 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <exception cref="T:System.ArgumentException">The buffer in <paramref name="destination" /> is too small to hold the calculated hash size. The SHA256 algorithm always produces a 256-bit HMAC, or 32 bytes.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA256.HashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Computes the HMAC of data using the SHA256 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA256.HashDataAsync(System.Byte[],System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the HMAC of a stream using the SHA256 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA256.HashDataAsync(System.ReadOnlyMemory{System.Byte},System.IO.Stream,System.Memory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the HMAC of a stream using the SHA256 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <para>
              The buffer in <paramref name="destination" /> is too small to hold the calculated hash
              size. The SHA256 algorithm always produces a 256-bit hash, or 32 bytes.</para>
        <para>-or-</para>
        <para>
          <paramref name="source" /> does not support reading.</para>
      </exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA256.HashDataAsync(System.ReadOnlyMemory{System.Byte},System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the HMAC of a stream using the SHA256 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA256.HashFinal">
      <summary>Finalizes the HMAC computation after the last data is processed by the algorithm.</summary>
      <returns>The computed HMAC value in a byte array.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA256.Initialize">
      <summary>Resets the hash algorithm to its initial state.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA256.TryHashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to compute the HMAC of data using the SHA256 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />.</param>
      <returns>
        <see langword="false" /> if <paramref name="destination" /> is too small to hold the calculated hash, <see langword="true" /> otherwise.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA256.TryHashFinal(System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to finalize the HMAC computation after the last data is processed by the HMAC algorithm.</summary>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is long enough to receive the HMAC value; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.HMACSHA256.Key">
      <summary>Gets or sets the key to use in the HMAC calculation.</summary>
      <returns>The key to use in the HMAC calculation.</returns>
    </member>
    <member name="T:System.Security.Cryptography.HMACSHA3_256">
      <summary>Computes a Hash-based Message Authentication Code (HMAC) by using the SHA3-256 hash function.</summary>
    </member>
    <member name="F:System.Security.Cryptography.HMACSHA3_256.HashSizeInBits">
      <summary>The hash size produced by the HMAC SHA3-256 algorithm, in bits.</summary>
    </member>
    <member name="F:System.Security.Cryptography.HMACSHA3_256.HashSizeInBytes">
      <summary>The hash size produced by the HMAC SHA3-256 algorithm, in bytes.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_256.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACSHA3_256" /> class with a randomly generated key.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_256.#ctor(System.Byte[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACSHA3_256" /> class with the specified key data.</summary>
      <param name="key">The secret key for <see cref="T:System.Security.Cryptography.HMACSHA3_256" />. The key can be any length.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_256.Dispose(System.Boolean)">
      <summary>Releases the unmanaged resources used by the <xref data-throw-if-not-resolved="true" uid="System.Security.Cryptography.HMAC"></xref> class when a key change is legitimate and optionally releases the managed resources.</summary>
      <param name="disposing">
        <code data-dev-comment-type="langword">true</code> to release both managed and unmanaged resources; <code data-dev-comment-type="langword">false</code> to release only unmanaged resources.</param>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_256.HashCore(System.Byte[],System.Int32,System.Int32)">
      <summary>When overridden in a derived class, routes data written to the object into the HMAC algorithm for computing the HMAC value.</summary>
      <param name="rgb">The input data.</param>
      <param name="ib">The offset into the byte array from which to begin using data.</param>
      <param name="cb">The number of bytes in the array to use as data.</param>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_256.HashCore(System.ReadOnlySpan{System.Byte})">
      <summary>Routes data written to the object into the HMAC algorithm for computing the HMAC.</summary>
      <param name="source">The input to compute the HMAC code for.</param>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_256.HashData(System.Byte[],System.Byte[])">
      <summary>Computes the HMAC of data using the SHA3-256 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_256.HashData(System.Byte[],System.IO.Stream)">
      <summary>Computes the HMAC of a stream using the SHA3-256 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_256.HashData(System.ReadOnlySpan{System.Byte},System.IO.Stream,System.Span{System.Byte})">
      <summary>Computes the HMAC of a stream using the SHA3-256 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">

              The buffer in <paramref name="destination" /> is too small to hold the calculated HMAC
              size. The SHA3-256 algorithm always produces a 256-bit HMAC, or 32 bytes.

-or-

<paramref name="source" /> does not support reading.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_256.HashData(System.ReadOnlySpan{System.Byte},System.IO.Stream)">
      <summary>Computes the HMAC of a stream using the SHA3-256 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_256.HashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte})">
      <summary>Computes the HMAC of data using the SHA3-256 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <exception cref="T:System.ArgumentException">The buffer in <paramref name="destination" /> is too small to hold the calculated hash
            size. The SHA3-256 algorithm always produces a 256-bit HMAC, or 32 bytes.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_256.HashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Computes the HMAC of data using the SHA3-256 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_256.HashDataAsync(System.Byte[],System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the HMAC of a stream using the SHA3-256 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_256.HashDataAsync(System.ReadOnlyMemory{System.Byte},System.IO.Stream,System.Memory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the HMAC of a stream using the SHA3-256 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">

              The buffer in <paramref name="destination" /> is too small to hold the calculated hash
              size. The SHA3-256 algorithm always produces a 256-bit hash, or 32 bytes.

-or-

<paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_256.HashDataAsync(System.ReadOnlyMemory{System.Byte},System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the HMAC of a stream using the SHA3-256 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_256.HashFinal">
      <summary>When overridden in a derived class, finalizes the HMAC computation after the last data is processed by the algorithm.</summary>
      <returns>The computed HMAC value in a byte array.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_256.Initialize">
      <summary>Initializes an instance of the default implementation of <xref data-throw-if-not-resolved="true" uid="System.Security.Cryptography.HMAC"></xref>.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_256.TryHashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to compute the HMAC of data using the SHA3-256 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />.</param>
      <returns>
        <see langword="false" /> if <paramref name="destination" /> is too small to hold the calculated hash, <see langword="true" /> otherwise.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_256.TryHashFinal(System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to finalize the HMAC computation after the last data is processed by the HMAC algorithm.</summary>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <param name="bytesWritten">When this method returns, contains the total number of bytes written into <code data-dev-comment-type="paramref">destination</code>. This parameter is treated as uninitialized.</param>
      <returns>
        <code data-dev-comment-type="langword">true</code> if <code data-dev-comment-type="paramref">destination</code> is long enough to receive the HMAC value; otherwise, <code data-dev-comment-type="langword">false</code>.</returns>
    </member>
    <member name="P:System.Security.Cryptography.HMACSHA3_256.IsSupported">
      <summary>Gets a value that indicates whether the algorithm is supported on the current platform.</summary>
      <returns>
        <see langword="true" /> if the algorithm is supported; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.HMACSHA3_256.Key">
      <summary>Gets or sets the key to use in the HMAC calculation.</summary>
      <returns>The key to use in the HMAC calculation.</returns>
    </member>
    <member name="T:System.Security.Cryptography.HMACSHA3_384">
      <summary>Computes a Hash-based Message Authentication Code (HMAC) by using the SHA3-384 hash function.</summary>
    </member>
    <member name="F:System.Security.Cryptography.HMACSHA3_384.HashSizeInBits">
      <summary>The hash size produced by the HMAC SHA3-384 algorithm, in bits.</summary>
    </member>
    <member name="F:System.Security.Cryptography.HMACSHA3_384.HashSizeInBytes">
      <summary>The hash size produced by the HMAC SHA3-384 algorithm, in bytes.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_384.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACSHA3_384" /> class with a randomly generated key.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_384.#ctor(System.Byte[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACSHA3_384" /> class with the specified key data.</summary>
      <param name="key">The secret key for <see cref="T:System.Security.Cryptography.HMACSHA3_384" />. The key can be any length.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_384.Dispose(System.Boolean)">
      <summary>Releases the unmanaged resources used by the <xref data-throw-if-not-resolved="true" uid="System.Security.Cryptography.HMAC"></xref> class when a key change is legitimate and optionally releases the managed resources.</summary>
      <param name="disposing">
        <code data-dev-comment-type="langword">true</code> to release both managed and unmanaged resources; <code data-dev-comment-type="langword">false</code> to release only unmanaged resources.</param>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_384.HashCore(System.Byte[],System.Int32,System.Int32)">
      <summary>When overridden in a derived class, routes data written to the object into the HMAC algorithm for computing the HMAC value.</summary>
      <param name="rgb">The input data.</param>
      <param name="ib">The offset into the byte array from which to begin using data.</param>
      <param name="cb">The number of bytes in the array to use as data.</param>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_384.HashCore(System.ReadOnlySpan{System.Byte})">
      <summary>Routes data written to the object into the HMAC algorithm for computing the HMAC.</summary>
      <param name="source">The input to compute the HMAC code for.</param>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_384.HashData(System.Byte[],System.Byte[])">
      <summary>Computes the HMAC of data using the SHA3-384 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_384.HashData(System.Byte[],System.IO.Stream)">
      <summary>Computes the HMAC of a stream using the SHA3-384 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_384.HashData(System.ReadOnlySpan{System.Byte},System.IO.Stream,System.Span{System.Byte})">
      <summary>Computes the HMAC of a stream using the SHA3-384 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">

              The buffer in <paramref name="destination" /> is too small to hold the calculated HMAC
              size. The SHA3-384 algorithm always produces a 384-bit HMAC, or 48 bytes.

-or-

<paramref name="source" /> does not support reading.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_384.HashData(System.ReadOnlySpan{System.Byte},System.IO.Stream)">
      <summary>Computes the HMAC of a stream using the SHA3-384 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_384.HashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte})">
      <summary>Computes the HMAC of data using the SHA3-384 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <exception cref="T:System.ArgumentException">The buffer in <paramref name="destination" /> is too small to hold the calculated hash
            size. The SHA3-384 algorithm always produces a 384-bit HMAC, or 48 bytes.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_384.HashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Computes the HMAC of data using the SHA3-384 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_384.HashDataAsync(System.Byte[],System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the HMAC of a stream using the SHA3-384 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_384.HashDataAsync(System.ReadOnlyMemory{System.Byte},System.IO.Stream,System.Memory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the HMAC of a stream using the SHA3-384 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">

              The buffer in <paramref name="destination" /> is too small to hold the calculated hash
              size. The SHA3-384 algorithm always produces a 384-bit hash, or 48 bytes.

-or-

<paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_384.HashDataAsync(System.ReadOnlyMemory{System.Byte},System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the HMAC of a stream using the SHA3-384 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_384.HashFinal">
      <summary>When overridden in a derived class, finalizes the HMAC computation after the last data is processed by the algorithm.</summary>
      <returns>The computed HMAC value in a byte array.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_384.Initialize">
      <summary>Initializes an instance of the default implementation of <xref data-throw-if-not-resolved="true" uid="System.Security.Cryptography.HMAC"></xref>.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_384.TryHashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to compute the HMAC of data using the SHA3-384 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />.</param>
      <returns>
        <see langword="false" /> if <paramref name="destination" /> is too small to hold the calculated hash, <see langword="true" /> otherwise.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_384.TryHashFinal(System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to finalize the HMAC computation after the last data is processed by the HMAC algorithm.</summary>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <param name="bytesWritten">When this method returns, contains the total number of bytes written into <code data-dev-comment-type="paramref">destination</code>. This parameter is treated as uninitialized.</param>
      <returns>
        <code data-dev-comment-type="langword">true</code> if <code data-dev-comment-type="paramref">destination</code> is long enough to receive the HMAC value; otherwise, <code data-dev-comment-type="langword">false</code>.</returns>
    </member>
    <member name="P:System.Security.Cryptography.HMACSHA3_384.IsSupported">
      <summary>Gets a value that indicates whether the algorithm is supported on the current platform.</summary>
      <returns>
        <see langword="true" /> if the algorithm is supported; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.HMACSHA3_384.Key">
      <summary>Gets or sets the key to use in the HMAC calculation.</summary>
      <returns>The key to use in the HMAC calculation.</returns>
    </member>
    <member name="T:System.Security.Cryptography.HMACSHA3_512">
      <summary>Computes a Hash-based Message Authentication Code (HMAC) by using the SHA3-512 hash function.</summary>
    </member>
    <member name="F:System.Security.Cryptography.HMACSHA3_512.HashSizeInBits">
      <summary>The hash size produced by the HMAC SHA3-512 algorithm, in bits.</summary>
    </member>
    <member name="F:System.Security.Cryptography.HMACSHA3_512.HashSizeInBytes">
      <summary>The hash size produced by the HMAC SHA3-512 algorithm, in bytes.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_512.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACSHA3_512" /> class with a randomly generated key.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_512.#ctor(System.Byte[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACSHA3_512" /> class with the specified key data.</summary>
      <param name="key">The secret key for <see cref="T:System.Security.Cryptography.HMACSHA3_512" />. The key can be any length.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_512.Dispose(System.Boolean)">
      <summary>Releases the unmanaged resources used by the <xref data-throw-if-not-resolved="true" uid="System.Security.Cryptography.HMAC"></xref> class when a key change is legitimate and optionally releases the managed resources.</summary>
      <param name="disposing">
        <code data-dev-comment-type="langword">true</code> to release both managed and unmanaged resources; <code data-dev-comment-type="langword">false</code> to release only unmanaged resources.</param>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_512.HashCore(System.Byte[],System.Int32,System.Int32)">
      <summary>When overridden in a derived class, routes data written to the object into the HMAC algorithm for computing the HMAC value.</summary>
      <param name="rgb">The input data.</param>
      <param name="ib">The offset into the byte array from which to begin using data.</param>
      <param name="cb">The number of bytes in the array to use as data.</param>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_512.HashCore(System.ReadOnlySpan{System.Byte})">
      <summary>Routes data written to the object into the HMAC algorithm for computing the HMAC.</summary>
      <param name="source">The input to compute the HMAC code for.</param>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_512.HashData(System.Byte[],System.Byte[])">
      <summary>Computes the HMAC of data using the SHA3-512 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_512.HashData(System.Byte[],System.IO.Stream)">
      <summary>Computes the HMAC of a stream using the SHA3-512 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_512.HashData(System.ReadOnlySpan{System.Byte},System.IO.Stream,System.Span{System.Byte})">
      <summary>Computes the HMAC of a stream using the SHA3-512 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">

              The buffer in <paramref name="destination" /> is too small to hold the calculated HMAC
              size. The SHA3-512 algorithm always produces a 512-bit HMAC, or 64 bytes.

-or-

<paramref name="source" /> does not support reading.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_512.HashData(System.ReadOnlySpan{System.Byte},System.IO.Stream)">
      <summary>Computes the HMAC of a stream using the SHA3-512 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_512.HashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte})">
      <summary>Computes the HMAC of data using the SHA3-512 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <exception cref="T:System.ArgumentException">The buffer in <paramref name="destination" /> is too small to hold the calculated hash
            size. The SHA3-512 algorithm always produces a 512-bit HMAC, or 64 bytes.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_512.HashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Computes the HMAC of data using the SHA3-512 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_512.HashDataAsync(System.Byte[],System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the HMAC of a stream using the SHA3-512 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_512.HashDataAsync(System.ReadOnlyMemory{System.Byte},System.IO.Stream,System.Memory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the HMAC of a stream using the SHA3-512 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">

              The buffer in <paramref name="destination" /> is too small to hold the calculated hash
              size. The SHA3-512 algorithm always produces a 512-bit hash, or 64 bytes.

-or-

<paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_512.HashDataAsync(System.ReadOnlyMemory{System.Byte},System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the HMAC of a stream using the SHA3-512 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_512.HashFinal">
      <summary>When overridden in a derived class, finalizes the HMAC computation after the last data is processed by the algorithm.</summary>
      <returns>The computed HMAC value in a byte array.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_512.Initialize">
      <summary>Initializes an instance of the default implementation of <xref data-throw-if-not-resolved="true" uid="System.Security.Cryptography.HMAC"></xref>.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_512.TryHashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to compute the HMAC of data using the SHA3-512 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />.</param>
      <returns>
        <see langword="false" /> if <paramref name="destination" /> is too small to hold the calculated hash, <see langword="true" /> otherwise.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA3_512.TryHashFinal(System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to finalize the HMAC computation after the last data is processed by the HMAC algorithm.</summary>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <param name="bytesWritten">When this method returns, contains the total number of bytes written into <code data-dev-comment-type="paramref">destination</code>. This parameter is treated as uninitialized.</param>
      <returns>
        <code data-dev-comment-type="langword">true</code> if <code data-dev-comment-type="paramref">destination</code> is long enough to receive the HMAC value; otherwise, <code data-dev-comment-type="langword">false</code>.</returns>
    </member>
    <member name="P:System.Security.Cryptography.HMACSHA3_512.IsSupported">
      <summary>Gets a value that indicates whether the algorithm is supported on the current platform.</summary>
      <returns>
        <see langword="true" /> if the algorithm is supported; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.HMACSHA3_512.Key">
      <summary>Gets or sets the key to use in the HMAC calculation.</summary>
      <returns>The key to use in the HMAC calculation.</returns>
    </member>
    <member name="T:System.Security.Cryptography.HMACSHA384">
      <summary>Computes a Hash-based Message Authentication Code (HMAC) using the <see cref="T:System.Security.Cryptography.SHA384" /> hash function.</summary>
    </member>
    <member name="F:System.Security.Cryptography.HMACSHA384.HashSizeInBits">
      <summary>The hash size produced by the HMAC SHA384 algorithm, in bits.</summary>
    </member>
    <member name="F:System.Security.Cryptography.HMACSHA384.HashSizeInBytes">
      <summary>The hash size produced by the HMAC SHA384 algorithm, in bytes.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA384.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACSHA384" /> class by using a randomly generated key.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA384.#ctor(System.Byte[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACSHA384" /> class by using the specified key data.</summary>
      <param name="key">The secret key for HMAC computation. The key can be any length. However, the recommended size is 128 bytes. If the key is more than 128 bytes long, it is hashed (using SHA-384) to derive a 48-byte key.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="key" /> parameter is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA384.Dispose(System.Boolean)">
      <summary>Releases the unmanaged resources used by the <see cref="T:System.Security.Cryptography.HMACSHA384" /> and optionally releases the managed resources.</summary>
      <param name="disposing">
        <see langword="true" /> to release both managed and unmanaged resources; <see langword="false" /> to release only unmanaged resources.</param>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA384.HashCore(System.Byte[],System.Int32,System.Int32)">
      <summary>Routes data written to the object into the HMAC algorithm for computing the HMAC.</summary>
      <param name="rgb">The input to compute the HMAC for.</param>
      <param name="ib">The offset into the byte array from which to begin using data.</param>
      <param name="cb">The number of bytes in the byte array to use as data.</param>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA384.HashCore(System.ReadOnlySpan{System.Byte})">
      <summary>Routes data written to the object into the HMAC algorithm for computing the HMAC.</summary>
      <param name="source">The input to compute the HMAC for.</param>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA384.HashData(System.Byte[],System.Byte[])">
      <summary>Computes the HMAC of data using the SHA384 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA384.HashData(System.Byte[],System.IO.Stream)">
      <summary>Computes the HMAC of a stream using the SHA384 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA384.HashData(System.ReadOnlySpan{System.Byte},System.IO.Stream,System.Span{System.Byte})">
      <summary>Computes the HMAC of a stream using the SHA384 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <para>
              The buffer in <paramref name="destination" /> is too small to hold the calculated HMAC
              size. The SHA384 algorithm always produces a 384-bit HMAC, or 48 bytes.</para>
        <para>-or-</para>
        <para>
          <paramref name="source" /> does not support reading.</para>
      </exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA384.HashData(System.ReadOnlySpan{System.Byte},System.IO.Stream)">
      <summary>Computes the HMAC of a stream using the SHA384 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA384.HashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte})">
      <summary>Computes the HMAC of data using the SHA384 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <exception cref="T:System.ArgumentException">The buffer in <paramref name="destination" /> is too small to hold the calculated hash size. The SHA384 algorithm always produces a 384-bit HMAC, or 48 bytes.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA384.HashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Computes the HMAC of data using the SHA384 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA384.HashDataAsync(System.Byte[],System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the HMAC of a stream using the SHA384 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA384.HashDataAsync(System.ReadOnlyMemory{System.Byte},System.IO.Stream,System.Memory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the HMAC of a stream using the SHA384 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <para>
              The buffer in <paramref name="destination" /> is too small to hold the calculated hash
              size. The SHA384 algorithm always produces a 384-bit hash, or 48 bytes.</para>
        <para>-or-</para>
        <para>
          <paramref name="source" /> does not support reading.</para>
      </exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA384.HashDataAsync(System.ReadOnlyMemory{System.Byte},System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the HMAC of a stream using the SHA384 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA384.HashFinal">
      <summary>Finalizes the HMAC computation after the last data is processed by the algorithm.</summary>
      <returns>The computed HMAC value in a byte array.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA384.Initialize">
      <summary>Resets the hash algorithm to its initial state.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA384.TryHashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to compute the HMAC of data using the SHA384 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />.</param>
      <returns>
        <see langword="false" /> if <paramref name="destination" /> is too small to hold the calculated hash, <see langword="true" /> otherwise.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA384.TryHashFinal(System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to finalize the HMAC computation after the last data is processed by the HMAC algorithm.</summary>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is long enough to receive the HMAC value; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.HMACSHA384.Key">
      <summary>Gets or sets the key to use in the HMAC calculation.</summary>
      <returns>The key to use in the HMAC calculation.</returns>
    </member>
    <member name="P:System.Security.Cryptography.HMACSHA384.ProduceLegacyHmacValues">
      <summary>Provides a workaround for the .NET Framework 2.0 implementation of the <see cref="T:System.Security.Cryptography.HMACSHA384" /> algorithm, which is inconsistent with the .NET Framework 2.0 Service Pack 1 implementation of the algorithm.</summary>
      <returns>
        <see langword="true" /> to enable .NET Framework 2.0 Service Pack 1 applications to interact with .NET Framework 2.0 applications; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.HMACSHA512">
      <summary>Computes a Hash-based Message Authentication Code (HMAC) using the <see cref="T:System.Security.Cryptography.SHA512" /> hash function.</summary>
    </member>
    <member name="F:System.Security.Cryptography.HMACSHA512.HashSizeInBits">
      <summary>The hash size produced by the HMAC SHA512 algorithm, in bits.</summary>
    </member>
    <member name="F:System.Security.Cryptography.HMACSHA512.HashSizeInBytes">
      <summary>The hash size produced by the HMAC SHA512 algorithm, in bytes.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA512.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACSHA512" /> class with a randomly generated key.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA512.#ctor(System.Byte[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACSHA512" /> class with the specified key data.</summary>
      <param name="key">The secret key for HMAC computation. The key can be any length. However, the recommended size is 128 bytes. If the key is more than 128 bytes long, it is hashed (using SHA-512) to derive a 64-byte key.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="key" /> parameter is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA512.Dispose(System.Boolean)">
      <summary>Releases the unmanaged resources used by the <see cref="T:System.Security.Cryptography.HMACSHA512" /> and optionally releases the managed resources.</summary>
      <param name="disposing">
        <see langword="true" /> to release both managed and unmanaged resources; <see langword="false" /> to release only unmanaged resources.</param>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA512.HashCore(System.Byte[],System.Int32,System.Int32)">
      <summary>Routes data written to the object into the HMAC algorithm for computing the HMAC.</summary>
      <param name="rgb">The input to compute the HMAC for.</param>
      <param name="ib">The offset into the byte array from which to begin using data.</param>
      <param name="cb">The number of bytes in the byte array to use as data.</param>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA512.HashCore(System.ReadOnlySpan{System.Byte})">
      <summary>Routes data written to the object into the HMAC algorithm for computing the HMAC.</summary>
      <param name="source">The input to compute the HMAC for.</param>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA512.HashData(System.Byte[],System.Byte[])">
      <summary>Computes the HMAC of data using the SHA512 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA512.HashData(System.Byte[],System.IO.Stream)">
      <summary>Computes the HMAC of a stream using the SHA512 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA512.HashData(System.ReadOnlySpan{System.Byte},System.IO.Stream,System.Span{System.Byte})">
      <summary>Computes the HMAC of a stream using the SHA512 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <para>
              The buffer in <paramref name="destination" /> is too small to hold the calculated HMAC
              size. The SHA512 algorithm always produces a 512-bit HMAC, or 64 bytes.</para>
        <para>-or-</para>
        <para>
          <paramref name="source" /> does not support reading.</para>
      </exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA512.HashData(System.ReadOnlySpan{System.Byte},System.IO.Stream)">
      <summary>Computes the HMAC of a stream using the SHA512 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA512.HashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte})">
      <summary>Computes the HMAC of data using the SHA512 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <exception cref="T:System.ArgumentException">The buffer in <paramref name="destination" /> is too small to hold the calculated hash size. The SHA512 algorithm always produces a 512-bit HMAC, or 64 bytes.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA512.HashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Computes the HMAC of data using the SHA512 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA512.HashDataAsync(System.Byte[],System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the HMAC of a stream using the SHA512 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA512.HashDataAsync(System.ReadOnlyMemory{System.Byte},System.IO.Stream,System.Memory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the HMAC of a stream using the SHA512 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <para>
              The buffer in <paramref name="destination" /> is too small to hold the calculated hash
              size. The SHA512 algorithm always produces a 512-bit hash, or 64 bytes.</para>
        <para>-or-</para>
        <para>
          <paramref name="source" /> does not support reading.</para>
      </exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA512.HashDataAsync(System.ReadOnlyMemory{System.Byte},System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the HMAC of a stream using the SHA512 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The stream to HMAC.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The HMAC of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA512.HashFinal">
      <summary>Finalizes the HMAC computation after the last data is processed by the algorithm.</summary>
      <returns>The computed HMAC value in a byte array.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA512.Initialize">
      <summary>Resets the hash algorithm to its initial state.</summary>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA512.TryHashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to compute the HMAC of data using the SHA512 algorithm.</summary>
      <param name="key">The HMAC key.</param>
      <param name="source">The data to HMAC.</param>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <param name="bytesWritten">When this method returns, contains the total number of bytes written into <paramref name="destination" />.</param>
      <returns>
        <see langword="false" /> if <paramref name="destination" /> is too small to hold the calculated hash, <see langword="true" /> otherwise.</returns>
    </member>
    <member name="M:System.Security.Cryptography.HMACSHA512.TryHashFinal(System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to finalize the HMAC computation after the last data is processed by the HMAC algorithm.</summary>
      <param name="destination">The buffer to receive the HMAC value.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is long enough to receive the HMAC value; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.HMACSHA512.Key">
      <summary>Gets or sets the key to use in the HMAC calculation.</summary>
      <returns>The key to use in the HMAC calculation.</returns>
    </member>
    <member name="P:System.Security.Cryptography.HMACSHA512.ProduceLegacyHmacValues">
      <summary>Provides a workaround for the .NET Framework 2.0 implementation of the <see cref="T:System.Security.Cryptography.HMACSHA512" /> algorithm, which is inconsistent with the .NET Framework 2.0 Service Pack 1 implementation.</summary>
      <returns>
        <see langword="true" /> to enable .NET Framework 2.0 Service Pack 1 applications to interact with .NET Framework 2.0 applications; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.ICryptoTransform">
      <summary>Defines the basic operations of cryptographic transformations.</summary>
    </member>
    <member name="M:System.Security.Cryptography.ICryptoTransform.TransformBlock(System.Byte[],System.Int32,System.Int32,System.Byte[],System.Int32)">
      <summary>Transforms the specified region of the input byte array and copies the resulting transform to the specified region of the output byte array.</summary>
      <param name="inputBuffer">The input for which to compute the transform.</param>
      <param name="inputOffset">The offset into the input byte array from which to begin using data.</param>
      <param name="inputCount">The number of bytes in the input byte array to use as data.</param>
      <param name="outputBuffer">The output to which to write the transform.</param>
      <param name="outputOffset">The offset into the output byte array from which to begin writing data.</param>
      <returns>The number of bytes written.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ICryptoTransform.TransformFinalBlock(System.Byte[],System.Int32,System.Int32)">
      <summary>Transforms the specified region of the specified byte array.</summary>
      <param name="inputBuffer">The input for which to compute the transform.</param>
      <param name="inputOffset">The offset into the byte array from which to begin using data.</param>
      <param name="inputCount">The number of bytes in the byte array to use as data.</param>
      <returns>The computed transform.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ICryptoTransform.CanReuseTransform">
      <summary>Gets a value indicating whether the current transform can be reused.</summary>
      <returns>
        <see langword="true" /> if the current transform can be reused; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ICryptoTransform.CanTransformMultipleBlocks">
      <summary>Gets a value indicating whether multiple blocks can be transformed.</summary>
      <returns>
        <see langword="true" /> if multiple blocks can be transformed; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ICryptoTransform.InputBlockSize">
      <summary>Gets the input block size.</summary>
      <returns>The size of the input data blocks in bytes.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ICryptoTransform.OutputBlockSize">
      <summary>Gets the output block size.</summary>
      <returns>The size of the output data blocks in bytes.</returns>
    </member>
    <member name="T:System.Security.Cryptography.ICspAsymmetricAlgorithm">
      <summary>Defines methods that allow an <see cref="T:System.Security.Cryptography.AsymmetricAlgorithm" /> class to enumerate key container information, and import and export Microsoft Cryptographic API (CAPI)-compatible key blobs.</summary>
    </member>
    <member name="M:System.Security.Cryptography.ICspAsymmetricAlgorithm.ExportCspBlob(System.Boolean)">
      <summary>Exports a blob that contains the key information associated with an <see cref="T:System.Security.Cryptography.AsymmetricAlgorithm" /> object.</summary>
      <param name="includePrivateParameters">
        <see langword="true" /> to include the private key; otherwise, <see langword="false" />.</param>
      <returns>A byte array that contains the key information associated with an <see cref="T:System.Security.Cryptography.AsymmetricAlgorithm" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ICspAsymmetricAlgorithm.ImportCspBlob(System.Byte[])">
      <summary>Imports a blob that represents asymmetric key information.</summary>
      <param name="rawData">A byte array that represents an asymmetric key blob.</param>
    </member>
    <member name="P:System.Security.Cryptography.ICspAsymmetricAlgorithm.CspKeyContainerInfo">
      <summary>Gets a <see cref="T:System.Security.Cryptography.CspKeyContainerInfo" /> object that describes additional information about a cryptographic key pair.</summary>
      <returns>A <see cref="T:System.Security.Cryptography.CspKeyContainerInfo" /> object that describes additional information about a cryptographic key pair.</returns>
    </member>
    <member name="T:System.Security.Cryptography.IncrementalHash">
      <summary>
            Provides support for computing a hash or HMAC value incrementally across several segments.</summary>
    </member>
    <member name="M:System.Security.Cryptography.IncrementalHash.AppendData(System.Byte[],System.Int32,System.Int32)">
      <summary>
            Append <paramref name="count" /> bytes of <paramref name="data" />, starting at <paramref name="offset" />,
            to the data already processed in the hash or HMAC.</summary>
      <param name="data">The data to process.</param>
      <param name="offset">The offset into the byte array from which to begin using data.</param>
      <param name="count">The number of bytes in the array to use as data.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <c>null</c>.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="count" /> is out of range. This parameter requires a non-negative number less than
                the <see cref="P:System.Array.Length" /> value of <paramref name="data" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="count" /> is greater than
                <paramref name="data" />.<see cref="P:System.Array.Length" /> - <paramref name="offset" />.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.IncrementalHash.AppendData(System.Byte[])">
      <summary>
            Append the entire contents of <paramref name="data" /> to the data already processed in the hash or HMAC.</summary>
      <param name="data">The data to process.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <c>null</c>.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.IncrementalHash.AppendData(System.ReadOnlySpan{System.Byte})">
      <summary>Appends the specified data to the data already processed in the hash or Hash-based Message Authentication Code (HMAC).</summary>
      <param name="data">The data to process.</param>
      <exception cref="T:System.ObjectDisposedException">The <see cref="T:System.Security.Cryptography.IncrementalHash" /> object has already been disposed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.IncrementalHash.Clone">
      <summary>Creates a new instance of <see cref="T:System.Security.Cryptography.IncrementalHash" /> with the existing appended data preserved.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>A clone of the current instance.</returns>
    </member>
    <member name="M:System.Security.Cryptography.IncrementalHash.CreateHash(System.Security.Cryptography.HashAlgorithmName)">
      <summary>
            Create an <see cref="T:System.Security.Cryptography.IncrementalHash" /> for the algorithm specified by <paramref name="hashAlgorithm" />.</summary>
      <param name="hashAlgorithm">The name of the hash algorithm to perform.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <c>null</c>, or
                the empty string.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> is not a known hash algorithm.</exception>
      <returns>
            An <see cref="T:System.Security.Cryptography.IncrementalHash" /> instance ready to compute the hash algorithm specified
            by <paramref name="hashAlgorithm" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.IncrementalHash.CreateHMAC(System.Security.Cryptography.HashAlgorithmName,System.Byte[])">
      <summary>
            Create an <see cref="T:System.Security.Cryptography.IncrementalHash" /> for the Hash-based Message Authentication Code (HMAC)
            algorithm utilizing the hash algorithm specified by <paramref name="hashAlgorithm" />, and a
            key specified by <paramref name="key" />.</summary>
      <param name="hashAlgorithm">The name of the hash algorithm to perform within the HMAC.</param>
      <param name="key">
                The secret key for the HMAC. The key can be any length, but a key longer than the output size
                of the hash algorithm specified by <paramref name="hashAlgorithm" /> will be hashed (using the
                algorithm specified by <paramref name="hashAlgorithm" />) to derive a correctly-sized key. Therefore,
                the recommended size of the secret key is the output size of the hash specified by
                <paramref name="hashAlgorithm" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <c>null</c>, or
                the empty string.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> is not a known hash algorithm.</exception>
      <returns>
            An <see cref="T:System.Security.Cryptography.IncrementalHash" /> instance ready to compute the hash algorithm specified
            by <paramref name="hashAlgorithm" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.IncrementalHash.CreateHMAC(System.Security.Cryptography.HashAlgorithmName,System.ReadOnlySpan{System.Byte})">
      <summary>Create an <see cref="T:System.Security.Cryptography.IncrementalHash" /> for the Hash-based Message Authentication Code (HMAC) algorithm utilizing the hash algorithm specified by <paramref name="hashAlgorithm" />, and a key specified by <paramref name="key" />.</summary>
      <param name="hashAlgorithm">The name of the hash algorithm to perform within the HMAC.</param>
      <param name="key">The secret key for the HMAC.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or the empty string.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> is not a known hash algorithm.</exception>
      <returns>A hash instance to compute the hash algorithm specified by <paramref name="hashAlgorithm" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.IncrementalHash.Dispose">
      <summary>
            Release all resources used by the current instance of the
            <see cref="T:System.Security.Cryptography.IncrementalHash" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.IncrementalHash.GetCurrentHash">
      <summary>Retrieves the hash or Hash-based Message Authentication Code (HMAC) for the data accumulated from prior calls to the <see cref="M:System.Security.Cryptography.IncrementalHash.AppendData(System.ReadOnlySpan{System.Byte})" /> methods, without resetting the object to its initial state.</summary>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>The computed hash or HMAC.</returns>
    </member>
    <member name="M:System.Security.Cryptography.IncrementalHash.GetCurrentHash(System.Span{System.Byte})">
      <summary>Retrieves the hash or Hash-based Message Authentication Code (HMAC) for the data accumulated from prior calls to the <see cref="M:System.Security.Cryptography.IncrementalHash.AppendData(System.ReadOnlySpan{System.Byte})" /> methods, without resetting the object to its initial state.</summary>
      <param name="destination">The buffer to receive the hash or HMAC value.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="destination" /> has a <see cref="P:System.Span`1.Length" /> value less than <see cref="P:System.Security.Cryptography.IncrementalHash.HashLengthInBytes" />.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>The number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.IncrementalHash.GetHashAndReset">
      <summary>
            Retrieve the hash or HMAC for the data accumulated from prior calls to
            <see cref="M:System.Security.Cryptography.IncrementalHash.AppendData(System.Byte[])" />, and return to the state the object
            was in at construction.</summary>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>The computed hash or HMAC.</returns>
    </member>
    <member name="M:System.Security.Cryptography.IncrementalHash.GetHashAndReset(System.Span{System.Byte})">
      <summary>Retrieves the hash or Hash-based Message Authentication Code (HMAC) for the data accumulated from prior calls to the <see cref="M:System.Security.Cryptography.IncrementalHash.AppendData(System.ReadOnlySpan{System.Byte})" /> methods, and resets the object to its initial state.</summary>
      <param name="destination">The buffer to receive the hash or HMAC value.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="destination" /> has a <see cref="P:System.Span`1.Length" /> value less than <see cref="P:System.Security.Cryptography.IncrementalHash.HashLengthInBytes" />.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>The number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.IncrementalHash.TryGetCurrentHash(System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to retrieve the hash or Hash-based Message Authentication Code (HMAC) for the data accumulated from prior calls to the <see cref="M:System.Security.Cryptography.IncrementalHash.AppendData(System.ReadOnlySpan{System.Byte})" /> methods, without resetting the object to its initial state.</summary>
      <param name="destination">The buffer to receive the hash or HMAC value.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />.
              This parameter is treated as uninitialized.</param>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is long enough to receive the hash or HMAC value; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.IncrementalHash.TryGetHashAndReset(System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to finalize the hash computation after the last data is processed by the hash algorithm.</summary>
      <param name="destination">The buffer to receive the hash or Hash-Based Message Authentication Code (HMAC) value.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.ObjectDisposedException">The <see cref="T:System.Security.Cryptography.IncrementalHash" /> object has already been disposed.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is long enough to receive the hash or HMAC value; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.IncrementalHash.AlgorithmName">
      <summary>
            Get the name of the algorithm being performed.</summary>
      <returns>The name of the algorithm being performed.</returns>
    </member>
    <member name="P:System.Security.Cryptography.IncrementalHash.HashLengthInBytes">
      <summary>Gets the output size of this hash or HMAC algorithm, in bytes.</summary>
      <returns>The output size of this hash or HMAC algorithm, in bytes.</returns>
    </member>
    <member name="T:System.Security.Cryptography.KeyedHashAlgorithm">
      <summary>Represents the abstract class from which all implementations of keyed hash algorithms must derive.</summary>
    </member>
    <member name="F:System.Security.Cryptography.KeyedHashAlgorithm.KeyValue">
      <summary>The key to use in the hash algorithm.</summary>
    </member>
    <member name="M:System.Security.Cryptography.KeyedHashAlgorithm.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.KeyedHashAlgorithm" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.KeyedHashAlgorithm.Create">
      <summary>Creates an instance of the default implementation of a keyed hash algorithm.</summary>
      <returns>A new <see cref="T:System.Security.Cryptography.HMACSHA1" /> instance, unless the default settings have been changed.</returns>
    </member>
    <member name="M:System.Security.Cryptography.KeyedHashAlgorithm.Create(System.String)">
      <summary>Creates an instance of the specified implementation of a keyed hash algorithm.</summary>
      <param name="algName">The keyed hash algorithm implementation to use. The following table shows the valid values for the <paramref name="algName" /> parameter and the algorithms they map to.

 <list type="table"><listheader><term> Parameter value</term><description> Implements</description></listheader><item><term> System.Security.Cryptography.HMAC</term><description><see cref="T:System.Security.Cryptography.HMACSHA1" /></description></item><item><term> System.Security.Cryptography.KeyedHashAlgorithm</term><description><see cref="T:System.Security.Cryptography.HMACSHA1" /></description></item><item><term> HMACMD5</term><description><see cref="T:System.Security.Cryptography.HMACMD5" /></description></item><item><term> System.Security.Cryptography.HMACMD5</term><description><see cref="T:System.Security.Cryptography.HMACMD5" /></description></item><item><term> HMACRIPEMD160</term><description><see cref="T:System.Security.Cryptography.HMACRIPEMD160" /></description></item><item><term> System.Security.Cryptography.HMACRIPEMD160</term><description><see cref="T:System.Security.Cryptography.HMACRIPEMD160" /></description></item><item><term> HMACSHA1</term><description><see cref="T:System.Security.Cryptography.HMACSHA1" /></description></item><item><term> System.Security.Cryptography.HMACSHA1</term><description><see cref="T:System.Security.Cryptography.HMACSHA1" /></description></item><item><term> HMACSHA256</term><description><see cref="T:System.Security.Cryptography.HMACSHA256" /></description></item><item><term> System.Security.Cryptography.HMACSHA256</term><description><see cref="T:System.Security.Cryptography.HMACSHA256" /></description></item><item><term> HMACSHA384</term><description><see cref="T:System.Security.Cryptography.HMACSHA384" /></description></item><item><term> System.Security.Cryptography.HMACSHA384</term><description><see cref="T:System.Security.Cryptography.HMACSHA384" /></description></item><item><term> HMACSHA512</term><description><see cref="T:System.Security.Cryptography.HMACSHA512" /></description></item><item><term> System.Security.Cryptography.HMACSHA512</term><description><see cref="T:System.Security.Cryptography.HMACSHA512" /></description></item><item><term> MACTripleDES</term><description><see cref="T:System.Security.Cryptography.MACTripleDES" /></description></item><item><term> System.Security.Cryptography.MACTripleDES</term><description><see cref="T:System.Security.Cryptography.MACTripleDES" /></description></item></list></param>
      <exception cref="T:System.PlatformNotSupportedException">.NET Core 2.0 - 3.1 and .NET 5 and later: In all cases.</exception>
      <returns>A new instance of the specified keyed hash algorithm.</returns>
    </member>
    <member name="M:System.Security.Cryptography.KeyedHashAlgorithm.Dispose(System.Boolean)">
      <summary>Releases the unmanaged resources used by the <see cref="T:System.Security.Cryptography.KeyedHashAlgorithm" /> and optionally releases the managed resources.</summary>
      <param name="disposing">
        <see langword="true" /> to release both managed and unmanaged resources; <see langword="false" /> to release only unmanaged resources.</param>
    </member>
    <member name="P:System.Security.Cryptography.KeyedHashAlgorithm.Key">
      <summary>Gets or sets the key to use in the hash algorithm.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An attempt was made to change the <see cref="P:System.Security.Cryptography.KeyedHashAlgorithm.Key" /> property after hashing has begun.</exception>
      <returns>The key to use in the hash algorithm.</returns>
    </member>
    <member name="T:System.Security.Cryptography.KeyNumber">
      <summary>Specifies whether to create an asymmetric signature key or an asymmetric exchange key.</summary>
    </member>
    <member name="F:System.Security.Cryptography.KeyNumber.Exchange">
      <summary>An exchange key pair used to encrypt session keys so that they can be safely stored and exchanged with other users. This value corresponds to the AT_KEYEXCHANGE value used in the unmanaged Microsoft Cryptographic API (CAPI).</summary>
    </member>
    <member name="F:System.Security.Cryptography.KeyNumber.Signature">
      <summary>A signature key pair used for authenticating digitally signed messages or files. This value corresponds to the AT_SIGNATURE value used in the unmanaged Microsoft Cryptographic API (CAPI).</summary>
    </member>
    <member name="T:System.Security.Cryptography.KeySizes">
      <summary>Determines the set of valid key sizes for the symmetric cryptographic algorithms.</summary>
    </member>
    <member name="M:System.Security.Cryptography.KeySizes.#ctor(System.Int32,System.Int32,System.Int32)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.KeySizes" /> class with the specified key values.</summary>
      <param name="minSize">The minimum valid key size.</param>
      <param name="maxSize">The maximum valid key size.</param>
      <param name="skipSize">The interval between valid key sizes.</param>
    </member>
    <member name="P:System.Security.Cryptography.KeySizes.MaxSize">
      <summary>Specifies the maximum key size.</summary>
      <returns>The maximum key size.</returns>
    </member>
    <member name="P:System.Security.Cryptography.KeySizes.MinSize">
      <summary>Specifies the minimum key size.</summary>
      <returns>The minimum key size.</returns>
    </member>
    <member name="P:System.Security.Cryptography.KeySizes.SkipSize">
      <summary>Specifies the interval between valid key sizes.</summary>
      <returns>The interval between valid key sizes.</returns>
    </member>
    <member name="T:System.Security.Cryptography.Kmac128">
      <summary>Computes the KMAC128 MAC for the input data.</summary>
    </member>
    <member name="M:System.Security.Cryptography.Kmac128.#ctor(System.Byte[],System.Byte[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Kmac128" /> class.</summary>
      <param name="key">The KMAC key.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred creating an instance of the algorithm.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMAC128. Callers can use the <see cref="P:System.Security.Cryptography.Kmac128.IsSupported" /> property
              to determine if the platform supports KMAC128.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Kmac128.#ctor(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Kmac128" /> class.</summary>
      <param name="key">The KMAC key.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred creating an instance of the algorithm.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMAC128. Callers can use the <see cref="P:System.Security.Cryptography.Kmac128.IsSupported" /> property
              to determine if the platform supports KMAC128.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Kmac128.AppendData(System.Byte[])">
      <summary>Appends the specified data to the data already processed in the hash.</summary>
      <param name="data">The data to process.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Kmac128.AppendData(System.ReadOnlySpan{System.Byte})">
      <summary>Appends the specified data to the data already processed in the hash.</summary>
      <param name="data">The data to process.</param>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Kmac128.Clone">
      <summary>Creates a new instance of <see cref="T:System.Security.Cryptography.Kmac128" /> with the existing appended data preserved.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>A clone of the current instance.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Kmac128.Dispose">
      <summary>Release all resources used by the current instance of the <see cref="T:System.Security.Cryptography.Kmac128" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.Kmac128.GetCurrentHash(System.Int32)">
      <summary>Retrieves the hash for the data accumulated from prior calls to the <c>AppendData</c> methods, without resetting the object to its initial state.</summary>
      <param name="outputLength">The size of the hash to produce.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>The computed hash.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Kmac128.GetCurrentHash(System.Span{System.Byte})">
      <summary>Fills the buffer with the hash for the data accumulated from prior calls to the <c>AppendData</c> methods, without resetting the object to its initial state.</summary>
      <param name="destination">The buffer to fill with the hash.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Kmac128.GetHashAndReset(System.Int32)">
      <summary>Retrieves the hash for the data accumulated from prior calls to the <c>AppendData</c> methods, and resets the object to its initial state.</summary>
      <param name="outputLength">The size of the hash to produce.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>The computed hash.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Kmac128.GetHashAndReset(System.Span{System.Byte})">
      <summary>Fills the buffer with the hash for the data accumulated from prior calls to the <c>AppendData</c> methods, and resets the object to its initial state.</summary>
      <param name="destination">The buffer to fill with the hash.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Kmac128.HashData(System.Byte[],System.Byte[],System.Int32,System.Byte[])">
      <summary>Computes the hash of data using the KMAC128 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The data to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMAC128. Callers can use the <see cref="P:System.Security.Cryptography.Kmac128.IsSupported" /> property
              to determine if the platform supports KMAC128.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Kmac128.HashData(System.Byte[],System.IO.Stream,System.Int32,System.Byte[])">
      <summary>Computes the hash of a stream using the KMAC128 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The stream to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMAC128. Callers can use the <see cref="P:System.Security.Cryptography.Kmac128.IsSupported" /> property
              to determine if the platform supports KMAC128.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Kmac128.HashData(System.ReadOnlySpan{System.Byte},System.IO.Stream,System.Int32,System.ReadOnlySpan{System.Byte})">
      <summary>Computes the hash of a stream using the KMAC128 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The stream to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMAC128. Callers can use the <see cref="P:System.Security.Cryptography.Kmac128.IsSupported" /> property
              to determine if the platform supports KMAC128.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Kmac128.HashData(System.ReadOnlySpan{System.Byte},System.IO.Stream,System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Computes the hash of a stream using the KMAC128 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to fill with the hash.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMAC128. Callers can use the <see cref="P:System.Security.Cryptography.Kmac128.IsSupported" /> property
              to determine if the platform supports KMAC128.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Kmac128.HashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Int32,System.ReadOnlySpan{System.Byte})">
      <summary>Computes the hash of data using the KMAC128 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The data to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMAC128. Callers can use the <see cref="P:System.Security.Cryptography.Kmac128.IsSupported" /> property
              to determine if the platform supports KMAC128.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Kmac128.HashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Computes the hash of data using the KMAC128 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The data to hash.</param>
      <param name="destination">The buffer to fill with the hash.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMAC128. Callers can use the <see cref="P:System.Security.Cryptography.Kmac128.IsSupported" /> property
              to determine if the platform supports KMAC128.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Kmac128.HashDataAsync(System.Byte[],System.IO.Stream,System.Int32,System.Byte[],System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the KMAC128 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The stream to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
 The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.OperationCanceledException">
        <paramref name="cancellationToken" /> has been canceled.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMAC128. Callers can use the <see cref="P:System.Security.Cryptography.Kmac128.IsSupported" /> property
              to determine if the platform supports KMAC128.</exception>
      <returns>A <see cref="T:System.Threading.Tasks.ValueTask`1" /> that completes with the computed hash.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Kmac128.HashDataAsync(System.ReadOnlyMemory{System.Byte},System.IO.Stream,System.Int32,System.ReadOnlyMemory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the KMAC128 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The stream to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
 The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.OperationCanceledException">
        <paramref name="cancellationToken" /> has been canceled.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMAC128. Callers can use the <see cref="P:System.Security.Cryptography.Kmac128.IsSupported" /> property
              to determine if the platform supports KMAC128.</exception>
      <returns>A <see cref="T:System.Threading.Tasks.ValueTask`1" /> that completes with the computed hash.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Kmac128.HashDataAsync(System.ReadOnlyMemory{System.Byte},System.IO.Stream,System.Memory{System.Byte},System.ReadOnlyMemory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the KMAC128 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to fill with the hash.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
 The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.OperationCanceledException">
        <paramref name="cancellationToken" /> has been canceled.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMAC128. Callers can use the <see cref="P:System.Security.Cryptography.Kmac128.IsSupported" /> property
              to determine if the platform supports KMAC128.</exception>
      <returns>A <see cref="T:System.Threading.Tasks.ValueTask" /> that represents the asynchronous operation.</returns>
    </member>
    <member name="P:System.Security.Cryptography.Kmac128.IsSupported">
      <summary>Gets a value that indicates whether the algorithm is supported on the current platform.</summary>
      <returns>
        <see langword="true" /> if the algorithm is supported; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.Kmac256">
      <summary>Computes the KMAC256 MAC for the input data.</summary>
    </member>
    <member name="M:System.Security.Cryptography.Kmac256.#ctor(System.Byte[],System.Byte[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Kmac256" /> class.</summary>
      <param name="key">The KMAC key.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred creating an instance of the algorithm.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMAC256. Callers can use the <see cref="P:System.Security.Cryptography.Kmac256.IsSupported" /> property
              to determine if the platform supports KMAC256.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Kmac256.#ctor(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Kmac256" /> class.</summary>
      <param name="key">The KMAC key.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred creating an instance of the algorithm.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMAC256. Callers can use the <see cref="P:System.Security.Cryptography.Kmac256.IsSupported" /> property
              to determine if the platform supports KMAC256.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Kmac256.AppendData(System.Byte[])">
      <summary>Appends the specified data to the data already processed in the hash.</summary>
      <param name="data">The data to process.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Kmac256.AppendData(System.ReadOnlySpan{System.Byte})">
      <summary>Appends the specified data to the data already processed in the hash.</summary>
      <param name="data">The data to process.</param>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Kmac256.Clone">
      <summary>Creates a new instance of <see cref="T:System.Security.Cryptography.Kmac256" /> with the existing appended data preserved.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>A clone of the current instance.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Kmac256.Dispose">
      <summary>Release all resources used by the current instance of the <see cref="T:System.Security.Cryptography.Kmac256" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.Kmac256.GetCurrentHash(System.Int32)">
      <summary>Retrieves the hash for the data accumulated from prior calls to the <c>AppendData</c> methods, without resetting the object to its initial state.</summary>
      <param name="outputLength">The size of the hash to produce.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>The computed hash.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Kmac256.GetCurrentHash(System.Span{System.Byte})">
      <summary>Fills the buffer with the hash for the data accumulated from prior calls to the <c>AppendData</c> methods, without resetting the object to its initial state.</summary>
      <param name="destination">The buffer to fill with the hash.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Kmac256.GetHashAndReset(System.Int32)">
      <summary>Retrieves the hash for the data accumulated from prior calls to the <c>AppendData</c> methods, and resets the object to its initial state.</summary>
      <param name="outputLength">The size of the hash to produce.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>The computed hash.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Kmac256.GetHashAndReset(System.Span{System.Byte})">
      <summary>Fills the buffer with the hash for the data accumulated from prior calls to the <c>AppendData</c> methods, and resets the object to its initial state.</summary>
      <param name="destination">The buffer to fill with the hash.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Kmac256.HashData(System.Byte[],System.Byte[],System.Int32,System.Byte[])">
      <summary>Computes the hash of data using the KMAC256 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The data to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMAC256. Callers can use the <see cref="P:System.Security.Cryptography.Kmac256.IsSupported" /> property
              to determine if the platform supports KMAC256.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Kmac256.HashData(System.Byte[],System.IO.Stream,System.Int32,System.Byte[])">
      <summary>Computes the hash of a stream using the KMAC256 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The stream to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMAC256. Callers can use the <see cref="P:System.Security.Cryptography.Kmac256.IsSupported" /> property
              to determine if the platform supports KMAC256.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Kmac256.HashData(System.ReadOnlySpan{System.Byte},System.IO.Stream,System.Int32,System.ReadOnlySpan{System.Byte})">
      <summary>Computes the hash of a stream using the KMAC256 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The stream to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMAC256. Callers can use the <see cref="P:System.Security.Cryptography.Kmac256.IsSupported" /> property
              to determine if the platform supports KMAC256.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Kmac256.HashData(System.ReadOnlySpan{System.Byte},System.IO.Stream,System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Computes the hash of a stream using the KMAC256 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to fill with the hash.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMAC256. Callers can use the <see cref="P:System.Security.Cryptography.Kmac256.IsSupported" /> property
              to determine if the platform supports KMAC256.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Kmac256.HashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Int32,System.ReadOnlySpan{System.Byte})">
      <summary>Computes the hash of data using the KMAC256 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The data to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMAC256. Callers can use the <see cref="P:System.Security.Cryptography.Kmac256.IsSupported" /> property
              to determine if the platform supports KMAC256.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Kmac256.HashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Computes the hash of data using the KMAC256 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The data to hash.</param>
      <param name="destination">The buffer to fill with the hash.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMAC256. Callers can use the <see cref="P:System.Security.Cryptography.Kmac256.IsSupported" /> property
              to determine if the platform supports KMAC256.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Kmac256.HashDataAsync(System.Byte[],System.IO.Stream,System.Int32,System.Byte[],System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the KMAC256 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The stream to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
 The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.OperationCanceledException">
        <paramref name="cancellationToken" /> has been canceled.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMAC256. Callers can use the <see cref="P:System.Security.Cryptography.Kmac256.IsSupported" /> property
              to determine if the platform supports KMAC256.</exception>
      <returns>A <see cref="T:System.Threading.Tasks.ValueTask`1" /> that completes with the computed hash.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Kmac256.HashDataAsync(System.ReadOnlyMemory{System.Byte},System.IO.Stream,System.Int32,System.ReadOnlyMemory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the KMAC256 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The stream to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
 The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.OperationCanceledException">
        <paramref name="cancellationToken" /> has been canceled.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMAC256. Callers can use the <see cref="P:System.Security.Cryptography.Kmac256.IsSupported" /> property
              to determine if the platform supports KMAC256.</exception>
      <returns>A <see cref="T:System.Threading.Tasks.ValueTask`1" /> that completes with the computed hash.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Kmac256.HashDataAsync(System.ReadOnlyMemory{System.Byte},System.IO.Stream,System.Memory{System.Byte},System.ReadOnlyMemory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the KMAC256 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to fill with the hash.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
 The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.OperationCanceledException">
        <paramref name="cancellationToken" /> has been canceled.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMAC256. Callers can use the <see cref="P:System.Security.Cryptography.Kmac256.IsSupported" /> property
              to determine if the platform supports KMAC256.</exception>
      <returns>A <see cref="T:System.Threading.Tasks.ValueTask" /> that represents the asynchronous operation.</returns>
    </member>
    <member name="P:System.Security.Cryptography.Kmac256.IsSupported">
      <summary>Gets a value that indicates whether the algorithm is supported on the current platform.</summary>
      <returns>
        <see langword="true" /> if the algorithm is supported; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.KmacXof128">
      <summary>Computes the KMACXOF128 MAC for the input data.</summary>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof128.#ctor(System.Byte[],System.Byte[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.KmacXof128" /> class.</summary>
      <param name="key">The KMAC key.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred creating an instance of the algorithm.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMACXOF128. Callers can use the <see cref="P:System.Security.Cryptography.KmacXof128.IsSupported" /> property
              to determine if the platform supports KMACXOF128.</exception>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof128.#ctor(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.KmacXof128" /> class.</summary>
      <param name="key">The KMAC key.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred creating an instance of the algorithm.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMACXOF128. Callers can use the <see cref="P:System.Security.Cryptography.KmacXof128.IsSupported" /> property
              to determine if the platform supports KMACXOF128.</exception>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof128.AppendData(System.Byte[])">
      <summary>Appends the specified data to the data already processed in the hash.</summary>
      <param name="data">The data to process.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof128.AppendData(System.ReadOnlySpan{System.Byte})">
      <summary>Appends the specified data to the data already processed in the hash.</summary>
      <param name="data">The data to process.</param>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof128.Clone">
      <summary>Creates a new instance of <see cref="T:System.Security.Cryptography.KmacXof128" /> with the existing appended data preserved.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>A clone of the current instance.</returns>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof128.Dispose">
      <summary>Release all resources used by the current instance of the <see cref="T:System.Security.Cryptography.KmacXof128" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof128.GetCurrentHash(System.Int32)">
      <summary>Retrieves the hash for the data accumulated from prior calls to the <c>AppendData</c> methods, without resetting the object to its initial state.</summary>
      <param name="outputLength">The size of the hash to produce.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>The computed hash.</returns>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof128.GetCurrentHash(System.Span{System.Byte})">
      <summary>Fills the buffer with the hash for the data accumulated from prior calls to the <c>AppendData</c> methods, without resetting the object to its initial state.</summary>
      <param name="destination">The buffer to fill with the hash.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof128.GetHashAndReset(System.Int32)">
      <summary>Retrieves the hash for the data accumulated from prior calls to the <c>AppendData</c> methods, and resets the object to its initial state.</summary>
      <param name="outputLength">The size of the hash to produce.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>The computed hash.</returns>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof128.GetHashAndReset(System.Span{System.Byte})">
      <summary>Fills the buffer with the hash for the data accumulated from prior calls to the <c>AppendData</c> methods, and resets the object to its initial state.</summary>
      <param name="destination">The buffer to fill with the hash.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof128.HashData(System.Byte[],System.Byte[],System.Int32,System.Byte[])">
      <summary>Computes the hash of data using the KMACXOF128 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The data to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMACXOF128. Callers can use the <see cref="P:System.Security.Cryptography.KmacXof128.IsSupported" /> property
              to determine if the platform supports KMACXOF128.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof128.HashData(System.Byte[],System.IO.Stream,System.Int32,System.Byte[])">
      <summary>Computes the hash of a stream using the KMACXOF128 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The stream to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMACXOF128. Callers can use the <see cref="P:System.Security.Cryptography.KmacXof128.IsSupported" /> property
              to determine if the platform supports KMACXOF128.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof128.HashData(System.ReadOnlySpan{System.Byte},System.IO.Stream,System.Int32,System.ReadOnlySpan{System.Byte})">
      <summary>Computes the hash of a stream using the KMACXOF128 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The stream to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMACXOF128. Callers can use the <see cref="P:System.Security.Cryptography.KmacXof128.IsSupported" /> property
              to determine if the platform supports KMACXOF128.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof128.HashData(System.ReadOnlySpan{System.Byte},System.IO.Stream,System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Computes the hash of a stream using the KMACXOF128 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to fill with the hash.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMACXOF128. Callers can use the <see cref="P:System.Security.Cryptography.KmacXof128.IsSupported" /> property
              to determine if the platform supports KMACXOF128.</exception>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof128.HashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Int32,System.ReadOnlySpan{System.Byte})">
      <summary>Computes the hash of data using the KMACXOF128 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The data to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMACXOF128. Callers can use the <see cref="P:System.Security.Cryptography.KmacXof128.IsSupported" /> property
              to determine if the platform supports KMACXOF128.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof128.HashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Computes the hash of data using the KMACXOF128 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The data to hash.</param>
      <param name="destination">The buffer to fill with the hash.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMACXOF128. Callers can use the <see cref="P:System.Security.Cryptography.KmacXof128.IsSupported" /> property
              to determine if the platform supports KMACXOF128.</exception>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof128.HashDataAsync(System.Byte[],System.IO.Stream,System.Int32,System.Byte[],System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the KMACXOF128 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The stream to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
 The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.OperationCanceledException">
        <paramref name="cancellationToken" /> has been canceled.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMACXOF128. Callers can use the <see cref="P:System.Security.Cryptography.KmacXof128.IsSupported" /> property
              to determine if the platform supports KMACXOF128.</exception>
      <returns>A <see cref="T:System.Threading.Tasks.ValueTask`1" /> that completes with the computed hash.</returns>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof128.HashDataAsync(System.ReadOnlyMemory{System.Byte},System.IO.Stream,System.Int32,System.ReadOnlyMemory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the KMACXOF128 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The stream to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
 The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.OperationCanceledException">
        <paramref name="cancellationToken" /> has been canceled.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMACXOF128. Callers can use the <see cref="P:System.Security.Cryptography.KmacXof128.IsSupported" /> property
              to determine if the platform supports KMACXOF128.</exception>
      <returns>A <see cref="T:System.Threading.Tasks.ValueTask`1" /> that completes with the computed hash.</returns>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof128.HashDataAsync(System.ReadOnlyMemory{System.Byte},System.IO.Stream,System.Memory{System.Byte},System.ReadOnlyMemory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the KMACXOF128 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to fill with the hash.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
 The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.OperationCanceledException">
        <paramref name="cancellationToken" /> has been canceled.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMACXOF128. Callers can use the <see cref="P:System.Security.Cryptography.KmacXof128.IsSupported" /> property
              to determine if the platform supports KMACXOF128.</exception>
      <returns>A <see cref="T:System.Threading.Tasks.ValueTask" /> that represents the asynchronous operation.</returns>
    </member>
    <member name="P:System.Security.Cryptography.KmacXof128.IsSupported">
      <summary>Gets a value that indicates whether the algorithm is supported on the current platform.</summary>
      <returns>
        <see langword="true" /> if the algorithm is supported; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.KmacXof256">
      <summary>Computes the KMACXOF256 MAC for the input data.</summary>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof256.#ctor(System.Byte[],System.Byte[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.KmacXof256" /> class.</summary>
      <param name="key">The KMAC key.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred creating an instance of the algorithm.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMACXOF256. Callers can use the <see cref="P:System.Security.Cryptography.KmacXof256.IsSupported" /> property
              to determine if the platform supports KMACXOF256.</exception>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof256.#ctor(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.KmacXof256" /> class.</summary>
      <param name="key">The KMAC key.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred creating an instance of the algorithm.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMACXOF256. Callers can use the <see cref="P:System.Security.Cryptography.KmacXof256.IsSupported" /> property
              to determine if the platform supports KMACXOF256.</exception>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof256.AppendData(System.Byte[])">
      <summary>Appends the specified data to the data already processed in the hash.</summary>
      <param name="data">The data to process.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof256.AppendData(System.ReadOnlySpan{System.Byte})">
      <summary>Appends the specified data to the data already processed in the hash.</summary>
      <param name="data">The data to process.</param>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof256.Clone">
      <summary>Creates a new instance of <see cref="T:System.Security.Cryptography.KmacXof256" /> with the existing appended data preserved.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>A clone of the current instance.</returns>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof256.Dispose">
      <summary>Release all resources used by the current instance of the <see cref="T:System.Security.Cryptography.KmacXof256" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof256.GetCurrentHash(System.Int32)">
      <summary>Retrieves the hash for the data accumulated from prior calls to the <c>AppendData</c> methods, without resetting the object to its initial state.</summary>
      <param name="outputLength">The size of the hash to produce.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>The computed hash.</returns>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof256.GetCurrentHash(System.Span{System.Byte})">
      <summary>Fills the buffer with the hash for the data accumulated from prior calls to the <c>AppendData</c> methods, without resetting the object to its initial state.</summary>
      <param name="destination">The buffer to fill with the hash.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof256.GetHashAndReset(System.Int32)">
      <summary>Retrieves the hash for the data accumulated from prior calls to the <c>AppendData</c> methods, and resets the object to its initial state.</summary>
      <param name="outputLength">The size of the hash to produce.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>The computed hash.</returns>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof256.GetHashAndReset(System.Span{System.Byte})">
      <summary>Fills the buffer with the hash for the data accumulated from prior calls to the <c>AppendData</c> methods, and resets the object to its initial state.</summary>
      <param name="destination">The buffer to fill with the hash.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof256.HashData(System.Byte[],System.Byte[],System.Int32,System.Byte[])">
      <summary>Computes the hash of data using the KMACXOF256 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The data to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMACXOF256. Callers can use the <see cref="P:System.Security.Cryptography.KmacXof256.IsSupported" /> property
              to determine if the platform supports KMACXOF256.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof256.HashData(System.Byte[],System.IO.Stream,System.Int32,System.Byte[])">
      <summary>Computes the hash of a stream using the KMACXOF256 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The stream to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMACXOF256. Callers can use the <see cref="P:System.Security.Cryptography.KmacXof256.IsSupported" /> property
              to determine if the platform supports KMACXOF256.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof256.HashData(System.ReadOnlySpan{System.Byte},System.IO.Stream,System.Int32,System.ReadOnlySpan{System.Byte})">
      <summary>Computes the hash of a stream using the KMACXOF256 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The stream to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMACXOF256. Callers can use the <see cref="P:System.Security.Cryptography.KmacXof256.IsSupported" /> property
              to determine if the platform supports KMACXOF256.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof256.HashData(System.ReadOnlySpan{System.Byte},System.IO.Stream,System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Computes the hash of a stream using the KMACXOF256 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to fill with the hash.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMACXOF256. Callers can use the <see cref="P:System.Security.Cryptography.KmacXof256.IsSupported" /> property
              to determine if the platform supports KMACXOF256.</exception>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof256.HashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Int32,System.ReadOnlySpan{System.Byte})">
      <summary>Computes the hash of data using the KMACXOF256 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The data to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMACXOF256. Callers can use the <see cref="P:System.Security.Cryptography.KmacXof256.IsSupported" /> property
              to determine if the platform supports KMACXOF256.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof256.HashData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.ReadOnlySpan{System.Byte})">
      <summary>Computes the hash of data using the KMACXOF256 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The data to hash.</param>
      <param name="destination">The buffer to fill with the hash.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMACXOF256. Callers can use the <see cref="P:System.Security.Cryptography.KmacXof256.IsSupported" /> property
              to determine if the platform supports KMACXOF256.</exception>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof256.HashDataAsync(System.Byte[],System.IO.Stream,System.Int32,System.Byte[],System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the KMACXOF256 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The stream to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
 The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> or <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.OperationCanceledException">
        <paramref name="cancellationToken" /> has been canceled.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMACXOF256. Callers can use the <see cref="P:System.Security.Cryptography.KmacXof256.IsSupported" /> property
              to determine if the platform supports KMACXOF256.</exception>
      <returns>A <see cref="T:System.Threading.Tasks.ValueTask`1" /> that completes with the computed hash.</returns>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof256.HashDataAsync(System.ReadOnlyMemory{System.Byte},System.IO.Stream,System.Int32,System.ReadOnlyMemory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the KMACXOF256 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The stream to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
 The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.OperationCanceledException">
        <paramref name="cancellationToken" /> has been canceled.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMACXOF256. Callers can use the <see cref="P:System.Security.Cryptography.KmacXof256.IsSupported" /> property
              to determine if the platform supports KMACXOF256.</exception>
      <returns>A <see cref="T:System.Threading.Tasks.ValueTask`1" /> that completes with the computed hash.</returns>
    </member>
    <member name="M:System.Security.Cryptography.KmacXof256.HashDataAsync(System.ReadOnlyMemory{System.Byte},System.IO.Stream,System.Memory{System.Byte},System.ReadOnlyMemory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the KMACXOF256 algorithm.</summary>
      <param name="key">The KMAC key.</param>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to fill with the hash.</param>
      <param name="customizationString">An optional customization string. The default is no customization string.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
 The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.OperationCanceledException">
        <paramref name="cancellationToken" /> has been canceled.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support KMACXOF256. Callers can use the <see cref="P:System.Security.Cryptography.KmacXof256.IsSupported" /> property
              to determine if the platform supports KMACXOF256.</exception>
      <returns>A <see cref="T:System.Threading.Tasks.ValueTask" /> that represents the asynchronous operation.</returns>
    </member>
    <member name="P:System.Security.Cryptography.KmacXof256.IsSupported">
      <summary>Gets a value that indicates whether the algorithm is supported on the current platform.</summary>
      <returns>
        <see langword="true" /> if the algorithm is supported; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.MaskGenerationMethod">
      <summary>Represents the abstract class from which all mask generator algorithms must derive.</summary>
    </member>
    <member name="M:System.Security.Cryptography.MaskGenerationMethod.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.MaskGenerationMethod" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.MaskGenerationMethod.GenerateMask(System.Byte[],System.Int32)">
      <summary>When overridden in a derived class, generates a mask with the specified length using the specified random seed.</summary>
      <param name="rgbSeed">The random seed to use to compute the mask.</param>
      <param name="cbReturn">The length of the generated mask in bytes.</param>
      <returns>A randomly generated mask whose length is equal to the <paramref name="cbReturn" /> parameter.</returns>
    </member>
    <member name="T:System.Security.Cryptography.MD5">
      <summary>Represents the abstract class from which all implementations of the <see cref="T:System.Security.Cryptography.MD5" /> hash algorithm inherit.</summary>
    </member>
    <member name="F:System.Security.Cryptography.MD5.HashSizeInBits">
      <summary>The hash size produced by the MD5 algorithm, in bits.</summary>
    </member>
    <member name="F:System.Security.Cryptography.MD5.HashSizeInBytes">
      <summary>The hash size produced by the MD5 algorithm, in bytes.</summary>
    </member>
    <member name="M:System.Security.Cryptography.MD5.#ctor">
      <summary>Initializes a new instance of <see cref="T:System.Security.Cryptography.MD5" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.MD5.Create">
      <summary>Creates an instance of the default implementation of the <see cref="T:System.Security.Cryptography.MD5" /> hash algorithm.</summary>
      <exception cref="T:System.Reflection.TargetInvocationException">The algorithm was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.</exception>
      <returns>A new instance of the <see cref="T:System.Security.Cryptography.MD5" /> hash algorithm.</returns>
    </member>
    <member name="M:System.Security.Cryptography.MD5.Create(System.String)">
      <summary>Creates an instance of the specified implementation of the <see cref="T:System.Security.Cryptography.MD5" /> hash algorithm.</summary>
      <param name="algName">The name of the specific implementation of <see cref="T:System.Security.Cryptography.MD5" /> to use.</param>
      <exception cref="T:System.Reflection.TargetInvocationException">The algorithm described by the <paramref name="algName" /> parameter was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.</exception>
      <returns>A new instance of the specified implementation of <see cref="T:System.Security.Cryptography.MD5" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.MD5.HashData(System.Byte[])">
      <summary>Computes the hash of data using the MD5 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.MD5.HashData(System.IO.Stream,System.Span{System.Byte})">
      <summary>Computes the hash of a stream using the MD5 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <para>
              The buffer in <paramref name="destination" /> is too small to hold the calculated hash
              size. The MD5 algorithm always produces a 128-bit hash, or 16 bytes.</para>
        <para>-or-</para>
        <para>
          <paramref name="source" /> does not support reading.</para>
      </exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.MD5.HashData(System.IO.Stream)">
      <summary>Computes the hash of a stream using the MD5 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.MD5.HashData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte})">
      <summary>Computes the hash of data using the MD5 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <exception cref="T:System.ArgumentException">The buffer in <paramref name="destination" /> is too small to hold the calculated hash size. The MD5 algorithm always produces a 128-bit hash, or 16 bytes.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.MD5.HashData(System.ReadOnlySpan{System.Byte})">
      <summary>Computes the hash of data using the MD5 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.MD5.HashDataAsync(System.IO.Stream,System.Memory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the MD5 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <para>
              The buffer in <paramref name="destination" /> is too small to hold the calculated hash
              size. The MD5 algorithm always produces a 128-bit hash, or 16 bytes.</para>
        <para>-or-</para>
        <para>
          <paramref name="source" /> does not support reading.</para>
      </exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.MD5.HashDataAsync(System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the MD5 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.MD5.TryHashData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to compute the hash of data using the MD5 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />.</param>
      <returns>
        <see langword="false" /> if <paramref name="destination" /> is too small to hold the calculated hash, <see langword="true" /> otherwise.</returns>
    </member>
    <member name="T:System.Security.Cryptography.MD5CryptoServiceProvider">
      <summary>Computes the <see cref="T:System.Security.Cryptography.MD5" /> hash value for the input data using the implementation provided by the cryptographic service provider (CSP). This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.MD5CryptoServiceProvider.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.MD5CryptoServiceProvider" /> class.</summary>
      <exception cref="T:System.InvalidOperationException">A FIPS-compliant algorithm policy is not being used.</exception>
    </member>
    <member name="M:System.Security.Cryptography.MD5CryptoServiceProvider.Initialize">
      <summary>Initializes an instance of <see cref="T:System.Security.Cryptography.MD5CryptoServiceProvider" />.</summary>
    </member>
    <member name="T:System.Security.Cryptography.Oid">
      <summary>Represents a cryptographic object identifier. This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.Oid.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Oid" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.Oid.#ctor(System.Security.Cryptography.Oid)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Oid" /> class using the specified <see cref="T:System.Security.Cryptography.Oid" /> object.</summary>
      <param name="oid">The object identifier information to use to create the new object identifier.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="oid" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Oid.#ctor(System.String,System.String)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Oid" /> class using the specified value and friendly name.</summary>
      <param name="value">The dotted number of the identifier.</param>
      <param name="friendlyName">The friendly name of the identifier.</param>
    </member>
    <member name="M:System.Security.Cryptography.Oid.#ctor(System.String)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Oid" /> class using a string value of an <see cref="T:System.Security.Cryptography.Oid" /> object.</summary>
      <param name="oid">An object identifier.</param>
    </member>
    <member name="M:System.Security.Cryptography.Oid.FromFriendlyName(System.String,System.Security.Cryptography.OidGroup)">
      <summary>Creates an <see cref="T:System.Security.Cryptography.Oid" /> object from an OID friendly name by searching the specified group.</summary>
      <param name="friendlyName">The friendly name of the identifier.</param>
      <param name="group">The group to search in.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="friendlyName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The OID was not found.</exception>
      <returns>An object that represents the specified OID.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Oid.FromOidValue(System.String,System.Security.Cryptography.OidGroup)">
      <summary>Creates an <see cref="T:System.Security.Cryptography.Oid" /> object by using the specified OID value and group.</summary>
      <param name="oidValue">The OID value.</param>
      <param name="group">The group to search in.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="oidValue" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The friendly name for the OID value was not found.</exception>
      <returns>A new instance of an <see cref="T:System.Security.Cryptography.Oid" /> object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.Oid.FriendlyName">
      <summary>Gets or sets the friendly name of the identifier.</summary>
      <exception cref="T:System.PlatformNotSupportedException">.NET 5 and later: An attempt is made to set the value and the value has previously been set.</exception>
      <returns>The friendly name of the identifier.</returns>
    </member>
    <member name="P:System.Security.Cryptography.Oid.Value">
      <summary>Gets or sets the dotted number of the identifier.</summary>
      <exception cref="T:System.PlatformNotSupportedException">.NET 5 and later: An attempt is made to set the value and the value has previously been set.</exception>
      <returns>The dotted number of the identifier.</returns>
    </member>
    <member name="T:System.Security.Cryptography.OidCollection">
      <summary>Represents a collection of <see cref="T:System.Security.Cryptography.Oid" /> objects. This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.OidCollection.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.OidCollection" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.OidCollection.Add(System.Security.Cryptography.Oid)">
      <summary>Adds an <see cref="T:System.Security.Cryptography.Oid" /> object to the <see cref="T:System.Security.Cryptography.OidCollection" /> object.</summary>
      <param name="oid">The <see cref="T:System.Security.Cryptography.Oid" /> object to add to the collection.</param>
      <returns>The index of the added <see cref="T:System.Security.Cryptography.Oid" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.OidCollection.CopyTo(System.Security.Cryptography.Oid[],System.Int32)">
      <summary>Copies the <see cref="T:System.Security.Cryptography.OidCollection" /> object into an array.</summary>
      <param name="array">The array to copy the <see cref="T:System.Security.Cryptography.OidCollection" /> object into.</param>
      <param name="index">The location where the copy operation starts.</param>
    </member>
    <member name="M:System.Security.Cryptography.OidCollection.GetEnumerator">
      <summary>Returns an <see cref="T:System.Security.Cryptography.OidEnumerator" /> object that can be used to navigate the <see cref="T:System.Security.Cryptography.OidCollection" /> object.</summary>
      <returns>An <see cref="T:System.Security.Cryptography.OidEnumerator" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.OidCollection.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">
      <summary>Copies the <see cref="T:System.Security.Cryptography.OidCollection" /> object into an array.</summary>
      <param name="array">The array to copy the <see cref="T:System.Security.Cryptography.OidCollection" /> object to.</param>
      <param name="index">The location where the copy operation starts.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="array" /> cannot be a multidimensional array.  
  
 -or-  
  
 The length of <paramref name="array" /> is an invalid offset length.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="array" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">The value of <paramref name="index" /> is out range.</exception>
    </member>
    <member name="M:System.Security.Cryptography.OidCollection.System#Collections#IEnumerable#GetEnumerator">
      <summary>Returns an <see cref="T:System.Security.Cryptography.OidEnumerator" /> object that can be used to navigate the <see cref="T:System.Security.Cryptography.OidCollection" /> object.</summary>
      <returns>An <see cref="T:System.Security.Cryptography.OidEnumerator" /> object that can be used to navigate the collection.</returns>
    </member>
    <member name="P:System.Security.Cryptography.OidCollection.Count">
      <summary>Gets the number of <see cref="T:System.Security.Cryptography.Oid" /> objects in a collection.</summary>
      <returns>The number of <see cref="T:System.Security.Cryptography.Oid" /> objects in a collection.</returns>
    </member>
    <member name="P:System.Security.Cryptography.OidCollection.IsSynchronized">
      <summary>Gets a value that indicates whether access to the <see cref="T:System.Security.Cryptography.OidCollection" /> object is thread safe.</summary>
      <returns>
        <see langword="false" /> in all cases.</returns>
    </member>
    <member name="P:System.Security.Cryptography.OidCollection.Item(System.Int32)">
      <summary>Gets an <see cref="T:System.Security.Cryptography.Oid" /> object from the <see cref="T:System.Security.Cryptography.OidCollection" /> object.</summary>
      <param name="index">The location of the <see cref="T:System.Security.Cryptography.Oid" /> object in the collection.</param>
      <returns>An <see cref="T:System.Security.Cryptography.Oid" /> object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.OidCollection.Item(System.String)">
      <summary>Gets the first <see cref="T:System.Security.Cryptography.Oid" /> object that contains a value of the <see cref="P:System.Security.Cryptography.Oid.Value" /> property or a value of the <see cref="P:System.Security.Cryptography.Oid.FriendlyName" /> property that matches the specified string value from the <see cref="T:System.Security.Cryptography.OidCollection" /> object.</summary>
      <param name="oid">A string that represents a <see cref="P:System.Security.Cryptography.Oid.Value" /> property or a <see cref="P:System.Security.Cryptography.Oid.FriendlyName" /> property.</param>
      <returns>An <see cref="T:System.Security.Cryptography.Oid" /> object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.OidCollection.SyncRoot">
      <summary>Gets an object that can be used to synchronize access to the <see cref="T:System.Security.Cryptography.OidCollection" /> object.</summary>
      <returns>An object that can be used to synchronize access to the <see cref="T:System.Security.Cryptography.OidCollection" /> object.</returns>
    </member>
    <member name="T:System.Security.Cryptography.OidEnumerator">
      <summary>Provides the ability to navigate through an <see cref="T:System.Security.Cryptography.OidCollection" /> object. This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.OidEnumerator.MoveNext">
      <summary>Advances to the next <see cref="T:System.Security.Cryptography.Oid" /> object in an <see cref="T:System.Security.Cryptography.OidCollection" /> object.</summary>
      <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was created.</exception>
      <returns>
        <see langword="true" />, if the enumerator was successfully advanced to the next element; <see langword="false" />, if the enumerator has passed the end of the collection.</returns>
    </member>
    <member name="M:System.Security.Cryptography.OidEnumerator.Reset">
      <summary>Sets an enumerator to its initial position.</summary>
      <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was created.</exception>
    </member>
    <member name="P:System.Security.Cryptography.OidEnumerator.Current">
      <summary>Gets the current <see cref="T:System.Security.Cryptography.Oid" /> object in an <see cref="T:System.Security.Cryptography.OidCollection" /> object.</summary>
      <returns>The current <see cref="T:System.Security.Cryptography.Oid" /> object in the collection.</returns>
    </member>
    <member name="P:System.Security.Cryptography.OidEnumerator.System#Collections#IEnumerator#Current">
      <summary>Gets the current <see cref="T:System.Security.Cryptography.Oid" /> object in an <see cref="T:System.Security.Cryptography.OidCollection" /> object.</summary>
      <returns>The current <see cref="T:System.Security.Cryptography.Oid" /> object.</returns>
    </member>
    <member name="T:System.Security.Cryptography.OidGroup">
      <summary>Identifies Windows cryptographic object identifier (OID) groups.</summary>
    </member>
    <member name="F:System.Security.Cryptography.OidGroup.All">
      <summary>All the groups.</summary>
    </member>
    <member name="F:System.Security.Cryptography.OidGroup.Attribute">
      <summary>The Windows group that is represented by CRYPT_RDN_ATTR_OID_GROUP_ID.</summary>
    </member>
    <member name="F:System.Security.Cryptography.OidGroup.EncryptionAlgorithm">
      <summary>The Windows group that is represented by CRYPT_ENCRYPT_ALG_OID_GROUP_ID.</summary>
    </member>
    <member name="F:System.Security.Cryptography.OidGroup.EnhancedKeyUsage">
      <summary>The Windows group that is represented by CRYPT_ENHKEY_USAGE_OID_GROUP_ID.</summary>
    </member>
    <member name="F:System.Security.Cryptography.OidGroup.ExtensionOrAttribute">
      <summary>The Windows group that is represented by CRYPT_EXT_OR_ATTR_OID_GROUP_ID.</summary>
    </member>
    <member name="F:System.Security.Cryptography.OidGroup.HashAlgorithm">
      <summary>The Windows group that is represented by CRYPT_HASH_ALG_OID_GROUP_ID.</summary>
    </member>
    <member name="F:System.Security.Cryptography.OidGroup.KeyDerivationFunction">
      <summary>The Windows group that is represented by CRYPT_KDF_OID_GROUP_ID.</summary>
    </member>
    <member name="F:System.Security.Cryptography.OidGroup.Policy">
      <summary>The Windows group that is represented by CRYPT_POLICY_OID_GROUP_ID.</summary>
    </member>
    <member name="F:System.Security.Cryptography.OidGroup.PublicKeyAlgorithm">
      <summary>The Windows group that is represented by CRYPT_PUBKEY_ALG_OID_GROUP_ID.</summary>
    </member>
    <member name="F:System.Security.Cryptography.OidGroup.SignatureAlgorithm">
      <summary>The Windows group that is represented by CRYPT_SIGN_ALG_OID_GROUP_ID.</summary>
    </member>
    <member name="F:System.Security.Cryptography.OidGroup.Template">
      <summary>The Windows group that is represented by CRYPT_TEMPLATE_OID_GROUP_ID.</summary>
    </member>
    <member name="T:System.Security.Cryptography.PaddingMode">
      <summary>Specifies the type of padding to apply when the message data block is shorter than the full number of bytes needed for a cryptographic operation.</summary>
    </member>
    <member name="F:System.Security.Cryptography.PaddingMode.ANSIX923">
      <summary>The ANSIX923 padding string consists of a sequence of bytes filled with zeros before the length.</summary>
    </member>
    <member name="F:System.Security.Cryptography.PaddingMode.ISO10126">
      <summary>The ISO10126 padding string consists of random data before the length.</summary>
    </member>
    <member name="F:System.Security.Cryptography.PaddingMode.None">
      <summary>No padding is done.</summary>
    </member>
    <member name="F:System.Security.Cryptography.PaddingMode.PKCS7">
      <summary>The PKCS #7 padding string consists of a sequence of bytes, each of which is equal to the total number of padding bytes added.</summary>
    </member>
    <member name="F:System.Security.Cryptography.PaddingMode.Zeros">
      <summary>The padding string consists of bytes set to zero.</summary>
    </member>
    <member name="T:System.Security.Cryptography.PasswordDeriveBytes">
      <summary>Derives a key from a password using an extension of the PBKDF1 algorithm.</summary>
    </member>
    <member name="M:System.Security.Cryptography.PasswordDeriveBytes.#ctor(System.Byte[],System.Byte[],System.Security.Cryptography.CspParameters)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.PasswordDeriveBytes" /> class specifying the password, key salt, and cryptographic service provider (CSP) to use to derive the key.</summary>
      <param name="password">The password to derive the key for.</param>
      <param name="salt">The key salt to use to derive the key.</param>
      <param name="cspParams">The cryptographic service provider (CSP) parameters for the operation.</param>
    </member>
    <member name="M:System.Security.Cryptography.PasswordDeriveBytes.#ctor(System.Byte[],System.Byte[],System.String,System.Int32,System.Security.Cryptography.CspParameters)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.PasswordDeriveBytes" /> class specifying the password, key salt, hash name, iterations, and cryptographic service provider (CSP) to use to derive the key.</summary>
      <param name="password">The password to derive the key for.</param>
      <param name="salt">The key salt to use to derive the key.</param>
      <param name="hashName">The hash algorithm to use to derive the key.</param>
      <param name="iterations">The iteration count to use to derive the key.</param>
      <param name="cspParams">The cryptographic service provider (CSP) parameters for the operation.</param>
    </member>
    <member name="M:System.Security.Cryptography.PasswordDeriveBytes.#ctor(System.Byte[],System.Byte[],System.String,System.Int32)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.PasswordDeriveBytes" /> class specifying the password, key salt, hash name, and iterations to use to derive the key.</summary>
      <param name="password">The password to derive the key for.</param>
      <param name="salt">The key salt to use to derive the key.</param>
      <param name="hashName">The hash algorithm to use to derive the key.</param>
      <param name="iterations">The iteration count to use to derive the key.</param>
    </member>
    <member name="M:System.Security.Cryptography.PasswordDeriveBytes.#ctor(System.Byte[],System.Byte[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.PasswordDeriveBytes" /> class specifying the password and key salt to use to derive the key.</summary>
      <param name="password">The password to derive the key for.</param>
      <param name="salt">The key salt to use to derive the key.</param>
    </member>
    <member name="M:System.Security.Cryptography.PasswordDeriveBytes.#ctor(System.String,System.Byte[],System.Security.Cryptography.CspParameters)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.PasswordDeriveBytes" /> class with the password, key salt, and cryptographic service provider (CSP) parameters to use to derive the key.</summary>
      <param name="strPassword">The password for which to derive the key.</param>
      <param name="rgbSalt">The key salt to use to derive the key.</param>
      <param name="cspParams">The CSP parameters for the operation.</param>
    </member>
    <member name="M:System.Security.Cryptography.PasswordDeriveBytes.#ctor(System.String,System.Byte[],System.String,System.Int32,System.Security.Cryptography.CspParameters)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.PasswordDeriveBytes" /> class with the password, key salt, hash name, number of iterations, and cryptographic service provider (CSP) parameters to use to derive the key.</summary>
      <param name="strPassword">The password for which to derive the key.</param>
      <param name="rgbSalt">The key salt to use to derive the key.</param>
      <param name="strHashName">The name of the hash algorithm for the operation.</param>
      <param name="iterations">The number of iterations for the operation.</param>
      <param name="cspParams">The CSP parameters for the operation.</param>
    </member>
    <member name="M:System.Security.Cryptography.PasswordDeriveBytes.#ctor(System.String,System.Byte[],System.String,System.Int32)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.PasswordDeriveBytes" /> class with the password, key salt, hash name, and number of iterations to use to derive the key.</summary>
      <param name="strPassword">The password for which to derive the key.</param>
      <param name="rgbSalt">The key salt to use to derive the key.</param>
      <param name="strHashName">The name of the hash algorithm for the operation.</param>
      <param name="iterations">The number of iterations for the operation.</param>
    </member>
    <member name="M:System.Security.Cryptography.PasswordDeriveBytes.#ctor(System.String,System.Byte[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.PasswordDeriveBytes" /> class with the password and key salt to use to derive the key.</summary>
      <param name="strPassword">The password for which to derive the key.</param>
      <param name="rgbSalt">The key salt to use to derive the key.</param>
    </member>
    <member name="M:System.Security.Cryptography.PasswordDeriveBytes.CryptDeriveKey(System.String,System.String,System.Int32,System.Byte[])">
      <summary>Derives a cryptographic key from the <see cref="T:System.Security.Cryptography.PasswordDeriveBytes" /> object.</summary>
      <param name="algname">The algorithm name for which to derive the key.</param>
      <param name="alghashname">The hash algorithm name to use to derive the key.</param>
      <param name="keySize">The size of the key, in bits, to derive.</param>
      <param name="rgbIV">The initialization vector (IV) to use to derive the key.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The <paramref name="keySize" /> parameter is incorrect.

 -or-

 The cryptographic service provider (CSP) cannot be acquired.

 -or-

 The <paramref name="algname" /> parameter is not a valid algorithm name.

 -or-

 The <paramref name="alghashname" /> parameter is not a valid hash algorithm name.</exception>
      <returns>The derived key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.PasswordDeriveBytes.Dispose(System.Boolean)">
      <summary>Releases the unmanaged resources used by the <see cref="T:System.Security.Cryptography.PasswordDeriveBytes" /> class and optionally releases the managed resources.</summary>
      <param name="disposing">
        <see langword="true" /> to release both managed and unmanaged resources; <see langword="false" /> to release only unmanaged resources.</param>
    </member>
    <member name="M:System.Security.Cryptography.PasswordDeriveBytes.GetBytes(System.Int32)">
      <summary>Returns pseudo-random key bytes.</summary>
      <param name="cb">The number of pseudo-random key bytes to generate.</param>
      <returns>A byte array filled with pseudo-random key bytes.</returns>
    </member>
    <member name="M:System.Security.Cryptography.PasswordDeriveBytes.Reset">
      <summary>Resets the state of the operation.</summary>
    </member>
    <member name="P:System.Security.Cryptography.PasswordDeriveBytes.HashName">
      <summary>Gets or sets the name of the hash algorithm for the operation.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The name of the hash value is fixed and an attempt is made to change this value.</exception>
      <returns>The name of the hash algorithm for the operation.</returns>
    </member>
    <member name="P:System.Security.Cryptography.PasswordDeriveBytes.IterationCount">
      <summary>Gets or sets the number of iterations for the operation.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The number of iterations is fixed and an attempt is made to change this value.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">The property cannot be set because its value is out of range. This property requires a non-negative number.</exception>
      <returns>The number of iterations for the operation.</returns>
    </member>
    <member name="P:System.Security.Cryptography.PasswordDeriveBytes.Salt">
      <summary>Gets or sets the key salt value for the operation.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key salt value is fixed and an attempt is made to change this value.</exception>
      <returns>The key salt value for the operation.</returns>
    </member>
    <member name="T:System.Security.Cryptography.PbeEncryptionAlgorithm">
      <summary>Specifies encryption algorithms to be used with Password-Based Encryption (PBE).</summary>
    </member>
    <member name="F:System.Security.Cryptography.PbeEncryptionAlgorithm.Aes128Cbc">
      <summary>Indicates the encryption should be performed with the AES-128 algorithm in CBC mode with PKCS#7 padding.</summary>
    </member>
    <member name="F:System.Security.Cryptography.PbeEncryptionAlgorithm.Aes192Cbc">
      <summary>Indicates the encryption should be performed with the AES-192 algorithm in CBC mode with PKCS#7 padding.</summary>
    </member>
    <member name="F:System.Security.Cryptography.PbeEncryptionAlgorithm.Aes256Cbc">
      <summary>Indicates that encryption be performed with the AES-256 algorithm in CBC mode with PKCS#7 padding.</summary>
    </member>
    <member name="F:System.Security.Cryptography.PbeEncryptionAlgorithm.TripleDes3KeyPkcs12">
      <summary>Indicates the encryption should be performed with the TripleDES algorithm in CBC mode with a 192-bit key derived using the Key Derivation Function (KDF) from PKCS#12.</summary>
    </member>
    <member name="F:System.Security.Cryptography.PbeEncryptionAlgorithm.Unknown">
      <summary>Indicates that no encryption algorithm has been selected.</summary>
    </member>
    <member name="T:System.Security.Cryptography.PbeParameters">
      <summary>Represents parameters to be used for Password-Based Encryption (PBE).</summary>
    </member>
    <member name="M:System.Security.Cryptography.PbeParameters.#ctor(System.Security.Cryptography.PbeEncryptionAlgorithm,System.Security.Cryptography.HashAlgorithmName,System.Int32)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.PbeParameters" /> class.</summary>
      <param name="encryptionAlgorithm">The algorithm to use when encrypting data.</param>
      <param name="hashAlgorithm">The name of a hash algorithm to use with the Key Derivation Function (KDF) to turn a password into an encryption key.</param>
      <param name="iterationCount">The iteration count to provide to the Key Derivation Function (KDF) to turn a password into an encryption key.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="iterationCount" /> is less than 1.</exception>
    </member>
    <member name="P:System.Security.Cryptography.PbeParameters.EncryptionAlgorithm">
      <summary>Gets the algorithm to use when encrypting data.</summary>
      <returns>The algorithm to use when encrypting data.</returns>
    </member>
    <member name="P:System.Security.Cryptography.PbeParameters.HashAlgorithm">
      <summary>Gets the name of the hash algorithm to use with the Key Derivation Function (KDF) to turn a password into an encryption key.</summary>
      <returns>The name of the hash algorithm to use with the Key Derivation Function (KDF) to turn a password into an encryption key.</returns>
    </member>
    <member name="P:System.Security.Cryptography.PbeParameters.IterationCount">
      <summary>Gets the iteration count to provide to the Key Derivation Function (KDF) to turn a password into an encryption key.</summary>
      <returns>The iteration count to provide to the Key Derivation Function (KDF) to turn a password into an encryption key.</returns>
    </member>
    <member name="T:System.Security.Cryptography.PemEncoding">
      <summary>Provides methods for reading and writing the IETF RFC 7468 subset of PEM (Privacy-Enhanced Mail) textual encodings.
 This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.PemEncoding.Find(System.ReadOnlySpan{System.Char})">
      <summary>Finds the first PEM-encoded data.</summary>
      <param name="pemData">The text containing the PEM-encoded data.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="pemData" /> does not contain a well-formed PEM-encoded value.</exception>
      <returns>A value that specifies the location, label, and data location of the encoded data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.PemEncoding.GetEncodedSize(System.Int32,System.Int32)">
      <summary>Determines the length of a PEM-encoded value, in characters, given the length of a label and binary data.</summary>
      <param name="labelLength">The length of the label, in characters.</param>
      <param name="dataLength">The length of the data, in bytes.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="labelLength" /> is a negative value.

-or-

<paramref name="dataLength" /> is a negative value.

-or-

<paramref name="labelLength" /> exceeds the maximum possible label length.

-or-

<paramref name="dataLength" /> exceeds the maximum possible encoded data length.</exception>
      <exception cref="T:System.ArgumentException">The length of the PEM-encoded value is larger than <see cref="F:System.Int32.MaxValue">Int32.MaxValue</see>.</exception>
      <returns>The number of characters in the encoded PEM.</returns>
    </member>
    <member name="M:System.Security.Cryptography.PemEncoding.TryFind(System.ReadOnlySpan{System.Char},System.Security.Cryptography.PemFields@)">
      <summary>Attempts to find the first PEM-encoded data.</summary>
      <param name="pemData">The text containing the PEM-encoded data.</param>
      <param name="fields">When this method returns, contains a value that specifies the location, label, and data location of the encoded data; or, if no PEM-encoded data is found, a value that specifies those locations as empty.

          This parameter is treated as uninitialized.</param>
      <returns>
        <see langword="true" /> if PEM-encoded data was found; otherwise <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.PemEncoding.TryWrite(System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Byte},System.Span{System.Char},System.Int32@)">
      <summary>Tries to write the provided data and label as PEM-encoded data into a provided buffer.</summary>
      <param name="label">The label to write.</param>
      <param name="data">The data to write.</param>
      <param name="destination">The buffer to receive the PEM-encoded text.</param>
      <param name="charsWritten">When this method returns, this parameter contains the number of characters written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="label" /> exceeds the maximum possible label length.

-or-

<paramref name="data" /> exceeds the maximum possible encoded data length.</exception>
      <exception cref="T:System.ArgumentException">The resulting PEM-encoded text is larger than <see cref="F:System.Int32.MaxValue">Int32.MaxValue</see>.

-or-

<paramref name="label" /> contains invalid characters.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is large enough to contain the PEM-encoded text, otherwise <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.PemEncoding.Write(System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Byte})">
      <summary>Creates an encoded PEM with the given label and data.</summary>
      <param name="label">The label to encode.</param>
      <param name="data">The data to encode.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="label" /> exceeds the maximum possible label length.

-or-

<paramref name="data" /> exceeds the maximum possible encoded data length.</exception>
      <exception cref="T:System.ArgumentException">The resulting PEM-encoded text is larger than <see cref="F:System.Int32.MaxValue">Int32.MaxValue</see>.

-or-

<paramref name="label" /> contains invalid characters.</exception>
      <returns>A character array of the encoded PEM.</returns>
    </member>
    <member name="M:System.Security.Cryptography.PemEncoding.WriteString(System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Byte})">
      <summary>Creates an encoded PEM with the given label and data.</summary>
      <param name="label">The label to encode.</param>
      <param name="data">The data to encode.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="label" /> exceeds the maximum possible label length.

-or-

<paramref name="data" /> exceeds the maximum possible encoded data length.</exception>
      <exception cref="T:System.ArgumentException">The resulting PEM-encoded text is larger than <see cref="F:System.Int32.MaxValue" />.

-or-

<paramref name="label" /> contains invalid characters.</exception>
      <returns>A string of the encoded PEM.</returns>
    </member>
    <member name="T:System.Security.Cryptography.PemFields">
      <summary>Contains information about the location of PEM data.</summary>
    </member>
    <member name="P:System.Security.Cryptography.PemFields.Base64Data">
      <summary>Gets the location of the base-64 data inside of the PEM.</summary>
    </member>
    <member name="P:System.Security.Cryptography.PemFields.DecodedDataLength">
      <summary>Gets the size of the decoded base-64 data, in bytes.</summary>
    </member>
    <member name="P:System.Security.Cryptography.PemFields.Label">
      <summary>Gets the location of the label.</summary>
    </member>
    <member name="P:System.Security.Cryptography.PemFields.Location">
      <summary>Gets the location of the PEM-encoded text, including the surrounding encapsulation boundaries.</summary>
    </member>
    <member name="T:System.Security.Cryptography.PKCS1MaskGenerationMethod">
      <summary>Computes masks according to PKCS #1 for use by key exchange algorithms.</summary>
    </member>
    <member name="M:System.Security.Cryptography.PKCS1MaskGenerationMethod.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.PKCS1MaskGenerationMethod" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.PKCS1MaskGenerationMethod.GenerateMask(System.Byte[],System.Int32)">
      <summary>Generates and returns a mask from the specified random seed of the specified length.</summary>
      <param name="rgbSeed">The random seed to use for computing the mask.</param>
      <param name="cbReturn">The length of the generated mask in bytes.</param>
      <returns>A randomly generated mask whose length is equal to the <paramref name="cbReturn" /> parameter.</returns>
    </member>
    <member name="P:System.Security.Cryptography.PKCS1MaskGenerationMethod.HashName">
      <summary>Gets or sets the name of the hash algorithm type to use for generating the mask.</summary>
      <returns>The name of the type that implements the hash algorithm to use for computing the mask.</returns>
    </member>
    <member name="T:System.Security.Cryptography.RandomNumberGenerator">
      <summary>Provides functionality for generating random values.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RandomNumberGenerator.#ctor">
      <summary>Initializes a new instance of <see cref="T:System.Security.Cryptography.RandomNumberGenerator" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RandomNumberGenerator.Create">
      <summary>Creates an instance of the default implementation of a cryptographic random number generator that can be used to generate random data.</summary>
      <returns>A new instance of a cryptographic random number generator.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RandomNumberGenerator.Create(System.String)">
      <summary>Creates an instance of the specified implementation of a cryptographic random number generator.</summary>
      <param name="rngName">The name of the random number generator implementation to use.</param>
      <returns>A new instance of a cryptographic random number generator.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RandomNumberGenerator.Dispose">
      <summary>When overridden in a derived class, releases all resources used by the current instance of the <see cref="T:System.Security.Cryptography.RandomNumberGenerator" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RandomNumberGenerator.Dispose(System.Boolean)">
      <summary>When overridden in a derived class, releases the unmanaged resources used by the <see cref="T:System.Security.Cryptography.RandomNumberGenerator" /> and optionally releases the managed resources.</summary>
      <param name="disposing">
        <see langword="true" /> to release both managed and unmanaged resources; <see langword="false" /> to release only unmanaged resources.</param>
    </member>
    <member name="M:System.Security.Cryptography.RandomNumberGenerator.Fill(System.Span{System.Byte})">
      <summary>Fills a span with cryptographically strong random bytes.</summary>
      <param name="data">The span to fill with cryptographically strong random bytes.</param>
    </member>
    <member name="M:System.Security.Cryptography.RandomNumberGenerator.GetBytes(System.Byte[],System.Int32,System.Int32)">
      <summary>Fills the specified byte array with a cryptographically strong random sequence of values.</summary>
      <param name="data">The array to fill with cryptographically strong random bytes.</param>
      <param name="offset">The index of the array to start the fill operation.</param>
      <param name="count">The number of bytes to fill.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="offset" /> or <paramref name="count" /> is less than 0</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="offset" /> plus <paramref name="count" /> exceeds the length of <paramref name="data" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RandomNumberGenerator.GetBytes(System.Byte[])">
      <summary>When overridden in a derived class, fills an array of bytes with a cryptographically strong random sequence of values.</summary>
      <param name="data">The array to fill with cryptographically strong random bytes.</param>
    </member>
    <member name="M:System.Security.Cryptography.RandomNumberGenerator.GetBytes(System.Int32)">
      <summary>Creates an array of bytes with a cryptographically strong random sequence of values.</summary>
      <param name="count">The number of bytes of random values to create.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="count" /> is less than zero.</exception>
      <returns>An array populated with cryptographically strong random values.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RandomNumberGenerator.GetBytes(System.Span{System.Byte})">
      <summary>Fills a span with cryptographically strong random bytes.</summary>
      <param name="data">The span to fill with cryptographically strong random bytes.</param>
    </member>
    <member name="M:System.Security.Cryptography.RandomNumberGenerator.GetHexString(System.Int32,System.Boolean)">
      <summary>Creates a string filled with cryptographically random hexadecimal characters.</summary>
      <param name="stringLength">The length of string to create.</param>
      <param name="lowercase">
        <see langword="true" /> if the hexadecimal characters should be lowercase; <see langword="false" /> if they should be uppercase.
              The default is <see langword="false" />.</param>
      <returns>A string populated with random hexadecimal characters.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RandomNumberGenerator.GetHexString(System.Span{System.Char},System.Boolean)">
      <summary>Fills a buffer with cryptographically random hexadecimal characters.</summary>
      <param name="destination">The buffer to receive the characters.</param>
      <param name="lowercase">
        <see langword="true" /> if the hexadecimal characters should be lowercase; <see langword="false" /> if they should be uppercase.
              The default is <see langword="false" />.</param>
    </member>
    <member name="M:System.Security.Cryptography.RandomNumberGenerator.GetInt32(System.Int32,System.Int32)">
      <summary>Generates a random integer between a specified inclusive lower bound and a specified exclusive upper bound using a cryptographically strong random number generator.</summary>
      <param name="fromInclusive">The inclusive lower bound of the random range.</param>
      <param name="toExclusive">The exclusive upper bound of the random range.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">The <paramref name="toExclusive" /> parameter is less than or equal to the <paramref name="fromInclusive" /> parameter.</exception>
      <returns>A random integer between <paramref name="fromInclusive" /> (inclusive) and <paramref name="toExclusive" /> (exclusive).</returns>
    </member>
    <member name="M:System.Security.Cryptography.RandomNumberGenerator.GetInt32(System.Int32)">
      <summary>Generates a random integer between 0 (inclusive) and a specified exclusive upper bound using a cryptographically strong random number generator.</summary>
      <param name="toExclusive">The exclusive upper bound of the random range.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">The <paramref name="toExclusive" /> parameter is less than or equal to 0.</exception>
      <returns>A random integer between 0 (inclusive) and <paramref name="toExclusive" /> (exclusive).</returns>
    </member>
    <member name="M:System.Security.Cryptography.RandomNumberGenerator.GetItems``1(System.ReadOnlySpan{``0},System.Int32)">
      <summary>Creates an array populated with items chosen at random from choices.</summary>
      <param name="choices">The items to use to populate the array.</param>
      <param name="length">The length of array to return populated with items.</param>
      <typeparam name="T">The type of items.</typeparam>
      <exception cref="T:System.ArgumentException">
        <paramref name="choices" /> is empty.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="length" /> is not zero or a positive number.</exception>
      <returns>An array populated with random choices.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RandomNumberGenerator.GetItems``1(System.ReadOnlySpan{``0},System.Span{``0})">
      <summary>Fills the elements of a specified span with items chosen at random from the provided set of choices.</summary>
      <param name="choices">The items to use to fill the buffer.</param>
      <param name="destination">The buffer to receive the items.</param>
      <typeparam name="T">The type of items.</typeparam>
      <exception cref="T:System.ArgumentException">
        <paramref name="choices" /> is empty.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RandomNumberGenerator.GetNonZeroBytes(System.Byte[])">
      <summary>When overridden in a derived class, fills an array of bytes with a cryptographically strong random sequence of nonzero values.</summary>
      <param name="data">The array to fill with cryptographically strong random nonzero bytes.</param>
    </member>
    <member name="M:System.Security.Cryptography.RandomNumberGenerator.GetNonZeroBytes(System.Span{System.Byte})">
      <summary>Fills a byte span with a cryptographically strong random sequence of nonzero values.</summary>
      <param name="data">The span to fill with cryptographically strong random nonzero bytes.</param>
    </member>
    <member name="M:System.Security.Cryptography.RandomNumberGenerator.GetString(System.ReadOnlySpan{System.Char},System.Int32)">
      <summary>Creates a string populated with characters chosen at random from choices.</summary>
      <param name="choices">The characters to use to populate the string.</param>
      <param name="length">The length of string to return.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="choices" /> is empty.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="length" /> is not zero or a positive number.</exception>
      <returns>A string populated with random choices.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RandomNumberGenerator.Shuffle``1(System.Span{``0})">
      <summary>Performs an in-place shuffle of a span using cryptographically random number generation.</summary>
      <param name="values">The span to shuffle.</param>
      <typeparam name="T">The type of span.</typeparam>
    </member>
    <member name="T:System.Security.Cryptography.RC2">
      <summary>Represents the base class from which all implementations of the <see cref="T:System.Security.Cryptography.RC2" /> algorithm must derive.</summary>
    </member>
    <member name="F:System.Security.Cryptography.RC2.EffectiveKeySizeValue">
      <summary>Represents the effective size of the secret key used by the <see cref="T:System.Security.Cryptography.RC2" /> algorithm in bits.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RC2.#ctor">
      <summary>Initializes a new instance of <see cref="T:System.Security.Cryptography.RC2" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RC2.Create">
      <summary>Creates an instance of a cryptographic object to perform the <see cref="T:System.Security.Cryptography.RC2" /> algorithm.</summary>
      <exception cref="T:System.Reflection.TargetInvocationException">The algorithm was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.</exception>
      <returns>An instance of a cryptographic object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RC2.Create(System.String)">
      <summary>Creates an instance of a cryptographic object to perform the specified implementation of the <see cref="T:System.Security.Cryptography.RC2" /> algorithm.</summary>
      <param name="AlgName">The name of the specific implementation of <see cref="T:System.Security.Cryptography.RC2" /> to use.</param>
      <exception cref="T:System.Reflection.TargetInvocationException">The algorithm described by the <paramref name="algName" /> parameter was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.</exception>
      <returns>An instance of a cryptographic object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RC2.EffectiveKeySize">
      <summary>Gets or sets the effective size of the secret key used by the <see cref="T:System.Security.Cryptography.RC2" /> algorithm in bits.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The effective key size is invalid.</exception>
      <returns>The effective key size used by the <see cref="T:System.Security.Cryptography.RC2" /> algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RC2.KeySize">
      <summary>Gets or sets the size of the secret key used by the <see cref="T:System.Security.Cryptography.RC2" /> algorithm in bits.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The value for the RC2 key size is less than the effective key size value.</exception>
      <returns>The size of the secret key used by the <see cref="T:System.Security.Cryptography.RC2" /> algorithm.</returns>
    </member>
    <member name="T:System.Security.Cryptography.RC2CryptoServiceProvider">
      <summary>Defines a wrapper object to access the cryptographic service provider (CSP) implementation of the <see cref="T:System.Security.Cryptography.RC2" /> algorithm. This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RC2CryptoServiceProvider.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RC2CryptoServiceProvider" /> class.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The cryptographic service provider (CSP) cannot be acquired.</exception>
      <exception cref="T:System.InvalidOperationException">A non-compliant FIPS algorithm was found.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RC2CryptoServiceProvider.CreateDecryptor(System.Byte[],System.Byte[])">
      <summary>Creates a symmetric <see cref="T:System.Security.Cryptography.RC2" /> decryptor object with the specified key (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key" />) and initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />).</summary>
      <param name="rgbKey">The secret key to use for the symmetric algorithm.</param>
      <param name="rgbIV">The initialization vector to use for the symmetric algorithm.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An <see cref="F:System.Security.Cryptography.CipherMode.OFB" /> cipher mode was used.  
  
 -or-  
  
 A <see cref="F:System.Security.Cryptography.CipherMode.CFB" /> cipher mode with a feedback size other than 8 bits was used.  
  
 -or-  
  
 An invalid key size was used.  
  
 -or-  
  
 The algorithm key size was not available.</exception>
      <returns>A symmetric <see cref="T:System.Security.Cryptography.RC2" /> decryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RC2CryptoServiceProvider.CreateEncryptor(System.Byte[],System.Byte[])">
      <summary>Creates a symmetric <see cref="T:System.Security.Cryptography.RC2" /> encryptor object with the specified key (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key" />) and initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />).</summary>
      <param name="rgbKey">The secret key to use for the symmetric algorithm.</param>
      <param name="rgbIV">The initialization vector to use for the symmetric algorithm.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An <see cref="F:System.Security.Cryptography.CipherMode.OFB" /> cipher mode was used.  
  
 -or-  
  
 A <see cref="F:System.Security.Cryptography.CipherMode.CFB" /> cipher mode with a feedback size other than 8 bits was used.  
  
 -or-  
  
 An invalid key size was used.  
  
 -or-  
  
 The algorithm key size was not available.</exception>
      <returns>A symmetric <see cref="T:System.Security.Cryptography.RC2" /> encryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RC2CryptoServiceProvider.GenerateIV">
      <summary>Generates a random initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />) to use for the algorithm.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RC2CryptoServiceProvider.GenerateKey">
      <summary>Generates a random key (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key" />) to be used for the algorithm.</summary>
    </member>
    <member name="P:System.Security.Cryptography.RC2CryptoServiceProvider.EffectiveKeySize">
      <summary>Gets or sets the effective size, in bits, of the secret key used by the <see cref="T:System.Security.Cryptography.RC2" /> algorithm.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException">The <see cref="P:System.Security.Cryptography.RC2CryptoServiceProvider.EffectiveKeySize" /> property was set to a value other than the <see cref="F:System.Security.Cryptography.SymmetricAlgorithm.KeySizeValue" /> property.</exception>
      <returns>The effective key size, in bits, used by the <see cref="T:System.Security.Cryptography.RC2" /> algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RC2CryptoServiceProvider.UseSalt">
      <summary>Gets or sets a value that determines whether to create a key with an 11-byte-long, zero-value salt.</summary>
      <returns>
        <see langword="true" /> if the key should be created with an 11-byte-long, zero-value salt; otherwise, <see langword="false" />. The default is <see langword="false" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.Rfc2898DeriveBytes">
      <summary>Implements password-based key derivation functionality, PBKDF2, by using a pseudo-random number generator based on <see cref="T:System.Security.Cryptography.HMACSHA1" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.#ctor(System.Byte[],System.Byte[],System.Int32,System.Security.Cryptography.HashAlgorithmName)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Rfc2898DeriveBytes" /> class using the specified password, salt, number of iterations and the hash algorithm name to derive the key.</summary>
      <param name="password">The password to use to derive the key.</param>
      <param name="salt">The key salt to use to derive the key.</param>
      <param name="iterations">The number of iterations for the operation.</param>
      <param name="hashAlgorithm">The hash algorithm to use to derive the key.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="saltSize" /> is less than zero.</exception>
      <exception cref="T:System.ArgumentException">The <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> property of <paramref name="hashAlgorithm" /> is either <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">Hash algorithm name is invalid.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.#ctor(System.Byte[],System.Byte[],System.Int32)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Rfc2898DeriveBytes" /> class using a password, a salt, and number of iterations to derive the key.</summary>
      <param name="password">The password used to derive the key.</param>
      <param name="salt">The key salt used to derive the key.</param>
      <param name="iterations">The number of iterations for the operation.</param>
      <exception cref="T:System.ArgumentException">The specified salt size is smaller than 8 bytes or the iteration count is less than 1.</exception>
      <exception cref="T:System.ArgumentNullException">The password or salt is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.#ctor(System.String,System.Byte[],System.Int32,System.Security.Cryptography.HashAlgorithmName)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Rfc2898DeriveBytes" /> class using the specified password, salt, number of iterations and the hash algorithm name to derive the key.</summary>
      <param name="password">The password to use to derive the key.</param>
      <param name="salt">The key salt to use to derive the key.</param>
      <param name="iterations">The number of iterations for the operation.</param>
      <param name="hashAlgorithm">The hash algorithm to use to derive the key.</param>
      <exception cref="T:System.ArgumentException">The <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> property of <paramref name="hashAlgorithm" /> is either <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">Hash algorithm name is invalid.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.#ctor(System.String,System.Byte[],System.Int32)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Rfc2898DeriveBytes" /> class using a password, a salt, and number of iterations to derive the key.</summary>
      <param name="password">The password used to derive the key.</param>
      <param name="salt">The key salt used to derive the key.</param>
      <param name="iterations">The number of iterations for the operation.</param>
      <exception cref="T:System.ArgumentException">The specified salt size is smaller than 8 bytes or the iteration count is less than 1.</exception>
      <exception cref="T:System.ArgumentNullException">The password or salt is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.#ctor(System.String,System.Byte[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Rfc2898DeriveBytes" /> class using a password and salt to derive the key.</summary>
      <param name="password">The password used to derive the key.</param>
      <param name="salt">The key salt used to derive the key.</param>
      <exception cref="T:System.ArgumentException">The specified salt size is smaller than 8 bytes or the iteration count is less than 1.</exception>
      <exception cref="T:System.ArgumentNullException">The password or salt is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.#ctor(System.String,System.Int32,System.Int32,System.Security.Cryptography.HashAlgorithmName)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Rfc2898DeriveBytes" /> class using the specified password, salt size, number of iterations and the hash algorithm name to derive the key.</summary>
      <param name="password">The password to use to derive the key.</param>
      <param name="saltSize">The size of the random salt that you want the class to generate.</param>
      <param name="iterations">The number of iterations for the operation.</param>
      <param name="hashAlgorithm">The hash algorithm to use to derive the key.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="saltSize" /> is less than zero.</exception>
      <exception cref="T:System.ArgumentException">The <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> property of <paramref name="hashAlgorithm" /> is either <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">Hash algorithm name is invalid.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.#ctor(System.String,System.Int32,System.Int32)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Rfc2898DeriveBytes" /> class using a password, a salt size, and number of iterations to derive the key.</summary>
      <param name="password">The password used to derive the key.</param>
      <param name="saltSize">The size of the random salt that you want the class to generate.</param>
      <param name="iterations">The number of iterations for the operation.</param>
      <exception cref="T:System.ArgumentException">The specified salt size is smaller than 8 bytes or the iteration count is less than 1.</exception>
      <exception cref="T:System.ArgumentNullException">The password or salt is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="iterations" /> is out of range. This parameter requires a non-negative number.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.#ctor(System.String,System.Int32)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Rfc2898DeriveBytes" /> class using the password and salt size to derive the key.</summary>
      <param name="password">The password used to derive the key.</param>
      <param name="saltSize">The size of the random salt that you want the class to generate.</param>
      <exception cref="T:System.ArgumentException">The specified salt size is smaller than 8 bytes.</exception>
      <exception cref="T:System.ArgumentNullException">The password or salt is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.CryptDeriveKey(System.String,System.String,System.Int32,System.Byte[])">
      <summary>Derives a cryptographic key from the <see cref="T:System.Security.Cryptography.Rfc2898DeriveBytes" /> object.</summary>
      <param name="algname">The algorithm name for which to derive the key.</param>
      <param name="alghashname">The hash algorithm name to use to derive the key.</param>
      <param name="keySize">The size of the key, in bits, to derive.</param>
      <param name="rgbIV">The initialization vector (IV) to use to derive the key.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The <paramref name="keySize" /> parameter is incorrect.

 -or-

 The cryptographic service provider (CSP) cannot be acquired.

 -or-

 The <paramref name="algname" /> parameter is not a valid algorithm name.

 -or-

 The <paramref name="alghashname" /> parameter is not a valid hash algorithm name.</exception>
      <returns>The derived key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.Dispose(System.Boolean)">
      <summary>Releases the unmanaged resources used by the <see cref="T:System.Security.Cryptography.Rfc2898DeriveBytes" /> class and optionally releases the managed resources.</summary>
      <param name="disposing">
        <see langword="true" /> to release both managed and unmanaged resources; <see langword="false" /> to release only unmanaged resources.</param>
    </member>
    <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.GetBytes(System.Int32)">
      <summary>Returns the pseudo-random key for this object.</summary>
      <param name="cb">The number of pseudo-random key bytes to generate.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="cb" /> is out of range. This parameter requires a non-negative number.</exception>
      <returns>A byte array filled with pseudo-random key bytes.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.Pbkdf2(System.Byte[],System.Byte[],System.Int32,System.Security.Cryptography.HashAlgorithmName,System.Int32)">
      <summary>Creates a PBKDF2 derived key from password bytes.</summary>
      <param name="password">The password used to derive the key.</param>
      <param name="salt">The key salt used to derive the key.</param>
      <param name="iterations">The number of iterations for the operation.</param>
      <param name="hashAlgorithm">The hash algorithm to use to derive the key.</param>
      <param name="outputLength">The size of key to derive.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="password" /> or <paramref name="salt" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is not zero or a positive value.

-or-

<paramref name="iterations" /> is not a positive value.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is empty or <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> is an unsupported hash algorithm. Supported algorithms are <see cref="P:System.Security.Cryptography.HashAlgorithmName.SHA1" />, <see cref="P:System.Security.Cryptography.HashAlgorithmName.SHA256" />, <see cref="P:System.Security.Cryptography.HashAlgorithmName.SHA384" />, and <see cref="P:System.Security.Cryptography.HashAlgorithmName.SHA512" />.</exception>
      <returns>A byte array containing the created PBKDF2 derived key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.Pbkdf2(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Int32,System.Security.Cryptography.HashAlgorithmName,System.Int32)">
      <summary>Creates a PBKDF2 derived key from password bytes.</summary>
      <param name="password">The password used to derive the key.</param>
      <param name="salt">The key salt used to derive the key.</param>
      <param name="iterations">The number of iterations for the operation.</param>
      <param name="hashAlgorithm">The hash algorithm to use to derive the key.</param>
      <param name="outputLength">The size of key to derive.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is not zero or a positive value.

-or-

<paramref name="iterations" /> is not a positive value.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is empty or <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> is an unsupported hash algorithm. Supported algorithms are <see cref="P:System.Security.Cryptography.HashAlgorithmName.SHA1" />, <see cref="P:System.Security.Cryptography.HashAlgorithmName.SHA256" />, <see cref="P:System.Security.Cryptography.HashAlgorithmName.SHA384" />, and <see cref="P:System.Security.Cryptography.HashAlgorithmName.SHA512" />.</exception>
      <returns>A byte array containing the created PBKDF2 derived key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.Pbkdf2(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32,System.Security.Cryptography.HashAlgorithmName)">
      <summary>Fills a buffer with a PBKDF2 derived key.</summary>
      <param name="password">The password used to derive the key.</param>
      <param name="salt">The key salt used to derive the key.</param>
      <param name="destination">The buffer to fill with a derived key.</param>
      <param name="iterations">The number of iterations for the operation.</param>
      <param name="hashAlgorithm">The hash algorithm to use to derive the key.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="iterations" /> is not a positive value.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is empty or <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> is an unsupported hash algorithm. Supported algorithms are <see cref="P:System.Security.Cryptography.HashAlgorithmName.SHA1" />, <see cref="P:System.Security.Cryptography.HashAlgorithmName.SHA256" />, <see cref="P:System.Security.Cryptography.HashAlgorithmName.SHA384" />, and <see cref="P:System.Security.Cryptography.HashAlgorithmName.SHA512" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.Pbkdf2(System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Byte},System.Int32,System.Security.Cryptography.HashAlgorithmName,System.Int32)">
      <summary>Creates a PBKDF2 derived key from a password.</summary>
      <param name="password">The password used to derive the key.</param>
      <param name="salt">The key salt used to derive the key.</param>
      <param name="iterations">The number of iterations for the operation.</param>
      <param name="hashAlgorithm">The hash algorithm to use to derive the key.</param>
      <param name="outputLength">The size of key to derive.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is not zero or a positive value.

-or-

<paramref name="iterations" /> is not a positive value.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is empty or <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> is an unsupported hash algorithm. Supported algorithms are <see cref="P:System.Security.Cryptography.HashAlgorithmName.SHA1" />, <see cref="P:System.Security.Cryptography.HashAlgorithmName.SHA256" />, <see cref="P:System.Security.Cryptography.HashAlgorithmName.SHA384" />, and <see cref="P:System.Security.Cryptography.HashAlgorithmName.SHA512" />.</exception>
      <exception cref="T:System.Text.EncoderFallbackException">
        <paramref name="password" /> contains text that cannot be converted to UTF8.</exception>
      <returns>A byte array of length <paramref name="outputLength" /> that is filled with pseudo-random key bytes.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.Pbkdf2(System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32,System.Security.Cryptography.HashAlgorithmName)">
      <summary>Fills a buffer with a PBKDF2 derived key.</summary>
      <param name="password">The password used to derive the key.</param>
      <param name="salt">The key salt used to derive the key.</param>
      <param name="destination">The buffer to fill with a derived key.</param>
      <param name="iterations">The number of iterations for the operation.</param>
      <param name="hashAlgorithm">The hash algorithm to use to derive the key.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="iterations" /> is not a positive value.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is empty or <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> is an unsupported hash algorithm. Supported algorithms are <see cref="P:System.Security.Cryptography.HashAlgorithmName.SHA1" />, <see cref="P:System.Security.Cryptography.HashAlgorithmName.SHA256" />, <see cref="P:System.Security.Cryptography.HashAlgorithmName.SHA384" />, and <see cref="P:System.Security.Cryptography.HashAlgorithmName.SHA512" />.</exception>
      <exception cref="T:System.Text.EncoderFallbackException">
        <paramref name="password" /> contains text that cannot be converted to UTF8.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.Pbkdf2(System.String,System.Byte[],System.Int32,System.Security.Cryptography.HashAlgorithmName,System.Int32)">
      <summary>Creates a PBKDF2 derived key from a password.</summary>
      <param name="password">The password used to derive the key.</param>
      <param name="salt">The key salt used to derive the key.</param>
      <param name="iterations">The number of iterations for the operation.</param>
      <param name="hashAlgorithm">The hash algorithm to use to derive the key.</param>
      <param name="outputLength">The size of key to derive.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="password" /> or <paramref name="salt" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is not zero or a positive value.

-or-

<paramref name="iterations" /> is not a positive value.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> that is empty or <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> is an unsupported hash algorithm. Supported algorithms are <see cref="P:System.Security.Cryptography.HashAlgorithmName.SHA1" />, <see cref="P:System.Security.Cryptography.HashAlgorithmName.SHA256" />, <see cref="P:System.Security.Cryptography.HashAlgorithmName.SHA384" />, and <see cref="P:System.Security.Cryptography.HashAlgorithmName.SHA512" />.</exception>
      <exception cref="T:System.Text.EncoderFallbackException">
        <paramref name="password" /> contains text that cannot be converted to UTF8.</exception>
      <returns>A byte array of length <paramref name="outputLength" /> that is filled with pseudo-random key bytes.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.Reset">
      <summary>Resets the state of the operation.</summary>
    </member>
    <member name="P:System.Security.Cryptography.Rfc2898DeriveBytes.HashAlgorithm">
      <summary>Gets the hash algorithm used for byte derivation.</summary>
      <returns>The hash algorithm used for byte derivation.</returns>
    </member>
    <member name="P:System.Security.Cryptography.Rfc2898DeriveBytes.IterationCount">
      <summary>Gets or sets the number of iterations for the operation.</summary>
      <exception cref="T:System.ArgumentOutOfRangeException">The number of iterations is less than 1.</exception>
      <returns>The number of iterations for the operation.</returns>
    </member>
    <member name="P:System.Security.Cryptography.Rfc2898DeriveBytes.Salt">
      <summary>Gets or sets the key salt value for the operation.</summary>
      <exception cref="T:System.ArgumentException">The specified salt size is smaller than 8 bytes.</exception>
      <exception cref="T:System.ArgumentNullException">The salt is <see langword="null" />.</exception>
      <returns>The key salt value for the operation.</returns>
    </member>
    <member name="T:System.Security.Cryptography.Rijndael">
      <summary>Represents the base class from which all implementations of the <see cref="T:System.Security.Cryptography.Rijndael" /> symmetric encryption algorithm must inherit.</summary>
    </member>
    <member name="M:System.Security.Cryptography.Rijndael.#ctor">
      <summary>Initializes a new instance of <see cref="T:System.Security.Cryptography.Rijndael" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.Rijndael.Create">
      <summary>Creates a cryptographic object to perform the <see cref="T:System.Security.Cryptography.Rijndael" /> algorithm.</summary>
      <exception cref="T:System.Reflection.TargetInvocationException">The algorithm was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.</exception>
      <returns>A cryptographic object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Rijndael.Create(System.String)">
      <summary>Creates a cryptographic object to perform the specified implementation of the <see cref="T:System.Security.Cryptography.Rijndael" /> algorithm.</summary>
      <param name="algName">The name of the specific implementation of <see cref="T:System.Security.Cryptography.Rijndael" /> to create.</param>
      <exception cref="T:System.Reflection.TargetInvocationException">The algorithm described by the <paramref name="algName" /> parameter was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.</exception>
      <returns>A cryptographic object.</returns>
    </member>
    <member name="T:System.Security.Cryptography.RijndaelManaged">
      <summary>Accesses the managed version of the <see cref="T:System.Security.Cryptography.Rijndael" /> algorithm. This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RijndaelManaged.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RijndaelManaged" /> class.</summary>
      <exception cref="T:System.InvalidOperationException">This class is not compliant with the FIPS algorithm.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RijndaelManaged.CreateDecryptor">
      <summary>Creates a symmetric decryptor object with the current <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key" /> property and initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />).</summary>
      <returns>A symmetric decryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RijndaelManaged.CreateDecryptor(System.Byte[],System.Byte[])">
      <summary>Creates a symmetric <see cref="T:System.Security.Cryptography.Rijndael" /> decryptor object with the specified <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key" /> and initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />).</summary>
      <param name="rgbKey">The secret key to be used for the symmetric algorithm. The key size must be 128, 192, or 256 bits.</param>
      <param name="rgbIV">The IV to be used for the symmetric algorithm.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="rgbKey" /> parameter is <see langword="null" />.  
  
 -or-  
  
 The <paramref name="rgbIV" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The value of the <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Mode" /> property is not <see cref="F:System.Security.Cryptography.CipherMode.ECB" />, <see cref="F:System.Security.Cryptography.CipherMode.CBC" />, or <see cref="F:System.Security.Cryptography.CipherMode.CFB" />.</exception>
      <returns>A symmetric <see cref="T:System.Security.Cryptography.Rijndael" /> decryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RijndaelManaged.CreateEncryptor">
      <summary>Creates a symmetric encryptor object with the current <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key" /> property and initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />).</summary>
      <returns>A symmetric encryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RijndaelManaged.CreateEncryptor(System.Byte[],System.Byte[])">
      <summary>Creates a symmetric <see cref="T:System.Security.Cryptography.Rijndael" /> encryptor object with the specified <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key" /> and initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />).</summary>
      <param name="rgbKey">The secret key to be used for the symmetric algorithm. The key size must be 128, 192, or 256 bits.</param>
      <param name="rgbIV">The IV to be used for the symmetric algorithm.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="rgbKey" /> parameter is <see langword="null" />.  
  
 -or-  
  
 The <paramref name="rgbIV" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The value of the <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Mode" /> property is not <see cref="F:System.Security.Cryptography.CipherMode.ECB" />, <see cref="F:System.Security.Cryptography.CipherMode.CBC" />, or <see cref="F:System.Security.Cryptography.CipherMode.CFB" />.</exception>
      <returns>A symmetric <see cref="T:System.Security.Cryptography.Rijndael" /> encryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RijndaelManaged.GenerateIV">
      <summary>Generates a random initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />) to be used for the algorithm.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RijndaelManaged.GenerateKey">
      <summary>Generates a random <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key" /> to be used for the algorithm.</summary>
    </member>
    <member name="P:System.Security.Cryptography.RijndaelManaged.BlockSize">
      <summary>Gets or sets the block size, in bits, of the cryptographic operation.</summary>
      <returns>The block size, in bits, of the cryptographic operation. The default is 128 bits.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RijndaelManaged.FeedbackSize">
      <summary>Gets or sets the feedback size, in bits, of the cryptographic operation for the Cipher Feedback (CFB) and Output Feedback (OFB) cipher modes.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The feedback size is larger than the block size.</exception>
      <returns>The feedback size in bits.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RijndaelManaged.IV">
      <summary>Gets or sets the initialization vector (IV) to use for the symmetric algorithm.</summary>
      <returns>The initialization vector (IV) to use for the symmetric algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RijndaelManaged.Key">
      <summary>Gets or sets the secret key used for the symmetric algorithm.</summary>
      <returns>The secret key used for the symmetric algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RijndaelManaged.KeySize">
      <summary>Gets or sets the size, in bits, of the secret key used for the symmetric algorithm.</summary>
      <returns>The size, in bits, of the secret key used for the symmetric algorithm. The default is 256 bits.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RijndaelManaged.LegalKeySizes">
      <summary>Gets the key sizes, in bits, that are supported by the symmetric algorithm.</summary>
      <returns>The key sizes, in bits, that are supported by the symmetric algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RijndaelManaged.Mode">
      <summary>Gets or sets the mode for operation of the symmetric algorithm.</summary>
      <returns>The mode for operation of the symmetric algorithm. The default is <see cref="F:System.Security.Cryptography.CipherMode.CBC" /></returns>
    </member>
    <member name="P:System.Security.Cryptography.RijndaelManaged.Padding">
      <summary>Gets or sets the padding mode used in the symmetric algorithm.</summary>
      <returns>The padding mode used in the symmetric algorithm. The default is <see cref="F:System.Security.Cryptography.PaddingMode.PKCS7" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.RNGCryptoServiceProvider">
      <summary>Implements a cryptographic Random Number Generator (RNG) using the implementation provided by the cryptographic service provider (CSP). This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RNGCryptoServiceProvider.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RNGCryptoServiceProvider" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RNGCryptoServiceProvider.#ctor(System.Byte[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RNGCryptoServiceProvider" /> class.</summary>
      <param name="rgb">A byte array. This value is ignored.</param>
    </member>
    <member name="M:System.Security.Cryptography.RNGCryptoServiceProvider.#ctor(System.Security.Cryptography.CspParameters)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RNGCryptoServiceProvider" /> class with the specified parameters.</summary>
      <param name="cspParams">The parameters to pass to the cryptographic service provider (CSP).</param>
    </member>
    <member name="M:System.Security.Cryptography.RNGCryptoServiceProvider.#ctor(System.String)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RNGCryptoServiceProvider" /> class.</summary>
      <param name="str">The string input. This parameter is ignored.</param>
    </member>
    <member name="M:System.Security.Cryptography.RNGCryptoServiceProvider.GetBytes(System.Byte[],System.Int32,System.Int32)">
      <summary>Fills the specified byte array with a cryptographically strong random sequence of values starting at a specified index for a specified number of bytes.</summary>
      <param name="data">The array to fill with cryptographically strong random bytes.</param>
      <param name="offset">The index of the array to start the fill operation.</param>
      <param name="count">The number of bytes to fill.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="offset" /> or <paramref name="count" /> is less than 0.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="offset" /> plus <paramref name="count" /> exceeds the length of <paramref name="data" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RNGCryptoServiceProvider.GetBytes(System.Byte[])">
      <summary>Fills an array of bytes with a cryptographically strong sequence of random values.</summary>
      <param name="data">The array to fill with a cryptographically strong sequence of random values.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The cryptographic service provider (CSP) cannot be acquired.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RNGCryptoServiceProvider.GetBytes(System.Span{System.Byte})">
      <summary>Fills a span with cryptographically strong random bytes.</summary>
      <param name="data">The span to fill with cryptographically strong random bytes.</param>
    </member>
    <member name="M:System.Security.Cryptography.RNGCryptoServiceProvider.GetNonZeroBytes(System.Byte[])">
      <summary>Fills an array of bytes with a cryptographically strong sequence of random nonzero values.</summary>
      <param name="data">The array to fill with a cryptographically strong sequence of random nonzero values.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The cryptographic service provider (CSP) cannot be acquired.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RNGCryptoServiceProvider.GetNonZeroBytes(System.Span{System.Byte})">
      <summary>Fills a byte span with a cryptographically strong random sequence of nonzero values.</summary>
      <param name="data">The span to fill with cryptographically strong random nonzero bytes.</param>
    </member>
    <member name="T:System.Security.Cryptography.RSA">
      <summary>Represents the base class from which all implementations of the <see cref="T:System.Security.Cryptography.RSA" /> algorithm inherit.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RSA.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSA" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RSA.Create">
      <summary>Creates an instance of the default implementation of the <see cref="T:System.Security.Cryptography.RSA" /> algorithm.</summary>
      <returns>A new instance of the default implementation of <see cref="T:System.Security.Cryptography.RSA" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.Create(System.Int32)">
      <summary>Creates a new ephemeral RSA key with the specified key size.</summary>
      <param name="keySizeInBits">The key size, in bits.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="keySizeInBits" /> is not supported by the default implementation.</exception>
      <returns>A new ephemeral RSA key with the specified key size.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.Create(System.Security.Cryptography.RSAParameters)">
      <summary>Creates a new ephemeral RSA key with the specified RSA key parameters.</summary>
      <param name="parameters">The parameters for the <see cref="T:System.Security.Cryptography.RSA" /> algorithm.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="parameters" /> does not represent a valid RSA key.</exception>
      <returns>A new ephemeral RSA key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.Create(System.String)">
      <summary>Creates an instance of the specified implementation of <see cref="T:System.Security.Cryptography.RSA" />.</summary>
      <param name="algName">The name of the implementation of <see cref="T:System.Security.Cryptography.RSA" /> to use.</param>
      <returns>A new instance of the specified implementation of <see cref="T:System.Security.Cryptography.RSA" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.Decrypt(System.Byte[],System.Security.Cryptography.RSAEncryptionPadding)">
      <summary>When overridden in a derived class, decrypts the input data using the specified padding mode.</summary>
      <param name="data">The data to decrypt.</param>
      <param name="padding">The padding mode.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> or <paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" /> is unknown, or not supported by this implementation.

-or-

The length of <paramref name="data" /> is not equal to the number of bytes for <see cref="P:System.Security.Cryptography.AsymmetricAlgorithm.KeySize" />.

-or-

This instance represents only a public key.

-or-

The decryption operation failed.</exception>
      <returns>The decrypted data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.Decrypt(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.RSAEncryptionPadding)">
      <summary>Decrypts the input data using the specified padding mode.</summary>
      <param name="data">The data to decrypt.</param>
      <param name="padding">The padding mode.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" /> is unknown, or not supported by this implementation.

-or-

The decryption operation failed.</exception>
      <exception cref="T:System.NotImplementedException">This implementation has not implemented one of <see cref="M:System.Security.Cryptography.RSA.Decrypt(System.Byte[],System.Security.Cryptography.RSAEncryptionPadding)" /> or
              <see cref="M:System.Security.Cryptography.RSA.TryDecrypt(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.RSAEncryptionPadding,System.Int32@)" />.</exception>
      <returns>The decrypted data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.Decrypt(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.RSAEncryptionPadding)">
      <summary>Decrypts the input data using the specified padding mode.</summary>
      <param name="data">The data to decrypt.</param>
      <param name="destination">The buffer to receive the decrypted data.</param>
      <param name="padding">The padding mode.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">The buffer in <paramref name="destination" /> is too small to hold the decrypted data.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" /> is unknown, or not supported by this implementation.

-or-

The decryption operation failed.</exception>
      <exception cref="T:System.NotImplementedException">This implementation has not implemented one of <see cref="M:System.Security.Cryptography.RSA.Decrypt(System.Byte[],System.Security.Cryptography.RSAEncryptionPadding)" /> or
              <see cref="M:System.Security.Cryptography.RSA.TryDecrypt(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.RSAEncryptionPadding,System.Int32@)" />.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.DecryptValue(System.Byte[])">
      <summary>When overridden in a derived class, decrypts the input data using the private key.</summary>
      <param name="rgb">The cipher text to be decrypted.</param>
      <exception cref="T:System.NotSupportedException">This method call is not supported. This exception is thrown starting with the .NET Framework 4.6.</exception>
      <returns>The resulting decryption of the <paramref name="rgb" /> parameter in plain text.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.Encrypt(System.Byte[],System.Security.Cryptography.RSAEncryptionPadding)">
      <summary>When overridden in a derived class, encrypts the input data using the specified padding mode.</summary>
      <param name="data">The data to encrypt.</param>
      <param name="padding">The padding mode.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> or <paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" /> is unknown, or not supported by this implementation.

-or-

The length of <paramref name="data" /> is too long for the combination of <see cref="P:System.Security.Cryptography.AsymmetricAlgorithm.KeySize" /> and the selected padding.

-or-

The encryption operation failed.</exception>
      <returns>The encrypted data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.Encrypt(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.RSAEncryptionPadding)">
      <summary>Encrypts the input data using the specified padding mode.</summary>
      <param name="data">The data to encrypt.</param>
      <param name="padding">The padding mode.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" /> is unknown, or not supported by this implementation.

-or-

The length of data is too long for the combination of <see cref="P:System.Security.Cryptography.AsymmetricAlgorithm.KeySize" /> and the selected padding.

-or-

The encryption operation failed.</exception>
      <exception cref="T:System.NotImplementedException">This implementation has not implemented one of <see cref="M:System.Security.Cryptography.RSA.Encrypt(System.Byte[],System.Security.Cryptography.RSAEncryptionPadding)" /> or
              <see cref="M:System.Security.Cryptography.RSA.TryEncrypt(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.RSAEncryptionPadding,System.Int32@)" />.</exception>
      <returns>The encrypted data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.Encrypt(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.RSAEncryptionPadding)">
      <summary>Encrypts the input data using the specified padding mode.</summary>
      <param name="data">The data to encrypt.</param>
      <param name="destination">The buffer to receive the encrypted data.</param>
      <param name="padding">The padding mode.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">The buffer in <paramref name="destination" /> is too small to hold the encrypted data.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" /> is unknown, or not supported by this implementation.

-or-

The length of data is too long for the combination of <see cref="P:System.Security.Cryptography.AsymmetricAlgorithm.KeySize" /> and the selected padding.

-or-

The encryption operation failed.</exception>
      <exception cref="T:System.NotImplementedException">This implementation has not implemented one of <see cref="M:System.Security.Cryptography.RSA.Encrypt(System.Byte[],System.Security.Cryptography.RSAEncryptionPadding)" /> or
              <see cref="M:System.Security.Cryptography.RSA.TryEncrypt(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.RSAEncryptionPadding,System.Int32@)" />.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.EncryptValue(System.Byte[])">
      <summary>When overridden in a derived class, encrypts the input data using the public key.</summary>
      <param name="rgb">The plain text to be encrypted.</param>
      <exception cref="T:System.NotSupportedException">This method call is not supported. This exception is thrown starting with the .NET Framework 4.6.</exception>
      <returns>The resulting encryption of the <paramref name="rgb" /> parameter as cipher text.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.ExportParameters(System.Boolean)">
      <summary>When overridden in a derived class, exports the <see cref="T:System.Security.Cryptography.RSAParameters" />.</summary>
      <param name="includePrivateParameters">
        <see langword="true" /> to include private parameters; otherwise, <see langword="false" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The parameters could not be exported.</exception>
      <returns>The parameters for <see cref="T:System.Security.Cryptography.RSA" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.ExportRSAPrivateKey">
      <summary>Exports the current key in the PKCS#1 RSAPrivateKey format.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <returns>A byte array containing the PKCS#1 RSAPrivateKey representation of this key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.ExportRSAPrivateKeyPem">
      <summary>Exports the current key in the PKCS#1 RSAPrivateKey format, PEM encoded.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <returns>A string containing the PEM-encoded PKCS#1 RSAPrivateKey.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.ExportRSAPublicKey">
      <summary>Exports the public-key portion of the current key in the PKCS#1 RSAPublicKey format.</summary>
      <returns>A byte array containing the PKCS#1 RSAPublicKey representation of this key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.ExportRSAPublicKeyPem">
      <summary>Exports the public-key portion of the current key in the PKCS#1 RSAPublicKey format, PEM encoded.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <returns>A string containing the PEM-encoded PKCS#1 RSAPublicKey.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.FromXmlString(System.String)">
      <summary>Initializes an <see cref="T:System.Security.Cryptography.RSA" /> object from the key information from an XML string.</summary>
      <param name="xmlString">The XML string containing <see cref="T:System.Security.Cryptography.RSA" /> key information.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="xmlString" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The format of the <paramref name="xmlString" /> parameter is not valid.</exception>
      <exception cref="T:System.PlatformNotSupportedException">.NET Core and .NET 5+ only: In all cases.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSA.GetMaxOutputSize">
      <summary>Gets the maximum number of bytes an RSA operation can produce.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <see cref="P:System.Security.Cryptography.AsymmetricAlgorithm.KeySize" /> returned a value that is not a possible RSA key size.</exception>
      <returns>The maximum number of bytes an RSA operation can produce.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.HashData(System.Byte[],System.Int32,System.Int32,System.Security.Cryptography.HashAlgorithmName)">
      <summary>When overridden in a derived class, computes the hash value of a specified portion of a byte array by using a specified hashing algorithm.</summary>
      <param name="data">The data to be hashed.</param>
      <param name="offset">The index of the first byte in <paramref name="data" /> that is to be hashed.</param>
      <param name="count">The number of bytes to hash.</param>
      <param name="hashAlgorithm">The algorithm to use in hash the data.</param>
      <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
      <returns>The hashed data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.HashData(System.IO.Stream,System.Security.Cryptography.HashAlgorithmName)">
      <summary>When overridden in a derived class, computes the hash value of a specified binary stream by using a specified hashing algorithm.</summary>
      <param name="data">The binary stream to hash.</param>
      <param name="hashAlgorithm">The hash algorithm.</param>
      <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
      <returns>The hashed data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.ImportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a byte-based password, replacing the keys for this object.</summary>
      <param name="passwordBytes">The bytes to use as a password when decrypting the key material.</param>
      <param name="source">The bytes of a PKCS#8 EncryptedPrivateKeyInfo structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <paramref name="source" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The password is incorrect.

-or-

The contents of <paramref name="source" /> indicate the Key Derivation Function (KDF) to apply is the legacy PKCS#12 KDF, which requires <see cref="T:System.Char" />-based passwords.

-or-

The contents of <paramref name="source" /> do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.

-or-

The contents of <paramref name="source" /> indicate the key is for an algorithm other than the algorithm represented by this instance.

-or-

The contents of <paramref name="source" /> represent the key in a format that is not supported.

-or-

The algorithm-specific key import failed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSA.ImportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a char-based password, replacing the keys for this object.</summary>
      <param name="password">The password to use for decrypting the key material.</param>
      <param name="source">The bytes of a PKCS#8 EncryptedPrivateKeyInfo structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <paramref name="source" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The password is incorrect.

-or-

The contents of <paramref name="source" /> do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.

-or-

The contents of <paramref name="source" /> indicate the key is for an algorithm other than the algorithm represented by this instance.

-or-

The contents of <paramref name="source" /> represent the key in a format that is not supported.

-or-

The algorithm-specific key import failed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSA.ImportFromEncryptedPem(System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Byte})">
      <summary>Imports an encrypted RFC 7468 PEM-encoded private key, replacing the keys for this object.</summary>
      <param name="input">The PEM text of the encrypted key to import.</param>
      <param name="passwordBytes">The bytes to use as a password when decrypting the key material.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="input" /> does not contain a PEM-encoded key with a recognized label.

-or-

<paramref name="input" /> contains multiple PEM-encoded keys with a recognized label.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
The password is incorrect.

-or-

The base-64 decoded contents of the PEM text from <paramref name="input" /> do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.

-or-

The base-64 decoded contents of the PEM text from <paramref name="input" /> indicate the key is for an algorithm other than the algorithm represented by this instance.

-or-

The base-64 decoded contents of the PEM text from <paramref name="input" /> represent the key in a format that is not supported.

-or-

The algorithm-specific key import failed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSA.ImportFromEncryptedPem(System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Char})">
      <summary>Imports an encrypted RFC 7468 PEM-encoded private key, replacing the keys for this object.</summary>
      <param name="input">The PEM text of the encrypted key to import.</param>
      <param name="password">The password to use for decrypting the key material.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="input" /> does not contain a PEM-encoded key with a recognized label.

-or-

<paramref name="input" /> contains multiple PEM-encoded keys with a recognized label.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
The password is incorrect.

-or-

The base-64 decoded contents of the PEM text from <paramref name="input" /> do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.

-or-

The base-64 decoded contents of the PEM text from <paramref name="input" /> indicate the key is for an algorithm other than the algorithm represented by this instance.

-or-

The base-64 decoded contents of the PEM text from <paramref name="input" /> represent the key in a format that is not supported.

-or-

The algorithm-specific key import failed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSA.ImportFromPem(System.ReadOnlySpan{System.Char})">
      <summary>Imports an RFC 7468 PEM-encoded key, replacing the keys for this object.</summary>
      <param name="input">The PEM text of the key to import.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="input" /> does not contain a PEM-encoded key with a recognized label.

-or-

<paramref name="input" /> contains multiple PEM-encoded keys with a recognized label.

-or-

<paramref name="input" /> contains an encrypted PEM-encoded key.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSA.ImportParameters(System.Security.Cryptography.RSAParameters)">
      <summary>When overridden in a derived class, imports the specified <see cref="T:System.Security.Cryptography.RSAParameters" />.</summary>
      <param name="parameters">The parameters for <see cref="T:System.Security.Cryptography.RSA" />.</param>
    </member>
    <member name="M:System.Security.Cryptography.RSA.ImportPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public/private keypair from a PKCS#8 PrivateKeyInfo structure after decryption, replacing the keys for this object.</summary>
      <param name="source">The bytes of a PKCS#8 PrivateKeyInfo structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <paramref name="source" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The contents of <paramref name="source" /> do not represent an ASN.1-BER-encoded PKCS#8 PrivateKeyInfo structure.

-or-

The contents of <paramref name="source" /> indicate the key is for an algorithm other than the algorithm represented by this instance.

-or-

The contents of <paramref name="source" /> represent the key in a format that is not supported.

-or-

The algorithm-specific key import failed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSA.ImportRSAPrivateKey(System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public/private keypair from a PKCS#1 RSAPrivateKey structure after decryption, replacing the keys for this object.</summary>
      <param name="source">The bytes of a PKCS#1 RSAPrivateKey structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <paramref name="source" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The contents of <paramref name="source" /> do not represent an ASN.1-BER-encoded PKCS#1 RSAPrivateKey structure.

-or-

The key import failed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSA.ImportRSAPublicKey(System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public key from a PKCS#1 RSAPublicKey structure after decryption, replacing the keys for this object.</summary>
      <param name="source">The bytes of a PKCS#1 RSAPublicKey structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <paramref name="source" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The contents of <paramref name="source" /> do not represent an ASN.1-BER-encoded PKCS#1 RSAPublicKey structure.

-or-

The key import failed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSA.ImportSubjectPublicKeyInfo(System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public key from an X.509 SubjectPublicKeyInfo structure after decryption, replacing the keys for this object.</summary>
      <param name="source">The bytes of an X.509 SubjectPublicKeyInfo structure in the ASN.1-DER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <paramref name="source" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The contents of <paramref name="source" /> do not represent an ASN.1-DER-encoded X.509 SubjectPublicKeyInfo structure.

-or-

The contents of <paramref name="source" /> indicate the key is for an algorithm other than the algorithm represented by this instance.

-or-

The contents of <paramref name="source" /> represent the key in a format that is not supported.

-or-

The algorithm-specific key import failed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSA.SignData(System.Byte[],System.Int32,System.Int32,System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Computes the hash value of a portion of the specified byte array using the specified hash algorithm and padding mode, and signs the resulting hash value.</summary>
      <param name="data">The input data to hash and sign.</param>
      <param name="offset">The offset into the array at which to begin using data.</param>
      <param name="count">The number of bytes in the array to use as data.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <param name="padding">The padding mode.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.

 -or-

 <paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="offset" /> is less than zero.

 -or-

 <paramref name="count" /> is less than zero.

 -or-

 <paramref name="offset" /> + <paramref name="count" /> - 1 results in an index that is beyond the upper bound of <paramref name="data" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" /> is unknown, or not supported by this implementation.

-or-

This instance represents only a public key.

-or-

An error occurred creating the signature.</exception>
      <returns>The RSA signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.SignData(System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Computes the hash value of the specified byte array using the specified hash algorithm and padding mode, and signs the resulting hash value.</summary>
      <param name="data">The input data to hash and sign.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <param name="padding">The padding mode.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.

 -or-

 <paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" /> is unknown, or not supported by this implementation.

-or-

This instance represents only a public key.

-or-

An error occurred creating the signature.</exception>
      <returns>The RSA signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.SignData(System.IO.Stream,System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Computes the hash value of the specified stream using the specified hash algorithm and padding mode, and signs the resulting hash value.</summary>
      <param name="data">The input stream to hash and sign.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <param name="padding">The padding mode.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.

 -or-

 <paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" /> is unknown, or not supported by this implementation.

-or-

This instance represents only a public key.

-or-

An error occurred creating the signature.</exception>
      <returns>The RSA signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.SignData(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Computes the hash value of the specified data and signs it.</summary>
      <param name="data">The input data to hash and sign.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <param name="padding">The padding mode.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="padding" /> or <paramref name="hashAlgorithm" />'s <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />'s <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is an empty string.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" /> is unknown, or not supported by this implementation.

-or-

This instance represents only a public key.

-or-

An error occurred creating the signature.</exception>
      <exception cref="T:System.NotImplementedException">This implementation has not implemented one of <see cref="M:System.Security.Cryptography.RSA.TrySignData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding,System.Int32@)" />, <see cref="M:System.Security.Cryptography.RSA.TrySignHash(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding,System.Int32@)" />,
              or <see cref="M:System.Security.Cryptography.RSA.SignHash(System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)" />.</exception>
      <returns>The RSA signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.SignData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Computes the hash of the provided data with the specified algorithm and sign the hash with the current key, writing the signature into a provided buffer.</summary>
      <param name="data">The input data to hash and sign.</param>
      <param name="destination">The buffer to receive the RSA signature.</param>
      <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
      <param name="padding">The padding mode.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="padding" /> or <paramref name="hashAlgorithm" />'s <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />'s <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is an empty string.

-or-

The buffer in <paramref name="destination" /> is too small to hold the signature.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" /> is unknown, or not supported by this implementation.

-or-

This instance represents only a public key.

-or-

An error occurred creating the signature.</exception>
      <exception cref="T:System.NotImplementedException">This implementation has not implemented one of <see cref="M:System.Security.Cryptography.RSA.TrySignData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding,System.Int32@)" />, <see cref="M:System.Security.Cryptography.RSA.TrySignHash(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding,System.Int32@)" />,
              or <see cref="M:System.Security.Cryptography.RSA.SignHash(System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)" />.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.SignHash(System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
      <summary>When overridden in a derived class, computes the signature for the specified hash value using the specified padding.</summary>
      <param name="hash">The hash value of the data to be signed.</param>
      <param name="hashAlgorithm">The hash algorithm used to create the hash value of the data.</param>
      <param name="padding">The padding.</param>
      <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> or <paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" /> is unknown, or not supported by this implementation.

-or-

This instance represents only a public key.

-or-

An error occurred creating the signature.</exception>
      <returns>The RSA signature for the specified hash value.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.SignHash(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Computes the signature for the specified hash value using the specified padding.</summary>
      <param name="hash">The hash value of the data to be signed.</param>
      <param name="hashAlgorithm">The hash algorithm used to create the hash of <paramref name="hash" />.</param>
      <param name="padding">The padding mode.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="padding" /> or <paramref name="hashAlgorithm" />'s <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />'s <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is an empty string.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" /> is unknown, or not supported by this implementation.

-or-

This instance represents only a public key.

-or-

An error occurred creating the signature.</exception>
      <exception cref="T:System.NotImplementedException">This implementation has not implemented one of <see cref="M:System.Security.Cryptography.RSA.TrySignHash(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding,System.Int32@)" />
              or <see cref="M:System.Security.Cryptography.RSA.SignHash(System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)" />.</exception>
      <returns>The RSA signature for the specified hash value.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.SignHash(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Signs the hash with the current key, writing the signature into a provided buffer.</summary>
      <param name="hash">The hash value of the data to be signed.</param>
      <param name="destination">The buffer to receive the RSA signature.</param>
      <param name="hashAlgorithm">The hash algorithm used to create the hash of <paramref name="hash" />.</param>
      <param name="padding">The padding mode.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="padding" /> or <paramref name="hashAlgorithm" />'s <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />'s <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is an empty string.

-or-

The buffer in <paramref name="destination" /> is too small to hold the signature.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" /> is unknown, or not supported by this implementation.

-or-

This instance represents only a public key.

-or-

An error occurred creating the signature.</exception>
      <exception cref="T:System.NotImplementedException">This implementation has not implemented one of <see cref="M:System.Security.Cryptography.RSA.TrySignHash(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding,System.Int32@)" />
              or <see cref="M:System.Security.Cryptography.RSA.SignHash(System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)" />.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.ToXmlString(System.Boolean)">
      <summary>Creates and returns an XML string containing the key of the current <see cref="T:System.Security.Cryptography.RSA" /> object.</summary>
      <param name="includePrivateParameters">
        <see langword="true" /> to include a public and private RSA key; <see langword="false" /> to include only the public key.</param>
      <exception cref="T:System.PlatformNotSupportedException">.NET Core and .NET 5+ only: In all cases.</exception>
      <returns>An XML string containing the key of the current <see cref="T:System.Security.Cryptography.RSA" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.TryDecrypt(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.RSAEncryptionPadding,System.Int32@)">
      <summary>Attempts to decrypt the input data using the specified padding mode, writing the result into a provided buffer.</summary>
      <param name="data">The data to decrypt.</param>
      <param name="destination">The buffer to receive the decrypted data.</param>
      <param name="padding">The padding mode.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" /> is unknown, or not supported by this implementation.

-or-

The length of <paramref name="data" /> is not equal to the number of bytes for <see cref="P:System.Security.Cryptography.AsymmetricAlgorithm.KeySize" />.

-or-

This instance represents only a public key.

-or-

The decryption operation failed.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is long enough to receive the decrypted data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.TryEncrypt(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.RSAEncryptionPadding,System.Int32@)">
      <summary>Attempts to encrypt the input data with a specified padding mode into a provided buffer.</summary>
      <param name="data">The data to encrypt.</param>
      <param name="destination">The buffer to receive the encrypted data.</param>
      <param name="padding">The padding mode.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" /> is unknown, or not supported by this implementation.

-or-

The length of <paramref name="data" /> is too long for the combination of <see cref="P:System.Security.Cryptography.AsymmetricAlgorithm.KeySize" /> and the selected padding.

-or-

The encryption operation failed.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is long enough to receive the encrypted data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.TryExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.PbeParameters,System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the PKCS#8 EncryptedPrivateKeyInfo format into a provided buffer, using a byte-based password.</summary>
      <param name="passwordBytes">The bytes to use as a password when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <param name="destination">The byte span to receive the PKCS#8 EncryptedPrivateKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.

-or-

<paramref name="pbeParameters" /> indicates that <see cref="F:System.Security.Cryptography.PbeEncryptionAlgorithm.TripleDes3KeyPkcs12" /> should be used, which requires <see cref="T:System.Char" />-based passwords.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.TryExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Char},System.Security.Cryptography.PbeParameters,System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the PKCS#8 EncryptedPrivateKeyInfo format into a provided buffer, using a char-based password.</summary>
      <param name="password">The password to use when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <param name="destination">The byte span to receive the PKCS#8 EncryptedPrivateKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.TryExportPkcs8PrivateKey(System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the PKCS#8 PrivateKeyInfo format into a provided buffer.</summary>
      <param name="destination">The byte span to receive the PKCS#8 PrivateKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.TryExportRSAPrivateKey(System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the PKCS#1 RSAPrivateKey format into a provided buffer.</summary>
      <param name="destination">The byte span to receive the PKCS#1 RSAPrivateKey data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.TryExportRSAPrivateKeyPem(System.Span{System.Char},System.Int32@)">
      <summary>Attempts to export the current key in the PEM-encoded PKCS#1 RSAPrivateKey format into a provided buffer.</summary>
      <param name="destination">The character span to receive the PEM-encoded PKCS#1 RSAPrivateKey data.</param>
      <param name="charsWritten">When this method returns, contains a value that indicates the number of characters written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.TryExportRSAPublicKey(System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the PKCS#1 RSAPublicKey format into a provided buffer.</summary>
      <param name="destination">The byte span to receive the PKCS#1 RSAPublicKey data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.TryExportRSAPublicKeyPem(System.Span{System.Char},System.Int32@)">
      <summary>Attempts to export the current key in the PEM-encoded PKCS#1 RSAPublicKey format into a provided buffer.</summary>
      <param name="destination">The character span to receive the PEM-encoded PKCS#1 RSAPublicKey data.</param>
      <param name="charsWritten">When this method returns, contains a value that indicates the number of characters written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.TryExportSubjectPublicKeyInfo(System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the X.509 SubjectPublicKeyInfo format into a provided buffer.</summary>
      <param name="destination">The byte span to receive the X.509 SubjectPublicKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be exported.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.TryHashData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Int32@)">
      <summary>Attempts to compute the hash of the provided data by using the specified algorithm, writing the results into a provided buffer.</summary>
      <param name="data">The data to be hashed.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <param name="hashAlgorithm">The algorithm to use in hash the data.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is long enough to receive the hash value; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.TrySignData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding,System.Int32@)">
      <summary>Attempts to hash the provided data with the specified algorithm and sign the hash with the current key, writing the signature into a provided buffer.</summary>
      <param name="data">The input data to hash and sign.</param>
      <param name="destination">The buffer to receive the RSA signature.</param>
      <param name="hashAlgorithm">The hash algorithm used to create the hash value of the data.</param>
      <param name="padding">The padding mode.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">This instance represents only a public key.

-or-

An error occurred creating the signature.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is long enough to receive the RSA signature; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.TrySignHash(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding,System.Int32@)">
      <summary>Attempts to sign the hash with the current key, writing the signature into a provided buffer.</summary>
      <param name="hash">The hash value of the data to be signed.</param>
      <param name="destination">The buffer to receive the RSA signature.</param>
      <param name="hashAlgorithm">The hash algorithm used to create the hash value of the data.</param>
      <param name="padding">The padding.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" /> is unknown, or not supported by this implementation.

-or-

This instance represents only a public key.

-or-

An error occurred creating the signature.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is long enough to receive the RSA signature; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.VerifyData(System.Byte[],System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Verifies that a digital signature is valid by calculating the hash value of the specified data using the specified hash algorithm and padding, and comparing it to the provided signature.</summary>
      <param name="data">The signed data.</param>
      <param name="signature">The signature data to be verified.</param>
      <param name="hashAlgorithm">The hash algorithm used to create the hash value of the data.</param>
      <param name="padding">The padding mode.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.

 -or-

 <paramref name="signature" /> is <see langword="null" />.

 -or-

 <paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" /> is unknown, or not supported by this implementation.</exception>
      <returns>
        <see langword="true" /> if the signature is valid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.VerifyData(System.Byte[],System.Int32,System.Int32,System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Verifies that a digital signature is valid by calculating the hash value of the data in a portion of a byte array using the specified hash algorithm and padding, and comparing it to the provided signature.</summary>
      <param name="data">The signed data.</param>
      <param name="offset">The starting index at which to compute the hash.</param>
      <param name="count">The number of bytes to hash.</param>
      <param name="signature">The signature data to be verified.</param>
      <param name="hashAlgorithm">The hash algorithm used to create the hash value of the data.</param>
      <param name="padding">The padding mode.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.

 -or-

 <paramref name="signature" /> is <see langword="null" />.

 -or-

 <paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="offset" /> is less than zero.

 -or-

 <paramref name="count" /> is less than zero.

 -or-

 <paramref name="offset" /> + <paramref name="count" /> - 1 results in an index that is beyond the upper bound of <paramref name="data" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" /> is unknown, or not supported by this implementation.</exception>
      <returns>
        <see langword="true" /> if the signature is valid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.VerifyData(System.IO.Stream,System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Verifies that a digital signature is valid by calculating the hash value of the specified stream using the specified hash algorithm and padding, and comparing it to the provided signature.</summary>
      <param name="data">The signed data.</param>
      <param name="signature">The signature data to be verified.</param>
      <param name="hashAlgorithm">The hash algorithm used to create the hash value of the data.</param>
      <param name="padding">The padding mode.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.

 -or-

 <paramref name="signature" /> is <see langword="null" />.

 -or-

 <paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" /> is unknown, or not supported by this implementation.</exception>
      <returns>
        <see langword="true" /> if the signature is valid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.VerifyData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Verifies that a digital signature is valid by calculating the hash value of the specified data using the specified hash algorithm and padding, and comparing it to the provided signature.</summary>
      <param name="data">The signed data.</param>
      <param name="signature">The signature data to be verified.</param>
      <param name="hashAlgorithm">The hash algorithm used to create the hash value of the data.</param>
      <param name="padding">The padding mode.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" /> is unknown, or not supported by this implementation.</exception>
      <returns>
        <see langword="true" /> if the signature is valid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.VerifyHash(System.Byte[],System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Verifies that a digital signature is valid by determining the hash value in the signature using the specified hash algorithm and padding, and comparing it to the provided hash value.</summary>
      <param name="hash">The hash value of the signed data.</param>
      <param name="signature">The signature data to be verified.</param>
      <param name="hashAlgorithm">The hash algorithm used to create the hash value.</param>
      <param name="padding">The padding mode.</param>
      <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="hash" /> or <paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" /> is unknown, or not supported by this implementation.</exception>
      <returns>
        <see langword="true" /> if the signature is valid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSA.VerifyHash(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Verifies that a digital signature is valid by determining the hash value in the signature using the specified hash algorithm and padding, and comparing it to the provided hash value.</summary>
      <param name="hash">The hash value of the signed data.</param>
      <param name="signature">The signature data to be verified.</param>
      <param name="hashAlgorithm">The hash algorithm used to create the hash value.</param>
      <param name="padding">The padding mode.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="hash" /> or <paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" /> is unknown, or not supported by this implementation.</exception>
      <returns>
        <see langword="true" /> if the signature is valid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RSA.KeyExchangeAlgorithm">
      <summary>Gets the name of the key exchange algorithm available with this implementation of <see cref="T:System.Security.Cryptography.RSA" />.</summary>
      <returns>Returns "RSA".</returns>
    </member>
    <member name="P:System.Security.Cryptography.RSA.SignatureAlgorithm">
      <summary>Gets the name of the signature algorithm available with this implementation of <see cref="T:System.Security.Cryptography.RSA" />.</summary>
      <returns>Returns "RSA".</returns>
    </member>
    <member name="T:System.Security.Cryptography.RSACng">
      <summary>Provides a Cryptography Next Generation (CNG) implementation of the RSA algorithm.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RSACng.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSACng" /> class with a random 2,048-bit key pair.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RSACng.#ctor(System.Int32)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSACng" /> class with a randomly generated key of the specified size.</summary>
      <param name="keySize">The size of the key to generate in bits.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="keySize" /> is not valid.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSACng.#ctor(System.Security.Cryptography.CngKey)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSACng" /> class with the specified key.</summary>
      <param name="key">The key to use for RSA operations.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="key" /> is not a valid RSA key.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSACng.Decrypt(System.Byte[],System.Security.Cryptography.RSAEncryptionPadding)">
      <summary>Decrypts input data using the specified padding mode.</summary>
      <param name="data">The data to decrypt.</param>
      <param name="padding">The padding mode.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.

 -or-

 <paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" />.<see cref="P:System.Security.Cryptography.RSAEncryptionPadding.Mode" /> isn't equal to <see cref="F:System.Security.Cryptography.RSAEncryptionPaddingMode.Pkcs1" /> or <see cref="F:System.Security.Cryptography.RSAEncryptionPaddingMode.Oaep" />.</exception>
      <returns>The decrypted data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACng.Encrypt(System.Byte[],System.Security.Cryptography.RSAEncryptionPadding)">
      <summary>Encrypts the input data using the specified padding.</summary>
      <param name="data">The data to encrypt.</param>
      <param name="padding">The padding mode.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.

 -or-

 <paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" />.<see cref="P:System.Security.Cryptography.RSAEncryptionPadding.Mode" /> isn't equal to <see cref="F:System.Security.Cryptography.RSAEncryptionPaddingMode.Pkcs1" /> or <see cref="F:System.Security.Cryptography.RSAEncryptionPaddingMode.Oaep" />.</exception>
      <returns>The encrypted data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACng.ExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.PbeParameters)">
      <summary>Exports the current key in the PKCS#8 EncryptedPrivateKeyInfo format with a byte-based password.</summary>
      <param name="passwordBytes">The bytes to use as a password when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <returns>A byte array containing the PKCS#8 EncryptedPrivateKeyInfo representation of this key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACng.ExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Char},System.Security.Cryptography.PbeParameters)">
      <summary>Exports the current key in the PKCS#8 EncryptedPrivateKeyInfo format with a char-based password.</summary>
      <param name="password">The password to use when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <returns>A byte array containing the PKCS#8 EncryptedPrivateKeyInfo representation of this key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACng.ExportParameters(System.Boolean)">
      <summary>Exports the key used by the RSA object into a <see cref="T:System.Security.Cryptography.RSAParameters" /> object.</summary>
      <param name="includePrivateParameters">
        <see langword="true" /> to include private parameters; otherwise, <see langword="false" />.</param>
      <returns>The key used by the RSA object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACng.ImportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a byte-based password, replacing the keys for this object.</summary>
      <param name="passwordBytes">The bytes to use as a password when decrypting the key material.</param>
      <param name="source">The bytes of a PKCS#8 EncryptedPrivateKeyInfo structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <code data-dev-comment-type="paramref">source</code>. This parameter is treated as uninitialized.</param>
    </member>
    <member name="M:System.Security.Cryptography.RSACng.ImportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a char-based password, replacing the keys for this object.</summary>
      <param name="password">The password to use for decrypting the key material.</param>
      <param name="source">The bytes of a PKCS#8 EncryptedPrivateKeyInfo structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <code data-dev-comment-type="paramref">source</code>. This parameter is treated as uninitialized.</param>
    </member>
    <member name="M:System.Security.Cryptography.RSACng.ImportParameters(System.Security.Cryptography.RSAParameters)">
      <summary>Replaces the existing key that the current instance is working with by creating a new <see cref="T:System.Security.Cryptography.CngKey" /> for the parameters structure.</summary>
      <param name="parameters">The RSA parameters.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="parameters" /> contains neither an exponent nor a modulus.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="parameters" /> is not a valid RSA key.

 -or-

 <paramref name="parameters" /> is a full key pair and the default KSP is used.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSACng.ImportPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public/private keypair from a PKCS#8 PrivateKeyInfo structure after decryption, replacing the keys for this object.</summary>
      <param name="source">The bytes of a PKCS#8 PrivateKeyInfo structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <code data-dev-comment-type="paramref">source</code>. This parameter is treated as uninitialized.</param>
    </member>
    <member name="M:System.Security.Cryptography.RSACng.SignHash(System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Signs data that was hashed by using the specified hashing algorithm and padding mode.</summary>
      <param name="hash">The hash to sign.</param>
      <param name="hashAlgorithm">The hash algorithm name.</param>
      <param name="padding">The padding mode.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="hash" /> is <see langword="null" />.

 -or-

 <paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">The value of the <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> property of <paramref name="hashAlgorithm" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" /> does not equal <see cref="P:System.Security.Cryptography.RSASignaturePadding.Pkcs1" /> or <see cref="P:System.Security.Cryptography.RSASignaturePadding.Pss" />.</exception>
      <returns>The signed data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACng.TryDecrypt(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.RSAEncryptionPadding,System.Int32@)">
      <summary>Decrypts data using the private key.</summary>
      <param name="data">The data to decrypt.</param>
      <param name="destination">The buffer to receive the decrypted data.</param>
      <param name="padding">The padding mode.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <code data-dev-comment-type="paramref">destination</code>. This parameter is treated as uninitialized.</param>
      <returns>
        <code data-dev-comment-type="langword">true</code> if <code data-dev-comment-type="paramref">destination</code> is long enough to receive the decrypted data; otherwise, <code data-dev-comment-type="langword">false</code>.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACng.TryEncrypt(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.RSAEncryptionPadding,System.Int32@)">
      <summary>Encrypts data using the public key.</summary>
      <param name="data">The data to encrypt.</param>
      <param name="destination">The buffer to receive the encrypted data.</param>
      <param name="padding">The padding mode.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <code data-dev-comment-type="paramref">destination</code>. This parameter is treated as uninitialized.</param>
      <returns>
        <code data-dev-comment-type="langword">true</code> if <code data-dev-comment-type="paramref">destination</code> is long enough to receive the encrypted data; otherwise, <code data-dev-comment-type="langword">false</code>.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACng.TryExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.PbeParameters,System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the PKCS#8 EncryptedPrivateKeyInfo format into a provided buffer, using a byte-based password.</summary>
      <param name="passwordBytes">The bytes to use as a password when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <param name="destination">The byte span to receive the PKCS#8 EncryptedPrivateKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <code data-dev-comment-type="paramref">destination</code>. This parameter is treated as uninitialized.</param>
      <returns>
        <code data-dev-comment-type="langword">true</code> if <code data-dev-comment-type="paramref">destination</code> is big enough to receive the output; otherwise, <code data-dev-comment-type="langword">false</code>.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACng.TryExportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Char},System.Security.Cryptography.PbeParameters,System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the PKCS#8 EncryptedPrivateKeyInfo format into a provided buffer, using a char-based password.</summary>
      <param name="password">The password to use when encrypting the key material.</param>
      <param name="pbeParameters">The password-based encryption (PBE) parameters to use when encrypting the key material.</param>
      <param name="destination">The byte span to receive the PKCS#8 EncryptedPrivateKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <code data-dev-comment-type="paramref">destination</code>. This parameter is treated as uninitialized.</param>
      <returns>
        <code data-dev-comment-type="langword">true</code> if <code data-dev-comment-type="paramref">destination</code> is big enough to receive the output; otherwise, <code data-dev-comment-type="langword">false</code>.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACng.TryExportPkcs8PrivateKey(System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the PKCS#8 PrivateKeyInfo format into a provided buffer.</summary>
      <param name="destination">The byte span to receive the PKCS#8 PrivateKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <code data-dev-comment-type="paramref">destination</code>. This parameter is treated as uninitialized.</param>
      <returns>
        <code data-dev-comment-type="langword">true</code> if <code data-dev-comment-type="paramref">destination</code> is big enough to receive the output; otherwise, <code data-dev-comment-type="langword">false</code>.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACng.TrySignHash(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding,System.Int32@)">
      <summary>Attempts to sign the hash with the current key, writing the signature into a provided buffer.</summary>
      <param name="hash">The hash value of the data to be signed.</param>
      <param name="destination">The buffer to receive the RSA signature.</param>
      <param name="hashAlgorithm">The hash algorithm used to create the hash value of the data.</param>
      <param name="padding">The padding.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <code data-dev-comment-type="paramref">destination</code>. This parameter is treated as uninitialized.</param>
      <returns>
        <code data-dev-comment-type="langword">true</code> if <code data-dev-comment-type="paramref">destination</code> is long enough to receive the RSA signature; otherwise, <code data-dev-comment-type="langword">false</code>.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACng.VerifyHash(System.Byte[],System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Verifies data that was signed and already hashed with the specified algorithm and padding mode.</summary>
      <param name="hash">The hash to verify.</param>
      <param name="signature">The signature of the data.</param>
      <param name="hashAlgorithm">The hash algorithm name.</param>
      <param name="padding">The padding mode.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="hash" /> is <see langword="null" />.

 -or-

 <paramref name="signature" /> is <see langword="null" />.

 -or-

 <paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">The value of the <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> property of <paramref name="hashAlgorithm" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" /> does not equal <see cref="P:System.Security.Cryptography.RSASignaturePadding.Pkcs1" /> or <see cref="P:System.Security.Cryptography.RSASignaturePadding.Pss" />.

 -or-

 The signature is badly formatted. (In the .NET Framework 4.6 and 4.6.1 only; starting with the .NET Framework 4.6.2, the method returns <see langword="false" /> if a signature is badly formatted.</exception>
      <returns>
        <see langword="true" /> if the signature verifies for the hash; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACng.VerifyHash(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Verifies that a digital signature is valid by determining the hash value in the signature using the specified hash algorithm and padding, and comparing it to the provided hash value.</summary>
      <param name="hash">The hash value of the signed data.</param>
      <param name="signature">The signature data to be verified.</param>
      <param name="hashAlgorithm">The hash algorithm used to create the hash value.</param>
      <param name="padding">The padding mode.</param>
      <returns>
        <code data-dev-comment-type="langword">true</code> if the signature is valid; otherwise, <code data-dev-comment-type="langword">false</code>.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RSACng.Key">
      <summary>Gets the key that will be used by the <see cref="T:System.Security.Cryptography.RSACng" /> object for any cryptographic operation that it performs.</summary>
      <returns>The key used by the <see cref="T:System.Security.Cryptography.RSACng" /> object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RSACng.LegalKeySizes">
      <summary>Gets the key sizes, in bits, that are supported by this implementation of RSA.</summary>
      <returns>An array that contains the key sizes supported by the algorithm.</returns>
    </member>
    <member name="T:System.Security.Cryptography.RSACryptoServiceProvider">
      <summary>Performs asymmetric encryption and decryption using the implementation of the <see cref="T:System.Security.Cryptography.RSA" /> algorithm provided by the cryptographic service provider (CSP). This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RSACryptoServiceProvider.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSACryptoServiceProvider" /> class with a random key pair.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The cryptographic service provider (CSP) cannot be acquired.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSACryptoServiceProvider.#ctor(System.Int32,System.Security.Cryptography.CspParameters)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSACryptoServiceProvider" /> class with the specified key size and parameters.</summary>
      <param name="dwKeySize">The size of the key to use in bits.</param>
      <param name="parameters">The parameters to be passed to the cryptographic service provider (CSP).</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The CSP cannot be acquired.

 -or-

 The key cannot be created.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSACryptoServiceProvider.#ctor(System.Int32)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSACryptoServiceProvider" /> class with a random key pair of the specified key size.</summary>
      <param name="dwKeySize">The size of the key to use in bits.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The cryptographic service provider (CSP) cannot be acquired.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSACryptoServiceProvider.#ctor(System.Security.Cryptography.CspParameters)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSACryptoServiceProvider" /> class with the specified parameters.</summary>
      <param name="parameters">The parameters to be passed to the cryptographic service provider (CSP).</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The CSP cannot be acquired.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSACryptoServiceProvider.Decrypt(System.Byte[],System.Boolean)">
      <summary>Decrypts data with the <see cref="T:System.Security.Cryptography.RSA" /> algorithm.</summary>
      <param name="rgb">The data to be decrypted.</param>
      <param name="fOAEP">
        <see langword="true" /> to perform direct <see cref="T:System.Security.Cryptography.RSA" /> decryption using OAEP padding; otherwise, <see langword="false" /> to use PKCS#1 v1.5 padding.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The cryptographic service provider (CSP) cannot be acquired.

 -or-

 The <paramref name="fOAEP" /> parameter is <see langword="true" /> and the length of the <paramref name="rgb" /> parameter is greater than <see cref="P:System.Security.Cryptography.RSACryptoServiceProvider.KeySize" />.

 -or-

 The key does not match the encrypted data. However, the exception wording may not be accurate. For example, it may say <c>Not enough storage is available to process this command</c>.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="rgb" /> is <see langword="null" />.</exception>
      <returns>The decrypted data, which is the original plain text before encryption.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACryptoServiceProvider.Decrypt(System.Byte[],System.Security.Cryptography.RSAEncryptionPadding)">
      <summary>Decrypts data that was previously encrypted with the <see cref="T:System.Security.Cryptography.RSA" /> algorithm by using the specified padding.</summary>
      <param name="data">The data to decrypt.</param>
      <param name="padding">The padding.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.

 -or-

 <paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The padding mode is not supported.</exception>
      <returns>The decrypted data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACryptoServiceProvider.DecryptValue(System.Byte[])">
      <summary>This method is not supported in the current version.</summary>
      <param name="rgb">The data to be decrypted.</param>
      <exception cref="T:System.NotSupportedException">This method is not supported in the current version.</exception>
      <returns>The decrypted data, which is the original plain text before encryption.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACryptoServiceProvider.Encrypt(System.Byte[],System.Boolean)">
      <summary>Encrypts data with the <see cref="T:System.Security.Cryptography.RSA" /> algorithm.</summary>
      <param name="rgb">The data to be encrypted.</param>
      <param name="fOAEP">
        <see langword="true" /> to perform direct <see cref="T:System.Security.Cryptography.RSA" /> encryption using OAEP padding (only available on a computer running Windows XP or later); otherwise, <see langword="false" /> to use PKCS#1 v1.5 padding.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The cryptographic service provider (CSP) cannot be acquired.

 -or-

 The length of the <paramref name="rgb" /> parameter is greater than the maximum allowed length.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="rgb" /> is <see langword="null" />.</exception>
      <returns>The encrypted data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACryptoServiceProvider.Encrypt(System.Byte[],System.Security.Cryptography.RSAEncryptionPadding)">
      <summary>Encrypts data with the <see cref="T:System.Security.Cryptography.RSA" /> algorithm using the specified padding.</summary>
      <param name="data">The data to encrypt.</param>
      <param name="padding">The padding.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.

 -or-

 <paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The padding mode is not supported.</exception>
      <returns>The encrypted data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACryptoServiceProvider.EncryptValue(System.Byte[])">
      <summary>This method is not supported in the current version.</summary>
      <param name="rgb">The data to be encrypted.</param>
      <exception cref="T:System.NotSupportedException">This method is not supported in the current version.</exception>
      <returns>The encrypted data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACryptoServiceProvider.ExportCspBlob(System.Boolean)">
      <summary>Exports a blob containing the key information associated with an <see cref="T:System.Security.Cryptography.RSACryptoServiceProvider" /> object.</summary>
      <param name="includePrivateParameters">
        <see langword="true" /> to include the private key; otherwise, <see langword="false" />.</param>
      <returns>A byte array containing the key information associated with an <see cref="T:System.Security.Cryptography.RSACryptoServiceProvider" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACryptoServiceProvider.ExportParameters(System.Boolean)">
      <summary>Exports the <see cref="T:System.Security.Cryptography.RSAParameters" />.</summary>
      <param name="includePrivateParameters">
        <see langword="true" /> to include private parameters; otherwise, <see langword="false" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key cannot be exported.</exception>
      <returns>The parameters for <see cref="T:System.Security.Cryptography.RSA" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACryptoServiceProvider.ImportCspBlob(System.Byte[])">
      <summary>Imports a blob that represents RSA key information.</summary>
      <param name="keyBlob">A byte array that represents an RSA key blob.</param>
    </member>
    <member name="M:System.Security.Cryptography.RSACryptoServiceProvider.ImportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a byte-based password, replacing the keys for this object.</summary>
      <param name="passwordBytes">The bytes to use as a password when decrypting the key material.</param>
      <param name="source">The bytes of a PKCS#8 EncryptedPrivateKeyInfo structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <code data-dev-comment-type="paramref">source</code>. This parameter is treated as uninitialized.</param>
    </member>
    <member name="M:System.Security.Cryptography.RSACryptoServiceProvider.ImportEncryptedPkcs8PrivateKey(System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Imports the public/private keypair from a PKCS#8 EncryptedPrivateKeyInfo structure after decrypting with a char-based password, replacing the keys for this object.</summary>
      <param name="password">The password to use for decrypting the key material.</param>
      <param name="source">The bytes of a PKCS#8 EncryptedPrivateKeyInfo structure in the ASN.1-BER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <code data-dev-comment-type="paramref">source</code>. This parameter is treated as uninitialized.</param>
    </member>
    <member name="M:System.Security.Cryptography.RSACryptoServiceProvider.ImportParameters(System.Security.Cryptography.RSAParameters)">
      <summary>Imports the specified <see cref="T:System.Security.Cryptography.RSAParameters" />.</summary>
      <param name="parameters">The parameters for <see cref="T:System.Security.Cryptography.RSA" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The cryptographic service provider (CSP) cannot be acquired.

 -or-

 The <paramref name="parameters" /> parameter has missing fields.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSACryptoServiceProvider.SignData(System.Byte[],System.Int32,System.Int32,System.Object)">
      <summary>Computes the hash value of a subset of the specified byte array using the specified hash algorithm, and signs the resulting hash value.</summary>
      <param name="buffer">The input data to hash and sign.</param>
      <param name="offset">The offset into the array from which to begin using data.</param>
      <param name="count">The number of bytes in the array to use as data.</param>
      <param name="halg">The hash algorithm to use to create the hash value.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="halg" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">The <paramref name="halg" /> parameter is not a valid type.</exception>
      <returns>The <see cref="T:System.Security.Cryptography.RSA" /> signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACryptoServiceProvider.SignData(System.Byte[],System.Object)">
      <summary>Computes the hash value of the specified byte array using the specified hash algorithm, and signs the resulting hash value.</summary>
      <param name="buffer">The input data to hash and sign.</param>
      <param name="halg">The hash algorithm to use to create the hash value.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="halg" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">The <paramref name="halg" /> parameter is not a valid type.</exception>
      <returns>The <see cref="T:System.Security.Cryptography.RSA" /> signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACryptoServiceProvider.SignData(System.IO.Stream,System.Object)">
      <summary>Computes the hash value of the specified input stream using the specified hash algorithm, and signs the resulting hash value.</summary>
      <param name="inputStream">The input stream to hash and sign.</param>
      <param name="halg">The hash algorithm to use to create the hash value.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="halg" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">The <paramref name="halg" /> parameter is not a valid type.</exception>
      <returns>The <see cref="T:System.Security.Cryptography.RSA" /> signature for the specified data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACryptoServiceProvider.SignHash(System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Computes the signature for the specified hash value using the specified padding.</summary>
      <param name="hash">The hash value of the data to be signed.</param>
      <param name="hashAlgorithm">The hash algorithm name used to create the hash value of the data.</param>
      <param name="padding">The padding.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="hash" /> is <see langword="null" />.

 -or-

 <paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" /> does not equal <see cref="P:System.Security.Cryptography.RSASignaturePadding.Pkcs1" />.</exception>
      <returns>The <see cref="T:System.Security.Cryptography.RSA" /> signature for the specified hash value.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACryptoServiceProvider.SignHash(System.Byte[],System.String)">
      <summary>Computes the signature for the specified hash value.</summary>
      <param name="rgbHash">The hash value of the data to be signed.</param>
      <param name="str">The hash algorithm identifier (OID) used to create the hash value of the data.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="rgbHash" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The cryptographic service provider (CSP) cannot be acquired.

 -or-

 There is no private key.</exception>
      <returns>The <see cref="T:System.Security.Cryptography.RSA" /> signature for the specified hash value.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACryptoServiceProvider.VerifyData(System.Byte[],System.Object,System.Byte[])">
      <summary>Verifies that a digital signature is valid by determining the hash value in the signature using the provided public key and comparing it to the hash value of the provided data.</summary>
      <param name="buffer">The data that was signed.</param>
      <param name="halg">The name of the hash algorithm used to create the hash value of the data.</param>
      <param name="signature">The signature data to be verified.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="halg" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">The <paramref name="halg" /> parameter is not a valid type.</exception>
      <returns>
        <see langword="true" /> if the signature is valid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACryptoServiceProvider.VerifyHash(System.Byte[],System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Verifies that a digital signature is valid by determining the hash value in the signature using the specified hashing algorithm and padding, and comparing it to the provided hash value.</summary>
      <param name="hash">The hash value of the signed data.</param>
      <param name="signature">The signature data to be verified.</param>
      <param name="hashAlgorithm">The hash algorithm name used to create the hash value.</param>
      <param name="padding">The padding.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="hash" /> is <see langword="null" />.

 -or-

 <paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="padding" /> does not equal <see cref="P:System.Security.Cryptography.RSASignaturePadding.Pkcs1" />.</exception>
      <returns>
        <see langword="true" /> if the signature is valid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSACryptoServiceProvider.VerifyHash(System.Byte[],System.String,System.Byte[])">
      <summary>Verifies that a digital signature is valid by determining the hash value in the signature using the provided public key and comparing it to the provided hash value.</summary>
      <param name="rgbHash">The hash value of the signed data.</param>
      <param name="str">The hash algorithm identifier (OID) used to create the hash value of the data.</param>
      <param name="rgbSignature">The signature data to be verified.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="rgbHash" /> parameter is <see langword="null" />.

 -or-

 The <paramref name="rgbSignature" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The cryptographic service provider (CSP) cannot be acquired.

 -or-

 The signature cannot be verified.</exception>
      <returns>
        <see langword="true" /> if the signature is valid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RSACryptoServiceProvider.CspKeyContainerInfo">
      <summary>Gets a <see cref="T:System.Security.Cryptography.CspKeyContainerInfo" /> object that describes additional information about a cryptographic key pair.</summary>
      <returns>A <see cref="T:System.Security.Cryptography.CspKeyContainerInfo" /> object that describes additional information about a cryptographic key pair.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RSACryptoServiceProvider.KeyExchangeAlgorithm">
      <summary>Gets the name of the key exchange algorithm available with this implementation of <see cref="T:System.Security.Cryptography.RSA" />.</summary>
      <returns>The name of the key exchange algorithm if it exists; otherwise, <see langword="null" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RSACryptoServiceProvider.KeySize">
      <summary>Gets the size of the current key.</summary>
      <returns>The size of the key in bits.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RSACryptoServiceProvider.LegalKeySizes">
      <summary>Gets the key sizes that are supported by the asymmetric algorithm.</summary>
      <returns>An array that contains the key sizes supported by the asymmetric algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RSACryptoServiceProvider.PersistKeyInCsp">
      <summary>Gets or sets a value indicating whether the key should be persisted in the cryptographic service provider (CSP).</summary>
      <returns>
        <see langword="true" /> if the key should be persisted in the CSP; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RSACryptoServiceProvider.PublicOnly">
      <summary>Gets a value that indicates whether the <see cref="T:System.Security.Cryptography.RSACryptoServiceProvider" /> object contains only a public key.</summary>
      <returns>
        <see langword="true" /> if the <see cref="T:System.Security.Cryptography.RSACryptoServiceProvider" /> object contains only a public key; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RSACryptoServiceProvider.SignatureAlgorithm">
      <summary>Gets the name of the signature algorithm available with this implementation of <see cref="T:System.Security.Cryptography.RSA" />.</summary>
      <returns>The name of the signature algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RSACryptoServiceProvider.UseMachineKeyStore">
      <summary>Gets or sets a value indicating whether the key should be persisted in the computer's key store instead of the user profile store.</summary>
      <returns>
        <see langword="true" /> if the key should be persisted in the computer key store; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.RSAEncryptionPadding">
      <summary>Specifies the padding mode and parameters to use with RSA encryption or decryption operations.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RSAEncryptionPadding.CreateOaep(System.Security.Cryptography.HashAlgorithmName)">
      <summary>Creates a new <see cref="T:System.Security.Cryptography.RSAEncryptionPadding" /> instance whose <see cref="P:System.Security.Cryptography.RSAEncryptionPadding.Mode" /> is <see cref="F:System.Security.Cryptography.RSAEncryptionPaddingMode.Oaep" /> with the given hash algorithm.</summary>
      <param name="hashAlgorithm">The hash algorithm.</param>
      <exception cref="T:System.ArgumentException">The <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> property of <paramref name="hashAlgorithm" /> is either <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <returns>An object whose mode is <see cref="P:System.Security.Cryptography.RSAEncryptionPadding.Mode" /> is <see cref="F:System.Security.Cryptography.RSAEncryptionPaddingMode.Oaep" /> with the hash algorithm specified by <paramref name="hashAlgorithm" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSAEncryptionPadding.Equals(System.Object)">
      <summary>Determines whether the current instance is equal to the specified object.</summary>
      <param name="obj">The object to compare.</param>
      <returns>
        <see langword="true" /> if <paramref name="obj" /> is equal to the current instance; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSAEncryptionPadding.Equals(System.Security.Cryptography.RSAEncryptionPadding)">
      <summary>Determines whether the current instance is equal to the specified <see cref="T:System.Security.Cryptography.RSAEncryptionPadding" /> object.</summary>
      <param name="other">The object to compare.</param>
      <returns>
        <see langword="true" /> if <paramref name="other" /> is equal to the current instance; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSAEncryptionPadding.GetHashCode">
      <summary>Returns the hash code of this <see cref="T:System.Security.Cryptography.RSAEncryptionPadding" /> object.</summary>
      <returns>The hash code of this instance.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSAEncryptionPadding.op_Equality(System.Security.Cryptography.RSAEncryptionPadding,System.Security.Cryptography.RSAEncryptionPadding)">
      <summary>Indicates whether two specified <see cref="T:System.Security.Cryptography.RSAEncryptionPadding" /> objects are equal.</summary>
      <param name="left">The first object to compare.</param>
      <param name="right">The second object to compare.</param>
      <returns>
        <see langword="true" /> if <see langword="left" /> and <see langword="right" /> are equal; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSAEncryptionPadding.op_Inequality(System.Security.Cryptography.RSAEncryptionPadding,System.Security.Cryptography.RSAEncryptionPadding)">
      <summary>Indicates whether two specified <see cref="T:System.Security.Cryptography.RSAEncryptionPadding" /> objects are unequal.</summary>
      <param name="left">The first object to compare.</param>
      <param name="right">The second object to compare.</param>
      <returns>
        <see langword="true" /> if <see langword="left" /> and <see langword="right" /> are not equal; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSAEncryptionPadding.ToString">
      <summary>Returns the string representation of the current <see cref="T:System.Security.Cryptography.RSAEncryptionPadding" /> instance.</summary>
      <returns>The string representation of the current object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RSAEncryptionPadding.Mode">
      <summary>Gets the padding mode represented by this <see cref="T:System.Security.Cryptography.RSAEncryptionPadding" /> instance.</summary>
      <returns>A padding mode.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RSAEncryptionPadding.OaepHashAlgorithm">
      <summary>Gets the hash algorithm used in conjunction with the <see cref="F:System.Security.Cryptography.RSAEncryptionPaddingMode.Oaep" /> padding mode.</summary>
      <returns>The hash algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RSAEncryptionPadding.OaepSHA1">
      <summary>Gets an object that represents the Optimal Asymmetric Encryption Padding (OAEP) encryption standard with a SHA1 hash algorithm.</summary>
      <returns>An object that represents the OAEP encryption standard with a SHA1 hash algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RSAEncryptionPadding.OaepSHA256">
      <summary>Gets an object that represents the Optimal Asymmetric Encryption Padding (OAEP) encryption standard with a SHA256 hash algorithm.</summary>
      <returns>An object that represents the OAEP encryption standard with a SHA256 hash algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RSAEncryptionPadding.OaepSHA3_256">
      <summary>
        <see cref="F:System.Security.Cryptography.RSAEncryptionPaddingMode.Oaep" /> mode with SHA3-256 hash algorithm.</summary>
    </member>
    <member name="P:System.Security.Cryptography.RSAEncryptionPadding.OaepSHA3_384">
      <summary>
        <see cref="F:System.Security.Cryptography.RSAEncryptionPaddingMode.Oaep" /> mode with SHA3-384 hash algorithm.</summary>
    </member>
    <member name="P:System.Security.Cryptography.RSAEncryptionPadding.OaepSHA3_512">
      <summary>
        <see cref="F:System.Security.Cryptography.RSAEncryptionPaddingMode.Oaep" /> mode with SHA3-512 hash algorithm.</summary>
    </member>
    <member name="P:System.Security.Cryptography.RSAEncryptionPadding.OaepSHA384">
      <summary>Gets an object that represents the Optimal Asymmetric Encryption Padding (OAEP) encryption standard with a SHA-384 hash algorithm.</summary>
      <returns>An object that represents the OAEP encryption standard with a SHA384 hash algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RSAEncryptionPadding.OaepSHA512">
      <summary>Gets an object that represents the Optimal Asymmetric Encryption Padding (OAEP) encryption standard with a SHA512 hash algorithm.</summary>
      <returns>An object that represents the OAEP encryption standard with a SHA512 hash algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RSAEncryptionPadding.Pkcs1">
      <summary>Gets an object that represents the PKCS #1 encryption standard.</summary>
      <returns>An object that represents the PKCS #1 encryption standard.</returns>
    </member>
    <member name="T:System.Security.Cryptography.RSAEncryptionPaddingMode">
      <summary>Specifies the padding mode to use with RSA encryption or decryption operations.</summary>
    </member>
    <member name="F:System.Security.Cryptography.RSAEncryptionPaddingMode.Oaep">
      <summary>Optimal Asymmetric Encryption Padding. It is recommended for new applications.</summary>
    </member>
    <member name="F:System.Security.Cryptography.RSAEncryptionPaddingMode.Pkcs1">
      <summary>PKCS #1 v1.5. It is supported for compatibility with existing applications.</summary>
    </member>
    <member name="T:System.Security.Cryptography.RSAOAEPKeyExchangeDeformatter">
      <summary>Decrypts Optimal Asymmetric Encryption Padding (OAEP) key exchange data.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RSAOAEPKeyExchangeDeformatter.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAOAEPKeyExchangeDeformatter" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RSAOAEPKeyExchangeDeformatter.#ctor(System.Security.Cryptography.AsymmetricAlgorithm)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAOAEPKeyExchangeDeformatter" /> class with the specified key.</summary>
      <param name="key">The instance of the <see cref="T:System.Security.Cryptography.RSA" /> algorithm that holds the private key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSAOAEPKeyExchangeDeformatter.DecryptKeyExchange(System.Byte[])">
      <summary>Extracts secret information from the encrypted key exchange data.</summary>
      <param name="rgbData">The key exchange data within which the secret information is hidden.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key exchange data verification has failed.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException">The key is missing.</exception>
      <returns>The secret information derived from the key exchange data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSAOAEPKeyExchangeDeformatter.SetKey(System.Security.Cryptography.AsymmetricAlgorithm)">
      <summary>Sets the private key to use for decrypting the secret information.</summary>
      <param name="key">The instance of the <see cref="T:System.Security.Cryptography.RSA" /> algorithm that holds the private key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
    </member>
    <member name="P:System.Security.Cryptography.RSAOAEPKeyExchangeDeformatter.Parameters">
      <summary>Gets the parameters for the Optimal Asymmetric Encryption Padding (OAEP) key exchange.</summary>
      <returns>An XML string containing the parameters of the OAEP key exchange operation.</returns>
    </member>
    <member name="T:System.Security.Cryptography.RSAOAEPKeyExchangeFormatter">
      <summary>Creates Optimal Asymmetric Encryption Padding (OAEP) key exchange data using <see cref="T:System.Security.Cryptography.RSA" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RSAOAEPKeyExchangeFormatter.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAOAEPKeyExchangeFormatter" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RSAOAEPKeyExchangeFormatter.#ctor(System.Security.Cryptography.AsymmetricAlgorithm)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAOAEPKeyExchangeFormatter" /> class with the specified key.</summary>
      <param name="key">The instance of the <see cref="T:System.Security.Cryptography.RSA" /> algorithm that holds the public key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSAOAEPKeyExchangeFormatter.CreateKeyExchange(System.Byte[],System.Type)">
      <summary>Creates the encrypted key exchange data from the specified input data.</summary>
      <param name="rgbData">The secret information to be passed in the key exchange.</param>
      <param name="symAlgType">This parameter is not used in the current version.</param>
      <returns>The encrypted key exchange data to be sent to the intended recipient.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSAOAEPKeyExchangeFormatter.CreateKeyExchange(System.Byte[])">
      <summary>Creates the encrypted key exchange data from the specified input data.</summary>
      <param name="rgbData">The secret information to be passed in the key exchange.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException">The key is missing.</exception>
      <returns>The encrypted key exchange data to be sent to the intended recipient.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSAOAEPKeyExchangeFormatter.SetKey(System.Security.Cryptography.AsymmetricAlgorithm)">
      <summary>Sets the public key to use for encrypting the key exchange data.</summary>
      <param name="key">The instance of the <see cref="T:System.Security.Cryptography.RSA" /> algorithm that holds the public key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
    </member>
    <member name="P:System.Security.Cryptography.RSAOAEPKeyExchangeFormatter.Parameter">
      <summary>Gets or sets the parameter used to create padding in the key exchange creation process.</summary>
      <returns>The parameter value.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RSAOAEPKeyExchangeFormatter.Parameters">
      <summary>Gets the parameters for the Optimal Asymmetric Encryption Padding (OAEP) key exchange.</summary>
      <returns>An XML string containing the parameters of the OAEP key exchange operation.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RSAOAEPKeyExchangeFormatter.Rng">
      <summary>Gets or sets the random number generator algorithm to use in the creation of the key exchange.</summary>
      <returns>The instance of a random number generator algorithm to use.</returns>
    </member>
    <member name="T:System.Security.Cryptography.RSAOpenSsl">
      <summary>Provides an implementation of the RSA algorithm backed by OpenSSL.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RSAOpenSsl.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAOpenSsl" /> class with a random 2048-bit key pair.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RSAOpenSsl.#ctor(System.Int32)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAOpenSsl" /> class with a randomly generated key of the specified size.</summary>
      <param name="keySize">The size of the key to generate in bits.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="keySize" /> is not valid.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSAOpenSsl.#ctor(System.IntPtr)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAOpenSsl" /> class from an existing OpenSSL key represented as an <c>RSA*</c>.</summary>
      <param name="handle">The OpenSSL <c>RSA*</c> value to use as the key.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="handle" /> is not a valid <c>RSA*</c>.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="handle" /> is invalid</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSAOpenSsl.#ctor(System.Security.Cryptography.RSAParameters)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAOpenSsl" /> class using specified key parameters.</summary>
      <param name="parameters">The parameters for the key.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="parameters" /> is not a valid RSA key.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSAOpenSsl.#ctor(System.Security.Cryptography.SafeEvpPKeyHandle)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAOpenSsl" /> class from an existing OpenSSL key represented as an <c>EVP_PKEY*</c>.</summary>
      <param name="pkeyHandle">The OpenSSL <c>EVP_PKEY*</c> value to use as the key, represented as a <see cref="T:System.Security.Cryptography.SafeEvpPKeyHandle" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="pkeyHandle" /> does not represent an RSA key.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="pkeyHandle" /> is <see langword="null" /></exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="pkeyHandle" /> is invalid according to <see cref="P:System.Runtime.InteropServices.SafeHandle.IsInvalid" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSAOpenSsl.DuplicateKeyHandle">
      <summary>Gets a <see cref="T:System.Security.Cryptography.SafeEvpPKeyHandle" /> representation of the cryptographic key.</summary>
      <returns>A <see cref="T:System.Security.Cryptography.SafeEvpPKeyHandle" /> representation of the cryptographic key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSAOpenSsl.ExportParameters(System.Boolean)">
      <summary>Exports the <see cref="T:System.Security.Cryptography.RSAParameters" />.</summary>
      <param name="includePrivateParameters">
        <see langword="true" /> to include private parameters; otherwise, <see langword="false" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The parameters could not be exported.</exception>
      <returns>The parameters for <see cref="T:System.Security.Cryptography.RSA" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSAOpenSsl.ImportParameters(System.Security.Cryptography.RSAParameters)">
      <summary>Imports the specified <see cref="T:System.Security.Cryptography.RSAParameters" />.</summary>
      <param name="parameters">The parameters for <see cref="T:System.Security.Cryptography.RSA" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="parameters" /> is not a valid RSA key.</exception>
    </member>
    <member name="T:System.Security.Cryptography.RSAParameters">
      <summary>Represents the standard parameters for the <see cref="T:System.Security.Cryptography.RSA" /> algorithm.</summary>
    </member>
    <member name="F:System.Security.Cryptography.RSAParameters.D">
      <summary>Represents the <see langword="D" /> parameter for the <see cref="T:System.Security.Cryptography.RSA" /> algorithm.</summary>
    </member>
    <member name="F:System.Security.Cryptography.RSAParameters.DP">
      <summary>Represents the <see langword="DP" /> parameter for the <see cref="T:System.Security.Cryptography.RSA" /> algorithm.</summary>
    </member>
    <member name="F:System.Security.Cryptography.RSAParameters.DQ">
      <summary>Represents the <see langword="DQ" /> parameter for the <see cref="T:System.Security.Cryptography.RSA" /> algorithm.</summary>
    </member>
    <member name="F:System.Security.Cryptography.RSAParameters.Exponent">
      <summary>Represents the <see langword="Exponent" /> parameter for the <see cref="T:System.Security.Cryptography.RSA" /> algorithm.</summary>
    </member>
    <member name="F:System.Security.Cryptography.RSAParameters.InverseQ">
      <summary>Represents the <see langword="InverseQ" /> parameter for the <see cref="T:System.Security.Cryptography.RSA" /> algorithm.</summary>
    </member>
    <member name="F:System.Security.Cryptography.RSAParameters.Modulus">
      <summary>Represents the <see langword="Modulus" /> parameter for the <see cref="T:System.Security.Cryptography.RSA" /> algorithm.</summary>
    </member>
    <member name="F:System.Security.Cryptography.RSAParameters.P">
      <summary>Represents the <see langword="P" /> parameter for the <see cref="T:System.Security.Cryptography.RSA" /> algorithm.</summary>
    </member>
    <member name="F:System.Security.Cryptography.RSAParameters.Q">
      <summary>Represents the <see langword="Q" /> parameter for the <see cref="T:System.Security.Cryptography.RSA" /> algorithm.</summary>
    </member>
    <member name="T:System.Security.Cryptography.RSAPKCS1KeyExchangeDeformatter">
      <summary>Decrypts the PKCS #1 key exchange data.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RSAPKCS1KeyExchangeDeformatter.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAPKCS1KeyExchangeDeformatter" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RSAPKCS1KeyExchangeDeformatter.#ctor(System.Security.Cryptography.AsymmetricAlgorithm)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAPKCS1KeyExchangeDeformatter" /> class with the specified key.</summary>
      <param name="key">The instance of the <see cref="T:System.Security.Cryptography.RSA" /> algorithm that holds the private key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSAPKCS1KeyExchangeDeformatter.DecryptKeyExchange(System.Byte[])">
      <summary>Extracts secret information from the encrypted key exchange data.</summary>
      <param name="rgbIn">The key exchange data within which the secret information is hidden.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException">The key is missing.</exception>
      <returns>The secret information derived from the key exchange data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSAPKCS1KeyExchangeDeformatter.SetKey(System.Security.Cryptography.AsymmetricAlgorithm)">
      <summary>Sets the private key to use for decrypting the secret information.</summary>
      <param name="key">The instance of the <see cref="T:System.Security.Cryptography.RSA" /> algorithm that holds the private key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
    </member>
    <member name="P:System.Security.Cryptography.RSAPKCS1KeyExchangeDeformatter.Parameters">
      <summary>Gets the parameters for the PKCS #1 key exchange.</summary>
      <returns>An XML string containing the parameters of the PKCS #1 key exchange operation.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RSAPKCS1KeyExchangeDeformatter.RNG">
      <summary>Gets or sets the random number generator algorithm to use in the creation of the key exchange.</summary>
      <returns>The instance of a random number generator algorithm to use.</returns>
    </member>
    <member name="T:System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter">
      <summary>Creates the PKCS#1 key exchange data using <see cref="T:System.Security.Cryptography.RSA" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter.#ctor(System.Security.Cryptography.AsymmetricAlgorithm)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter" /> class with the specified key.</summary>
      <param name="key">The instance of the <see cref="T:System.Security.Cryptography.RSA" /> algorithm that holds the public key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter.CreateKeyExchange(System.Byte[],System.Type)">
      <summary>Creates the encrypted key exchange data from the specified input data.</summary>
      <param name="rgbData">The secret information to be passed in the key exchange.</param>
      <param name="symAlgType">This parameter is not used in the current version.</param>
      <returns>The encrypted key exchange data to be sent to the intended recipient.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter.CreateKeyExchange(System.Byte[])">
      <summary>Creates the encrypted key exchange data from the specified input data.</summary>
      <param name="rgbData">The secret information to be passed in the key exchange.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="rgbData" /> is too big.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException">The key is <see langword="null" />.</exception>
      <returns>The encrypted key exchange data to be sent to the intended recipient.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter.SetKey(System.Security.Cryptography.AsymmetricAlgorithm)">
      <summary>Sets the public key to use for encrypting the key exchange data.</summary>
      <param name="key">The instance of the <see cref="T:System.Security.Cryptography.RSA" /> algorithm that holds the public key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
    </member>
    <member name="P:System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter.Parameters">
      <summary>Gets the parameters for the PKCS #1 key exchange.</summary>
      <returns>An XML string containing the parameters of the PKCS #1 key exchange operation.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter.Rng">
      <summary>Gets or sets the random number generator algorithm to use in the creation of the key exchange.</summary>
      <returns>The instance of a random number generator algorithm to use.</returns>
    </member>
    <member name="T:System.Security.Cryptography.RSAPKCS1SignatureDeformatter">
      <summary>Verifies an <see cref="T:System.Security.Cryptography.RSA" /> PKCS #1 version 1.5 signature.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RSAPKCS1SignatureDeformatter.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAPKCS1SignatureDeformatter" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RSAPKCS1SignatureDeformatter.#ctor(System.Security.Cryptography.AsymmetricAlgorithm)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAPKCS1SignatureDeformatter" /> class with the specified key.</summary>
      <param name="key">The instance of <see cref="T:System.Security.Cryptography.RSA" /> that holds the public key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSAPKCS1SignatureDeformatter.SetHashAlgorithm(System.String)">
      <summary>Sets the hash algorithm to use for verifying the signature.</summary>
      <param name="strName">The name of the hash algorithm to use for verifying the signature.</param>
    </member>
    <member name="M:System.Security.Cryptography.RSAPKCS1SignatureDeformatter.SetKey(System.Security.Cryptography.AsymmetricAlgorithm)">
      <summary>Sets the public key to use for verifying the signature.</summary>
      <param name="key">The instance of <see cref="T:System.Security.Cryptography.RSA" /> that holds the public key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSAPKCS1SignatureDeformatter.VerifySignature(System.Byte[],System.Byte[])">
      <summary>Verifies the <see cref="T:System.Security.Cryptography.RSA" /> PKCS#1 signature for the specified data.</summary>
      <param name="rgbHash">The data signed with <paramref name="rgbSignature" />.</param>
      <param name="rgbSignature">The signature to be verified for <paramref name="rgbHash" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException">The key is <see langword="null" />.  
  
 -or-  
  
 The hash algorithm is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentNullException">The <paramref name="rgbHash" /> parameter is <see langword="null" />.  
  
 -or-  
  
 The <paramref name="rgbSignature" /> parameter is <see langword="null" />.</exception>
      <returns>
        <see langword="true" /> if <paramref name="rgbSignature" /> matches the signature computed using the specified hash algorithm and key on <paramref name="rgbHash" />; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.RSAPKCS1SignatureFormatter">
      <summary>Creates an <see cref="T:System.Security.Cryptography.RSA" /> PKCS #1 version 1.5 signature.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RSAPKCS1SignatureFormatter.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAPKCS1SignatureFormatter" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RSAPKCS1SignatureFormatter.#ctor(System.Security.Cryptography.AsymmetricAlgorithm)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAPKCS1SignatureFormatter" /> class with the specified key.</summary>
      <param name="key">The instance of the <see cref="T:System.Security.Cryptography.RSA" /> algorithm that holds the private key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.RSAPKCS1SignatureFormatter.CreateSignature(System.Byte[])">
      <summary>Creates the <see cref="T:System.Security.Cryptography.RSA" /> PKCS #1 signature for the specified data.</summary>
      <param name="rgbHash">The data to be signed.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException">The key is <see langword="null" />.  
  
 -or-  
  
 The hash algorithm is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentNullException">The <paramref name="rgbHash" /> parameter is <see langword="null" />.</exception>
      <returns>The digital signature for <paramref name="rgbHash" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSAPKCS1SignatureFormatter.SetHashAlgorithm(System.String)">
      <summary>Sets the hash algorithm to use for creating the signature.</summary>
      <param name="strName">The name of the hash algorithm to use for creating the signature.</param>
    </member>
    <member name="M:System.Security.Cryptography.RSAPKCS1SignatureFormatter.SetKey(System.Security.Cryptography.AsymmetricAlgorithm)">
      <summary>Sets the private key to use for creating the signature.</summary>
      <param name="key">The instance of the <see cref="T:System.Security.Cryptography.RSA" /> algorithm that holds the private key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
    </member>
    <member name="T:System.Security.Cryptography.RSASignaturePadding">
      <summary>Specifies the padding mode and parameters to use with RSA signature creation or verification operations.</summary>
    </member>
    <member name="M:System.Security.Cryptography.RSASignaturePadding.Equals(System.Object)">
      <summary>Returns a value that indicates whether this instance is equal to a specified object.</summary>
      <param name="obj">The object to compare with the current instance.</param>
      <returns>
        <see langword="true" /> if the specified object is equal to the current object; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSASignaturePadding.Equals(System.Security.Cryptography.RSASignaturePadding)">
      <summary>Returns a value that indicates whether this instance is equal to a specified <see cref="T:System.Security.Cryptography.RSASignaturePadding" /> object.</summary>
      <param name="other">The object to compare with the current instance.</param>
      <returns>
        <see langword="true" /> if the specified object is equal to the current object; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSASignaturePadding.GetHashCode">
      <summary>Returns the hash code for this <see cref="T:System.Security.Cryptography.RSASignaturePadding" /> instance.</summary>
      <returns>The hash code for this <see cref="T:System.Security.Cryptography.RSASignaturePadding" /> instance.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSASignaturePadding.op_Equality(System.Security.Cryptography.RSASignaturePadding,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Indicates whether two specified <see cref="T:System.Security.Cryptography.RSASignaturePadding" /> objects are equal.</summary>
      <param name="left">The first object to compare.</param>
      <param name="right">The second object to compare.</param>
      <returns>
        <see langword="true" /> if <see langword="left" /> and <see langword="right" /> are equal; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSASignaturePadding.op_Inequality(System.Security.Cryptography.RSASignaturePadding,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Indicates whether two specified <see cref="T:System.Security.Cryptography.RSASignaturePadding" /> objects are unequal.</summary>
      <param name="left">The first object to compare.</param>
      <param name="right">The second object to compare.</param>
      <returns>
        <see langword="true" /> if <see langword="left" /> and <see langword="right" /> are unequal; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.RSASignaturePadding.ToString">
      <summary>Returns the string representation of the current <see cref="T:System.Security.Cryptography.RSASignaturePadding" /> instance.</summary>
      <returns>The string representation of the current object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RSASignaturePadding.Mode">
      <summary>Gets the padding mode of this <see cref="T:System.Security.Cryptography.RSASignaturePadding" /> instance.</summary>
      <returns>The padding mode (either <see cref="F:System.Security.Cryptography.RSASignaturePaddingMode.Pkcs1" /> or <see cref="F:System.Security.Cryptography.RSASignaturePaddingMode.Pss" />) of this instance.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RSASignaturePadding.Pkcs1">
      <summary>Gets an object that uses the PKCS #1 v1.5 padding mode.</summary>
      <returns>An object that uses the <see cref="F:System.Security.Cryptography.RSASignaturePaddingMode.Pkcs1" /> padding mode.</returns>
    </member>
    <member name="P:System.Security.Cryptography.RSASignaturePadding.Pss">
      <summary>Gets an object that uses PSS padding mode.</summary>
      <returns>An object that uses the <see cref="F:System.Security.Cryptography.RSASignaturePaddingMode.Pss" /> padding mode with the number of salt bytes equal to the size of the hash.</returns>
    </member>
    <member name="T:System.Security.Cryptography.RSASignaturePaddingMode">
      <summary>Specifies the padding mode to use with RSA signature creation or verification operations.</summary>
    </member>
    <member name="F:System.Security.Cryptography.RSASignaturePaddingMode.Pkcs1">
      <summary>PKCS #1 v1.5.</summary>
    </member>
    <member name="F:System.Security.Cryptography.RSASignaturePaddingMode.Pss">
      <summary>Probabilistic Signature Scheme.</summary>
    </member>
    <member name="T:System.Security.Cryptography.SafeEvpPKeyHandle">
      <summary>Represents the <see langword="EVP_PKEY*" /> pointer type from OpenSSL.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SafeEvpPKeyHandle.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.SafeEvpPKeyHandle" /> class, representing an invalid handle.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SafeEvpPKeyHandle.#ctor(System.IntPtr,System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.SafeEvpPKeyHandle" /> class with the specified handle value.</summary>
      <param name="handle">The handle value to represent.</param>
      <param name="ownsHandle">
        <see langword="true" /> to reliably let <see cref="T:System.Security.Cryptography.SafeEvpPKeyHandle" /> release the handle during the finalization phase; otherwise, <see langword="false" /> (not recommended).</param>
    </member>
    <member name="M:System.Security.Cryptography.SafeEvpPKeyHandle.DuplicateHandle">
      <summary>Creates another instance of this type or increments the reference count of the handle.</summary>
      <exception cref="T:System.InvalidOperationException">This handle is invalid.</exception>
      <returns>Another instance of this type or the existing handle.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SafeEvpPKeyHandle.OpenKeyFromProvider(System.String,System.String)">
      <summary>Opens a named key using a named <code>OSSL_PROVIDER</code>.</summary>
      <param name="providerName">The name of the <code>OSSL_PROVIDER</code> to process the key open request.</param>
      <param name="keyUri">The URI assigned by the <code>OSSL_PROVIDER</code> of the key to open.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="providerName" /> or <paramref name="keyUri" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="providerName" /> or <paramref name="keyUri" /> is the empty string.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The current platform does not support OpenSSL Providers.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key could not be opened via the specified named <code>OSSL_PROVIDER</code>.</exception>
      <returns>The opened key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SafeEvpPKeyHandle.OpenPrivateKeyFromEngine(System.String,System.String)">
      <summary>Open a named private key using a named OpenSSL <code>ENGINE</code>.</summary>
      <param name="engineName">The name of the <code>ENGINE</code> to process the private key open request.</param>
      <param name="keyId">The name of the key to open.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="engineName" /> or <paramref name="keyId" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="engineName" /> or <paramref name="keyId" /> is the empty string.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">the key could not be opened via the specified ENGINE.</exception>
      <returns>The opened key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SafeEvpPKeyHandle.OpenPublicKeyFromEngine(System.String,System.String)">
      <summary>Open a named public key using a named OpenSSL <code>ENGINE</code>.</summary>
      <param name="engineName">The name of the <code>ENGINE</code> to process the public key open request.</param>
      <param name="keyId">The name of the key to open.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="engineName" /> or <paramref name="keyId" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="engineName" /> or <paramref name="keyId" /> is the empty string.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">the key could not be opened via the specified ENGINE.</exception>
      <returns>The opened key.</returns>
    </member>
    <member name="P:System.Security.Cryptography.SafeEvpPKeyHandle.IsInvalid">
      <summary>Gets a value indicating whether the handle value is invalid.</summary>
      <returns>
        <see langword="true" /> if the handle value is invalid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.SafeEvpPKeyHandle.OpenSslVersion">
      <summary>Gets a value representing the version number as reported by the loaded version of OpenSSL.</summary>
      <returns>A value representing the version number as reported by the loaded version of OpenSSL.</returns>
    </member>
    <member name="T:System.Security.Cryptography.SHA1">
      <summary>Computes the <see cref="T:System.Security.Cryptography.SHA1" /> hash for the input data.</summary>
    </member>
    <member name="F:System.Security.Cryptography.SHA1.HashSizeInBits">
      <summary>The hash size produced by the SHA1 algorithm, in bits.</summary>
    </member>
    <member name="F:System.Security.Cryptography.SHA1.HashSizeInBytes">
      <summary>The hash size produced by the SHA1 algorithm, in bytes.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SHA1.#ctor">
      <summary>Initializes a new instance of <see cref="T:System.Security.Cryptography.SHA1" />.</summary>
      <exception cref="T:System.InvalidOperationException">The policy on this object is not compliant with the FIPS algorithm.</exception>
    </member>
    <member name="M:System.Security.Cryptography.SHA1.Create">
      <summary>Creates an instance of the default implementation of <see cref="T:System.Security.Cryptography.SHA1" />.</summary>
      <returns>A new instance of <see cref="T:System.Security.Cryptography.SHA1" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA1.Create(System.String)">
      <summary>Creates an instance of the specified implementation of <see cref="T:System.Security.Cryptography.SHA1" />.</summary>
      <param name="hashName">The name of the specific implementation of <see cref="T:System.Security.Cryptography.SHA1" /> to be used.</param>
      <returns>A new instance of <see cref="T:System.Security.Cryptography.SHA1" /> using the specified implementation.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA1.HashData(System.Byte[])">
      <summary>Computes the hash of data using the SHA1 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA1.HashData(System.IO.Stream,System.Span{System.Byte})">
      <summary>Computes the hash of a stream using the SHA1 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <para>
              The buffer in <paramref name="destination" /> is too small to hold the calculated hash
              size. The SHA1 algorithm always produces a 160-bit hash, or 20 bytes.</para>
        <para>-or-</para>
        <para>
          <paramref name="source" /> does not support reading.</para>
      </exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA1.HashData(System.IO.Stream)">
      <summary>Computes the hash of a stream using the SHA1 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA1.HashData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte})">
      <summary>Computes the hash of data using the SHA1 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <exception cref="T:System.ArgumentException">The buffer in <paramref name="destination" /> is too small to hold the calculated hash size. The SHA1 algorithm always produces a 160-bit hash, or 20 bytes.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA1.HashData(System.ReadOnlySpan{System.Byte})">
      <summary>Computes the hash of data using the SHA1 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA1.HashDataAsync(System.IO.Stream,System.Memory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the SHA1 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <para>
              The buffer in <paramref name="destination" /> is too small to hold the calculated hash
              size. The SHA1 algorithm always produces a 160-bit hash, or 20 bytes.</para>
        <para>-or-</para>
        <para>
          <paramref name="source" /> does not support reading.</para>
      </exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA1.HashDataAsync(System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the SHA1 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA1.TryHashData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to compute the hash of data using the SHA1 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />.</param>
      <returns>
        <see langword="false" /> if <paramref name="destination" /> is too small to hold the calculated hash, <see langword="true" /> otherwise.</returns>
    </member>
    <member name="T:System.Security.Cryptography.SHA1CryptoServiceProvider">
      <summary>Computes the <see cref="T:System.Security.Cryptography.SHA1" /> hash value for the input data using the implementation provided by the cryptographic service provider (CSP). This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SHA1CryptoServiceProvider.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.SHA1CryptoServiceProvider" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SHA1CryptoServiceProvider.Initialize">
      <summary>Initializes an instance of <see cref="T:System.Security.Cryptography.SHA1CryptoServiceProvider" />.</summary>
    </member>
    <member name="T:System.Security.Cryptography.SHA1Managed">
      <summary>Computes the <see cref="T:System.Security.Cryptography.SHA1" /> hash for the input data using the managed library.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SHA1Managed.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.SHA1Managed" /> class.</summary>
      <exception cref="T:System.InvalidOperationException">This class is not compliant with the FIPS algorithm.</exception>
    </member>
    <member name="M:System.Security.Cryptography.SHA1Managed.Initialize">
      <summary>Initializes an instance of <see cref="T:System.Security.Cryptography.SHA1Managed" />.</summary>
    </member>
    <member name="T:System.Security.Cryptography.SHA256">
      <summary>Computes the <see cref="T:System.Security.Cryptography.SHA256" /> hash for the input data.</summary>
    </member>
    <member name="F:System.Security.Cryptography.SHA256.HashSizeInBits">
      <summary>The hash size produced by the SHA256 algorithm, in bits.</summary>
    </member>
    <member name="F:System.Security.Cryptography.SHA256.HashSizeInBytes">
      <summary>The hash size produced by the SHA256 algorithm, in bytes.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SHA256.#ctor">
      <summary>Initializes a new instance of <see cref="T:System.Security.Cryptography.SHA256" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SHA256.Create">
      <summary>Creates an instance of the default implementation of <see cref="T:System.Security.Cryptography.SHA256" />.</summary>
      <exception cref="T:System.Reflection.TargetInvocationException">On the .NET Framework 4.6.1 and earlier versions only: The algorithm was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.</exception>
      <returns>A new instance of <see cref="T:System.Security.Cryptography.SHA256" />. On the .NET Framework, this method creates an instance of the <see cref="T:System.Security.Cryptography.SHA256Managed" /> class if FIPS mode is not active; if FIPS mode is active, it creates an instance of the <see cref="T:System.Security.Cryptography.SHA256Cng" /> class. On .NET Core, it returns an instance of a private class derived from <see cref="T:System.Security.Cryptography.SHA256" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA256.Create(System.String)">
      <summary>Creates an instance of a specified implementation of <see cref="T:System.Security.Cryptography.SHA256" />.</summary>
      <param name="hashName">The name of the specific implementation of <see cref="T:System.Security.Cryptography.SHA256" /> to be used.</param>
      <exception cref="T:System.Reflection.TargetInvocationException">On the .NET Framework only: FIPS mode is enabled, but <paramref name="hashName" /> requests <see cref="T:System.Security.Cryptography.SHA256Managed" />, which is not FIPS compatible.</exception>
      <returns>A new instance of <see cref="T:System.Security.Cryptography.SHA256" /> using the specified implementation.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA256.HashData(System.Byte[])">
      <summary>Computes the hash of data using the SHA256 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA256.HashData(System.IO.Stream,System.Span{System.Byte})">
      <summary>Computes the hash of a stream using the SHA256 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <para>The buffer in <paramref name="destination" /> is too small to hold the calculated hash size. The SHA256 algorithm always produces a 256-bit hash, or 32 bytes.</para>
        <para>-or-</para>
        <para>
          <paramref name="source" /> does not support reading.</para>
      </exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA256.HashData(System.IO.Stream)">
      <summary>Computes the hash of a stream using the SHA256 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA256.HashData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte})">
      <summary>Computes the hash of data using the SHA256 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <exception cref="T:System.ArgumentException">The buffer in <paramref name="destination" /> is too small to hold the calculated hash size. The SHA256 algorithm always produces a 256-bit hash, or 32 bytes.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA256.HashData(System.ReadOnlySpan{System.Byte})">
      <summary>Computes the hash of data using the SHA256 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA256.HashDataAsync(System.IO.Stream,System.Memory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the SHA256 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <para>
              The buffer in <paramref name="destination" /> is too small to hold the calculated hash
              size. The SHA256 algorithm always produces a 256-bit hash, or 32 bytes.</para>
        <para>-or-</para>
        <para>
          <paramref name="source" /> does not support reading.</para>
      </exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA256.HashDataAsync(System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the SHA256 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA256.TryHashData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to compute the hash of data using the SHA256 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />.</param>
      <returns>
        <see langword="false" /> if <paramref name="destination" /> is too small to hold the calculated hash, <see langword="true" /> otherwise.</returns>
    </member>
    <member name="T:System.Security.Cryptography.SHA256CryptoServiceProvider">
      <summary>Defines a wrapper object to access the cryptographic service provider (CSP) implementation of the <see cref="T:System.Security.Cryptography.SHA256" /> algorithm.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SHA256CryptoServiceProvider.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.SHA256CryptoServiceProvider" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SHA256CryptoServiceProvider.Initialize">
      <summary>Initializes, or reinitializes, an instance of a hash algorithm.</summary>
    </member>
    <member name="T:System.Security.Cryptography.SHA256Managed">
      <summary>Computes the <see cref="T:System.Security.Cryptography.SHA256" /> hash for the input data using the managed library.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SHA256Managed.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.SHA256Managed" /> class using the managed library.</summary>
      <exception cref="T:System.InvalidOperationException">The Federal Information Processing Standards (FIPS) security setting is enabled. This implementation is not part of the Windows Platform FIPS-validated cryptographic algorithms.</exception>
    </member>
    <member name="M:System.Security.Cryptography.SHA256Managed.Initialize">
      <summary>Initializes an instance of <see cref="T:System.Security.Cryptography.SHA256Managed" />.</summary>
    </member>
    <member name="T:System.Security.Cryptography.SHA3_256">
      <summary>Computes the SHA3-256 hash for the input data.</summary>
    </member>
    <member name="F:System.Security.Cryptography.SHA3_256.HashSizeInBits">
      <summary>The hash size produced by the SHA3-256 algorithm, in bits.</summary>
    </member>
    <member name="F:System.Security.Cryptography.SHA3_256.HashSizeInBytes">
      <summary>The hash size produced by the SHA3-256 algorithm, in bytes.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_256.#ctor">
      <summary>Initializes a new instance of <see cref="T:System.Security.Cryptography.SHA3_256" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_256.Create">
      <summary>Creates an instance of the default implementation of <see cref="T:System.Security.Cryptography.SHA3_256" />.</summary>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHA3-256.</exception>
      <returns>A new instance of <see cref="T:System.Security.Cryptography.SHA3_256" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_256.HashData(System.Byte[])">
      <summary>Computes the hash of data using the SHA3-256 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHA3-256.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_256.HashData(System.IO.Stream,System.Span{System.Byte})">
      <summary>Computes the hash of a stream using the SHA3-256 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <p>
              The buffer in <paramref name="destination" /> is too small to hold the calculated hash
              size. The SHA3-256 algorithm always produces a 256-bit hash, or 32 bytes.</p>
        <p>-or-</p>
        <p>
          <paramref name="source" /> does not support reading.</p>
      </exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHA3-256.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_256.HashData(System.IO.Stream)">
      <summary>Computes the hash of a stream using the SHA3-256 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHA3-256.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_256.HashData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte})">
      <summary>Computes the hash of data using the SHA3-256 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <exception cref="T:System.ArgumentException">The buffer in <paramref name="destination" /> is too small to hold the calculated hash
            size. The SHA3-256 algorithm always produces a 256-bit hash, or 32 bytes.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHA3-256.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_256.HashData(System.ReadOnlySpan{System.Byte})">
      <summary>Computes the hash of data using the SHA3-256 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHA3-256.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_256.HashDataAsync(System.IO.Stream,System.Memory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the SHA3-256 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <p>
              The buffer in <paramref name="destination" /> is too small to hold the calculated hash
              size. The SHA3-256 algorithm always produces a 256-bit hash, or 32 bytes.</p>
        <p>-or-</p>
        <p>
          <paramref name="source" /> does not support reading.</p>
      </exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHA3-256.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_256.HashDataAsync(System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the SHA3-256 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHA3-256.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_256.TryHashData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to compute the hash of data using the SHA3-256 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />.</param>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHA3-256.</exception>
      <returns>
        <see langword="false" /> if <paramref name="destination" /> is too small to hold the calculated hash, <see langword="true" /> otherwise.</returns>
    </member>
    <member name="P:System.Security.Cryptography.SHA3_256.IsSupported">
      <summary>Gets a value that indicates whether the algorithm is supported on the current platform.</summary>
      <returns>
        <see langword="true" /> if the algorithm is supported; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.SHA3_384">
      <summary>Computes the SHA3-384 hash for the input data.</summary>
    </member>
    <member name="F:System.Security.Cryptography.SHA3_384.HashSizeInBits">
      <summary>The hash size produced by the SHA3-384 algorithm, in bits.</summary>
    </member>
    <member name="F:System.Security.Cryptography.SHA3_384.HashSizeInBytes">
      <summary>The hash size produced by the SHA3-384 algorithm, in bytes.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_384.#ctor">
      <summary>Initializes a new instance of <see cref="T:System.Security.Cryptography.SHA3_384" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_384.Create">
      <summary>Creates an instance of the default implementation of <see cref="T:System.Security.Cryptography.SHA3_384" />.</summary>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHA3-384.</exception>
      <returns>A new instance of <see cref="T:System.Security.Cryptography.SHA3_384" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_384.HashData(System.Byte[])">
      <summary>Computes the hash of data using the SHA3-384 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHA3-384.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_384.HashData(System.IO.Stream,System.Span{System.Byte})">
      <summary>Computes the hash of a stream using the SHA3-384 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">

              The buffer in <paramref name="destination" /> is too small to hold the calculated hash
              size. The SHA3-384 algorithm always produces a 384-bit hash, or 48 bytes.

-or-

<paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHA3-384.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_384.HashData(System.IO.Stream)">
      <summary>Computes the hash of a stream using the SHA3-384 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHA3-384.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_384.HashData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte})">
      <summary>Computes the hash of data using the SHA3-384 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <exception cref="T:System.ArgumentException">The buffer in <paramref name="destination" /> is too small to hold the calculated hash
            size. The SHA3-384 algorithm always produces a 384-bit hash, or 48 bytes.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHA3-384.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_384.HashData(System.ReadOnlySpan{System.Byte})">
      <summary>Computes the hash of data using the SHA3-384 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHA3-384.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_384.HashDataAsync(System.IO.Stream,System.Memory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the SHA3-384 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">

              The buffer in <paramref name="destination" /> is too small to hold the calculated hash
              size. The SHA3-384 algorithm always produces a 384-bit hash, or 48 bytes.

-or-

<paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHA3-384.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_384.HashDataAsync(System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the SHA3-384 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHA3-384.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_384.TryHashData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to compute the hash of data using the SHA3-384 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />.</param>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHA3-384.</exception>
      <returns>
        <see langword="false" /> if <paramref name="destination" /> is too small to hold the calculated hash, <see langword="true" /> otherwise.</returns>
    </member>
    <member name="P:System.Security.Cryptography.SHA3_384.IsSupported">
      <summary>Gets a value that indicates whether the algorithm is supported on the current platform.</summary>
      <returns>
        <see langword="true" /> if the algorithm is supported; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.SHA3_512">
      <summary>Computes the SHA3-512 hash for the input data.</summary>
    </member>
    <member name="F:System.Security.Cryptography.SHA3_512.HashSizeInBits">
      <summary>The hash size produced by the SHA3-512 algorithm, in bits.</summary>
    </member>
    <member name="F:System.Security.Cryptography.SHA3_512.HashSizeInBytes">
      <summary>The hash size produced by the SHA3-512 algorithm, in bytes.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_512.#ctor">
      <summary>Initializes a new instance of <see cref="T:System.Security.Cryptography.SHA3_512" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_512.Create">
      <summary>Creates an instance of the default implementation of <see cref="T:System.Security.Cryptography.SHA3_512" />.</summary>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHA3-512.</exception>
      <returns>A new instance of <see cref="T:System.Security.Cryptography.SHA3_512" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_512.HashData(System.Byte[])">
      <summary>Computes the hash of data using the SHA3-512 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHA3-512.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_512.HashData(System.IO.Stream,System.Span{System.Byte})">
      <summary>Computes the hash of a stream using the SHA3-512 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">

              The buffer in <paramref name="destination" /> is too small to hold the calculated hash
              size. The SHA3-512 algorithm always produces a 512-bit hash, or 64 bytes.

-or-

<paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHA3-512.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_512.HashData(System.IO.Stream)">
      <summary>Computes the hash of a stream using the SHA3-512 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHA3-512.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_512.HashData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte})">
      <summary>Computes the hash of data using the SHA3-512 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <exception cref="T:System.ArgumentException">The buffer in <paramref name="destination" /> is too small to hold the calculated hash
            size. The SHA3-512 algorithm always produces a 512-bit hash, or 64 bytes.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHA3-512.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_512.HashData(System.ReadOnlySpan{System.Byte})">
      <summary>Computes the hash of data using the SHA3-512 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHA3-512.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_512.HashDataAsync(System.IO.Stream,System.Memory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the SHA3-512 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">

              The buffer in <paramref name="destination" /> is too small to hold the calculated hash
              size. The SHA3-512 algorithm always produces a 512-bit hash, or 64 bytes.

-or-

<paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHA3-512.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_512.HashDataAsync(System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the SHA3-512 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHA3-512.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA3_512.TryHashData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to compute the hash of data using the SHA3-512 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />.</param>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHA3-512.</exception>
      <returns>
        <see langword="false" /> if <paramref name="destination" /> is too small to hold the calculated hash, <see langword="true" /> otherwise.</returns>
    </member>
    <member name="P:System.Security.Cryptography.SHA3_512.IsSupported">
      <summary>Gets a value that indicates whether the algorithm is supported on the current platform.</summary>
      <returns>
        <see langword="true" /> if the algorithm is supported; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.SHA384">
      <summary>Computes the <see cref="T:System.Security.Cryptography.SHA384" /> hash for the input data.</summary>
    </member>
    <member name="F:System.Security.Cryptography.SHA384.HashSizeInBits">
      <summary>The hash size produced by the SHA384 algorithm, in bits.</summary>
    </member>
    <member name="F:System.Security.Cryptography.SHA384.HashSizeInBytes">
      <summary>The hash size produced by the SHA384 algorithm, in bytes.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SHA384.#ctor">
      <summary>Initializes a new instance of <see cref="T:System.Security.Cryptography.SHA384" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SHA384.Create">
      <summary>Creates an instance of the default implementation of <see cref="T:System.Security.Cryptography.SHA384" />.</summary>
      <exception cref="T:System.Reflection.TargetInvocationException">The algorithm was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.</exception>
      <returns>A new instance of <see cref="T:System.Security.Cryptography.SHA384" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA384.Create(System.String)">
      <summary>Creates an instance of a specified implementation of <see cref="T:System.Security.Cryptography.SHA384" />.</summary>
      <param name="hashName">The name of the specific implementation of <see cref="T:System.Security.Cryptography.SHA384" /> to be used.</param>
      <exception cref="T:System.Reflection.TargetInvocationException">The algorithm described by the <paramref name="hashName" /> parameter was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.</exception>
      <returns>A new instance of <see cref="T:System.Security.Cryptography.SHA384" /> using the specified implementation.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA384.HashData(System.Byte[])">
      <summary>Computes the hash of data using the SHA384 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA384.HashData(System.IO.Stream,System.Span{System.Byte})">
      <summary>Computes the hash of a stream using the SHA384 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <p>
              The buffer in <paramref name="destination" /> is too small to hold the calculated hash
              size. The SHA384 algorithm always produces a 384-bit hash, or 48 bytes.</p>
        <p>-or-</p>
        <p>
          <paramref name="source" /> does not support reading.</p>
      </exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA384.HashData(System.IO.Stream)">
      <summary>Computes the hash of a stream using the SHA384 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA384.HashData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte})">
      <summary>Computes the hash of data using the SHA384 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <exception cref="T:System.ArgumentException">The buffer in <paramref name="destination" /> is too small to hold the calculated hash size. The SHA384 algorithm always produces a 384-bit hash, or 48 bytes.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA384.HashData(System.ReadOnlySpan{System.Byte})">
      <summary>Computes the hash of data using the SHA384 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA384.HashDataAsync(System.IO.Stream,System.Memory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the SHA384 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <p>
              The buffer in <paramref name="destination" /> is too small to hold the calculated hash
              size. The SHA384 algorithm always produces a 384-bit hash, or 48 bytes.</p>
        <p>-or-</p>
        <p>
          <paramref name="source" /> does not support reading.</p>
      </exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA384.HashDataAsync(System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the SHA384 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA384.TryHashData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to compute the hash of data using the SHA384 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />.</param>
      <returns>
        <see langword="false" /> if <paramref name="destination" /> is too small to hold the calculated hash, <see langword="true" /> otherwise.</returns>
    </member>
    <member name="T:System.Security.Cryptography.SHA384CryptoServiceProvider">
      <summary>Defines a wrapper object to access the cryptographic service provider (CSP) implementation of the <see cref="T:System.Security.Cryptography.SHA384" /> algorithm.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SHA384CryptoServiceProvider.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.SHA384CryptoServiceProvider" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SHA384CryptoServiceProvider.Initialize">
      <summary>Initializes, or reinitializes, an instance of a hash algorithm.</summary>
    </member>
    <member name="T:System.Security.Cryptography.SHA384Managed">
      <summary>Computes the <see cref="T:System.Security.Cryptography.SHA384" /> hash for the input data using the managed library.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SHA384Managed.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.SHA384Managed" /> class.</summary>
      <exception cref="T:System.InvalidOperationException">The Federal Information Processing Standards (FIPS) security setting is enabled. This implementation is not part of the Windows Platform FIPS-validated cryptographic algorithms.</exception>
    </member>
    <member name="M:System.Security.Cryptography.SHA384Managed.Initialize">
      <summary>Initializes an instance of <see cref="T:System.Security.Cryptography.SHA384Managed" />.</summary>
    </member>
    <member name="T:System.Security.Cryptography.SHA512">
      <summary>Computes the <see cref="T:System.Security.Cryptography.SHA512" /> hash for the input data.</summary>
    </member>
    <member name="F:System.Security.Cryptography.SHA512.HashSizeInBits">
      <summary>The hash size produced by the SHA512 algorithm, in bits.</summary>
    </member>
    <member name="F:System.Security.Cryptography.SHA512.HashSizeInBytes">
      <summary>The hash size produced by the SHA512 algorithm, in bytes.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SHA512.#ctor">
      <summary>Initializes a new instance of <see cref="T:System.Security.Cryptography.SHA512" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SHA512.Create">
      <summary>Creates an instance of the default implementation of <see cref="T:System.Security.Cryptography.SHA512" />.</summary>
      <exception cref="T:System.Reflection.TargetInvocationException">The algorithm was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.</exception>
      <returns>A new instance of <see cref="T:System.Security.Cryptography.SHA512" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA512.Create(System.String)">
      <summary>Creates an instance of a specified implementation of <see cref="T:System.Security.Cryptography.SHA512" />.</summary>
      <param name="hashName">The name of the specific implementation of <see cref="T:System.Security.Cryptography.SHA512" /> to be used.</param>
      <exception cref="T:System.Reflection.TargetInvocationException">The algorithm described by the <paramref name="hashName" /> parameter was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.</exception>
      <returns>A new instance of <see cref="T:System.Security.Cryptography.SHA512" /> using the specified implementation.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA512.HashData(System.Byte[])">
      <summary>Computes the hash of data using the SHA512 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA512.HashData(System.IO.Stream,System.Span{System.Byte})">
      <summary>Computes the hash of a stream using the SHA512 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <p>
              The buffer in <paramref name="destination" /> is too small to hold the calculated hash
              size. The SHA512 algorithm always produces a 512-bit hash, or 64 bytes.</p>
        <p>-or-</p>
        <p>
          <paramref name="source" /> does not support reading.</p>
      </exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA512.HashData(System.IO.Stream)">
      <summary>Computes the hash of a stream using the SHA512 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA512.HashData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte})">
      <summary>Computes the hash of data using the SHA512 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <exception cref="T:System.ArgumentException">The buffer in <paramref name="destination" /> is too small to hold the calculated hash size. The SHA512 algorithm always produces a 512-bit hash, or 64 bytes.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA512.HashData(System.ReadOnlySpan{System.Byte})">
      <summary>Computes the hash of data using the SHA512 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA512.HashDataAsync(System.IO.Stream,System.Memory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the SHA512 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <p>
              The buffer in <paramref name="destination" /> is too small to hold the calculated hash
              size. The SHA512 algorithm always produces a 512-bit hash, or 64 bytes.</p>
        <p>-or-</p>
        <p>
          <paramref name="source" /> does not support reading.</p>
      </exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA512.HashDataAsync(System.IO.Stream,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the SHA512 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.OperationCanceledException">The cancellation token was canceled. This exception is stored into the returned task.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SHA512.TryHashData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to compute the hash of data using the SHA512 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <param name="destination">The buffer to receive the hash value.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />.</param>
      <returns>
        <see langword="false" /> if <paramref name="destination" /> is too small to hold the calculated hash, <see langword="true" /> otherwise.</returns>
    </member>
    <member name="T:System.Security.Cryptography.SHA512CryptoServiceProvider">
      <summary>Defines a wrapper object to access the cryptographic service provider (CSP) implementation of the <see cref="T:System.Security.Cryptography.SHA512" /> algorithm.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SHA512CryptoServiceProvider.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.SHA512CryptoServiceProvider" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SHA512CryptoServiceProvider.Initialize">
      <summary>Initializes, or reinitializes, an instance of a hash algorithm.</summary>
    </member>
    <member name="T:System.Security.Cryptography.SHA512Managed">
      <summary>Computes the <see cref="T:System.Security.Cryptography.SHA512" /> hash algorithm for the input data using the managed library.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SHA512Managed.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.SHA512Managed" /> class.</summary>
      <exception cref="T:System.InvalidOperationException">The Federal Information Processing Standards (FIPS) security setting is enabled. This implementation is not part of the Windows Platform FIPS-validated cryptographic algorithms.</exception>
    </member>
    <member name="M:System.Security.Cryptography.SHA512Managed.Initialize">
      <summary>Initializes an instance of the <see cref="T:System.Security.Cryptography.SHA512Managed" /> class using the managed library.</summary>
    </member>
    <member name="T:System.Security.Cryptography.Shake128">
      <summary>Computes the SHAKE128 hash for the input data.</summary>
    </member>
    <member name="M:System.Security.Cryptography.Shake128.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Shake128" /> class.</summary>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHAKE128. Callers can use the <see cref="P:System.Security.Cryptography.Shake128.IsSupported" /> property
              to determine if the platform supports SHAKE128.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Shake128.AppendData(System.Byte[])">
      <summary>Appends the specified data to the data already processed in the hash.</summary>
      <param name="data">The data to process.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Shake128.AppendData(System.ReadOnlySpan{System.Byte})">
      <summary>Appends the specified data to the data already processed in the hash.</summary>
      <param name="data">The data to process.</param>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Shake128.Clone">
      <summary>Creates a new instance of <see cref="T:System.Security.Cryptography.Shake128" /> with the existing appended data preserved.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.InvalidOperationException">The current instance is being read from and cannot be cloned.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>A clone of the current instance.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Shake128.Dispose">
      <summary>Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.</summary>
    </member>
    <member name="M:System.Security.Cryptography.Shake128.GetCurrentHash(System.Int32)">
      <summary>Retrieves the hash for the data accumulated from prior calls to the <c>AppendData</c> methods, without resetting the object to its initial state.</summary>
      <param name="outputLength">The size of the hash to produce.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>The computed hash.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Shake128.GetCurrentHash(System.Span{System.Byte})">
      <summary>Fills the buffer with the hash for the data accumulated from prior calls to the <c>AppendData</c> methods, without resetting the object to its initial state.</summary>
      <param name="destination">The buffer to fill with the hash.</param>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Shake128.GetHashAndReset(System.Int32)">
      <summary>Retrieves the hash for the data accumulated from prior calls to the <c>AppendData</c> methods, and resets the object to its initial state.</summary>
      <param name="outputLength">The size of the hash to produce.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>The computed hash.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Shake128.GetHashAndReset(System.Span{System.Byte})">
      <summary>Fills the buffer with the hash for the data accumulated from prior calls to the <c>AppendData</c> methods, and resets the object to its initial state.</summary>
      <param name="destination">The buffer to fill with the hash.</param>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Shake128.HashData(System.Byte[],System.Int32)">
      <summary>Computes the hash of data using the SHAKE128 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHAKE128. Callers can use the <see cref="P:System.Security.Cryptography.Shake128.IsSupported" /> property
              to determine if the platform supports SHAKE128.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Shake128.HashData(System.IO.Stream,System.Int32)">
      <summary>Computes the hash of a stream using the SHAKE128 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHAKE128. Callers can use the <see cref="P:System.Security.Cryptography.Shake128.IsSupported" /> property
              to determine if the platform supports SHAKE128.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Shake128.HashData(System.IO.Stream,System.Span{System.Byte})">
      <summary>Computes the hash of a stream using the SHAKE128 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to fill with the hash.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHAKE128. Callers can use the <see cref="P:System.Security.Cryptography.Shake128.IsSupported" /> property
              to determine if the platform supports SHAKE128.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Shake128.HashData(System.ReadOnlySpan{System.Byte},System.Int32)">
      <summary>Computes the hash of data using the SHAKE128 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHAKE128. Callers can use the <see cref="P:System.Security.Cryptography.Shake128.IsSupported" /> property
              to determine if the platform supports SHAKE128.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Shake128.HashData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte})">
      <summary>Computes the hash of data using the SHAKE128 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <param name="destination">The buffer to fill with the hash.</param>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHAKE128. Callers can use the <see cref="P:System.Security.Cryptography.Shake128.IsSupported" /> property
              to determine if the platform supports SHAKE128.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Shake128.HashDataAsync(System.IO.Stream,System.Int32,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the SHAKE128 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.OperationCanceledException">
        <paramref name="cancellationToken" /> has been canceled.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHAKE128. Callers can use the <see cref="P:System.Security.Cryptography.Shake128.IsSupported" /> property
              to determine if the platform supports SHAKE128.</exception>
      <returns>A <see cref="T:System.Threading.Tasks.ValueTask`1" /> that completes with the computed hash.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Shake128.HashDataAsync(System.IO.Stream,System.Memory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the SHAKE128 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to fill with the hash.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.OperationCanceledException">
        <paramref name="cancellationToken" /> has been canceled.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHAKE128. Callers can use the <see cref="P:System.Security.Cryptography.Shake128.IsSupported" /> property
              to determine if the platform supports SHAKE128.</exception>
      <returns>A <see cref="T:System.Threading.Tasks.ValueTask" /> that represents the asynchronous operation.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Shake128.Read(System.Int32)">
      <summary>Retrieves the hash for the data accumulated from prior calls to the <c>AppendData</c> methods without resetting the object to its initial state and allowing additional calls to continue retrieving the hash.</summary>
      <param name="outputLength">The size of the hash to produce.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support multiple reads of the hash. <see cref="M:System.Security.Cryptography.Shake128.GetHashAndReset(System.Int32)" /> can be used
              to perform a single operation.</exception>
      <returns>The computed hash.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Shake128.Read(System.Span{System.Byte})">
      <summary>Fills the buffer with the hash for the data accumulated from prior calls to the <c>AppendData</c> methods without resetting the object to its initial state and allowing additional calls to continue retrieving the hash.</summary>
      <param name="destination">The buffer to fill with the hash.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support multiple reads of the hash. <see cref="M:System.Security.Cryptography.Shake128.GetHashAndReset(System.Span{System.Byte})" /> can be used
              to perform a single operation.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Shake128.Reset">
      <summary>Resets the instance back to its initial state.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="P:System.Security.Cryptography.Shake128.IsSupported">
      <summary>Gets a value that indicates whether the algorithm is supported on the current platform.</summary>
      <returns>
        <see langword="true" /> if the algorithm is supported; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.Shake256">
      <summary>Computes the SHAKE256 hash for the input data.</summary>
    </member>
    <member name="M:System.Security.Cryptography.Shake256.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Shake256" /> class.</summary>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHAKE256. Callers can use the <see cref="P:System.Security.Cryptography.Shake256.IsSupported" /> property
              to determine if the platform supports SHAKE256.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Shake256.AppendData(System.Byte[])">
      <summary>Appends the specified data to the data already processed in the hash.</summary>
      <param name="data">The data to process.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Shake256.AppendData(System.ReadOnlySpan{System.Byte})">
      <summary>Appends the specified data to the data already processed in the hash.</summary>
      <param name="data">The data to process.</param>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Shake256.Clone">
      <summary>Creates a new instance of <see cref="T:System.Security.Cryptography.Shake256" /> with the existing appended data preserved.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.InvalidOperationException">The current instance is being read from and cannot be cloned.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>A clone of the current instance.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Shake256.Dispose">
      <summary>Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.</summary>
    </member>
    <member name="M:System.Security.Cryptography.Shake256.GetCurrentHash(System.Int32)">
      <summary>Retrieves the hash for the data accumulated from prior calls to the <c>AppendData</c> methods, without resetting the object to its initial state.</summary>
      <param name="outputLength">The size of the hash to produce.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>The computed hash.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Shake256.GetCurrentHash(System.Span{System.Byte})">
      <summary>Fills the buffer with the hash for the data accumulated from prior calls to the <c>AppendData</c> methods, without resetting the object to its initial state.</summary>
      <param name="destination">The buffer to fill with the hash.</param>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Shake256.GetHashAndReset(System.Int32)">
      <summary>Retrieves the hash for the data accumulated from prior calls to the <c>AppendData</c> methods, and resets the object to its initial state.</summary>
      <param name="outputLength">The size of the hash to produce.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <returns>The computed hash.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Shake256.GetHashAndReset(System.Span{System.Byte})">
      <summary>Fills the buffer with the hash for the data accumulated from prior calls to the <c>AppendData</c> methods, and resets the object to its initial state.</summary>
      <param name="destination">The buffer to fill with the hash.</param>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Shake256.HashData(System.Byte[],System.Int32)">
      <summary>Computes the hash of data using the SHAKE256 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHAKE256. Callers can use the <see cref="P:System.Security.Cryptography.Shake256.IsSupported" /> property
              to determine if the platform supports SHAKE256.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Shake256.HashData(System.IO.Stream,System.Int32)">
      <summary>Computes the hash of a stream using the SHAKE256 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHAKE256. Callers can use the <see cref="P:System.Security.Cryptography.Shake256.IsSupported" /> property
              to determine if the platform supports SHAKE256.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Shake256.HashData(System.IO.Stream,System.Span{System.Byte})">
      <summary>Computes the hash of a stream using the SHAKE256 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to fill with the hash.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHAKE256. Callers can use the <see cref="P:System.Security.Cryptography.Shake256.IsSupported" /> property
              to determine if the platform supports SHAKE256.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Shake256.HashData(System.ReadOnlySpan{System.Byte},System.Int32)">
      <summary>Computes the hash of data using the SHAKE256 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHAKE256. Callers can use the <see cref="P:System.Security.Cryptography.Shake256.IsSupported" /> property
              to determine if the platform supports SHAKE256.</exception>
      <returns>The hash of the data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Shake256.HashData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte})">
      <summary>Computes the hash of data using the SHAKE256 algorithm.</summary>
      <param name="source">The data to hash.</param>
      <param name="destination">The buffer to fill with the hash.</param>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHAKE256. Callers can use the <see cref="P:System.Security.Cryptography.Shake256.IsSupported" /> property
              to determine if the platform supports SHAKE256.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Shake256.HashDataAsync(System.IO.Stream,System.Int32,System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the SHAKE256 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="outputLength">The size of the hash to produce.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.OperationCanceledException">
        <paramref name="cancellationToken" /> has been canceled.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHAKE256. Callers can use the <see cref="P:System.Security.Cryptography.Shake256.IsSupported" /> property
              to determine if the platform supports SHAKE256.</exception>
      <returns>A <see cref="T:System.Threading.Tasks.ValueTask`1" /> that completes with the computed hash.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Shake256.HashDataAsync(System.IO.Stream,System.Memory{System.Byte},System.Threading.CancellationToken)">
      <summary>Asynchronously computes the hash of a stream using the SHAKE256 algorithm.</summary>
      <param name="source">The stream to hash.</param>
      <param name="destination">The buffer to fill with the hash.</param>
      <param name="cancellationToken">The token to monitor for cancellation requests.
              The default value is <see cref="P:System.Threading.CancellationToken.None" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="source" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="source" /> does not support reading.</exception>
      <exception cref="T:System.OperationCanceledException">
        <paramref name="cancellationToken" /> has been canceled.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support SHAKE256. Callers can use the <see cref="P:System.Security.Cryptography.Shake256.IsSupported" /> property
              to determine if the platform supports SHAKE256.</exception>
      <returns>A <see cref="T:System.Threading.Tasks.ValueTask" /> that represents the asynchronous operation.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Shake256.Read(System.Int32)">
      <summary>Retrieves the hash for the data accumulated from prior calls to the <c>AppendData</c> methods without resetting the object to its initial state and allowing additional calls to continue retrieving the hash.</summary>
      <param name="outputLength">The size of the hash to produce.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="outputLength" /> is negative.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support multiple reads of the hash. <see cref="M:System.Security.Cryptography.Shake256.GetHashAndReset(System.Int32)" /> can be used
              to perform a single operation.</exception>
      <returns>The computed hash.</returns>
    </member>
    <member name="M:System.Security.Cryptography.Shake256.Read(System.Span{System.Byte})">
      <summary>Fills the buffer with the hash for the data accumulated from prior calls to the <c>AppendData</c> methods without resetting the object to its initial state and allowing additional calls to continue retrieving the hash.</summary>
      <param name="destination">The buffer to fill with the hash.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
      <exception cref="T:System.PlatformNotSupportedException">The platform does not support multiple reads of the hash. <see cref="M:System.Security.Cryptography.Shake256.GetHashAndReset(System.Span{System.Byte})" /> can be used
              to perform a single operation.</exception>
    </member>
    <member name="M:System.Security.Cryptography.Shake256.Reset">
      <summary>Resets the instance back to its initial state.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error has occurred during the operation.</exception>
      <exception cref="T:System.ObjectDisposedException">The object has already been disposed.</exception>
    </member>
    <member name="P:System.Security.Cryptography.Shake256.IsSupported">
      <summary>Gets a value that indicates whether the algorithm is supported on the current platform.</summary>
      <returns>
        <see langword="true" /> if the algorithm is supported; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.SignatureDescription">
      <summary>Contains information about the properties of a digital signature.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SignatureDescription.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.SignatureDescription" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SignatureDescription.#ctor(System.Security.SecurityElement)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.SignatureDescription" /> class from the specified <see cref="T:System.Security.SecurityElement" />.</summary>
      <param name="el">The <see cref="T:System.Security.SecurityElement" /> from which to get the algorithms for the signature description.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="el" /> parameter is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.SignatureDescription.CreateDeformatter(System.Security.Cryptography.AsymmetricAlgorithm)">
      <summary>Creates an <see cref="T:System.Security.Cryptography.AsymmetricSignatureDeformatter" /> instance with the specified key using the <see cref="P:System.Security.Cryptography.SignatureDescription.DeformatterAlgorithm" /> property.</summary>
      <param name="key">The key to use in the <see cref="T:System.Security.Cryptography.AsymmetricSignatureDeformatter" />.</param>
      <returns>The newly created <see cref="T:System.Security.Cryptography.AsymmetricSignatureDeformatter" /> instance.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SignatureDescription.CreateDigest">
      <summary>Creates a <see cref="T:System.Security.Cryptography.HashAlgorithm" /> instance using the <see cref="P:System.Security.Cryptography.SignatureDescription.DigestAlgorithm" /> property.</summary>
      <returns>The newly created <see cref="T:System.Security.Cryptography.HashAlgorithm" /> instance.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SignatureDescription.CreateFormatter(System.Security.Cryptography.AsymmetricAlgorithm)">
      <summary>Creates an <see cref="T:System.Security.Cryptography.AsymmetricSignatureFormatter" /> instance with the specified key using the <see cref="P:System.Security.Cryptography.SignatureDescription.FormatterAlgorithm" /> property.</summary>
      <param name="key">The key to use in the <see cref="T:System.Security.Cryptography.AsymmetricSignatureFormatter" />.</param>
      <returns>The newly created <see cref="T:System.Security.Cryptography.AsymmetricSignatureFormatter" /> instance.</returns>
    </member>
    <member name="P:System.Security.Cryptography.SignatureDescription.DeformatterAlgorithm">
      <summary>Gets or sets the deformatter algorithm for the signature description.</summary>
      <returns>The deformatter algorithm for the signature description.</returns>
    </member>
    <member name="P:System.Security.Cryptography.SignatureDescription.DigestAlgorithm">
      <summary>Gets or sets the digest algorithm for the signature description.</summary>
      <returns>The digest algorithm for the signature description.</returns>
    </member>
    <member name="P:System.Security.Cryptography.SignatureDescription.FormatterAlgorithm">
      <summary>Gets or sets the formatter algorithm for the signature description.</summary>
      <returns>The formatter algorithm for the signature description.</returns>
    </member>
    <member name="P:System.Security.Cryptography.SignatureDescription.KeyAlgorithm">
      <summary>Gets or sets the key algorithm for the signature description.</summary>
      <returns>The key algorithm for the signature description.</returns>
    </member>
    <member name="T:System.Security.Cryptography.SP800108HmacCounterKdf">
      <summary>
              NIST SP 800-108 HMAC CTR Key-Based Key Derivation (KBKDF)</summary>
    </member>
    <member name="M:System.Security.Cryptography.SP800108HmacCounterKdf.#ctor(System.Byte[],System.Security.Cryptography.HashAlgorithmName)">
      <summary>
              Initializes a new instance of <see cref="T:System.Security.Cryptography.SP800108HmacCounterKdf" /> using a specified key and HMAC algorithm.</summary>
      <param name="key">The key-derivation key.</param>
      <param name="hashAlgorithm">The HMAC algorithm.</param>
      <exception cref="T:System.ArgumentNullException">
        <para>
          <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> which is <see langword="null" />.</para>
        <para> -or-</para>
        <para>
          <paramref name="key" /> is <see langword="null" />.</para>
      </exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> which is empty.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> is not a known or supported hash algorithm.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
              The current platform does not have a supported implementation of HMAC.</exception>
    </member>
    <member name="M:System.Security.Cryptography.SP800108HmacCounterKdf.#ctor(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.HashAlgorithmName)">
      <summary>
              Initializes a new instance of <see cref="T:System.Security.Cryptography.SP800108HmacCounterKdf" /> using a specified key and HMAC algorithm.</summary>
      <param name="key">The key-derivation key.</param>
      <param name="hashAlgorithm">The HMAC algorithm.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> which is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> which is empty.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> is not a known or supported hash algorithm.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
              The current platform does not have a supported implementation of HMAC.</exception>
    </member>
    <member name="M:System.Security.Cryptography.SP800108HmacCounterKdf.DeriveBytes(System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Byte[],System.Byte[],System.Int32)">
      <summary>
              Derives a key of a specified length.</summary>
      <param name="key">The key-derivation key.</param>
      <param name="hashAlgorithm">The HMAC algorithm.</param>
      <param name="label">The label that identifies the purpose for the derived key.</param>
      <param name="context">The context containing information related to the derived key.</param>
      <param name="derivedKeyLengthInBytes">The length of the derived key, in bytes.</param>
      <exception cref="T:System.ArgumentNullException">
        <para>
          <paramref name="key" /> is <see langword="null" />.</para>
        <para> -or-</para>
        <para>
          <paramref name="label" /> is <see langword="null" />.</para>
        <para> -or-</para>
        <para>
          <paramref name="context" /> is <see langword="null" />.</para>
        <para> -or-</para>
        <para>
          <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> which is <see langword="null" />.</para>
      </exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> which is empty.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="derivedKeyLengthInBytes" /> is negative or larger than the maximum number of bytes
                that can be derived.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> is not a known or supported hash algorithm.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
              The current platform does not have a supported implementation of HMAC.</exception>
      <returns>An array containing the derived key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SP800108HmacCounterKdf.DeriveBytes(System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.String,System.String,System.Int32)">
      <summary>
              Derives a key of a specified length.</summary>
      <param name="key">The key-derivation key.</param>
      <param name="hashAlgorithm">The HMAC algorithm.</param>
      <param name="label">The label that identifies the purpose for the derived key.</param>
      <param name="context">The context containing information related to the derived key.</param>
      <param name="derivedKeyLengthInBytes">The length of the derived key, in bytes.</param>
      <exception cref="T:System.ArgumentNullException">
        <para>
          <paramref name="key" /> is <see langword="null" />.</para>
        <para> -or-</para>
        <para>
          <paramref name="label" /> is <see langword="null" />.</para>
        <para> -or-</para>
        <para>
          <paramref name="context" /> is <see langword="null" />.</para>
        <para> -or-</para>
        <para>
          <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> which is <see langword="null" />.</para>
      </exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> which is empty.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="derivedKeyLengthInBytes" /> is negative or larger than the maximum number of bytes
                that can be derived.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> is not a known or supported hash algorithm.</exception>
      <exception cref="T:System.Text.EncoderFallbackException">
        <paramref name="label" /> or <paramref name="context" /> contains text that cannot be converted to UTF-8.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
              The current platform does not have a supported implementation of HMAC.</exception>
      <returns>An array containing the derived key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SP800108HmacCounterKdf.DeriveBytes(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Int32)">
      <summary>
              Derives a key of a specified length.</summary>
      <param name="key">The key-derivation key.</param>
      <param name="hashAlgorithm">The HMAC algorithm.</param>
      <param name="label">The label that identifies the purpose for the derived key.</param>
      <param name="context">The context containing information related to the derived key.</param>
      <param name="derivedKeyLengthInBytes">The length of the derived key, in bytes.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> which is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> which is empty.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="derivedKeyLengthInBytes" /> is negative or larger than the maximum number of bytes
                that can be derived.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> is not a known or supported hash algorithm.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
              The current platform does not have a supported implementation of HMAC.</exception>
      <returns>An array containing the derived key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SP800108HmacCounterKdf.DeriveBytes(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte})">
      <summary>
              Fills a buffer with a derived key.</summary>
      <param name="key">The key-derivation key.</param>
      <param name="hashAlgorithm">The HMAC algorithm.</param>
      <param name="label">The label that identifies the purpose for the derived key.</param>
      <param name="context">The context containing information related to the derived key.</param>
      <param name="destination">The buffer which will receive the derived key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> which is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> which is empty.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="destination" /> is larger than the maximum number of bytes that can be derived.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> is not a known or supported hash algorithm.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
              The current platform does not have a supported implementation of HMAC.</exception>
    </member>
    <member name="M:System.Security.Cryptography.SP800108HmacCounterKdf.DeriveBytes(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Char},System.Int32)">
      <summary>
              Derives a key of a specified length.</summary>
      <param name="key">The key-derivation key.</param>
      <param name="hashAlgorithm">The HMAC algorithm.</param>
      <param name="label">The label that identifies the purpose for the derived key.</param>
      <param name="context">The context containing information related to the derived key.</param>
      <param name="derivedKeyLengthInBytes">The length of the derived key, in bytes.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> which is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> which is empty.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="derivedKeyLengthInBytes" /> is negative or larger than the maximum number of bytes
              that can be derived.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> is not a known or supported hash algorithm.</exception>
      <exception cref="T:System.Text.EncoderFallbackException">
        <paramref name="label" /> or <paramref name="context" /> contains text that cannot be converted to UTF-8.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
              The current platform does not have a supported implementation of HMAC.</exception>
      <returns>An array containing the derived key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SP800108HmacCounterKdf.DeriveBytes(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Char},System.Span{System.Byte})">
      <summary>
              Fills a buffer with a derived key.</summary>
      <param name="key">The key-derivation key.</param>
      <param name="hashAlgorithm">The HMAC algorithm.</param>
      <param name="label">The label that identifies the purpose for the derived key.</param>
      <param name="context">The context containing information related to the derived key.</param>
      <param name="destination">The buffer which will receive the derived key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> which is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" /> has a <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> which is empty.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="destination" /> is larger than the maximum number of bytes that can be derived.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> is not a known or supported hash algorithm.</exception>
      <exception cref="T:System.Text.EncoderFallbackException">
        <paramref name="label" /> or <paramref name="context" /> contains text that cannot be converted to UTF-8.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
              The current platform does not have a supported implementation of HMAC.</exception>
    </member>
    <member name="M:System.Security.Cryptography.SP800108HmacCounterKdf.DeriveKey(System.Byte[],System.Byte[],System.Int32)">
      <summary>
              Derives a key of a specified length.</summary>
      <param name="label">The label that identifies the purpose for the derived key.</param>
      <param name="context">The context containing information related to the derived key.</param>
      <param name="derivedKeyLengthInBytes">The length of the derived key, in bytes.</param>
      <exception cref="T:System.ArgumentNullException">
        <para>
          <paramref name="label" /> is <see langword="null" />.</para>
        <para> -or-</para>
        <para>
          <paramref name="context" /> is <see langword="null" />.</para>
      </exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="derivedKeyLengthInBytes" /> is negative or larger than the maximum number of bytes
              that can be derived.</exception>
      <returns>An array containing the derived key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SP800108HmacCounterKdf.DeriveKey(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Int32)">
      <summary>
              Derives a key of a specified length.</summary>
      <param name="label">The label that identifies the purpose for the derived key.</param>
      <param name="context">The context containing information related to the derived key.</param>
      <param name="derivedKeyLengthInBytes">The length of the derived key, in bytes.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="derivedKeyLengthInBytes" /> is negative or larger than the maximum number of bytes
              that can be derived.</exception>
      <returns>An array containing the derived key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SP800108HmacCounterKdf.DeriveKey(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte})">
      <summary>
              Fills a buffer with a derived key.</summary>
      <param name="label">The label that identifies the purpose for the derived key.</param>
      <param name="context">The context containing information related to the derived key.</param>
      <param name="destination">The buffer which will receive the derived key.</param>
      <exception cref="T:System.ArgumentNullException">
        <para>
          <paramref name="label" /> is <see langword="null" />.</para>
        <para> -or-</para>
        <para>
          <paramref name="context" /> is <see langword="null" />.</para>
      </exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="destination" /> is larger than the maximum number of bytes that can be derived.</exception>
    </member>
    <member name="M:System.Security.Cryptography.SP800108HmacCounterKdf.DeriveKey(System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Char},System.Int32)">
      <summary>
              Derives a key of a specified length.</summary>
      <param name="label">The label that identifies the purpose for the derived key.</param>
      <param name="context">The context containing information related to the derived key.</param>
      <param name="derivedKeyLengthInBytes">The length of the derived key, in bytes.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="derivedKeyLengthInBytes" /> is negative or larger than the maximum number of bytes
              that can be derived.</exception>
      <exception cref="T:System.Text.EncoderFallbackException">
        <paramref name="label" /> or <paramref name="context" /> contains text that cannot be converted to UTF-8.</exception>
      <returns>An array containing the derived key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SP800108HmacCounterKdf.DeriveKey(System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Char},System.Span{System.Byte})">
      <summary>
              Fills a buffer with a derived key.</summary>
      <param name="label">The label that identifies the purpose for the derived key.</param>
      <param name="context">The context containing information related to the derived key.</param>
      <param name="destination">The buffer which will receive the derived key.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="destination" /> is larger than the maximum number of bytes that can be derived.</exception>
      <exception cref="T:System.Text.EncoderFallbackException">
        <paramref name="label" /> or <paramref name="context" /> contains text that cannot be converted to UTF-8.</exception>
    </member>
    <member name="M:System.Security.Cryptography.SP800108HmacCounterKdf.DeriveKey(System.String,System.String,System.Int32)">
      <summary>
              Derives a key of a specified length.</summary>
      <param name="label">The label that identifies the purpose for the derived key.</param>
      <param name="context">The context containing information related to the derived key.</param>
      <param name="derivedKeyLengthInBytes">The length of the derived key, in bytes.</param>
      <exception cref="T:System.ArgumentNullException">
        <para>
          <paramref name="label" /> is <see langword="null" />.</para>
        <para> -or-</para>
        <para>
          <paramref name="context" /> is <see langword="null" />.</para>
      </exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="derivedKeyLengthInBytes" /> is negative or larger than the maximum number of bytes
              that can be derived.</exception>
      <exception cref="T:System.Text.EncoderFallbackException">
        <paramref name="label" /> or <paramref name="context" /> contains text that cannot be converted to UTF-8.</exception>
      <returns>An array containing the derived key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SP800108HmacCounterKdf.Dispose">
      <summary>
              Releases all resources used by the current instance of <see cref="T:System.Security.Cryptography.SP800108HmacCounterKdf" />.</summary>
    </member>
    <member name="T:System.Security.Cryptography.SymmetricAlgorithm">
      <summary>Represents the abstract base class from which all implementations of symmetric algorithms must inherit.</summary>
    </member>
    <member name="F:System.Security.Cryptography.SymmetricAlgorithm.BlockSizeValue">
      <summary>Represents the block size, in bits, of the cryptographic operation.</summary>
    </member>
    <member name="F:System.Security.Cryptography.SymmetricAlgorithm.FeedbackSizeValue">
      <summary>Represents the feedback size, in bits, of the cryptographic operation.</summary>
    </member>
    <member name="F:System.Security.Cryptography.SymmetricAlgorithm.IVValue">
      <summary>Represents the initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />) for the symmetric algorithm.</summary>
    </member>
    <member name="F:System.Security.Cryptography.SymmetricAlgorithm.KeySizeValue">
      <summary>Represents the size, in bits, of the secret key used by the symmetric algorithm.</summary>
    </member>
    <member name="F:System.Security.Cryptography.SymmetricAlgorithm.KeyValue">
      <summary>Represents the secret key for the symmetric algorithm.</summary>
    </member>
    <member name="F:System.Security.Cryptography.SymmetricAlgorithm.LegalBlockSizesValue">
      <summary>Specifies the block sizes, in bits, that are supported by the symmetric algorithm.</summary>
    </member>
    <member name="F:System.Security.Cryptography.SymmetricAlgorithm.LegalKeySizesValue">
      <summary>Specifies the key sizes, in bits, that are supported by the symmetric algorithm.</summary>
    </member>
    <member name="F:System.Security.Cryptography.SymmetricAlgorithm.ModeValue">
      <summary>Represents the cipher mode used in the symmetric algorithm.</summary>
    </member>
    <member name="F:System.Security.Cryptography.SymmetricAlgorithm.PaddingValue">
      <summary>Represents the padding mode used in the symmetric algorithm.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.SymmetricAlgorithm" /> class.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The implementation of the class derived from the symmetric algorithm is not valid.</exception>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.Clear">
      <summary>Releases all resources used by the <see cref="T:System.Security.Cryptography.SymmetricAlgorithm" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.Create">
      <summary>Creates a default cryptographic object used to perform the symmetric algorithm.</summary>
      <exception cref="T:System.PlatformNotSupportedException">.NET Core 2.0 - 3.1 and .NET 5 and later: In all cases.</exception>
      <returns>A default cryptographic object used to perform the symmetric algorithm.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.Create(System.String)">
      <summary>Creates the specified cryptographic object used to perform the symmetric algorithm.</summary>
      <param name="algName">The name of the specific implementation of the <see cref="T:System.Security.Cryptography.SymmetricAlgorithm" /> class to use.</param>
      <returns>A cryptographic object used to perform the symmetric algorithm.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.CreateDecryptor">
      <summary>Creates a symmetric decryptor object with the current <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key" /> property and initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />).</summary>
      <returns>A symmetric decryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.CreateDecryptor(System.Byte[],System.Byte[])">
      <summary>When overridden in a derived class, creates a symmetric decryptor object with the specified <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key" /> property and initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />).</summary>
      <param name="rgbKey">The secret key to use for the symmetric algorithm.</param>
      <param name="rgbIV">The initialization vector to use for the symmetric algorithm.</param>
      <returns>A symmetric decryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.CreateEncryptor">
      <summary>Creates a symmetric encryptor object with the current <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key" /> property and initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />).</summary>
      <returns>A symmetric encryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.CreateEncryptor(System.Byte[],System.Byte[])">
      <summary>When overridden in a derived class, creates a symmetric encryptor object with the specified <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key" /> property and initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />).</summary>
      <param name="rgbKey">The secret key to use for the symmetric algorithm.</param>
      <param name="rgbIV">The initialization vector to use for the symmetric algorithm.</param>
      <returns>A symmetric encryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.DecryptCbc(System.Byte[],System.Byte[],System.Security.Cryptography.PaddingMode)">
      <summary>Decrypts data using CBC mode with the specified padding mode.</summary>
      <param name="ciphertext">The data to decrypt.</param>
      <param name="iv">The initialization vector.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="ciphertext" /> or <paramref name="iv" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="paddingMode" /> is not a valid padding mode.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="iv" /> is the incorrect length. Callers are expected to pass an initialization vector that is exactly <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.BlockSize" /> in length, converted to bytes (<c>BlockSize / 8</c>).</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The ciphertext could not be decrypted successfully.</exception>
      <returns>The decrypted plaintext data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.DecryptCbc(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Security.Cryptography.PaddingMode)">
      <summary>Decrypts data using CBC mode with the specified padding mode.</summary>
      <param name="ciphertext">The data to decrypt.</param>
      <param name="iv">The initialization vector.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="paddingMode" /> is not a valid padding mode.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="iv" /> is the incorrect length. Callers are expected to pass an initialization vector that is exactly <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.BlockSize" /> in length, converted to bytes (<c>BlockSize / 8</c>).</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The ciphertext could not be decrypted successfully.</exception>
      <returns>The decrypted plaintext data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.DecryptCbc(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.PaddingMode)">
      <summary>Decrypts data into the specified buffer, using CBC mode with the specified padding mode.</summary>
      <param name="ciphertext">The data to decrypt.</param>
      <param name="iv">The initialization vector.</param>
      <param name="destination">The buffer to receive the plaintext data.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="paddingMode" /> is not a valid padding mode.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="iv" /> is the incorrect length. Callers are expected to pass an initialization vector that is exactly <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.BlockSize" /> in length, converted to bytes (<c>BlockSize / 8</c>).</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The ciphertext could not be decrypted successfully.</exception>
      <exception cref="T:System.ArgumentException">The buffer in <paramref name="destination" /> is too small to hold the plaintext data.</exception>
      <returns>The total number of bytes written to <paramref name="destination" /></returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.DecryptCfb(System.Byte[],System.Byte[],System.Security.Cryptography.PaddingMode,System.Int32)">
      <summary>Decrypts data using CFB mode with the specified padding mode and feedback size.</summary>
      <param name="ciphertext">The data to decrypt.</param>
      <param name="iv">The initialization vector.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <param name="feedbackSizeInBits">The feedback size, specified in bits.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="ciphertext" /> or <paramref name="iv" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="paddingMode" /> is not a valid padding mode.

-or-

<paramref name="feedbackSizeInBits" /> is not positive or represent a whole number of bytes.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="iv" /> is the incorrect length. Callers are expected to pass an initialization vector that is exactly <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.BlockSize" /> in length, converted to bytes (<c>BlockSize / 8</c>).</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The ciphertext could not be decrypted successfully.

-or-

The feedback size is not valid for the algorithm.</exception>
      <returns>The decrypted plaintext data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.DecryptCfb(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Security.Cryptography.PaddingMode,System.Int32)">
      <summary>Decrypts data using CFB mode with the specified padding mode and feedback size.</summary>
      <param name="ciphertext">The data to decrypt.</param>
      <param name="iv">The initialization vector.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <param name="feedbackSizeInBits">The feedback size, specified in bits.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="paddingMode" /> is not a valid padding mode.

-or-

<paramref name="feedbackSizeInBits" /> is not positive or represent a whole number of bytes.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="iv" /> is the incorrect length. Callers are expected to pass an initialization vector that is exactly <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.BlockSize" /> in length, converted to bytes (<c>BlockSize / 8</c>).</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The ciphertext could not be decrypted successfully.

-or-

The feedback size is not valid for the algorithm.</exception>
      <returns>The decrypted plaintext data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.DecryptCfb(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.PaddingMode,System.Int32)">
      <summary>Decrypts data into the specified buffer, using CFB mode with the specified padding mode and feedback size.</summary>
      <param name="ciphertext">The data to decrypt.</param>
      <param name="iv">The initialization vector.</param>
      <param name="destination">The buffer to receive the plaintext data.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <param name="feedbackSizeInBits">The feedback size, specified in bits.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="paddingMode" /> is not a valid padding mode.

-or-

<paramref name="feedbackSizeInBits" /> is not positive or represent a whole number of bytes.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="iv" /> is the incorrect length. Callers are expected to pass an initialization vector that is exactly <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.BlockSize" /> in length, converted to bytes (<c>BlockSize / 8</c>).

-or-

The buffer in <paramref name="destination" /> is too small to hold the plaintext data.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The ciphertext could not be decrypted successfully.

-or-

<paramref name="feedbackSizeInBits" /> is not valid for the algorithm.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.DecryptEcb(System.Byte[],System.Security.Cryptography.PaddingMode)">
      <summary>Decrypts data using ECB mode with the specified padding mode.</summary>
      <param name="ciphertext">The data to decrypt.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="ciphertext" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="paddingMode" /> is not a valid padding mode.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The ciphertext could not be decrypted successfully.</exception>
      <returns>The decrypted plaintext data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.DecryptEcb(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.PaddingMode)">
      <summary>Decrypts data using ECB mode with the specified padding mode.</summary>
      <param name="ciphertext">The data to decrypt.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="paddingMode" /> is not a valid padding mode.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The ciphertext could not be decrypted successfully.</exception>
      <returns>The decrypted plaintext data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.DecryptEcb(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.PaddingMode)">
      <summary>Decrypts data into the specified buffer, using ECB mode with the specified padding mode.</summary>
      <param name="ciphertext">The data to decrypt.</param>
      <param name="destination">The buffer to receive the plaintext data.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="paddingMode" /> is not a valid padding mode.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The ciphertext could not be decrypted successfully.</exception>
      <exception cref="T:System.ArgumentException">The buffer in <paramref name="destination" /> is too small to hold the plaintext data.</exception>
      <returns>The total number of bytes written to <paramref name="destination" /></returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.Dispose">
      <summary>Releases all resources used by the current instance of the <see cref="T:System.Security.Cryptography.SymmetricAlgorithm" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.Dispose(System.Boolean)">
      <summary>Releases the unmanaged resources used by the <see cref="T:System.Security.Cryptography.SymmetricAlgorithm" /> and optionally releases the managed resources.</summary>
      <param name="disposing">
        <see langword="true" /> to release both managed and unmanaged resources; <see langword="false" /> to release only unmanaged resources.</param>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.EncryptCbc(System.Byte[],System.Byte[],System.Security.Cryptography.PaddingMode)">
      <summary>Encrypts data using CBC mode with the specified padding mode.</summary>
      <param name="plaintext">The data to encrypt.</param>
      <param name="iv">The initialization vector.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="plaintext" /> or <paramref name="iv" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="paddingMode" /> is not a valid padding mode.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="iv" /> is the incorrect length. Callers are expected to pass an initialization vector that is exactly <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.BlockSize" /> in length, converted to bytes (<c>BlockSize / 8</c>).</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The plaintext could not be encrypted successfully.</exception>
      <returns>The encrypted ciphertext data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.EncryptCbc(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Security.Cryptography.PaddingMode)">
      <summary>Encrypts data using CBC mode with the specified padding mode.</summary>
      <param name="plaintext">The data to encrypt.</param>
      <param name="iv">The initialization vector.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="paddingMode" /> is not a valid padding mode.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="iv" /> is the incorrect length. Callers are expected to pass an initialization vector that is exactly <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.BlockSize" /> in length, converted to bytes (<c>BlockSize / 8</c>).</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The plaintext could not be encrypted successfully.</exception>
      <returns>The encrypted ciphertext data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.EncryptCbc(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.PaddingMode)">
      <summary>Encrypts data into the specified buffer, using CBC mode with the specified padding mode.</summary>
      <param name="plaintext">The data to encrypt.</param>
      <param name="iv">The initialization vector.</param>
      <param name="destination">The buffer to receive the ciphertext data.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="paddingMode" /> is not a valid padding mode.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="iv" /> is the incorrect length. Callers are expected to pass an initialization vector that is exactly <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.BlockSize" /> in length, converted to bytes (<c>BlockSize / 8</c>).</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The plaintext could not be encrypted successfully.</exception>
      <exception cref="T:System.ArgumentException">The buffer in <paramref name="destination" /> is too small to hold the ciphertext data.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.EncryptCfb(System.Byte[],System.Byte[],System.Security.Cryptography.PaddingMode,System.Int32)">
      <summary>Encrypts data using CFB mode with the specified padding mode and feedback size.</summary>
      <param name="plaintext">The data to encrypt.</param>
      <param name="iv">The initialization vector.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <param name="feedbackSizeInBits">The feedback size, specified in bits.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="plaintext" /> or <paramref name="iv" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="paddingMode" /> is not a valid padding mode.

-or-

<paramref name="feedbackSizeInBits" /> is not positive or represent a whole number of bytes.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="iv" /> is the incorrect length. Callers are expected to pass an initialization vector that is exactly <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.BlockSize" /> in length, converted to bytes (<c>BlockSize / 8</c>).</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The plaintext could not be encrypted successfully.

-or-

The feedback size is not valid for the algorithm.</exception>
      <returns>The encrypted ciphertext data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.EncryptCfb(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Security.Cryptography.PaddingMode,System.Int32)">
      <summary>Encrypts data using CFB mode with the specified padding mode and feedback size.</summary>
      <param name="plaintext">The data to encrypt.</param>
      <param name="iv">The initialization vector.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <param name="feedbackSizeInBits">The feedback size, specified in bits.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="paddingMode" /> is not a valid padding mode.

-or-

<paramref name="feedbackSizeInBits" /> is not positive or represent a whole number of bytes.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="iv" /> is the incorrect length. Callers are expected to pass an initialization vector that is exactly <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.BlockSize" /> in length, converted to bytes (<c>BlockSize / 8</c>).</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The plaintext could not be encrypted successfully.

-or-

The feedback size is not valid for the algorithm.</exception>
      <returns>The encrypted ciphertext data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.EncryptCfb(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.PaddingMode,System.Int32)">
      <summary>Encrypts data into the specified buffer, using CFB mode with the specified padding mode and feedback size.</summary>
      <param name="plaintext">The data to encrypt.</param>
      <param name="iv">The initialization vector.</param>
      <param name="destination">The buffer to receive the ciphertext data.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <param name="feedbackSizeInBits">The feedback size, specified in bits.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="paddingMode" /> is not a valid padding mode.

-or-

<paramref name="feedbackSizeInBits" /> is not positive or represent a whole number of bytes.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="iv" /> is the incorrect length. Callers are expected to pass an initialization vector that is exactly <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.BlockSize" /> in length, converted to bytes (<c>BlockSize / 8</c>).</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The plaintext could not be encrypted successfully.

-or-

The feedback size is not valid for the algorithm.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.EncryptEcb(System.Byte[],System.Security.Cryptography.PaddingMode)">
      <summary>Encrypts data using ECB mode with the specified padding mode.</summary>
      <param name="plaintext">The data to encrypt.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="plaintext" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="paddingMode" /> is not a valid padding mode.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The plaintext could not be encrypted successfully.</exception>
      <returns>The encrypted ciphertext data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.EncryptEcb(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.PaddingMode)">
      <summary>Encrypts data using ECB mode with the specified padding mode.</summary>
      <param name="plaintext">The data to encrypt.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="paddingMode" /> is not a valid padding mode.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The plaintext could not be encrypted successfully.</exception>
      <returns>The encrypted ciphertext data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.EncryptEcb(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.PaddingMode)">
      <summary>Encrypts data into the specified buffer, using ECB mode with the specified padding mode.</summary>
      <param name="plaintext">The data to encrypt.</param>
      <param name="destination">The buffer to receive the ciphertext data.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="paddingMode" /> is not a valid padding mode.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The plaintext could not be encrypted successfully.</exception>
      <exception cref="T:System.ArgumentException">The buffer in <paramref name="destination" /> is too small to hold the ciphertext data.</exception>
      <returns>The total number of bytes written to <paramref name="destination" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.GenerateIV">
      <summary>When overridden in a derived class, generates a random initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />) to use for the algorithm.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.GenerateKey">
      <summary>When overridden in a derived class, generates a random key (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key" />) to use for the algorithm.</summary>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.GetCiphertextLengthCbc(System.Int32,System.Security.Cryptography.PaddingMode)">
      <summary>Gets the length of a ciphertext with a given padding mode and plaintext length in CBC mode.</summary>
      <param name="plaintextLength">The plaintext length, in bytes.</param>
      <param name="paddingMode">The padding mode used to pad the plaintext to the algorithm's block size.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="plaintextLength" /> is a negative number.

-or-

<paramref name="plaintextLength" /> when padded is too large to represent as a signed 32-bit integer.

-or-

<paramref name="paddingMode" /> is not a valid padding mode.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.BlockSize" /> is not a positive integer.

-or-

<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.BlockSize" /> is not a whole number of bytes. It must be divisible by 8.</exception>
      <exception cref="T:System.ArgumentException">The padding mode <see cref="F:System.Security.Cryptography.PaddingMode.None" /> was used, but <paramref name="plaintextLength" /> is not a whole number of blocks.</exception>
      <returns>The length, in bytes, of the ciphertext with padding.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.GetCiphertextLengthCfb(System.Int32,System.Security.Cryptography.PaddingMode,System.Int32)">
      <summary>Gets the length of a ciphertext with a given padding mode and plaintext length in CFB mode.</summary>
      <param name="plaintextLength">The plaintext length, in bytes.</param>
      <param name="paddingMode">The padding mode used to pad the plaintext to the feedback size.</param>
      <param name="feedbackSizeInBits">The feedback size, in bits.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="feedbackSizeInBits" /> is not a positive number.

-or-

<paramref name="plaintextLength" /> is a negative number.

-or-

<paramref name="plaintextLength" /> when padded is too large to represent as a signed 32-bit integer.

-or-

<paramref name="paddingMode" /> is not a valid padding mode.</exception>
      <exception cref="T:System.ArgumentException">The padding mode <see cref="F:System.Security.Cryptography.PaddingMode.None" /> was used, but <paramref name="plaintextLength" /> is not a whole number of blocks.

-or-

<paramref name="feedbackSizeInBits" /> is not a whole number of bytes. It must be divisible by 8.</exception>
      <returns>The length, in bytes, of the ciphertext with padding.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.GetCiphertextLengthEcb(System.Int32,System.Security.Cryptography.PaddingMode)">
      <summary>Gets the length of a ciphertext with a given padding mode and plaintext length in ECB mode.</summary>
      <param name="plaintextLength">The plaintext length, in bytes.</param>
      <param name="paddingMode">The padding mode used to pad the plaintext to the algorithm's block size.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="plaintextLength" /> is a negative number.

-or-

<paramref name="plaintextLength" /> when padded is too large to represent as a signed 32-bit integer.

-or-

<paramref name="paddingMode" /> is not a valid padding mode.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.BlockSize" /> is not a positive integer.

-or-

<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.BlockSize" /> is not a whole number of bytes. It must be divisible by 8.</exception>
      <exception cref="T:System.ArgumentException">The padding mode <see cref="F:System.Security.Cryptography.PaddingMode.None" /> was used, but <paramref name="plaintextLength" /> is not a whole number of blocks.</exception>
      <returns>The length, in bytes, of the ciphertext with padding.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.TryDecryptCbc(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@,System.Security.Cryptography.PaddingMode)">
      <summary>Attempts to decrypt data into the specified buffer, using CBC mode with the specified padding mode.</summary>
      <param name="ciphertext">The data to decrypt.</param>
      <param name="iv">The initialization vector.</param>
      <param name="destination">The buffer to receive the plaintext data.</param>
      <param name="bytesWritten">When this method returns, contains the total number of bytes written to <paramref name="destination" />.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="paddingMode" /> is not a valid padding mode.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="iv" /> is the incorrect length. Callers are expected to pass an initialization vector that is exactly <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.BlockSize" /> in length, converted to bytes (<c>BlockSize / 8</c>).</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The ciphertext could not be decrypted successfully.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> was large enough to receive the decrypted data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.TryDecryptCbcCore(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.PaddingMode,System.Int32@)">
      <summary>When overridden in a derived class, attempts to decrypt data into the specified buffer, using CBC mode with the specified padding mode.</summary>
      <param name="ciphertext">The data to decrypt.</param>
      <param name="iv">The initialization vector.</param>
      <param name="destination">The buffer to receive the plaintext data.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <param name="bytesWritten">When this method returns, contains the total number of bytes written to <paramref name="destination" />.</param>
      <exception cref="T:System.NotSupportedException">A derived class has not provided an implementation.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> was large enough to receive the decrypted data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.TryDecryptCfb(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@,System.Security.Cryptography.PaddingMode,System.Int32)">
      <summary>Attempts to decrypt data into the specified buffer, using CFB mode with the specified padding mode and feedback size.</summary>
      <param name="ciphertext">The data to decrypt.</param>
      <param name="iv">The initialization vector.</param>
      <param name="destination">The buffer to receive the plaintext data.</param>
      <param name="bytesWritten">When this method returns, contains the total number of bytes written to <paramref name="destination" />.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <param name="feedbackSizeInBits">The feedback size, specified in bits.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="paddingMode" /> is not a valid padding mode.

-or-

<paramref name="feedbackSizeInBits" /> is not positive or represent a whole number of bytes.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="iv" /> is the incorrect length. Callers are expected to pass an initialization vector that is exactly <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.BlockSize" /> in length, converted to bytes (<c>BlockSize / 8</c>).</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The ciphertext could not be decrypted successfully.

-or-

<paramref name="feedbackSizeInBits" /> is not valid for the algorithm.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> was large enough to receive the decrypted data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.TryDecryptCfbCore(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.PaddingMode,System.Int32,System.Int32@)">
      <summary>When overridden in a derived class, attempts to decrypt data into the specified buffer, using CFB mode with the specified padding mode and feedback size.</summary>
      <param name="ciphertext">The data to decrypt.</param>
      <param name="iv">The initialization vector.</param>
      <param name="destination">The buffer to receive the plaintext data.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <param name="feedbackSizeInBits">The feedback size, specified in bits.</param>
      <param name="bytesWritten">When this method returns, contains the total number of bytes written to <paramref name="destination" />.</param>
      <exception cref="T:System.NotSupportedException">A derived class has not provided an implementation.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> was large enough to receive the decrypted data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.TryDecryptEcb(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.PaddingMode,System.Int32@)">
      <summary>Attempts to decrypt data into the specified buffer, using ECB mode with the specified padding mode.</summary>
      <param name="ciphertext">The data to decrypt.</param>
      <param name="destination">The buffer to receive the plaintext data.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <param name="bytesWritten">When this method returns, contains the total number of bytes written to <paramref name="destination" />.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="paddingMode" /> is not a valid padding mode.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The ciphertext could not be decrypted successfully.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> was large enough to receive the decrypted data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.TryDecryptEcbCore(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.PaddingMode,System.Int32@)">
      <summary>When overridden in a derived class, attempts to decrypt data into the specified buffer, using ECB mode with the specified padding mode.</summary>
      <param name="ciphertext">The data to decrypt.</param>
      <param name="destination">The buffer to receive the plaintext data.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <param name="bytesWritten">When this method returns, contains the total number of bytes written to <paramref name="destination" />.</param>
      <exception cref="T:System.NotSupportedException">A derived class has not provided an implementation.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> was large enough to receive the decrypted data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.TryEncryptCbc(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@,System.Security.Cryptography.PaddingMode)">
      <summary>Attempts to encrypt data into the specified buffer, using CBC mode with the specified padding mode.</summary>
      <param name="plaintext">The data to encrypt.</param>
      <param name="iv">The initialization vector.</param>
      <param name="destination">The buffer to receive the ciphertext data.</param>
      <param name="bytesWritten">When this method returns, contains the total number of bytes written to <paramref name="destination" />.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="paddingMode" /> is not a valid padding mode.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="iv" /> is the incorrect length. Callers are expected to pass an initialization vector that is exactly <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.BlockSize" /> in length, converted to bytes (<c>BlockSize / 8</c>).</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The plaintext could not be encrypted successfully.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> was large enough to receive the encrypted data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.TryEncryptCbcCore(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.PaddingMode,System.Int32@)">
      <summary>When overridden in a derived class, attempts to encrypt data into the specified buffer, using CBC mode with the specified padding mode.</summary>
      <param name="plaintext">The data to encrypt.</param>
      <param name="iv">The initialization vector.</param>
      <param name="destination">The buffer to receive the ciphertext data.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <param name="bytesWritten">When this method returns, contains the total number of bytes written to <paramref name="destination" />.</param>
      <exception cref="T:System.NotSupportedException">A derived class has not provided an implementation.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> was large enough to receive the encrypted data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.TryEncryptCfb(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@,System.Security.Cryptography.PaddingMode,System.Int32)">
      <summary>Attempts to encrypt data into the specified buffer, using CFB mode with the specified padding mode and feedback size.</summary>
      <param name="plaintext">The data to encrypt.</param>
      <param name="iv">The initialization vector.</param>
      <param name="destination">The buffer to receive the ciphertext data.</param>
      <param name="bytesWritten">When this method returns, contains the total number of bytes written to <paramref name="destination" />.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <param name="feedbackSizeInBits">The feedback size, specified in bits.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="paddingMode" /> is not a valid padding mode.

-or-

<paramref name="feedbackSizeInBits" /> is not positive or represent a whole number of bytes.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="iv" /> is the incorrect length. Callers are expected to pass an initialization vector that is exactly <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.BlockSize" /> in length, converted to bytes (<c>BlockSize / 8</c>).</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The plaintext could not be encrypted successfully.

-or-

The feedback size is not valid for the algorithm.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> was large enough to receive the encrypted data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.TryEncryptCfbCore(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.PaddingMode,System.Int32,System.Int32@)">
      <summary>When overridden in a derived class, attempts to encrypt data into the specified buffer, using CFB mode with the specified padding mode and feedback size.</summary>
      <param name="plaintext">The data to encrypt.</param>
      <param name="iv">The initialization vector.</param>
      <param name="destination">The buffer to receive the ciphertext data.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <param name="feedbackSizeInBits">The feedback size, specified in bits.</param>
      <param name="bytesWritten">When this method returns, contains the total number of bytes written to <paramref name="destination" />.</param>
      <exception cref="T:System.NotSupportedException">A derived class has not provided an implementation.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> was large enough to receive the encrypted data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.TryEncryptEcb(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.PaddingMode,System.Int32@)">
      <summary>Attempts to encrypt data into the specified buffer, using ECB mode with the specified padding mode.</summary>
      <param name="plaintext">The data to encrypt.</param>
      <param name="destination">The buffer to receive the ciphertext data.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <param name="bytesWritten">When this method returns, contains the total number of bytes written to <paramref name="destination" />.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="paddingMode" /> is not a valid padding mode.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The plaintext could not be encrypted successfully.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> was large enough to receive the encrypted data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.TryEncryptEcbCore(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.PaddingMode,System.Int32@)">
      <summary>When overridden in a derived class, attempts to encrypt data into the specified buffer, using ECB mode with the specified padding mode.</summary>
      <param name="plaintext">The data to encrypt.</param>
      <param name="destination">The buffer to receive the ciphertext data.</param>
      <param name="paddingMode">The padding mode used to produce the ciphertext and remove during decryption.</param>
      <param name="bytesWritten">When this method returns, contains the total number of bytes written to <paramref name="destination" />.</param>
      <exception cref="T:System.NotSupportedException">A derived class has not provided an implementation.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> was large enough to receive the encrypted data; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.SymmetricAlgorithm.ValidKeySize(System.Int32)">
      <summary>Determines whether the specified key size is valid for the current algorithm.</summary>
      <param name="bitLength">The length, in bits, to check for a valid key size.</param>
      <returns>
        <see langword="true" /> if the specified key size is valid for the current algorithm; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.SymmetricAlgorithm.BlockSize">
      <summary>Gets or sets the block size, in bits, of the cryptographic operation.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The block size is invalid.</exception>
      <returns>The block size, in bits.</returns>
    </member>
    <member name="P:System.Security.Cryptography.SymmetricAlgorithm.FeedbackSize">
      <summary>Gets or sets the feedback size, in bits, of the cryptographic operation for the Cipher Feedback (CFB) and Output Feedback (OFB) cipher modes.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The feedback size is larger than the block size.</exception>
      <returns>The feedback size in bits.</returns>
    </member>
    <member name="P:System.Security.Cryptography.SymmetricAlgorithm.IV">
      <summary>Gets or sets the initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />) for the symmetric algorithm.</summary>
      <exception cref="T:System.ArgumentNullException">An attempt was made to set the initialization vector to <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An attempt was made to set the initialization vector to an invalid size.</exception>
      <returns>The initialization vector.</returns>
    </member>
    <member name="P:System.Security.Cryptography.SymmetricAlgorithm.Key">
      <summary>Gets or sets the secret key for the symmetric algorithm.</summary>
      <exception cref="T:System.ArgumentNullException">An attempt was made to set the key to <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key size is invalid.</exception>
      <returns>The secret key to use for the symmetric algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.SymmetricAlgorithm.KeySize">
      <summary>Gets or sets the size, in bits, of the secret key used by the symmetric algorithm.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key size is not valid.</exception>
      <returns>The size, in bits, of the secret key used by the symmetric algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.SymmetricAlgorithm.LegalBlockSizes">
      <summary>Gets the block sizes, in bits, that are supported by the symmetric algorithm.</summary>
      <returns>An array that contains the block sizes supported by the algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.SymmetricAlgorithm.LegalKeySizes">
      <summary>Gets the key sizes, in bits, that are supported by the symmetric algorithm.</summary>
      <returns>An array that contains the key sizes supported by the algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.SymmetricAlgorithm.Mode">
      <summary>Gets or sets the mode for operation of the symmetric algorithm.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The cipher mode is not one of the <see cref="T:System.Security.Cryptography.CipherMode" /> values.</exception>
      <returns>The mode for operation of the symmetric algorithm. The default is <see cref="F:System.Security.Cryptography.CipherMode.CBC" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.SymmetricAlgorithm.Padding">
      <summary>Gets or sets the padding mode used in the symmetric algorithm.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The padding mode is not one of the <see cref="T:System.Security.Cryptography.PaddingMode" /> values.</exception>
      <returns>The padding mode used in the symmetric algorithm. The default is <see cref="F:System.Security.Cryptography.PaddingMode.PKCS7" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.ToBase64Transform">
      <summary>Converts a <see cref="T:System.Security.Cryptography.CryptoStream" /> to base 64.</summary>
    </member>
    <member name="M:System.Security.Cryptography.ToBase64Transform.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ToBase64Transform" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.ToBase64Transform.Clear">
      <summary>Releases all resources used by the <see cref="T:System.Security.Cryptography.ToBase64Transform" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.ToBase64Transform.Dispose">
      <summary>Releases all resources used by the current instance of the <see cref="T:System.Security.Cryptography.ToBase64Transform" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.ToBase64Transform.Dispose(System.Boolean)">
      <summary>Releases the unmanaged resources used by the <see cref="T:System.Security.Cryptography.ToBase64Transform" /> and optionally releases the managed resources.</summary>
      <param name="disposing">
        <see langword="true" /> to release both managed and unmanaged resources; <see langword="false" /> to release only unmanaged resources.</param>
    </member>
    <member name="M:System.Security.Cryptography.ToBase64Transform.Finalize">
      <summary>Releases the unmanaged resources used by the <see cref="T:System.Security.Cryptography.ToBase64Transform" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.ToBase64Transform.TransformBlock(System.Byte[],System.Int32,System.Int32,System.Byte[],System.Int32)">
      <summary>Converts the specified region of the input byte array to base 64 and copies the result to the specified region of the output byte array.</summary>
      <param name="inputBuffer">The input to compute to base 64.</param>
      <param name="inputOffset">The offset into the input byte array from which to begin using data.</param>
      <param name="inputCount">The number of bytes in the input byte array to use as data.</param>
      <param name="outputBuffer">The output to which to write the result.</param>
      <param name="outputOffset">The offset into the output byte array from which to begin writing data.</param>
      <exception cref="T:System.ObjectDisposedException">The current <see cref="T:System.Security.Cryptography.ToBase64Transform" /> object has already been disposed.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The data size is not valid.</exception>
      <exception cref="T:System.ArgumentException">The <paramref name="inputOffset" /> parameter contains an invalid offset length.

 -or-

 The <paramref name="inputCount" /> parameter contains an invalid value.</exception>
      <exception cref="T:System.ArgumentNullException">The <paramref name="inputBuffer" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">The <paramref name="inputCount" /> parameter requires a non-negative number and less than or equal to the length of <paramref name="inputBuffer" />.</exception>
      <returns>The number of bytes written.</returns>
    </member>
    <member name="M:System.Security.Cryptography.ToBase64Transform.TransformFinalBlock(System.Byte[],System.Int32,System.Int32)">
      <summary>Converts the specified region of the specified byte array to base 64.</summary>
      <param name="inputBuffer">The input to convert to base 64.</param>
      <param name="inputOffset">The offset into the byte array from which to begin using data.</param>
      <param name="inputCount">The number of bytes in the byte array to use as data.</param>
      <exception cref="T:System.ObjectDisposedException">The current <see cref="T:System.Security.Cryptography.ToBase64Transform" /> object has already been disposed.</exception>
      <exception cref="T:System.ArgumentException">The <paramref name="inputOffset" /> parameter contains an invalid offset length.

 -or-

 The <paramref name="inputCount" /> parameter contains an invalid value.</exception>
      <exception cref="T:System.ArgumentNullException">The <paramref name="inputBuffer" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">The <paramref name="inputCount" /> parameter requires a non-negative number and less than or equal to the length of <paramref name="inputBuffer" />.</exception>
      <returns>The computed base 64 conversion.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ToBase64Transform.CanReuseTransform">
      <summary>Gets a value indicating whether the current transform can be reused.</summary>
      <returns>Always <see langword="true" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ToBase64Transform.CanTransformMultipleBlocks">
      <summary>Gets a value that indicates whether multiple blocks can be transformed.</summary>
      <returns>
        <see langword="true" /> if multiple blocks can be transformed; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ToBase64Transform.InputBlockSize">
      <summary>Gets the input block size.</summary>
      <returns>The size of the input data blocks in bytes.</returns>
    </member>
    <member name="P:System.Security.Cryptography.ToBase64Transform.OutputBlockSize">
      <summary>Gets the output block size.</summary>
      <returns>The size of the output data blocks in bytes.</returns>
    </member>
    <member name="T:System.Security.Cryptography.TripleDES">
      <summary>Represents the base class for Triple Data Encryption Standard algorithms from which all <see cref="T:System.Security.Cryptography.TripleDES" /> implementations must derive.</summary>
    </member>
    <member name="M:System.Security.Cryptography.TripleDES.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.TripleDES" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.TripleDES.Create">
      <summary>Creates an instance of a cryptographic object to perform the <see cref="T:System.Security.Cryptography.TripleDES" /> algorithm.</summary>
      <returns>An instance of a cryptographic object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.TripleDES.Create(System.String)">
      <summary>Creates an instance of a cryptographic object to perform the specified implementation of the <see cref="T:System.Security.Cryptography.TripleDES" /> algorithm.</summary>
      <param name="str">The name of the specific implementation of <see cref="T:System.Security.Cryptography.TripleDES" /> to use.</param>
      <returns>An instance of a cryptographic object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.TripleDES.IsWeakKey(System.Byte[])">
      <summary>Determines whether the specified key is weak.</summary>
      <param name="rgbKey">The secret key to test for weakness.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The size of the <paramref name="rgbKey" /> parameter is not valid.</exception>
      <returns>
        <see langword="true" /> if the key is weak; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.TripleDES.Key">
      <summary>Gets or sets the secret key for the <see cref="T:System.Security.Cryptography.TripleDES" /> algorithm.</summary>
      <exception cref="T:System.ArgumentNullException">An attempt was made to set the key to <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An attempt was made to set a key whose length is invalid.  
  
 -or-  
  
 An attempt was made to set a weak key (see <see cref="M:System.Security.Cryptography.TripleDES.IsWeakKey(System.Byte[])" />).</exception>
      <returns>The secret key for the <see cref="T:System.Security.Cryptography.TripleDES" /> algorithm.</returns>
    </member>
    <member name="T:System.Security.Cryptography.TripleDESCng">
      <summary>Provides a Cryptography Next Generation (CNG) implementation of the Triple Data Encryption Standard (3DES) algorithm.</summary>
    </member>
    <member name="M:System.Security.Cryptography.TripleDESCng.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.TripleDESCng" /> class with an ephemeral key.</summary>
    </member>
    <member name="M:System.Security.Cryptography.TripleDESCng.#ctor(System.String,System.Security.Cryptography.CngProvider,System.Security.Cryptography.CngKeyOpenOptions)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.TripleDESCng" /> class with the specified key name, which represents an existing persisted 3DES key,  the specified key storage provider (KSP) and key open options.</summary>
      <param name="keyName">The name of the key.</param>
      <param name="provider">The KSP that contains the key.</param>
      <param name="openOptions">A bitwise combination of the enumeration values that specify options for opening the key, such as where the key is opened from (machine or user storage) and whether to suppress UI prompting.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="keyName" /> is <see langword="null" />.

 -or-

 <paramref name="provider" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">Cryptography Next Generation (CNG) is not supported on this system.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">All other errors.</exception>
    </member>
    <member name="M:System.Security.Cryptography.TripleDESCng.#ctor(System.String,System.Security.Cryptography.CngProvider)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.TripleDESCng" /> class with the specified key name, which represents an existing persisted 3DES key, and the specified key storage provider (KSP).</summary>
      <param name="keyName">The name of the key.</param>
      <param name="provider">The KSP that contains the key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="keyName" /> is <see langword="null" />.

 -or-

 <paramref name="provider" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">Cryptography Next Generation (CNG) is not supported on this system.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">All other errors.</exception>
    </member>
    <member name="M:System.Security.Cryptography.TripleDESCng.#ctor(System.String)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.TripleDESCng" /> class with the specified key name, which represents an existing persisted 3DES key.</summary>
      <param name="keyName">The name of the key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="keyName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">Cryptography Next Generation (CNG) is not supported on this system.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">All other errors.</exception>
    </member>
    <member name="M:System.Security.Cryptography.TripleDESCng.CreateDecryptor">
      <summary>Creates a symmetric 3DES decryptor object with the current key and initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />).</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">.NET 6 and later: CFB64 mode is selected and the key is persisted.</exception>
      <returns>A symmetric 3DES decryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.TripleDESCng.CreateDecryptor(System.Byte[],System.Byte[])">
      <summary>Creates a symmetric 3DES decryptor object with the specified key and initialization vector (IV).</summary>
      <param name="rgbKey">The secret key to use for the 3DES algorithm. The key size must be 192 bits.</param>
      <param name="rgbIV">The initialization vector to use for the 3DES algorithm.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="rgbKey" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="rgbKey" /> is not a valid size for this algorithm.

 -or-

 <paramref name="rgbIV" /> size does not match the block size for this algorithm.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="rgbKey" /> is a known weak key for this algorithm and cannot be used.

 -or-

 <paramref name="rgbIV" /> is <see langword="null" />.</exception>
      <returns>A symmetric 3DES decryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.TripleDESCng.CreateEncryptor">
      <summary>Creates a symmetric 3DES encryptor object using the current key and initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />).</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">.NET 6 and later: CFB64 mode is selected and the key is persisted.</exception>
      <returns>A symmetric 3DES encryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.TripleDESCng.CreateEncryptor(System.Byte[],System.Byte[])">
      <summary>Creates a symmetric 3DES encryptor object with the specified key and initialization vector (IV).</summary>
      <param name="rgbKey">The secret key to use for the 3DES algorithm. The key size must be 192 bits.</param>
      <param name="rgbIV">The initialization vector to use for the 3DES algorithm.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="rgbKey" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="rgbKey" /> is not a valid size for this algorithm.

 -or-

 <paramref name="rgbIV" /> size does not match the block size for this algorithm.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="rgbKey" /> is a known weak key for this algorithm and cannot be used.

 -or-

 <paramref name="rgbIV" /> is <see langword="null" />.</exception>
      <returns>A symmetric 3DES encryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.TripleDESCng.GenerateIV">
      <summary>Generates a random initialization vector (IV) to use for the 3DES algorithm.</summary>
    </member>
    <member name="M:System.Security.Cryptography.TripleDESCng.GenerateKey">
      <summary>Generates a random key to use for the 3DES algorithm.</summary>
    </member>
    <member name="P:System.Security.Cryptography.TripleDESCng.Key">
      <summary>Gets or sets the key for the <see cref="T:System.Security.Cryptography.TripleDESCng" /> algorithm.</summary>
      <returns>The key for the <see cref="T:System.Security.Cryptography.TripleDESCng" /> algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.TripleDESCng.KeySize">
      <summary>Gets or sets the size, in bits, of the secret key used by the <see cref="T:System.Security.Cryptography.TripleDESCng" /> algorithm.</summary>
      <returns>The size, in bits, of the secret key used by the <see cref="T:System.Security.Cryptography.TripleDESCng" /> algorithm.</returns>
    </member>
    <member name="T:System.Security.Cryptography.TripleDESCryptoServiceProvider">
      <summary>Defines a wrapper object to access the cryptographic service provider (CSP) version of the <see cref="T:System.Security.Cryptography.TripleDES" /> algorithm. This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.TripleDESCryptoServiceProvider.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.TripleDESCryptoServiceProvider" /> class.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The <see cref="T:System.Security.Cryptography.TripleDES" /> cryptographic service provider is not available.</exception>
    </member>
    <member name="M:System.Security.Cryptography.TripleDESCryptoServiceProvider.CreateDecryptor">
      <summary>Creates a symmetric decryptor object with the current <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key" /> property and initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />).</summary>
      <returns>A symmetric decryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.TripleDESCryptoServiceProvider.CreateDecryptor(System.Byte[],System.Byte[])">
      <summary>Creates a symmetric <see cref="T:System.Security.Cryptography.TripleDES" /> decryptor object with the specified key (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key" />) and initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />).</summary>
      <param name="rgbKey">The secret key to use for the symmetric algorithm.</param>
      <param name="rgbIV">The initialization vector to use for the symmetric algorithm.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The value of the <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Mode" /> property is <see cref="F:System.Security.Cryptography.CipherMode.OFB" />.  
  
 -or-  
  
 The value of the <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Mode" /> property is <see cref="F:System.Security.Cryptography.CipherMode.CFB" /> and the value of the <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.FeedbackSize" /> property is not 8.  
  
 -or-  
  
 An invalid key size was used.  
  
 -or-  
  
 The algorithm key size was not available.</exception>
      <returns>A symmetric <see cref="T:System.Security.Cryptography.TripleDES" /> decryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.TripleDESCryptoServiceProvider.CreateEncryptor">
      <summary>Creates a symmetric encryptor object with the current <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key" /> property and initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />).</summary>
      <returns>A symmetric encryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.TripleDESCryptoServiceProvider.CreateEncryptor(System.Byte[],System.Byte[])">
      <summary>Creates a symmetric <see cref="T:System.Security.Cryptography.TripleDES" /> encryptor object with the specified key (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key" />) and initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />).</summary>
      <param name="rgbKey">The secret key to use for the symmetric algorithm.</param>
      <param name="rgbIV">The initialization vector to use for the symmetric algorithm.  
  
 <para>Note: The initialization vector must be 8 bytes long. If it is longer than 8 bytes, it is truncated and an exception is not thrown. Before you call <see cref="M:System.Security.Cryptography.TripleDESCryptoServiceProvider.CreateEncryptor(System.Byte[],System.Byte[])" />, check the length of the initialization vector and throw an exception if it is too long.</para></param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The value of the <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Mode" /> property is <see cref="F:System.Security.Cryptography.CipherMode.OFB" />.  
  
 -or-  
  
 The value of the <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Mode" /> property is <see cref="F:System.Security.Cryptography.CipherMode.CFB" /> and the value of the <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.FeedbackSize" /> property is not 8.  
  
 -or-  
  
 An invalid key size was used.  
  
 -or-  
  
 The algorithm key size was not available.</exception>
      <returns>A symmetric <see cref="T:System.Security.Cryptography.TripleDES" /> encryptor object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.TripleDESCryptoServiceProvider.GenerateIV">
      <summary>Generates a random initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />) to use for the algorithm.</summary>
    </member>
    <member name="M:System.Security.Cryptography.TripleDESCryptoServiceProvider.GenerateKey">
      <summary>Generates a random <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key" /> to be used for the algorithm.</summary>
    </member>
    <member name="P:System.Security.Cryptography.TripleDESCryptoServiceProvider.BlockSize">
      <summary>Gets or sets the block size, in bits, of the cryptographic operation.</summary>
      <returns>The block size, in bits.</returns>
    </member>
    <member name="P:System.Security.Cryptography.TripleDESCryptoServiceProvider.FeedbackSize">
      <summary>Gets or sets the feedback size, in bits, of the cryptographic operation for the Cipher Feedback (CFB) and Output Feedback (OFB) cipher modes.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The feedback size is larger than the block size.</exception>
      <returns>The feedback size in bits.</returns>
    </member>
    <member name="P:System.Security.Cryptography.TripleDESCryptoServiceProvider.IV">
      <summary>Gets or sets the initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV" />) for the symmetric algorithm.</summary>
      <exception cref="T:System.ArgumentNullException">An attempt was made to set the initialization vector to <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An attempt was made to set the initialization vector to an invalid size.</exception>
      <returns>The initialization vector.</returns>
    </member>
    <member name="P:System.Security.Cryptography.TripleDESCryptoServiceProvider.Key">
      <summary>Gets or sets the secret key for the <see cref="T:System.Security.Cryptography.TripleDES" /> algorithm.</summary>
      <returns>The secret key for the <see cref="T:System.Security.Cryptography.TripleDES" /> algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.TripleDESCryptoServiceProvider.KeySize">
      <summary>Gets or sets the size, in bits, of the secret key.</summary>
      <returns>The size, in bits, of the key.</returns>
    </member>
    <member name="P:System.Security.Cryptography.TripleDESCryptoServiceProvider.LegalBlockSizes">
      <summary>Gets the block sizes, in bits, that are supported by the symmetric algorithm.</summary>
      <returns>An array that contains the block sizes supported by the algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.TripleDESCryptoServiceProvider.LegalKeySizes">
      <summary>Gets the key sizes, in bits, that are supported by the symmetric algorithm.</summary>
      <returns>An array that contains the key sizes supported by the algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.TripleDESCryptoServiceProvider.Mode">
      <summary>Gets or sets the mode for operation of the symmetric algorithm.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The cipher mode is not one of the <see cref="T:System.Security.Cryptography.CipherMode" /> values.</exception>
      <returns>The mode for operation of the symmetric algorithm. The default is <see cref="F:System.Security.Cryptography.CipherMode.CBC" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.TripleDESCryptoServiceProvider.Padding">
      <summary>Gets or sets the padding mode used in the symmetric algorithm.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The padding mode is not one of the <see cref="T:System.Security.Cryptography.PaddingMode" /> values.</exception>
      <returns>The padding mode used in the symmetric algorithm. The default is <see cref="F:System.Security.Cryptography.PaddingMode.PKCS7" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.CertificateRequest">
      <summary>Represents an abstraction over the PKCS#10 CertificationRequestInfo and the X.509 TbsCertificate.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRequest.#ctor(System.Security.Cryptography.X509Certificates.X500DistinguishedName,System.Security.Cryptography.ECDsa,System.Security.Cryptography.HashAlgorithmName)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.CertificateRequest" /> class using the specified subject name, ECDSA key, and hash algorithm.</summary>
      <param name="subjectName">The parsed representation of the subject name for the certificate or certificate request.</param>
      <param name="key">An ECDSA key whose public key material will be included in the certificate or certificate request. If the <see cref="M:System.Security.Cryptography.X509Certificates.CertificateRequest.CreateSelfSigned(System.DateTimeOffset,System.DateTimeOffset)" /> method is called, this key is used as a private key.</param>
      <param name="hashAlgorithm">The hash algorithm to use when signing the certificate or certificate request.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="subjectName" /> is <see langword="null" />.

 -or-

<paramref name="key" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRequest.#ctor(System.Security.Cryptography.X509Certificates.X500DistinguishedName,System.Security.Cryptography.RSA,System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.CertificateRequest" /> class using the specified subject name, RSA key, and hash algorithm.</summary>
      <param name="subjectName">The parsed representation of the subject name for the certificate or certificate request.</param>
      <param name="key">A RSA key whose public key material will be included in the certificate or certificate request. If the <see cref="M:System.Security.Cryptography.X509Certificates.CertificateRequest.CreateSelfSigned(System.DateTimeOffset,System.DateTimeOffset)" /> method is called, this key is used as a private key.</param>
      <param name="hashAlgorithm">The hash algorithm to use when signing the certificate or certificate request.</param>
      <param name="padding">The RSA signature padding to apply if self-signing or being signed with an <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="subjectName" /> is <see langword="null" />.

 -or-

<paramref name="key" /> is <see langword="null" />.

 -or-

<paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRequest.#ctor(System.Security.Cryptography.X509Certificates.X500DistinguishedName,System.Security.Cryptography.X509Certificates.PublicKey,System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Creates a CertificateRequest for the specified subject name, encoded public key, hash algorithm, and RSA signature padding.</summary>
      <param name="subjectName">The parsed representation of the subject name for the certificate or certificate request.</param>
      <param name="publicKey">The encoded representation of the public key to include in the certificate or certificate request.</param>
      <param name="hashAlgorithm">The hash algorithm to use when signing the certificate or certificate request.</param>
      <param name="rsaSignaturePadding">The RSA signature padding to use when signing this request with an RSA certificate.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRequest.#ctor(System.Security.Cryptography.X509Certificates.X500DistinguishedName,System.Security.Cryptography.X509Certificates.PublicKey,System.Security.Cryptography.HashAlgorithmName)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.CertificateRequest" /> class using the specified subject name, encoded public key, and hash algorithm.</summary>
      <param name="subjectName">The parsed representation of the subject name for the certificate or certificate request.</param>
      <param name="publicKey">The encoded representation of the public key to include in the certificate or certificate request.</param>
      <param name="hashAlgorithm">The hash algorithm to use when signing the certificate or certificate request.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="subjectName" /> is <see langword="null" />.

 -or-

<paramref name="publicKey" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRequest.#ctor(System.String,System.Security.Cryptography.ECDsa,System.Security.Cryptography.HashAlgorithmName)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.CertificateRequest" /> class using the specified subject name, ECDSA key, and hash algorithm.</summary>
      <param name="subjectName">The string representation of the subject name for the certificate or certificate request.</param>
      <param name="key">An ECDSA key whose public key material will be included in the certificate or certificate request. If the <see cref="M:System.Security.Cryptography.X509Certificates.CertificateRequest.CreateSelfSigned(System.DateTimeOffset,System.DateTimeOffset)" /> method is called, this key is used as a private key.</param>
      <param name="hashAlgorithm">The hash algorithm to use when signing the certificate or certificate request.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="subjectName" /> is <see langword="null" />.

 -or-

<paramref name="key" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRequest.#ctor(System.String,System.Security.Cryptography.RSA,System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.CertificateRequest" /> class using the specified subject name, RSA key, and hash algorithm.</summary>
      <param name="subjectName">The string representation of the subject name for the certificate or certificate request.</param>
      <param name="key">A RSA key whose public key material will be included in the certificate or certificate request. If the <see cref="M:System.Security.Cryptography.X509Certificates.CertificateRequest.CreateSelfSigned(System.DateTimeOffset,System.DateTimeOffset)" /> method is called, this key is used as a private key.</param>
      <param name="hashAlgorithm">The hash algorithm to use when signing the certificate or certificate request.</param>
      <param name="padding">The RSA signature padding to apply if self-signing or being signed with an <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="subjectName" /> is <see langword="null" />.

 -or-

<paramref name="key" /> is <see langword="null" />.

 -or-

<paramref name="padding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRequest.Create(System.Security.Cryptography.X509Certificates.X500DistinguishedName,System.Security.Cryptography.X509Certificates.X509SignatureGenerator,System.DateTimeOffset,System.DateTimeOffset,System.Byte[])">
      <summary>Signs the current certificate request to create a chain-signed or self-signed certificate.</summary>
      <param name="issuerName">The <see cref="T:System.Security.Cryptography.X509Certificates.X500DistinguishedName" /> for the issuer.</param>
      <param name="generator">An <see cref="T:System.Security.Cryptography.X509Certificates.X509SignatureGenerator" /> object representing the issuing certificate authority.</param>
      <param name="notBefore">The oldest date and time when this certificate is considered valid. Typically <see cref="P:System.DateTimeOffset.UtcNow" />, plus or minus a few seconds.</param>
      <param name="notAfter">The date and time when this certificate is no longer considered valid.</param>
      <param name="serialNumber">The serial number to use for the new certificate. This value should be unique per issuer. The value is interpreted as an unsigned integer of arbitrary size in big-endian byte ordering. RFC 3280 recommends confining it to 20 bytes or less.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="issuerCertificate" /> is <see langword="null" />.

 -or-

<paramref name="generator" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="notAfter" /> represents a date and time that happens earlier than <paramref name="notBefore" />.

 -or-

<paramref name="serialNumber" /> is zero length or <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurs during the signing operation.</exception>
      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> object with the specified values. The returned object won't assert <see cref="P:System.Security.Cryptography.X509Certificates.X509Certificate2.HasPrivateKey" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRequest.Create(System.Security.Cryptography.X509Certificates.X500DistinguishedName,System.Security.Cryptography.X509Certificates.X509SignatureGenerator,System.DateTimeOffset,System.DateTimeOffset,System.ReadOnlySpan{System.Byte})">
      <summary>Sign the current certificate request to create a chain-signed or self-signed certificate.</summary>
      <param name="issuerName">The distinguished name of the issuer.</param>
      <param name="generator">The issuing certificate authority.</param>
      <param name="notBefore">The oldest date and time where this certificate is considered valid.
              Typically <see cref="P:System.DateTimeOffset.UtcNow" />, plus or minus a few seconds.</param>
      <param name="notAfter">The date and time where this certificate is no longer considered valid.</param>
      <param name="serialNumber">The serial number to use for the new certificate. This value should be unique per issuer.
              The value is interpreted as an unsigned (big) integer in big endian byte ordering.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="issuerName" /> or <paramref name="generator" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="notAfter" /> represents a date and time before <paramref name="notBefore" />.

-or

<paramref name="serialNumber" /> has length 0.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurred during the signing operation.</exception>
      <returns>A certificate with the specified values. The returned object will not assert <see cref="P:System.Security.Cryptography.X509Certificates.X509Certificate2.HasPrivateKey" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRequest.Create(System.Security.Cryptography.X509Certificates.X509Certificate2,System.DateTimeOffset,System.DateTimeOffset,System.Byte[])">
      <summary>Creates a certificate using the established subject, key, and optional extensions using the specified certificate as the issuer.</summary>
      <param name="issuerCertificate">An <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> instance representing the issuing Certificate Authority (CA).</param>
      <param name="notBefore">The oldest date and time when this certificate is considered valid. Typically <see cref="P:System.DateTimeOffset.UtcNow" />, plus or minus a few seconds.</param>
      <param name="notAfter">The date and time when this certificate is no longer considered valid.</param>
      <param name="serialNumber">The serial number to use for the new certificate. This value should be unique per issuer. The value is interpreted as an unsigned integer of arbitrary size in big-endian byte ordering. RFC 3280 recommends confining it to 20 bytes or less.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="issuerCertificate" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">The <paramref name="issuerCertificate" /> doesn't contain a private key.

 -or-

The type of signing key represented by <paramref name="issuerCertificate" /> couldn't be determined.

 -or-

<paramref name="notAfter" /> represents a date and time that happens earlier than <paramref name="notBefore" />.

 -or-

<paramref name="serialNumber" /> is zero length or <see langword="null" />.

 -or-

<paramref name="issuerCertificate" /> has a different key algorithm than the requested certificate.

-or-

The <see cref="P:System.Security.Cryptography.X509Certificates.X509Certificate2.HasPrivateKey" /> value for <paramref name="issuerCertificate" /> is <see langword="false" />.</exception>
      <exception cref="T:System.InvalidOperationException">
        <paramref name="issuerCertificate" /> is an RSA certificate and the current object was created using a constructor that doesn't accept a <paramref name="padding" /> parameter.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">The <see cref="P:System.Security.Cryptography.X509Certificates.CertificateRequest.HashAlgorithm" /> property value is not supported.</exception>
      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> object with the specified values. The returned object won't assert <see cref="P:System.Security.Cryptography.X509Certificates.X509Certificate2.HasPrivateKey" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRequest.Create(System.Security.Cryptography.X509Certificates.X509Certificate2,System.DateTimeOffset,System.DateTimeOffset,System.ReadOnlySpan{System.Byte})">
      <summary>Create a certificate using the established subject, key, and optional extensions using the provided certificate as the issuer.</summary>
      <param name="issuerCertificate">An X509Certificate2 instance representing the issuing Certificate Authority (CA).</param>
      <param name="notBefore">The oldest date and time where this certificate is considered valid.
              Typically <see cref="P:System.DateTimeOffset.UtcNow" />, plus or minus a few seconds.</param>
      <param name="notAfter">The date and time where this certificate is no longer considered valid.</param>
      <param name="serialNumber">The serial number to use for the new certificate. This value should be unique per issuer.
              The value is interpreted as an unsigned (big) integer in big endian byte ordering.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="issuerCertificate" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">The <see cref="P:System.Security.Cryptography.X509Certificates.X509Certificate2.HasPrivateKey" /> value for <paramref name="issuerCertificate" /> is <see langword="false" />.</exception>
      <exception cref="T:System.ArgumentException">The type of signing key represented by <paramref name="issuerCertificate" /> could not be determined.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="notAfter" /> represents a date and time before <paramref name="notBefore" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="serialNumber" /> has length 0.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="issuerCertificate" /> has a different key algorithm than the requested certificate.</exception>
      <exception cref="T:System.InvalidOperationException">
        <paramref name="issuerCertificate" /> is an RSA certificate and this object was created via a constructor that doesn't accept an <see cref="T:System.Security.Cryptography.RSASignaturePadding" /> value.</exception>
      <returns>A certificate with the specified values. The returned object will not assert <see cref="P:System.Security.Cryptography.X509Certificates.X509Certificate2.HasPrivateKey" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRequest.CreateSelfSigned(System.DateTimeOffset,System.DateTimeOffset)">
      <summary>Creates a self-signed certificate using the established subject, key, and optional extensions.</summary>
      <param name="notBefore">The oldest date and time when this certificate is considered valid. Typically <see cref="P:System.DateTimeOffset.UtcNow" />, plus or minus a few seconds.</param>
      <param name="notAfter">The date and time when this certificate is no longer considered valid.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="notAfter" /> represents a date and time that happens earlier than <paramref name="notBefore" />.</exception>
      <exception cref="T:System.InvalidOperationException">The current object was created using a constructor that doesn't accept a signing key.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error occurs during the certificate creation process.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">The <see cref="P:System.Security.Cryptography.X509Certificates.CertificateRequest.HashAlgorithm" /> property value is not supported.</exception>
      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> object with the specified values. The returned object will assert <see cref="P:System.Security.Cryptography.X509Certificates.X509Certificate2.HasPrivateKey" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRequest.CreateSigningRequest">
      <summary>Creates an ASN.1 DER-encoded PKCS#10 CertificationRequest value representing the state of the current object.</summary>
      <exception cref="T:System.InvalidOperationException">The current object was created using a constructor that doesn't accept a signing key.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">The <see cref="P:System.Security.Cryptography.X509Certificates.CertificateRequest.HashAlgorithm" /> property value is not supported.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">A cryptographic error occurs while creating the signing request.</exception>
      <returns>A DER-encoded certificate signing request.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRequest.CreateSigningRequest(System.Security.Cryptography.X509Certificates.X509SignatureGenerator)">
      <summary>Creates an ASN.1 DER-encoded PKCS#10 CertificationRequest representing the current state of the current object using the provided signature generator.</summary>
      <param name="signatureGenerator">The signature generator with which to sign the request.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="signatureGenerator" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">A cryptographic error occurs while creating the signing request.</exception>
      <exception cref="T:System.InvalidOperationException">
        <see cref="P:System.Security.Cryptography.X509Certificates.CertificateRequest.OtherRequestAttributes" /> contains a <see langword="null" /> value.

-or-

<see cref="P:System.Security.Cryptography.X509Certificates.CertificateRequest.OtherRequestAttributes" /> contains an entry with a <see langword="null" /><see cref="P:System.Security.Cryptography.AsnEncodedData.Oid" /> value.

-or-

<see cref="P:System.Security.Cryptography.X509Certificates.CertificateRequest.OtherRequestAttributes" /> contains an entry representing the PKCS#9
                Extension Request Attribute (1.2.840.113549.1.9.14).

-or-

<see cref="P:System.Security.Cryptography.X509Certificates.CertificateRequest.CertificateExtensions" /> contains a <see langword="null" /> value.

-or-

<see cref="P:System.Security.Cryptography.X509Certificates.CertificateRequest.CertificateExtensions" /> contains an entry with a <see langword="null" /><see cref="P:System.Security.Cryptography.AsnEncodedData.Oid" /> value.

-or-

This object was created with a constructor that did not accept a signing key.</exception>
      <returns>A DER-encoded certificate signing request.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRequest.CreateSigningRequestPem">
      <summary>Creates a PEM-encoded PKCS#10 CertificationRequest representing the current state of this object using the provided signature generator.</summary>
      <exception cref="T:System.InvalidOperationException">
        <see cref="P:System.Security.Cryptography.X509Certificates.CertificateRequest.OtherRequestAttributes" /> contains a <see langword="null" /> value.

-or-

<see cref="P:System.Security.Cryptography.X509Certificates.CertificateRequest.OtherRequestAttributes" /> contains an entry with a <see langword="null" /><see cref="P:System.Security.Cryptography.AsnEncodedData.Oid" /> value.

-or-

<see cref="P:System.Security.Cryptography.X509Certificates.CertificateRequest.OtherRequestAttributes" /> contains an entry representing the PKCS#9
                Extension Request Attribute (1.2.840.113549.1.9.14).

-or-

<see cref="P:System.Security.Cryptography.X509Certificates.CertificateRequest.CertificateExtensions" /> contains a <see langword="null" /> value.

-or-

<see cref="P:System.Security.Cryptography.X509Certificates.CertificateRequest.CertificateExtensions" /> contains an entry with a <see langword="null" /><see cref="P:System.Security.Cryptography.AsnEncodedData.Oid" /> value.

-or-

This object was created with a constructor that did not accept a signing key.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">A cryptographic error occurs while creating the signing request.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRequest.CreateSigningRequestPem(System.Security.Cryptography.X509Certificates.X509SignatureGenerator)">
      <summary>Creates a PEM-encoded PKCS#10 CertificationRequest representing the current state of this object using the provided signature generator.</summary>
      <param name="signatureGenerator">A <see cref="T:System.Security.Cryptography.X509Certificates.X509SignatureGenerator" /> with which to sign the request.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="signatureGenerator" /> is <see langword="null" />.</exception>
      <exception cref="T:System.InvalidOperationException">
        <see cref="P:System.Security.Cryptography.X509Certificates.CertificateRequest.OtherRequestAttributes" /> contains a <see langword="null" /> value.

-or-

<see cref="P:System.Security.Cryptography.X509Certificates.CertificateRequest.OtherRequestAttributes" /> contains an entry with a <see langword="null" /><see cref="P:System.Security.Cryptography.AsnEncodedData.Oid" /> value.

-or-

<see cref="P:System.Security.Cryptography.X509Certificates.CertificateRequest.OtherRequestAttributes" /> contains an entry representing the PKCS#9
                Extension Request Attribute (1.2.840.113549.1.9.14).

-or-

<see cref="P:System.Security.Cryptography.X509Certificates.CertificateRequest.CertificateExtensions" /> contains a <see langword="null" /> value.

-or-

<see cref="P:System.Security.Cryptography.X509Certificates.CertificateRequest.CertificateExtensions" /> contains an entry with a <see langword="null" /><see cref="P:System.Security.Cryptography.AsnEncodedData.Oid" /> value.

-or-

This object was created with a constructor which did not accept a signing key.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">A cryptographic error occurs while creating the signing request.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRequest.LoadSigningRequest(System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.X509Certificates.CertificateRequestLoadOptions,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Loads a binary PKCS#10 signing request as a new CertificateRequest instance.</summary>
      <param name="pkcs10">The binary PKCS#10 signing request to load.</param>
      <param name="signerHashAlgorithm">The hash algorithm to use when creating a certificate or new signing request.</param>
      <param name="options">A bitwise combination of the enumeration values that specifies how to load the request.</param>
      <param name="signerSignaturePadding">The RSA Signature Padding to use when creating a certificate from this request. For RSA signing certificates using the default signature generator, this parameter is required; otherwise, this parameter is ignored.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="signerHashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="pkcs10" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="options" /> specifies a value that is not supported.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="pkcs10" /> is not a valid PKCS#10 signing request.

-or-

<paramref name="pkcs10" /> contains a signature that could not be verified using its embedded public key.</exception>
      <returns>A CertificateRequest instance which contains the information from the signing request.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRequest.LoadSigningRequest(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Int32@,System.Security.Cryptography.X509Certificates.CertificateRequestLoadOptions,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Loads a binary PKCS#10 signing request as a new CertificateRequest instance.</summary>
      <param name="pkcs10">The binary PKCS#10 signing request to load.</param>
      <param name="signerHashAlgorithm">The hash algorithm to use when creating a certificate or new signing request.</param>
      <param name="bytesConsumed">When this method returns, contains a value that indicates the number of bytes read from <paramref name="source" />. This parameter is treated as uninitialized.</param>
      <param name="options">A bitwise combination of the enumeration values that specifies how to load the request.</param>
      <param name="signerSignaturePadding">The RSA Signature Padding to use when creating a certificate from this request. For RSA signing certificates using the default signature generator, this parameter is required; otherwise, this parameter is ignored.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="signerHashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="pkcs10" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="options" /> specifies a value that is not supported.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="pkcs10" /> is not a valid PKCS#10 signing request.

-or-

<paramref name="pkcs10" /> contains a signature that could not be verified using its embedded public key.</exception>
      <returns>A CertificateRequest instance which contains the information from the signing request.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRequest.LoadSigningRequestPem(System.ReadOnlySpan{System.Char},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.X509Certificates.CertificateRequestLoadOptions,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Loads the first PEM-encoded PKCS#10 signing request from <paramref name="pkcs10Pem" /> as a new CertificateRequest instance.</summary>
      <param name="pkcs10Pem">The PEM-encoded PKCS#10 signing request to load.</param>
      <param name="signerHashAlgorithm">The hash algorithm to use when creating a certificate or new signing request.</param>
      <param name="options">A bitwise combination of the enumeration values that specifies how to load the request.</param>
      <param name="signerSignaturePadding">The RSA Signature Padding to use when creating a certificate from this request. For RSA signing certificates using the default signature generator, this parameter is required; otherwise, this parameter is ignored.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="signerHashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="pkcs10" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="options" /> specifies a value that is not supported.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="pkcs10Pem" /> does not contain a PKCS#10 signing request.
                
-or-

<paramref name="pkcs10Pem" /> is not a valid PKCS#10 signing request.

-or-

<paramref name="pkcs10Pem" /> contains a signature that could not be verified using its embedded public key.</exception>
      <returns>A CertificateRequest instance which contains the information from the signing request.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRequest.LoadSigningRequestPem(System.String,System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.X509Certificates.CertificateRequestLoadOptions,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Loads the first PEM-encoded PKCS#10 signing request from <paramref name="pkcs10Pem" /> as a new CertificateRequest instance.</summary>
      <param name="pkcs10Pem">The PEM-encoded PKCS#10 signing request to load.</param>
      <param name="signerHashAlgorithm">The hash algorithm to use when creating a certificate or new signing request.</param>
      <param name="options">A bitwise combination of the enumeration values that specifies how to load the request.</param>
      <param name="signerSignaturePadding">The RSA Signature Padding to use when creating a certificate from this request. For RSA signing certificates using the default signature generator, this parameter is required; otherwise, this parameter is ignored.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="signerHashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="pkcs10" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="options" /> specifies a value that is not supported.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="pkcs10Pem" /> does not contain a PKCS#10 signing request.
                
-or-

<paramref name="pkcs10Pem" /> is not a valid PKCS#10 signing request.

-or-

<paramref name="pkcs10Pem" /> contains a signature that could not be verified using its embedded public key.</exception>
      <returns>A CertificateRequest instance which contains the information from the signing request.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.CertificateRequest.CertificateExtensions">
      <summary>Gets the X.509 Certificate Extensions collection, which is a mutable collection, to include in the certificate or certificate request.</summary>
      <returns>The X.509 Certificate Extensions collection to include in the certificate or certificate request.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.CertificateRequest.HashAlgorithm">
      <summary>Gets the hash algorithm to use when signing the certificate or certificate request.</summary>
      <returns>The hash algorithm to use when signing the certificate or certificate request.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.CertificateRequest.OtherRequestAttributes">
      <summary>Gets a collection representing attributes, other than the extension request attribute, to include in a certificate request.</summary>
      <returns>A collection representing attributes, other than the extension request attribute, to include in a certificate request</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.CertificateRequest.PublicKey">
      <summary>Gets a representation of the public key for the certificate or certificate request.</summary>
      <returns>The representation of the public key for the certificate or certificate request.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.CertificateRequest.SubjectName">
      <summary>Gets the X.500 Distinguished Name to use as the Subject in a created certificate or certificate request.</summary>
      <returns>The X.500 Distinguished Name to use as the Subject in a created certificate or certificate request.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.CertificateRequestLoadOptions">
      <summary>Specifies options when loading a <see cref="T:System.Security.Cryptography.X509Certificates.CertificateRequest" />.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.CertificateRequestLoadOptions.Default">
      <summary>Load the certificate request with default options.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.CertificateRequestLoadOptions.SkipSignatureValidation">
      <summary>When loading the request, do not check if the embedded public key validates the request signature.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.CertificateRequestLoadOptions.UnsafeLoadCertificateExtensions">
      <summary>When loading the request, populate the <see cref="P:System.Security.Cryptography.X509Certificates.CertificateRequest.CertificateExtensions" /> collection based on the PKCS#9 Extension Request attribute (1.2.840.113549.1.9.14).</summary>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.CertificateRevocationListBuilder">
      <summary>Facilitates building a Certificate Revocation List (CRL).</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRevocationListBuilder.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.CertificateRevocationListBuilder" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRevocationListBuilder.AddEntry(System.Byte[],System.Nullable{System.DateTimeOffset},System.Nullable{System.Security.Cryptography.X509Certificates.X509RevocationReason})">
      <summary>Adds the specified serial number to the revocation list with an optional revocation time and an optional revocation reason.</summary>
      <param name="serialNumber">The serial number of the certificate to revoke.</param>
      <param name="revocationTime">The time the certificate was revoked, or <see langword="null" /> to use the current system time.
              The default is <see langword="null" />.</param>
      <param name="reason">The reason why the certificate was revoked, or <see langword="null" /> to not include a reason.
              The default is <see langword="null" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="serialNumber" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="reason" /> is not a supported revocation reason.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="serialNumber" /> is empty.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRevocationListBuilder.AddEntry(System.ReadOnlySpan{System.Byte},System.Nullable{System.DateTimeOffset},System.Nullable{System.Security.Cryptography.X509Certificates.X509RevocationReason})">
      <summary>Adds the specified serial number to the revocation list with an optional revocation time and an optional revocation reason.</summary>
      <param name="serialNumber">The serial number of the certificate to revoke.</param>
      <param name="revocationTime">The time the certificate was revoked, or <see langword="null" /> to use the current system time.
              The default is <see langword="null" />.</param>
      <param name="reason">The reason why the certificate was revoked, or <see langword="null" /> to not include a reason.
              The default is <see langword="null" />.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="reason" /> is not a supported revocation reason.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="serialNumber" /> is empty.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRevocationListBuilder.AddEntry(System.Security.Cryptography.X509Certificates.X509Certificate2,System.Nullable{System.DateTimeOffset},System.Nullable{System.Security.Cryptography.X509Certificates.X509RevocationReason})">
      <summary>Adds the specified certificate to the revocation list with an optional revocation time and an optional revocation reason.</summary>
      <param name="certificate">The certificate to revoke.</param>
      <param name="revocationTime">The time the certificate was revoked, or <see langword="null" /> to use the current system time.
              The default is <see langword="null" />.</param>
      <param name="reason">The reason why the certificate was revoked, or <see langword="null" /> to not include a reason.
              The default is <see langword="null" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="certificate" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="reason" /> is not a supported revocation reason.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRevocationListBuilder.Build(System.Security.Cryptography.X509Certificates.X500DistinguishedName,System.Security.Cryptography.X509Certificates.X509SignatureGenerator,System.Numerics.BigInteger,System.DateTimeOffset,System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension,System.Nullable{System.DateTimeOffset})">
      <summary>Builds a Certificate Revocation List (CRL).</summary>
      <param name="issuerName">The subject name of the certificate for the Certificate Authority (CA) that is issuing this CRL.</param>
      <param name="generator">A signature generator to produce the CA signature for this CRL.</param>
      <param name="crlNumber">The sequence number for this CRL.  Per IETF RFC 5280, this value must always increase from one CRL to the next for a given CA.</param>
      <param name="nextUpdate">The latest possible time before the CA will publish a newer CRL, generally treated as an expiration date for this CRL.</param>
      <param name="hashAlgorithm">The hash algorithm to use when signing the CRL.</param>
      <param name="authorityKeyIdentifier">The Authority Key Identifier to use in this CRL, identifying the CA certificate.</param>
      <param name="thisUpdate">An optional value that specifies when this CRL was created, or <see langword="null" /> to use the current system time.
              The default is <see langword="null" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="issuerName" />, <paramref name="generator" />, or
                <paramref name="authorityKeyIdentifier" /> is <see langword="null" />.

-or-

<paramref name="hashAlgorithm" /> has <see langword="null" /> as the value of
                <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="nextUpdate" /> is older than <paramref name="thisUpdate" />.

-or-

<paramref name="hashAlgorithm" /> has the empty string as the value of
                <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="crlNumber" /> is negative.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">an error occurred during signing.</exception>
      <returns>An array that contains the bytes of the signed CRL.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRevocationListBuilder.Build(System.Security.Cryptography.X509Certificates.X509Certificate2,System.Numerics.BigInteger,System.DateTimeOffset,System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding,System.Nullable{System.DateTimeOffset})">
      <summary>Builds a Certificate Revocation List (CRL) signed by the specified certificate.</summary>
      <param name="issuerCertificate">The certificate representing the Certificate Authority (CA) that is creating this Certificate Revocation List.</param>
      <param name="crlNumber">The sequence number for this CRL.  Per IETF RFC 5280, this value must always increase from one CRL to the next for a given CA.</param>
      <param name="nextUpdate">The latest possible time before the CA will publish a newer CRL, generally treated as an expiration date for this CRL.</param>
      <param name="hashAlgorithm">The hash algorithm to use when signing the CRL.</param>
      <param name="rsaSignaturePadding">For Certificate Authorities with RSA keys, this parameter is required and specifies the RSA signature padding mode to use when signing the CRL.
              For all other algorithms, this parameter is ignored.
              The default is <see langword="null" />.</param>
      <param name="thisUpdate">An optional value that specifies when this CRL was created, or <see langword="null" /> to use the current system time.
              The default is <see langword="null" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="issuerCertificate" /> is <see langword="null" />.

-or-

<paramref name="hashAlgorithm" /> has <see langword="null" /> as the value of
                <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="issuerCertificate" /> does not have an associated private key.

-or-

<paramref name="issuerCertificate" /> uses a public key algorithm that is unknown,
                or not supported by this implementation.

-or-

<paramref name="issuerCertificate" /> does not have a Basic Constraints extension.

-or-

<paramref name="issuerCertificate" /> has a Basic Constraints extension that indicates
                it is not a valid Certificate Authority certificate.

-or-

<paramref name="issuerCertificate" /> has a Key Usage extension that lacks the
                <see cref="F:System.Security.Cryptography.X509Certificates.X509KeyUsageFlags.CrlSign" /> usage.

-or-

<paramref name="issuerCertificate" /> has an RSA private key but
                <paramref name="rsaSignaturePadding" /> is <see langword="null" />.

-or-

<paramref name="issuerCertificate" /> has an unknown key algorithm.

-or-

<paramref name="nextUpdate" /> is older than <paramref name="thisUpdate" />.

-or-

<paramref name="hashAlgorithm" /> has the empty string as the value of
                <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" />.

-or-

<paramref name="rsaSignaturePadding" /> was not recognized.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="crlNumber" /> is negative.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">an error occurred during signing.</exception>
      <returns>An array that contains the bytes of the signed CRL.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRevocationListBuilder.BuildCrlDistributionPointExtension(System.Collections.Generic.IEnumerable{System.String},System.Boolean)">
      <summary>Builds a CRL Distribution Point Extension with the specified retrieval URIs.</summary>
      <param name="uris">The URIs to include as distribution points for the relevant Certificate Revocation List (CRL).</param>
      <param name="critical">
        <see langword="true" /> to mark the extension as critical; otherwise, <see langword="false" />.
              The default is <see langword="false" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="uris" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="uris" /> contains a <see langword="null" /> value.

-or-

<paramref name="uris" /> is empty.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">One of the values in <paramref name="uris" />
              contains characters outside of the International Alphabet 5 (IA5) character space
              (which is equivalent to 7-bit US-ASCII).</exception>
      <returns>An object suitable for use as a CRL Distribution Point Extension.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRevocationListBuilder.Load(System.Byte[],System.Numerics.BigInteger@)">
      <summary>Decodes the specified Certificate Revocation List (CRL) and produces a <see cref="T:System.Security.Cryptography.X509Certificates.CertificateRevocationListBuilder" /> with all of the revocation entries from the decoded CRL.</summary>
      <param name="currentCrl">The DER-encoded CRL to decode.</param>
      <param name="currentCrlNumber">When this method returns, contains the CRL sequence number from the decoded CRL.
              This parameter is treated as uninitialized.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="currentCrl" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="currentCrl" /> could not be decoded.

-or-

<paramref name="currentCrl" /> decoded successfully, but decoding did not
                need all of the bytes provided in the array.</exception>
      <returns>A new builder that has the same revocation entries as the decoded CRL.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRevocationListBuilder.Load(System.ReadOnlySpan{System.Byte},System.Numerics.BigInteger@,System.Int32@)">
      <summary>Decodes the specified Certificate Revocation List (CRL) and produces a <see cref="T:System.Security.Cryptography.X509Certificates.CertificateRevocationListBuilder" /> with all of the revocation entries from the decoded CRL.</summary>
      <param name="currentCrl">The DER-encoded CRL to decode.</param>
      <param name="currentCrlNumber">When this method returns, contains the CRL sequence number from the decoded CRL.
              This parameter is treated as uninitialized.</param>
      <param name="bytesConsumed">When this method returns, contains the number of bytes that were read from <paramref name="currentCrl" /> while decoding.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="currentCrl" /> could not be decoded.</exception>
      <returns>A new builder that has the same revocation entries as the decoded CRL.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRevocationListBuilder.LoadPem(System.ReadOnlySpan{System.Char},System.Numerics.BigInteger@)">
      <summary>Decodes the specified Certificate Revocation List (CRL) and produces a <see cref="T:System.Security.Cryptography.X509Certificates.CertificateRevocationListBuilder" /> with all of the revocation entries from the decoded CRL.</summary>
      <param name="currentCrl">The PEM-encoded CRL to decode.</param>
      <param name="currentCrlNumber">When this method returns, contains the CRL sequence number from the decoded CRL.
              This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="currentCrl" /> did not contain a well-formed PEM payload with
                an <c>X509 CRL</c> label.

-or-

<paramref name="currentCrl" /> could not be decoded.</exception>
      <returns>A new builder that has the same revocation entries as the decoded CRL.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRevocationListBuilder.LoadPem(System.String,System.Numerics.BigInteger@)">
      <summary>Decodes the specified Certificate Revocation List (CRL) and produces a <see cref="T:System.Security.Cryptography.X509Certificates.CertificateRevocationListBuilder" /> with all of the revocation entries from the decoded CRL.</summary>
      <param name="currentCrl">The PEM-encoded CRL to decode.</param>
      <param name="currentCrlNumber">When this method returns, contains the CRL sequence number from the decoded CRL.
              This parameter is treated as uninitialized.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="currentCrl" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="currentCrl" /> did not contain a well-formed PEM payload with
                an <c>X509 CRL</c> label.

-or-

<paramref name="currentCrl" /> could not be decoded.</exception>
      <returns>A new builder that has the same revocation entries as the decoded CRL.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRevocationListBuilder.RemoveEntry(System.Byte[])">
      <summary>Removes the specified serial number from the revocation list.</summary>
      <param name="serialNumber">The serial number to remove.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="serialNumber" /> is <see langword="null" />.</exception>
      <returns>
        <see langword="true" /> if the serial number was found in the list and was removed; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.CertificateRevocationListBuilder.RemoveEntry(System.ReadOnlySpan{System.Byte})">
      <summary>Removes the specified serial number from the revocation list.</summary>
      <param name="serialNumber">The serial number to remove.</param>
      <returns>
        <see langword="true" /> if the serial number was found in the list and was removed; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.DSACertificateExtensions">
      <summary>Provides extension methods for retrieving <see cref="T:System.Security.Cryptography.DSA" /> implementations for the public and private keys of an <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.DSACertificateExtensions.CopyWithPrivateKey(System.Security.Cryptography.X509Certificates.X509Certificate2,System.Security.Cryptography.DSA)">
      <summary>Combines a private key with the public key of a <see cref="T:System.Security.Cryptography.DSA" /> certificate to generate a new DSA certificate.</summary>
      <param name="certificate">The DSA certificate.</param>
      <param name="privateKey">The private DSA key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="certificate" /> or <paramref name="privateKey" /> is <see langword="null" />.</exception>
      <exception cref="T:System.InvalidOperationException">The certificate already has an associated private key.</exception>
      <exception cref="T:System.ArgumentException">The certificate doesn't have a public key.  
  
 -or-  
  
 The specified private key doesn't match the public key for the specified certificate.</exception>
      <returns>A new DSA certificate with the <see cref="P:System.Security.Cryptography.X509Certificates.X509Certificate2.HasPrivateKey" /> property set to <see langword="true" />. The input DSA certificate object isn't modified.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.DSACertificateExtensions.GetDSAPrivateKey(System.Security.Cryptography.X509Certificates.X509Certificate2)">
      <summary>Gets the <see cref="T:System.Security.Cryptography.DSA" /> private key from the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" />.</summary>
      <param name="certificate">The certificate.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="certificate" /> is <see langword="null" />.</exception>
      <returns>The private key, or <see langword="null" /> if the certificate does not have a DSA private key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.DSACertificateExtensions.GetDSAPublicKey(System.Security.Cryptography.X509Certificates.X509Certificate2)">
      <summary>Gets the <see cref="T:System.Security.Cryptography.DSA" /> public key from the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" />.</summary>
      <param name="certificate">The certificate.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="certificate" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">Windows reports an error. See the <see cref="P:System.Exception.Message" /> property for more information.</exception>
      <returns>The public key, or <see langword="null" /> if the certificate does not have a DSA public key.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.ECDsaCertificateExtensions">
      <summary>Provides extension methods for retrieving <see cref="T:System.Security.Cryptography.ECDsa" /> implementations for the     public and private keys of a <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> certificate.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.ECDsaCertificateExtensions.CopyWithPrivateKey(System.Security.Cryptography.X509Certificates.X509Certificate2,System.Security.Cryptography.ECDsa)">
      <summary>Combines a private key with the public key of an <see cref="T:System.Security.Cryptography.ECDsa" /> certificate to generate a new ECDSA certificate.</summary>
      <param name="certificate">The ECDSA certificate.</param>
      <param name="privateKey">The private ECDSA key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="certificate" /> or <paramref name="privateKey" /> is <see langword="null" />.</exception>
      <exception cref="T:System.InvalidOperationException">The certificate already has an associated private key.</exception>
      <exception cref="T:System.ArgumentException">The certificate doesn't have a public key.  
  
 -or-  
  
 The specified private key doesn't match the public key for the specified certificate.</exception>
      <returns>A new ECDSA certificate with the <see cref="P:System.Security.Cryptography.X509Certificates.X509Certificate2.HasPrivateKey" /> property set to <see langword="true" />. The input ECDSA certificate object isn't modified.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.ECDsaCertificateExtensions.GetECDsaPrivateKey(System.Security.Cryptography.X509Certificates.X509Certificate2)">
      <summary>Gets the <see cref="T:System.Security.Cryptography.ECDsa" /> private key from the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> certificate.</summary>
      <param name="certificate">The certificate.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="certificate" /> is <see langword="null" />.</exception>
      <returns>The private key, or <see langword="null" /> if the certificate does not have an ECDsa private key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.ECDsaCertificateExtensions.GetECDsaPublicKey(System.Security.Cryptography.X509Certificates.X509Certificate2)">
      <summary>Gets the <see cref="T:System.Security.Cryptography.ECDsa" /> public key from the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> certificate.</summary>
      <param name="certificate">The certificate.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="certificate" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The handle is invalid.</exception>
      <returns>The public key, or <see langword="null" /> if the certificate does not have an ECDsa public key.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.OpenFlags">
      <summary>Specifies the way to open the X.509 certificate store.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.OpenFlags.IncludeArchived">
      <summary>Open the X.509 certificate store and include archived certificates.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.OpenFlags.MaxAllowed">
      <summary>Open the X.509 certificate store for the highest access allowed.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.OpenFlags.OpenExistingOnly">
      <summary>Opens only existing stores; if no store exists, the <see cref="M:System.Security.Cryptography.X509Certificates.X509Store.Open(System.Security.Cryptography.X509Certificates.OpenFlags)" /> method will not create a new store.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.OpenFlags.ReadOnly">
      <summary>Open the X.509 certificate store for reading only.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.OpenFlags.ReadWrite">
      <summary>Open the X.509 certificate store for both reading and writing.</summary>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits">
      <summary>
              Represents a set of constraints to apply when loading PKCS#12/PFX contents.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.#ctor">
      <summary>
              Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits" /> class
              with default values.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.#ctor(System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits)">
      <summary>
              Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits" /> class
              by copying the values from another instance.</summary>
      <param name="copyFrom">The instance to copy the values from.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="copyFrom" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.MakeReadOnly">
      <summary>
              Makes the <see cref="T:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits" /> instance read-only.</summary>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.DangerousNoLimits">
      <summary>
              Gets a shared reference to loader limits that indicate no
              filtering or restrictions of the contents should be applied
              before sending them to the underlying system loader.</summary>
      <returns>
              A shared reference to loader limits that indicate no
              filtering or restrictions of the contents should be applied
              before sending them to the underlying system loader.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.Defaults">
      <summary>
              Gets a shared reference to the default loader limits.</summary>
      <returns>A shared reference to the default loader limits.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.IgnoreEncryptedAuthSafes">
      <summary>
              Gets or sets a value indicating whether to ignore encrypted authentication safes.</summary>
      <returns>
        <see langword="true" /> to skip over encrypted PFX AuthSafe values;
              <see langword="false" /> to decrypt encrypted PFX AuthSafe values to process their
              contents.
              The default is <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.IgnorePrivateKeys">
      <summary>
              Gets or sets a value indicating whether to ignore private keys.</summary>
      <returns>
        <see langword="true" /> to skip loading private keys;
              <see langword="false" /> to load both certificates and private keys.
              The default is <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.IndividualKdfIterationLimit">
      <summary>
              Gets or sets the iteration limit for the individual Key Derivation Function (KDF) calculations.</summary>
      <returns>
              The iteration limit for the individual Key Derivation Function (KDF) calculations,
              or <see langword="null" /> for no limit.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.IsReadOnly">
      <summary>
              Gets a value indicating whether the instance is read-only.</summary>
      <returns>
        <see langword="true" /> if the instance is read-only; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.MacIterationLimit">
      <summary>
              Gets or sets the iteration limit for the MAC calculation.</summary>
      <returns>The iteration limit for the MAC calculation, or <see langword="null" /> for no limit.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.MaxCertificates">
      <summary>
              Gets or sets the maximum number of certificates permitted.</summary>
      <returns>
              The maximum number of certificates permitted, or <see langword="null" /> for no maximum.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.MaxKeys">
      <summary>
              Gets or sets the maximum number of keys permitted.</summary>
      <returns>
              The maximum number of keys permitted, or <see langword="null" /> for no maximum.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.PreserveCertificateAlias">
      <summary>
              Gets or sets a value indicating whether to preserve the certificate alias,
              also known as the friendly name.</summary>
      <returns>
        <see langword="true" /> to respect the alias for a
              certificate; <see langword="false" /> to ignore the alias
              information.
              The default is <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.PreserveKeyName">
      <summary>
              Gets or sets a value indicating whether to preserve the key name.</summary>
      <returns>
        <see langword="true" /> to respect the key name identifier for a
              private key; <see langword="false" /> to ignore the key name
              information and use a randomly generated identifier.
              The default is <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.PreserveStorageProvider">
      <summary>
              Gets or sets a value indicating whether to preserve the storage provider.</summary>
      <returns>
        <see langword="true" /> to respect the storage provider identifier for a
              private key; <see langword="false" /> to ignore the storage provider
              information and use the system defaults.
              The default is <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.PreserveUnknownAttributes">
      <summary>
              Gets or sets a value indicating whether to preserve unknown attributes.</summary>
      <returns>
        <see langword="true" /> to keep any attributes of a certificate or
              private key that are not described by another property on this type intact
              when invoking the system PKCS#12/PFX loader;
              <see langword="false" /> to remove the unknown attributes prior to invoking
              the system loader.
              The default is <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.TotalKdfIterationLimit">
      <summary>
              Gets or sets the total iteration limit for the Key Derivation Function (KDF) calculations.</summary>
      <returns>
              The total iteration limit for the Key Derivation Function (KDF) calculations,
              or <see langword="null" /> for no limit.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.Pkcs12LoadLimitExceededException">
      <summary>
              The exception that is thrown when importing a PKCS#12/PFX has failed
              due to violating a specified limit.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.Pkcs12LoadLimitExceededException.#ctor(System.String)">
      <summary>
              Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.Pkcs12LoadLimitExceededException" />
              class.</summary>
      <param name="propertyName">
              The name of the property representing the limit that was exceeded.</param>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.PublicKey">
      <summary>Represents a certificate's public key information. This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.PublicKey.#ctor(System.Security.Cryptography.AsymmetricAlgorithm)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.PublicKey" /> class using SubjectPublicKeyInfo from an <see cref="T:System.Security.Cryptography.AsymmetricAlgorithm" />.</summary>
      <param name="key">An asymmetric algorithm to obtain the SubjectPublicKeyInfo from.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The SubjectPublicKeyInfo could not be decoded. The <see cref="M:System.Security.Cryptography.AsymmetricAlgorithm.ExportSubjectPublicKeyInfo" /> must return a valid ASN.1-DER encoded X.509 SubjectPublicKeyInfo.</exception>
      <exception cref="T:System.NotImplementedException">
        <see cref="M:System.Security.Cryptography.AsymmetricAlgorithm.ExportSubjectPublicKeyInfo" /> has not been overridden in a derived class.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.PublicKey.#ctor(System.Security.Cryptography.Oid,System.Security.Cryptography.AsnEncodedData,System.Security.Cryptography.AsnEncodedData)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.PublicKey" /> class using an object identifier (OID) object of the public key, an ASN.1-encoded representation of the public key parameters, and an ASN.1-encoded representation of the public key value.</summary>
      <param name="oid">An object identifier (OID) object that represents the public key.</param>
      <param name="parameters">An ASN.1-encoded representation of the public key parameters.</param>
      <param name="keyValue">An ASN.1-encoded representation of the public key value.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.PublicKey.CreateFromSubjectPublicKeyInfo(System.ReadOnlySpan{System.Byte},System.Int32@)">
      <summary>Creates a new instance of <see cref="T:System.Security.Cryptography.X509Certificates.PublicKey" /> from a X.509 SubjectPublicKeyInfo.</summary>
      <param name="source">The bytes of an X.509 SubjectPublicKeyInfo structure in the ASN.1-DER encoding.</param>
      <param name="bytesRead">When this method returns, contains a value that indicates the number of bytes read from <paramref name="source" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The SubjectPublicKeyInfo could not be decoded.</exception>
      <returns>A public key representing the SubjectPublicKeyInfo.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.PublicKey.ExportSubjectPublicKeyInfo">
      <summary>Exports the current key in the X.509 SubjectPublicKeyInfo format.</summary>
      <returns>A byte array containing the X.509 SubjectPublicKeyInfo representation of this key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.PublicKey.GetDSAPublicKey">
      <summary>Gets the <see cref="T:System.Security.Cryptography.DSA" /> public key, or <see langword="null" /> if the key is not an DSA key.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key contents are corrupt or could not be read successfully.</exception>
      <returns>The public key, or <see langword="null" /> if the key is not an DSA key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.PublicKey.GetECDiffieHellmanPublicKey">
      <summary>Gets the <see cref="T:System.Security.Cryptography.ECDiffieHellman" /> public key, or <see langword="null" /> if the key is not an ECDiffieHellman key.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key contents are corrupt or could not be read successfully.</exception>
      <returns>The public key, or <see langword="null" /> if the key is not an ECDiffieHellman key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.PublicKey.GetECDsaPublicKey">
      <summary>Gets the <see cref="T:System.Security.Cryptography.ECDsa" /> public key, or <see langword="null" /> if the key is not an ECDsa key.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key contents are corrupt or could not be read successfully.</exception>
      <returns>The public key, or <see langword="null" /> if the key is not an ECDsa key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.PublicKey.GetRSAPublicKey">
      <summary>Gets the <see cref="T:System.Security.Cryptography.RSA" /> public key, or <see langword="null" /> if the key is not an RSA key.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key contents are corrupt or could not be read successfully.</exception>
      <returns>The public key, or <see langword="null" /> if the key is not an RSA key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.PublicKey.TryExportSubjectPublicKeyInfo(System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to export the current key in the X.509 SubjectPublicKeyInfo format into a provided buffer.</summary>
      <param name="destination">The byte span to receive the X.509 SubjectPublicKeyInfo data.</param>
      <param name="bytesWritten">When this method returns, contains a value that indicates the number of bytes written to <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is big enough to receive the output; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.PublicKey.EncodedKeyValue">
      <summary>Gets the ASN.1-encoded representation of the public key value.</summary>
      <returns>The ASN.1-encoded representation of the public key value.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.PublicKey.EncodedParameters">
      <summary>Gets the ASN.1-encoded representation of the public key parameters.</summary>
      <returns>The ASN.1-encoded representation of the public key parameters.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.PublicKey.Key">
      <summary>Gets an <see cref="T:System.Security.Cryptography.RSA" /> derived object or a <see cref="T:System.Security.Cryptography.DSA" /> derived object representing the public key.</summary>
      <exception cref="T:System.NotSupportedException">The key algorithm is not supported.</exception>
      <returns>An <see cref="T:System.Security.Cryptography.AsymmetricAlgorithm" /> object representing the public key.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.PublicKey.Oid">
      <summary>Gets an object identifier (OID) object of the public key.</summary>
      <returns>An object identifier (OID) object of the public key.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.RSACertificateExtensions">
      <summary>Provides extension methods for retrieving <see cref="T:System.Security.Cryptography.RSA" /> implementations for the public and private keys of an <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.RSACertificateExtensions.CopyWithPrivateKey(System.Security.Cryptography.X509Certificates.X509Certificate2,System.Security.Cryptography.RSA)">
      <summary>Combines a private key with the public key of an <see cref="T:System.Security.Cryptography.RSA" /> certificate to generate a new RSA certificate.</summary>
      <param name="certificate">The RSA certificate.</param>
      <param name="privateKey">The private RSA key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="certificate" /> or <paramref name="privateKey" /> is <see langword="null" />.</exception>
      <exception cref="T:System.InvalidOperationException">The certificate already has an associated private key.</exception>
      <exception cref="T:System.ArgumentException">The certificate doesn't have a public key.  
  
 -or-  
  
 The specified private key doesn't match the public key for the specified certificate.</exception>
      <returns>A new RSA certificate with the <see cref="P:System.Security.Cryptography.X509Certificates.X509Certificate2.HasPrivateKey" /> property set to <see langword="true" />. The input RSA certificate object isn't modified.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.RSACertificateExtensions.GetRSAPrivateKey(System.Security.Cryptography.X509Certificates.X509Certificate2)">
      <summary>Gets the <see cref="T:System.Security.Cryptography.RSA" /> private key from the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" />.</summary>
      <param name="certificate">The certificate.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="certificate" /> is <see langword="null" />.</exception>
      <returns>The private key, or <see langword="null" /> if the certificate does not have an RSA private key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.RSACertificateExtensions.GetRSAPublicKey(System.Security.Cryptography.X509Certificates.X509Certificate2)">
      <summary>Gets the <see cref="T:System.Security.Cryptography.RSA" /> public key from the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" />.</summary>
      <param name="certificate">The certificate.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="certificate" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">Windows reports an error. See the <see cref="P:System.Exception.Message" /> property for more information.</exception>
      <returns>The public key, or <see langword="null" /> if the certificate does not have an RSA public key.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.StoreLocation">
      <summary>Specifies the location of the X.509 certificate store.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.StoreLocation.CurrentUser">
      <summary>The X.509 certificate store used by the current user.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.StoreLocation.LocalMachine">
      <summary>The X.509 certificate store assigned to the local machine.</summary>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.StoreName">
      <summary>Specifies the name of the X.509 certificate store to open.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.StoreName.AddressBook">
      <summary>The X.509 certificate store for other users.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.StoreName.AuthRoot">
      <summary>The X.509 certificate store for third-party certificate authorities (CAs).</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.StoreName.CertificateAuthority">
      <summary>The X.509 certificate store for intermediate certificate authorities (CAs).</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.StoreName.Disallowed">
      <summary>The X.509 certificate store for revoked certificates.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.StoreName.My">
      <summary>The X.509 certificate store for personal certificates.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.StoreName.Root">
      <summary>The X.509 certificate store for trusted root certificate authorities (CAs).</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.StoreName.TrustedPeople">
      <summary>The X.509 certificate store for directly trusted people and resources.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.StoreName.TrustedPublisher">
      <summary>The X.509 certificate store for directly trusted publishers.</summary>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.SubjectAlternativeNameBuilder">
      <summary>This class facilitates building a subject alternative name extension for an X.509 certificate.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.SubjectAlternativeNameBuilder.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.SubjectAlternativeNameBuilder" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.SubjectAlternativeNameBuilder.AddDnsName(System.String)">
      <summary>Adds a DNS Name to the subject alternative name extension.</summary>
      <param name="dnsName">The DNS name to be added.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="dnsName" /> is either <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.SubjectAlternativeNameBuilder.AddEmailAddress(System.String)">
      <summary>Adds an email address to the subject alternative name extension.</summary>
      <param name="emailAddress">The email address to be added.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="emailAddress" /> is either <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.SubjectAlternativeNameBuilder.AddIpAddress(System.Net.IPAddress)">
      <summary>Adds an IP address to the subject alternative name extension.</summary>
      <param name="ipAddress">The IP address to be added.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="ipAddress" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.SubjectAlternativeNameBuilder.AddUri(System.Uri)">
      <summary>Adds a Uniform Resource Identifier (URI) to the subject alternative name extension.</summary>
      <param name="uri">The URI to be added.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="uri" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.SubjectAlternativeNameBuilder.AddUserPrincipalName(System.String)">
      <summary>Adds a User Principal Name (UPN) to the subject alternative name extension.</summary>
      <param name="upn">The UPN to be added.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="upn" /> is either <see langword="null" /> or <see cref="F:System.String.Empty" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.SubjectAlternativeNameBuilder.Build(System.Boolean)">
      <summary>Returns an <see cref="T:System.Security.Cryptography.X509Certificates.X509Extension" /> object that represents the encoded subject alternative name extension.</summary>
      <param name="critical">
        <see langword="true" /> to mark the extension as <see cref="P:System.Security.Cryptography.X509Certificates.X509Extension.Critical" />; otherwise, <see langword="false" />. The default value is <see langword="false" />.</param>
      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X509Extension" /> object that represents the encoded subject alternative name extension.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X500DistinguishedName">
      <summary>Represents the distinguished name of an X509 certificate. This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X500DistinguishedName.#ctor(System.Byte[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X500DistinguishedName" /> class using information from the specified byte array.</summary>
      <param name="encodedDistinguishedName">A byte array that contains distinguished name information.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X500DistinguishedName.#ctor(System.ReadOnlySpan{System.Byte})">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X500DistinguishedName" /> class using information from the provided data.</summary>
      <param name="encodedDistinguishedName">The encoded distinguished name.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X500DistinguishedName.#ctor(System.Security.Cryptography.AsnEncodedData)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X500DistinguishedName" /> class using the specified <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object.</summary>
      <param name="encodedDistinguishedName">An <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object that represents the distinguished name.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X500DistinguishedName.#ctor(System.Security.Cryptography.X509Certificates.X500DistinguishedName)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X500DistinguishedName" /> class using the specified <see cref="T:System.Security.Cryptography.X509Certificates.X500DistinguishedName" /> object.</summary>
      <param name="distinguishedName">An <see cref="T:System.Security.Cryptography.X509Certificates.X500DistinguishedName" /> object.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X500DistinguishedName.#ctor(System.String,System.Security.Cryptography.X509Certificates.X500DistinguishedNameFlags)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X500DistinguishedName" /> class using the specified string and <see cref="T:System.Security.Cryptography.X509Certificates.X500DistinguishedNameFlags" /> flag.</summary>
      <param name="distinguishedName">A string that represents the distinguished name.</param>
      <param name="flag">A bitwise combination of the enumeration values that specify the characteristics of the distinguished name.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X500DistinguishedName.#ctor(System.String)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X500DistinguishedName" /> class using information from the specified string.</summary>
      <param name="distinguishedName">A string that represents the distinguished name.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X500DistinguishedName.Decode(System.Security.Cryptography.X509Certificates.X500DistinguishedNameFlags)">
      <summary>Decodes a distinguished name using the characteristics specified by the <paramref name="flag" /> parameter.</summary>
      <param name="flag">A bitwise combination of the enumeration values that specify the characteristics of the distinguished name.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The certificate has an invalid name.</exception>
      <returns>The decoded distinguished name.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X500DistinguishedName.EnumerateRelativeDistinguishedNames(System.Boolean)">
      <summary>Iterates over the RelativeDistinguishedName values within this distinguished name value.</summary>
      <param name="reversed">
        <see langword="true" /> to enumerate in the order used by <see cref="P:System.Security.Cryptography.X509Certificates.X500DistinguishedName.Name" />; <see langword="false" /> to enumerate in the declared order.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The X.500 Name is not a proper DER-encoded X.500 Name value.</exception>
      <returns>An enumerator that iterates over the relative distinguished names in the X.500 Distinguished Name.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X500DistinguishedName.Format(System.Boolean)">
      <summary>Returns a formatted version of an X500 distinguished name for printing or for output to a text window or to a console.</summary>
      <param name="multiLine">
        <see langword="true" /> if the return string should contain carriage returns; otherwise, <see langword="false" />.</param>
      <returns>A formatted string that represents the X500 distinguished name.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X500DistinguishedName.Name">
      <summary>Gets the comma-delimited distinguished name from an X500 certificate.</summary>
      <returns>The comma-delimited distinguished name of the X509 certificate.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X500DistinguishedNameBuilder">
      <summary>Facilitates building a distinguished name for an X.509 certificate.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X500DistinguishedNameBuilder.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X500DistinguishedNameBuilder" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X500DistinguishedNameBuilder.Add(System.Security.Cryptography.Oid,System.String,System.Nullable{System.Formats.Asn1.UniversalTagNumber})">
      <summary>Adds a <c>Relative Distinguished Name</c> attribute identified by an OID.</summary>
      <param name="oid">The OID of the attribute.</param>
      <param name="value">The value of the attribute.</param>
      <param name="stringEncodingType">The encoding type to use when encoding the <paramref name="value" /> in to the attribute.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="oid" /> or <paramref name="value" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="oid" /> does not contain a valid OID.

-or-

<paramref name="stringEncodingType" /> is not a type for character strings.

-or-

<paramref name="value" /> is not encodable as defined by <paramref name="stringEncodingType" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X500DistinguishedNameBuilder.Add(System.String,System.String,System.Nullable{System.Formats.Asn1.UniversalTagNumber})">
      <summary>Adds a <c>Relative Distinguished Name</c> attribute identified by an OID.</summary>
      <param name="oidValue">The OID of the attribute.</param>
      <param name="value">The value of the attribute.</param>
      <param name="stringEncodingType">The encoding type to use when encoding the <paramref name="value" /> in to the attribute.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="oidValue" /> or <paramref name="value" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="oidValue" /> is an empty string or not a valid OID.

-or-

<paramref name="stringEncodingType" /> is not a type for character strings.

-or-

<paramref name="value" /> is not encodable as defined by <paramref name="stringEncodingType" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X500DistinguishedNameBuilder.AddCommonName(System.String)">
      <summary>Adds a common name attribute.</summary>
      <param name="commonName">The common name to add.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="commonName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="commonName" /> is empty.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X500DistinguishedNameBuilder.AddCountryOrRegion(System.String)">
      <summary>Adds a country or region attribute.</summary>
      <param name="twoLetterCode">The two letter code of the country or region.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="twoLetterCode" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="twoLetterCode" /> is not exactly two characters, or contains
            characters that are not A through Z.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X500DistinguishedNameBuilder.AddDomainComponent(System.String)">
      <summary>Adds a domain component attribute.</summary>
      <param name="domainComponent">The domain component to add.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="domainComponent" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="domainComponent" /> is empty.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X500DistinguishedNameBuilder.AddEmailAddress(System.String)">
      <summary>Adds an email address attribute.</summary>
      <param name="emailAddress">The email address to add.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="emailAddress" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="emailAddress" /> is empty or exceeds 255 characters.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X500DistinguishedNameBuilder.AddLocalityName(System.String)">
      <summary>Adds a locality name attribute.</summary>
      <param name="localityName">The locality name to add.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="localityName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="localityName" /> is empty.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X500DistinguishedNameBuilder.AddOrganizationalUnitName(System.String)">
      <summary>Adds an organizational unit name attribute.</summary>
      <param name="organizationalUnitName">The organizational unit name to add.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="organizationalUnitName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="organizationalUnitName" /> is empty.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X500DistinguishedNameBuilder.AddOrganizationName(System.String)">
      <summary>Adds an organization name attribute.</summary>
      <param name="organizationName">The organization name to add.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="organizationName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="organizationName" /> is empty.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X500DistinguishedNameBuilder.AddStateOrProvinceName(System.String)">
      <summary>Adds a state or province name attribute.</summary>
      <param name="stateOrProvinceName">The state or province name to add.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="stateOrProvinceName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="stateOrProvinceName" /> is empty.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X500DistinguishedNameBuilder.Build">
      <summary>Builds an <see cref="T:System.Security.Cryptography.X509Certificates.X500DistinguishedName" /> that represents the encoded attributes.</summary>
      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X500DistinguishedName" /> that represents the encoded attributes.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X500DistinguishedNameFlags">
      <summary>Specifies characteristics of the X.500 distinguished name.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X500DistinguishedNameFlags.DoNotUsePlusSign">
      <summary>The distinguished name does not use the plus sign.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X500DistinguishedNameFlags.DoNotUseQuotes">
      <summary>The distinguished name does not use quotation marks.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X500DistinguishedNameFlags.ForceUTF8Encoding">
      <summary>Forces the distinguished name to encode specific X.500 keys as UTF-8 strings rather than printable Unicode strings. For more information and the list of X.500 keys affected, see the X500NameFlags enumeration.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X500DistinguishedNameFlags.None">
      <summary>The distinguished name has no special characteristics.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X500DistinguishedNameFlags.Reversed">
      <summary>The distinguished name is reversed.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X500DistinguishedNameFlags.UseCommas">
      <summary>The distinguished name uses commas.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X500DistinguishedNameFlags.UseNewLines">
      <summary>The distinguished name uses the new line character.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X500DistinguishedNameFlags.UseSemicolons">
      <summary>The distinguished name uses semicolons.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X500DistinguishedNameFlags.UseT61Encoding">
      <summary>The distinguished name uses T61 encoding.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X500DistinguishedNameFlags.UseUTF8Encoding">
      <summary>The distinguished name uses UTF8 encoding instead of Unicode character encoding.</summary>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X500RelativeDistinguishedName">
      <summary>Represents a Relative Distinguished Name component of an X.500 Distinguished Name.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X500RelativeDistinguishedName.GetSingleElementType">
      <summary>Gets the object identifier (OID) identifying the single attribute value for this Relative Distinguished Name (RDN), when the RDN only contains one attribute.</summary>
      <exception cref="T:System.InvalidOperationException">The Relative Distinguished Name has multiple attributes (<see cref="P:System.Security.Cryptography.X509Certificates.X500RelativeDistinguishedName.HasMultipleElements" />
              is <see langword="true" />).</exception>
      <returns>The object identifier (OID) identifying the single attribute value for this Relative Distinguished Name (RDN).</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X500RelativeDistinguishedName.GetSingleElementValue">
      <summary>Gets the textual representation of the value for the Relative Distinguished Name (RDN), when the RDN only contains one attribute.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The attribute is identified as a textual value, but the value did not successfully decode.</exception>
      <exception cref="T:System.InvalidOperationException">The Relative Distinguished Name has multiple attributes (<see cref="P:System.Security.Cryptography.X509Certificates.X500RelativeDistinguishedName.HasMultipleElements" />
              is <see langword="true" />).</exception>
      <returns>The decoded text representing the attribute value.
              If the attribute value is an <c>OCTET STRING</c>, or other non-text data type, this method returns <see langword="null" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X500RelativeDistinguishedName.HasMultipleElements">
      <summary>Gets a value that indicates whether this Relative Distinguished Name is composed of multiple attributes or only a single attribute.</summary>
      <returns>
        <see langword="true" /> if the Relative Distinguished Name is composed of multiple attributes; <see langword="false" /> if it is composed of only a single attribute.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X500RelativeDistinguishedName.RawData">
      <summary>Gets the encoded representation of this Relative Distinguished Name.</summary>
      <returns>The encoded representation of this Relative Distinguished Name.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509AuthorityInformationAccessExtension">
      <summary>Represents the Authority Information Access X.509 Extension (1.3.6.1.5.5.7.1.1).</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509AuthorityInformationAccessExtension.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509AuthorityInformationAccessExtension" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509AuthorityInformationAccessExtension.#ctor(System.Byte[],System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509AuthorityInformationAccessExtension" /> class from an encoded representation of the extension and an optional critical marker.</summary>
      <param name="rawData">The encoded data used to create the extension.</param>
      <param name="critical">
        <see langword="true" /> if the extension is critical; otherwise, <see langword="false" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="rawData" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="rawData" /> did not decode as an Authority Information Access extension.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509AuthorityInformationAccessExtension.#ctor(System.Collections.Generic.IEnumerable{System.String},System.Collections.Generic.IEnumerable{System.String},System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509AuthorityInformationAccessExtension" /> class from a collection of OCSP and CAIssuer values.</summary>
      <param name="ocspUris">A collection of OCSP URI values to embed in the extension.</param>
      <param name="caIssuersUris">A collection of CAIssuers URI values to embed in the extension.</param>
      <param name="critical">
        <see langword="true" /> if the extension is critical; otherwise, <see langword="false" />.</param>
      <exception cref="T:System.ArgumentException">Both <paramref name="ocspUris" /> and <paramref name="caIssuersUris" /> are
              either <see langword="null" /> or empty.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">One of the values in <paramref name="ocspUris" /> or <paramref name="caIssuersUris" />
              contains characters outside of the International Alphabet 5 (IA5) character space
              (which is equivalent to 7-bit US-ASCII).</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509AuthorityInformationAccessExtension.#ctor(System.ReadOnlySpan{System.Byte},System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509AuthorityInformationAccessExtension" /> class from an encoded representation of the extension and an optional critical marker.</summary>
      <param name="rawData">The encoded data used to create the extension.</param>
      <param name="critical">
        <see langword="true" /> if the extension is critical; otherwise, <see langword="false" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="rawData" /> did not decode as an Authority Information Access extension.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509AuthorityInformationAccessExtension.CopyFrom(System.Security.Cryptography.AsnEncodedData)">
      <summary>Copies the extension properties of the specified <xref data-throw-if-not-resolved="true" uid="System.Security.Cryptography.AsnEncodedData"></xref> object.</summary>
      <param name="asnEncodedData">The <xref data-throw-if-not-resolved="true" uid="System.Security.Cryptography.AsnEncodedData"></xref> to be copied.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509AuthorityInformationAccessExtension.EnumerateCAIssuersUris">
      <summary>Enumerates the AccessDescription values whose AccessMethod is CAIssuers (1.3.6.1.5.5.7.48.2) and content data type is URI.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The contents of the extension could not be decoded successfully.</exception>
      <returns>The URIs corresponding to the locations for the issuing Certificate Authority certificate.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509AuthorityInformationAccessExtension.EnumerateOcspUris">
      <summary>Enumerates the AccessDescription values whose AccessMethod is OCSP (1.3.6.1.5.5.7.48.1) and content data type is URI.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The contents of the extension could not be decoded successfully.</exception>
      <returns>The URIs corresponding to the locations for the issuing Certificate Authority certificate.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509AuthorityInformationAccessExtension.EnumerateUris(System.Security.Cryptography.Oid)">
      <summary>Enumerates the AccessDescription values described in this extension, filtering the results to include only items using the specified access method and having a content data type of URI.</summary>
      <param name="accessMethodOid">The object identifier representing the access method for filtering.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="accessMethodOid" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">The <see cref="P:System.Security.Cryptography.Oid.Value" /> property of the <paramref name="accessMethodOid" /> parameter is
              <see langword="null" /> or the empty string.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The contents of the extension could not be decoded successfully.</exception>
      <returns>The URI-typed access location values that correspond to the requested access method.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509AuthorityInformationAccessExtension.EnumerateUris(System.String)">
      <summary>Enumerates the AccessDescription values described in this extension, filtering the results to include only items using the specified access method and having a content data type of URI.</summary>
      <param name="accessMethodOid">The dotted-decimal form of the access method for filtering.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="accessMethodOid" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The contents of the extension could not be decoded successfully.</exception>
      <returns>The URI-typed access location values that correspond to the requested access method.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension">
      <summary>Represents the Authority Key Identifier X.509 Extension (2.5.29.35).</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension.#ctor(System.Byte[],System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension" /> class from an encoded representation of the extension and an optional critical marker.</summary>
      <param name="rawData">The encoded data used to create the extension.</param>
      <param name="critical">
        <see langword="true" /> if the extension is critical; otherwise, <see langword="false" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="rawData" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="rawData" /> did not decode as an Authority Key Identifier extension.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension.#ctor(System.ReadOnlySpan{System.Byte},System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension" /> class from an encoded representation of the extension and an optional critical marker.</summary>
      <param name="rawData">The encoded data used to create the extension.</param>
      <param name="critical">
        <see langword="true" /> if the extension is critical; otherwise, <see langword="false" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="rawData" /> did not decode as an Authority Key Identifier extension.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension.CopyFrom(System.Security.Cryptography.AsnEncodedData)">
      <summary>Copies the extension properties of the specified <xref data-throw-if-not-resolved="true" uid="System.Security.Cryptography.AsnEncodedData"></xref> object.</summary>
      <param name="asnEncodedData">The <xref data-throw-if-not-resolved="true" uid="System.Security.Cryptography.AsnEncodedData"></xref> to be copied.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension.Create(System.Byte[],System.Security.Cryptography.X509Certificates.X500DistinguishedName,System.Byte[])">
      <summary>Creates an <see cref="T:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension" /> that specifies the provided key identifier, issuer name and serial number.</summary>
      <param name="keyIdentifier">The subject key identifier value from the Certificate Authority (CA) certificate that will sign this extension.</param>
      <param name="issuerName">The issuer name value from the Certificate Authority (CA) certificate that will sign this extension.</param>
      <param name="serialNumber">The serial number value from the Certificate Authority (CA) certificate that will sign this extension.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="keyIdentifier" />, <paramref name="issuerName" /> or
              <paramref name="serialNumber" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="serialNumber" /> is invalid because the leading 9 bits are either
              all zero or all one.</exception>
      <returns>The configured extension.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension.Create(System.ReadOnlySpan{System.Byte},System.Security.Cryptography.X509Certificates.X500DistinguishedName,System.ReadOnlySpan{System.Byte})">
      <summary>Creates an <see cref="T:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension" /> that specifies the provided key identifier, issuer name and serial number.</summary>
      <param name="keyIdentifier">The subject key identifier value from the Certificate Authority (CA) certificate that will sign this extension.</param>
      <param name="issuerName">The issuer name value from the Certificate Authority (CA) certificate that will sign this extension.</param>
      <param name="serialNumber">The serial number value from the Certificate Authority (CA) certificate that will sign this extension.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="issuerName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="serialNumber" /> is invalid because the leading 9 bits are either
              all zero or all one.</exception>
      <returns>The configured extension.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension.CreateFromCertificate(System.Security.Cryptography.X509Certificates.X509Certificate2,System.Boolean,System.Boolean)">
      <summary>Creates an <see cref="T:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension" /> based on values from the provided certificate.</summary>
      <param name="certificate">The Certificate Authority (CA) certificate that will sign this extension.</param>
      <param name="includeKeyIdentifier">
        <see langword="true" /> to include the Subject Key Identifier value from the certificate as the key identifier value in this extension; otherwise, <see langword="false" />.</param>
      <param name="includeIssuerAndSerial">
        <see langword="true" /> to include the certificate's issuer name and serial number in this extension; otherwise, <see langword="false" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="certificate" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="includeKeyIdentifier" /> is <see langword="true" />, but
              <paramref name="certificate" /> does not contain a Subject Key Identifier extension.</exception>
      <returns>The configured extension.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension.CreateFromIssuerNameAndSerialNumber(System.Security.Cryptography.X509Certificates.X500DistinguishedName,System.Byte[])">
      <summary>Creates an <see cref="T:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension" /> that specifies the provided issuer name and serial number.</summary>
      <param name="issuerName">The issuer name value from the Certificate Authority (CA) certificate that will sign this extension.</param>
      <param name="serialNumber">The serial number value from the Certificate Authority (CA) certificate that will sign this extension.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="issuerName" /> or <paramref name="serialNumber" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="serialNumber" /> is invalid because the leading 9 bits are either
              all zero or all one.</exception>
      <returns>The configured extension.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension.CreateFromIssuerNameAndSerialNumber(System.Security.Cryptography.X509Certificates.X500DistinguishedName,System.ReadOnlySpan{System.Byte})">
      <summary>Creates an <see cref="T:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension" /> that specifies the provided issuer name and serial number.</summary>
      <param name="issuerName">The issuer name value from the Certificate Authority (CA) certificate that will sign this extension.</param>
      <param name="serialNumber">The serial number value from the Certificate Authority (CA) certificate that will sign this extension.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="issuerName" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="serialNumber" /> is invalid because the leading 9 bits are either
              all zero or all one.</exception>
      <returns>The configured extension.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension.CreateFromSubjectKeyIdentifier(System.Byte[])">
      <summary>Creates an <see cref="T:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension" /> that specifies the provided key identifier value.</summary>
      <param name="subjectKeyIdentifier">The subject key identifier value from the Certificate Authority (CA) certificate that will sign this extension.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="subjectKeyIdentifier" /> is <see langword="null" />.</exception>
      <returns>The configured extension.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension.CreateFromSubjectKeyIdentifier(System.ReadOnlySpan{System.Byte})">
      <summary>Creates an <see cref="T:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension" /> that specifies the provided key identifier value.</summary>
      <param name="subjectKeyIdentifier">The subject key identifier value from the Certificate Authority (CA) certificate that will sign this extension.</param>
      <returns>The configured extension.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension.CreateFromSubjectKeyIdentifier(System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierExtension)">
      <summary>Creates an <see cref="T:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension" /> that specifies the key identifier value from a subject key identifier extension.</summary>
      <param name="subjectKeyIdentifier">The subject key identifier extension from the Certificate Authority (CA) certificate that will sign this extension.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="subjectKeyIdentifier" /> is <see langword="null" />.</exception>
      <returns>The configured extension.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension.KeyIdentifier">
      <summary>Gets the subject key identifier value from this certificate's issuing Certificate Authority (CA), when specified.</summary>
      <returns>The subject key identifier from this certificate's issuing Certificate Authority (CA).</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension.NamedIssuer">
      <summary>Gets the <see cref="P:System.Security.Cryptography.X509Certificates.X509Certificate2.IssuerName" /> value from this certificate's issuing Certificate Authority (CA), when available.</summary>
      <returns>The <see cref="P:System.Security.Cryptography.X509Certificates.X509Certificate2.IssuerName" /> value from this certificate's issuing Certificate Authority (CA).</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension.RawIssuer">
      <summary>Gets the encoded representation of the <c>authorityCertIssuer</c> field from the extension, or <see langword="null" /> when the extension does not contain an authority certificate issuer field.</summary>
      <returns>The encoded <c>authorityCertIssuer</c> value.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509AuthorityKeyIdentifierExtension.SerialNumber">
      <summary>Gets the serial number of this certificate's issuing Certificate Authority (CA).</summary>
      <returns>The serial number from this certificate's issuing Certificate Authority (CA).</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509BasicConstraintsExtension">
      <summary>Defines the constraints set on a certificate. This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509BasicConstraintsExtension.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509BasicConstraintsExtension" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509BasicConstraintsExtension.#ctor(System.Boolean,System.Boolean,System.Int32,System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509BasicConstraintsExtension" /> class. Parameters specify a value that indicates whether a certificate is a certificate authority (CA) certificate, a value that indicates whether the certificate has a restriction on the number of path levels it allows, the number of levels allowed in a certificate's path, and a value that indicates whether the extension is critical.</summary>
      <param name="certificateAuthority">
        <see langword="true" /> if the certificate is a certificate authority (CA) certificate; otherwise, <see langword="false" />.</param>
      <param name="hasPathLengthConstraint">
        <see langword="true" /> if the certificate has a restriction on the number of path levels it allows; otherwise, <see langword="false" />.</param>
      <param name="pathLengthConstraint">The number of levels allowed in a certificate's path.</param>
      <param name="critical">
        <see langword="true" /> if the extension is critical; otherwise, <see langword="false" />.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509BasicConstraintsExtension.#ctor(System.Security.Cryptography.AsnEncodedData,System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509BasicConstraintsExtension" /> class using an <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object and a value that identifies whether the extension is critical.</summary>
      <param name="encodedBasicConstraints">The encoded data to use to create the extension.</param>
      <param name="critical">
        <see langword="true" /> if the extension is critical; otherwise, <see langword="false" />.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509BasicConstraintsExtension.CopyFrom(System.Security.Cryptography.AsnEncodedData)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509BasicConstraintsExtension" /> class using an <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object.</summary>
      <param name="asnEncodedData">The encoded data to use to create the extension.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509BasicConstraintsExtension.CreateForCertificateAuthority(System.Nullable{System.Int32})">
      <summary>Creates an instance of <see cref="T:System.Security.Cryptography.X509Certificates.X509BasicConstraintsExtension" /> appropriate for a certificate authority, optionally including a path length constraint value.</summary>
      <param name="pathLengthConstraint">The longest valid length of a certificate chain between the certificate containing this extension and an end-entity certificate.
              The default is <see langword="null" />, an unconstrained length.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="pathLengthConstraint" /> is a non-<see langword="null" /> value less than zero.</exception>
      <returns>The configured basic constraints extension.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509BasicConstraintsExtension.CreateForEndEntity(System.Boolean)">
      <summary>Creates an instance of <see cref="T:System.Security.Cryptography.X509Certificates.X509BasicConstraintsExtension" /> appropriate for an end-entity certificate, optionally marking the extension as critical.</summary>
      <param name="critical">
        <see langword="true" /> to mark the extension as critical; <see langword="false" /> otherwise.
              The default is <see langword="false" />.</param>
      <returns>The configured basic constraints extension.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509BasicConstraintsExtension.CertificateAuthority">
      <summary>Gets a value indicating whether a certificate is a certificate authority (CA) certificate.</summary>
      <returns>
        <see langword="true" /> if the certificate is a certificate authority (CA) certificate, otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509BasicConstraintsExtension.HasPathLengthConstraint">
      <summary>Gets a value indicating whether a certificate has a restriction on the number of path levels it allows.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The extension cannot be decoded.</exception>
      <returns>
        <see langword="true" /> if the certificate has a restriction on the number of path levels it allows, otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509BasicConstraintsExtension.PathLengthConstraint">
      <summary>Gets the number of levels allowed in a certificate's path.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The extension cannot be decoded.</exception>
      <returns>An integer indicating the number of levels allowed in a certificate's path.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509Certificate">
      <summary>Provides methods that help you use X.509 v.3 certificates.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.#ctor(System.Byte[],System.Security.SecureString,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> class using a byte array, a password, and a key storage flag.</summary>
      <param name="rawData">A byte array that contains data from an X.509 certificate.</param>
      <param name="password">The password required to access the X.509 certificate data.</param>
      <param name="keyStorageFlags">A bitwise combination of the enumeration values that control where and how to import the certificate.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs. For example:  
  
-   The certificate file does not exist.  
  
-   The certificate is invalid.  
  
-   The certificate's password is incorrect.</exception>
      <exception cref="T:System.ArgumentException">The <paramref name="rawData" /> parameter is <see langword="null" />.  
  
 -or-  
  
 The length of the <paramref name="rawData" /> parameter is 0.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.#ctor(System.Byte[],System.Security.SecureString)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> class using a byte array and a password.</summary>
      <param name="rawData">A byte array that contains data from an X.509 certificate.</param>
      <param name="password">The password required to access the X.509 certificate data.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs. For example:  
  
-   The certificate file does not exist.  
  
-   The certificate is invalid.  
  
-   The certificate's password is incorrect.</exception>
      <exception cref="T:System.ArgumentException">The <paramref name="rawData" /> parameter is <see langword="null" />.  
  
 -or-  
  
 The length of the <paramref name="rawData" /> parameter is 0.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.#ctor(System.Byte[],System.String,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> class using a byte array, a password, and a key storage flag.</summary>
      <param name="rawData">A byte array containing data from an X.509 certificate.</param>
      <param name="password">The password required to access the X.509 certificate data.</param>
      <param name="keyStorageFlags">A bitwise combination of the enumeration values that control where and how to import the certificate.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs. For example:  
  
-   The certificate file does not exist.  
  
-   The certificate is invalid.  
  
-   The certificate's password is incorrect.</exception>
      <exception cref="T:System.ArgumentException">The <paramref name="rawData" /> parameter is <see langword="null" />.  
  
 -or-  
  
 The length of the <paramref name="rawData" /> parameter is 0.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.#ctor(System.Byte[],System.String)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> class using a byte array and a password.</summary>
      <param name="rawData">A byte array containing data from an X.509 certificate.</param>
      <param name="password">The password required to access the X.509 certificate data.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs. For example:  
  
-   The certificate file does not exist.  
  
-   The certificate is invalid.  
  
-   The certificate's password is incorrect.</exception>
      <exception cref="T:System.ArgumentException">The <paramref name="rawData" /> parameter is <see langword="null" />.  
  
 -or-  
  
 The length of the <paramref name="rawData" /> parameter is 0.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.#ctor(System.Byte[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> class defined from a sequence of bytes representing an X.509v3 certificate.</summary>
      <param name="data">A byte array containing data from an X.509 certificate.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs. For example:  
  
-   The certificate file does not exist.  
  
-   The certificate is invalid.  
  
-   The certificate's password is incorrect.</exception>
      <exception cref="T:System.ArgumentException">The <paramref name="rawData" /> parameter is <see langword="null" />.  
  
 -or-  
  
 The length of the <paramref name="rawData" /> parameter is 0.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.#ctor(System.IntPtr)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> class using a handle to an unmanaged <see langword="PCCERT_CONTEXT" /> structure.</summary>
      <param name="handle">A handle to an unmanaged <see langword="PCCERT_CONTEXT" /> structure.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs. For example:  
  
-   The certificate file does not exist.  
  
-   The certificate is invalid.  
  
-   The certificate's password is incorrect.</exception>
      <exception cref="T:System.ArgumentException">The handle parameter does not represent a valid <see langword="PCCERT_CONTEXT" /> structure.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> class using a <see cref="T:System.Runtime.Serialization.SerializationInfo" /> object and a <see cref="T:System.Runtime.Serialization.StreamingContext" /> structure.</summary>
      <param name="info">A <see cref="T:System.Runtime.Serialization.SerializationInfo" /> object that describes serialization information.</param>
      <param name="context">A <see cref="T:System.Runtime.Serialization.StreamingContext" /> structure that describes how serialization should be performed.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs. For example:  
  
-   The certificate file does not exist.  
  
-   The certificate is invalid.  
  
-   The certificate's password is incorrect.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.#ctor(System.Security.Cryptography.X509Certificates.X509Certificate)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> class using another <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> class.</summary>
      <param name="cert">A <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> class from which to initialize this class.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs. For example:  
  
-   The certificate file does not exist.  
  
-   The certificate is invalid.  
  
-   The certificate's password is incorrect.</exception>
      <exception cref="T:System.ArgumentNullException">The value of the <paramref name="cert" /> parameter is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.#ctor(System.String,System.Security.SecureString,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> class using a certificate file name, a password, and a key storage flag.</summary>
      <param name="fileName">The name of a certificate file.</param>
      <param name="password">The password required to access the X.509 certificate data.</param>
      <param name="keyStorageFlags">A bitwise combination of the enumeration values that control where and how to import the certificate.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs. For example:  
  
-   The certificate file does not exist.  
  
-   The certificate is invalid.  
  
-   The certificate's password is incorrect.</exception>
      <exception cref="T:System.ArgumentException">The <paramref name="fileName" /> parameter is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.#ctor(System.String,System.Security.SecureString)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> class using a certificate file name and a password.</summary>
      <param name="fileName">The name of a certificate file.</param>
      <param name="password">The password required to access the X.509 certificate data.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs. For example:  
  
-   The certificate file does not exist.  
  
-   The certificate is invalid.  
  
-   The certificate's password is incorrect.</exception>
      <exception cref="T:System.ArgumentException">The <paramref name="fileName" /> parameter is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.#ctor(System.String,System.String,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> class using the name of a PKCS7 signed file, a password to access the certificate, and a key storage flag.</summary>
      <param name="fileName">The name of a PKCS7 signed file.</param>
      <param name="password">The password required to access the X.509 certificate data.</param>
      <param name="keyStorageFlags">A bitwise combination of the enumeration values that control where and how to import the certificate.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs. For example:  
  
-   The certificate file does not exist.  
  
-   The certificate is invalid.  
  
-   The certificate's password is incorrect.</exception>
      <exception cref="T:System.ArgumentException">The <paramref name="fileName" /> parameter is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.#ctor(System.String,System.String)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> class using the name of a PKCS7 signed file and a password to access the certificate.</summary>
      <param name="fileName">The name of a PKCS7 signed file.</param>
      <param name="password">The password required to access the X.509 certificate data.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs. For example:  
  
-   The certificate file does not exist.  
  
-   The certificate is invalid.  
  
-   The certificate's password is incorrect.</exception>
      <exception cref="T:System.ArgumentException">The <paramref name="fileName" /> parameter is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.#ctor(System.String)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> class using the name of a PKCS7 signed file.</summary>
      <param name="fileName">The name of a PKCS7 signed file.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs. For example:  
  
-   The certificate file does not exist.  
  
-   The certificate is invalid.  
  
-   The certificate's password is incorrect.</exception>
      <exception cref="T:System.ArgumentException">The <paramref name="fileName" /> parameter is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.CreateFromCertFile(System.String)">
      <summary>Creates an X.509v3 certificate from the specified PKCS7 signed file.</summary>
      <param name="filename">The path of the PKCS7 signed file from which to create the X.509 certificate.</param>
      <exception cref="T:System.ArgumentException">The <paramref name="filename" /> parameter is <see langword="null" />.</exception>
      <returns>The newly created X.509 certificate.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.CreateFromSignedFile(System.String)">
      <summary>Creates an X.509v3 certificate from the specified signed file.</summary>
      <param name="filename">The path of the signed file from which to create the X.509 certificate.</param>
      <returns>The newly created X.509 certificate.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.Dispose">
      <summary>Releases all resources used by the current <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> object.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.Dispose(System.Boolean)">
      <summary>Releases all of the unmanaged resources used by this <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> and optionally releases the managed resources.</summary>
      <param name="disposing">
        <see langword="true" /> to release both managed and unmanaged resources; <see langword="false" /> to release only unmanaged resources.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.Equals(System.Object)">
      <summary>Compares two <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> objects for equality.</summary>
      <param name="obj">An <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> object to compare to the current object.</param>
      <returns>
        <see langword="true" /> if the current <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> object is equal to the object specified by the <paramref name="other" /> parameter; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.Equals(System.Security.Cryptography.X509Certificates.X509Certificate)">
      <summary>Compares two <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> objects for equality.</summary>
      <param name="other">An <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> object to compare to the current object.</param>
      <returns>
        <see langword="true" /> if the current <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> object is equal to the object specified by the <paramref name="other" /> parameter; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.Export(System.Security.Cryptography.X509Certificates.X509ContentType,System.Security.SecureString)">
      <summary>Exports the current <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> object to a byte array using the specified format and a password.</summary>
      <param name="contentType">One of the <see cref="T:System.Security.Cryptography.X509Certificates.X509ContentType" /> values that describes how to format the output data.</param>
      <param name="password">The password required to access the X.509 certificate data.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">A value other than <see cref="F:System.Security.Cryptography.X509Certificates.X509ContentType.Cert" />, <see cref="F:System.Security.Cryptography.X509Certificates.X509ContentType.SerializedCert" />, or <see cref="F:System.Security.Cryptography.X509Certificates.X509ContentType.Pkcs12" /> was passed to the <paramref name="contentType" /> parameter.  
  
 -or-  
  
 The certificate could not be exported.</exception>
      <returns>A byte array that represents the current <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.Export(System.Security.Cryptography.X509Certificates.X509ContentType,System.String)">
      <summary>Exports the current <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> object to a byte array in a format described by one of the <see cref="T:System.Security.Cryptography.X509Certificates.X509ContentType" /> values, and using the specified password.</summary>
      <param name="contentType">One of the <see cref="T:System.Security.Cryptography.X509Certificates.X509ContentType" /> values that describes how to format the output data.</param>
      <param name="password">The password required to access the X.509 certificate data.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">A value other than <see cref="F:System.Security.Cryptography.X509Certificates.X509ContentType.Cert" />, <see cref="F:System.Security.Cryptography.X509Certificates.X509ContentType.SerializedCert" />, or <see cref="F:System.Security.Cryptography.X509Certificates.X509ContentType.Pkcs12" /> was passed to the <paramref name="contentType" /> parameter.  
  
 -or-  
  
 The certificate could not be exported.</exception>
      <returns>An array of bytes that represents the current <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.Export(System.Security.Cryptography.X509Certificates.X509ContentType)">
      <summary>Exports the current <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> object to a byte array in a format described by one of the <see cref="T:System.Security.Cryptography.X509Certificates.X509ContentType" /> values.</summary>
      <param name="contentType">One of the <see cref="T:System.Security.Cryptography.X509Certificates.X509ContentType" /> values that describes how to format the output data.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">A value other than <see cref="F:System.Security.Cryptography.X509Certificates.X509ContentType.Cert" />, <see cref="F:System.Security.Cryptography.X509Certificates.X509ContentType.SerializedCert" />, or <see cref="F:System.Security.Cryptography.X509Certificates.X509ContentType.Pkcs12" /> was passed to the <paramref name="contentType" /> parameter.  
  
 -or-  
  
 The certificate could not be exported.</exception>
      <returns>An array of bytes that represents the current <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.FormatDate(System.DateTime)">
      <summary>Converts the specified date and time to a string.</summary>
      <param name="date">The date and time to convert.</param>
      <returns>A string representation of the value of the <see cref="T:System.DateTime" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.GetCertHash">
      <summary>Returns the hash value for the X.509v3 certificate as an array of bytes.</summary>
      <returns>The hash value for the X.509 certificate.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.GetCertHash(System.Security.Cryptography.HashAlgorithmName)">
      <summary>Returns the hash value for the X.509v3 certificate that is computed by using the specified cryptographic hash algorithm.</summary>
      <param name="hashAlgorithm">The name of the cryptographic hash algorithm to use.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or an empty string.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> is not a known hash algorithm.</exception>
      <returns>A byte array that contains the hash value for the X.509 certificate.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.GetCertHashString">
      <summary>Returns the SHA1 hash value for the X.509v3 certificate as a hexadecimal string.</summary>
      <returns>The hexadecimal string representation of the X.509 certificate hash value.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.GetCertHashString(System.Security.Cryptography.HashAlgorithmName)">
      <summary>Returns a hexadecimal string containing the hash value for the X.509v3 certificate computed using the specified cryptographic hash algorithm.</summary>
      <param name="hashAlgorithm">The name of the cryptographic hash algorithm to use.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or an empty string.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> is not a known hash algorithm.</exception>
      <returns>The hexadecimal string representation of the X.509 certificate hash value.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.GetEffectiveDateString">
      <summary>Returns the effective date of this X.509v3 certificate.</summary>
      <returns>The effective date for this X.509 certificate.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.GetExpirationDateString">
      <summary>Returns the expiration date of this X.509v3 certificate.</summary>
      <returns>The expiration date for this X.509 certificate.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.GetFormat">
      <summary>Returns the name of the format of this X.509v3 certificate.</summary>
      <returns>The format of this X.509 certificate.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.GetHashCode">
      <summary>Returns the hash code for the X.509v3 certificate as an integer.</summary>
      <returns>The hash code for the X.509 certificate as an integer.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.GetIssuerName">
      <summary>Returns the name of the certification authority that issued the X.509v3 certificate.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs. For example:  
  
-   The certificate file does not exist.  
  
-   The certificate is invalid.  
  
-   The certificate's password is incorrect.</exception>
      <returns>The name of the certification authority that issued the X.509 certificate.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.GetKeyAlgorithm">
      <summary>Returns the key algorithm information for this X.509v3 certificate as a string.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The certificate context is invalid.</exception>
      <returns>The key algorithm information for this X.509 certificate as a string.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.GetKeyAlgorithmParameters">
      <summary>Returns the key algorithm parameters for the X.509v3 certificate as an array of bytes.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The certificate context is invalid.</exception>
      <returns>The key algorithm parameters for the X.509 certificate as an array of bytes.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.GetKeyAlgorithmParametersString">
      <summary>Returns the key algorithm parameters for the X.509v3 certificate as a hexadecimal string.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The certificate context is invalid.</exception>
      <returns>The key algorithm parameters for the X.509 certificate as a hexadecimal string.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.GetName">
      <summary>Returns the name of the principal to which the certificate was issued.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The certificate context is invalid.</exception>
      <returns>The name of the principal to which the certificate was issued.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.GetPublicKey">
      <summary>Returns the public key for the X.509v3 certificate as an array of bytes.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The certificate context is invalid.</exception>
      <returns>The public key for the X.509 certificate as an array of bytes.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.GetPublicKeyString">
      <summary>Returns the public key for the X.509v3 certificate as a hexadecimal string.</summary>
      <returns>The public key for the X.509 certificate as a hexadecimal string.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.GetRawCertData">
      <summary>Returns the raw data for the entire X.509v3 certificate as an array of bytes.</summary>
      <returns>A byte array containing the X.509 certificate data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.GetRawCertDataString">
      <summary>Returns the raw data for the entire X.509v3 certificate as a hexadecimal string.</summary>
      <returns>The X.509 certificate data as a hexadecimal string.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.GetSerialNumber">
      <summary>Returns the serial number of the X.509v3 certificate as an array of bytes in little-endian order.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The certificate context is invalid.</exception>
      <returns>The serial number of the X.509 certificate as an array of bytes in little-endian order.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.GetSerialNumberString">
      <summary>Returns the serial number of the X.509v3 certificate as a little-endian hexadecimal string .</summary>
      <returns>The serial number of the X.509 certificate as a little-endian hexadecimal string.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.Import(System.Byte[],System.Security.SecureString,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags)">
      <summary>Populates an <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> object using data from a byte array, a password, and a key storage flag.</summary>
      <param name="rawData">A byte array that contains data from an X.509 certificate.</param>
      <param name="password">The password required to access the X.509 certificate data.</param>
      <param name="keyStorageFlags">A bitwise combination of the enumeration values that control where and how to import the certificate.</param>
      <exception cref="T:System.ArgumentException">The <paramref name="rawData" /> parameter is <see langword="null" />.  
  
 -or-  
  
 The length of the <paramref name="rawData" /> parameter is 0.</exception>
      <exception cref="T:System.PlatformNotSupportedException">.NET Core and .NET 5+ only: In all cases.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.Import(System.Byte[],System.String,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags)">
      <summary>Populates the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> object using data from a byte array, a password, and flags for determining how the private key is imported.</summary>
      <param name="rawData">A byte array containing data from an X.509 certificate.</param>
      <param name="password">The password required to access the X.509 certificate data.</param>
      <param name="keyStorageFlags">A bitwise combination of the enumeration values that control where and how to import the certificate.</param>
      <exception cref="T:System.ArgumentException">The <paramref name="rawData" /> parameter is <see langword="null" />.  
  
 -or-  
  
 The length of the <paramref name="rawData" /> parameter is 0.</exception>
      <exception cref="T:System.PlatformNotSupportedException">.NET Core and .NET 5+ only: In all cases.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.Import(System.Byte[])">
      <summary>Populates the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> object with data from a byte array.</summary>
      <param name="rawData">A byte array containing data from an X.509 certificate.</param>
      <exception cref="T:System.ArgumentException">The <paramref name="rawData" /> parameter is <see langword="null" />.  
  
 -or-  
  
 The length of the <paramref name="rawData" /> parameter is 0.</exception>
      <exception cref="T:System.PlatformNotSupportedException">.NET Core and .NET 5+ only: In all cases.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.Import(System.String,System.Security.SecureString,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags)">
      <summary>Populates an <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> object with information from a certificate file, a password, and a key storage flag.</summary>
      <param name="fileName">The name of a certificate file.</param>
      <param name="password">The password required to access the X.509 certificate data.</param>
      <param name="keyStorageFlags">A bitwise combination of the enumeration values that control where and how to import the certificate.</param>
      <exception cref="T:System.ArgumentException">The <paramref name="fileName" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">.NET Core and .NET 5+ only: In all cases.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.Import(System.String,System.String,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags)">
      <summary>Populates the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> object with information from a certificate file, a password, and a <see cref="T:System.Security.Cryptography.X509Certificates.X509KeyStorageFlags" /> value.</summary>
      <param name="fileName">The name of a certificate file represented as a string.</param>
      <param name="password">The password required to access the X.509 certificate data.</param>
      <param name="keyStorageFlags">A bitwise combination of the enumeration values that control where and how to import the certificate.</param>
      <exception cref="T:System.ArgumentException">The <paramref name="fileName" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">.NET Core and .NET 5+ only: In all cases.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.Import(System.String)">
      <summary>Populates the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> object with information from a certificate file.</summary>
      <param name="fileName">The name of a certificate file represented as a string.</param>
      <exception cref="T:System.ArgumentException">The <paramref name="fileName" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">.NET Core and .NET 5+ only: In all cases.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.Reset">
      <summary>Resets the state of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> object.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.System#Runtime#Serialization#IDeserializationCallback#OnDeserialization(System.Object)">
      <summary>Implements the <see cref="T:System.Runtime.Serialization.ISerializable" /> interface and is called back by the deserialization event when deserialization is complete.</summary>
      <param name="sender">The source of the deserialization event.</param>
      <exception cref="T:System.PlatformNotSupportedException">.NET Core and .NET 5+ only: In all cases.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.System#Runtime#Serialization#ISerializable#GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
      <summary>Gets serialization information with all the data needed to recreate an instance of the current <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> object.</summary>
      <param name="info">The object to populate with serialization information.</param>
      <param name="context">The destination context of the serialization.</param>
      <exception cref="T:System.PlatformNotSupportedException">.NET Core and .NET 5+ only: In all cases.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.ToString">
      <summary>Returns a string representation of the current <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> object.</summary>
      <returns>A string representation of the current <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.ToString(System.Boolean)">
      <summary>Returns a string representation of the current <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> object, with extra information, if specified.</summary>
      <param name="fVerbose">
        <see langword="true" /> to produce the verbose form of the string representation; otherwise, <see langword="false" />.</param>
      <returns>A string representation of the current <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate.TryGetCertHash(System.Security.Cryptography.HashAlgorithmName,System.Span{System.Byte},System.Int32@)">
      <summary>Attempts to produce a "thumbprint" for the certificate by hashing the encoded representation of the certificate with the specified hash algorithm.</summary>
      <param name="hashAlgorithm">The algorithm to use for the thumbprint.</param>
      <param name="destination">The buffer to receive the certificate thumbprint.</param>
      <param name="bytesWritten">When this method returns, the total number of bytes written into <paramref name="destination" />. This parameter is treated as uninitialized.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="hashAlgorithm" />.<see cref="P:System.Security.Cryptography.HashAlgorithmName.Name" /> is <see langword="null" /> or an empty string.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="hashAlgorithm" /> is not a known hash algorithm.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> is long enough to receive the hash value; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Certificate.Handle">
      <summary>Gets a handle to a Microsoft Cryptographic API certificate context described by an unmanaged <see langword="PCCERT_CONTEXT" /> structure.</summary>
      <returns>An <see cref="T:System.IntPtr" /> structure that represents an unmanaged <see langword="PCCERT_CONTEXT" /> structure.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Certificate.Issuer">
      <summary>Gets the name of the certificate authority that issued the X.509v3 certificate.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The certificate handle is invalid.</exception>
      <returns>The name of the certificate authority that issued the X.509v3 certificate.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Certificate.SerialNumberBytes">
      <summary>Gets the big-endian representation of the certificate's serial number.</summary>
      <returns>The big-endian representation of the certificate's serial number.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Certificate.Subject">
      <summary>Gets the subject distinguished name from the certificate.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The certificate handle is invalid.</exception>
      <returns>The subject distinguished name from the certificate.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509Certificate2">
      <summary>Represents an X.509 certificate.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.#ctor(System.Byte[],System.Security.SecureString,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> class using a byte array, a password, and a key storage flag.</summary>
      <param name="rawData">A byte array that contains data from an X.509 certificate.</param>
      <param name="password">The password required to access the X.509 certificate data.</param>
      <param name="keyStorageFlags">A bitwise combination of the enumeration values that control where and how to import the certificate.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs. For example:  
  
-   The certificate file does not exist.  
  
-   The certificate is invalid.  
  
-   The certificate's password is incorrect.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.#ctor(System.Byte[],System.Security.SecureString)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> class using a byte array and a password.</summary>
      <param name="rawData">A byte array that contains data from an X.509 certificate.</param>
      <param name="password">The password required to access the X.509 certificate data.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs. For example:  
  
-   The certificate file does not exist.  
  
-   The certificate is invalid.  
  
-   The certificate's password is incorrect.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.#ctor(System.Byte[],System.String,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> class using a byte array, a password, and a key storage flag.</summary>
      <param name="rawData">A byte array containing data from an X.509 certificate.</param>
      <param name="password">The password required to access the X.509 certificate data.</param>
      <param name="keyStorageFlags">A bitwise combination of the enumeration values that control where and how to import the certificate.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs. For example:  
  
-   The certificate file does not exist.  
  
-   The certificate is invalid.  
  
-   The certificate's password is incorrect.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.#ctor(System.Byte[],System.String)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> class using a byte array and a password.</summary>
      <param name="rawData">A byte array containing data from an X.509 certificate.</param>
      <param name="password">The password required to access the X.509 certificate data.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs. For example:  
  
-   The certificate file does not exist.  
  
-   The certificate is invalid.  
  
-   The certificate's password is incorrect.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.#ctor(System.Byte[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> class using information from a byte array.</summary>
      <param name="rawData">A byte array containing data from an X.509 certificate.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs. For example:  
  
-   The certificate file does not exist.  
  
-   The certificate is invalid.  
  
-   The certificate's password is incorrect.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.#ctor(System.IntPtr)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> class using an unmanaged handle.</summary>
      <param name="handle">A pointer to a certificate context in unmanaged code. The C structure is called <see langword="PCCERT_CONTEXT" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs. For example:  
  
-   The certificate file does not exist.  
  
-   The certificate is invalid.  
  
-   The certificate's password is incorrect.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.#ctor(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Char},System.Security.Cryptography.X509Certificates.X509KeyStorageFlags)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> class from certificate data, a password, and key storage flags.</summary>
      <param name="rawData">The certificate data to process.</param>
      <param name="password">The password required to access the certificate data.</param>
      <param name="keyStorageFlags">A bitwise combination of the enumeration values that control where and how to import the certificate.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.#ctor(System.ReadOnlySpan{System.Byte})">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> class from certificate data.</summary>
      <param name="rawData">The certificate data to process.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> class using the specified serialization and stream context information.</summary>
      <param name="info">The serialization information required to deserialize the new <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" />.</param>
      <param name="context">Contextual information about the source of the stream to be deserialized.</param>
      <exception cref="T:System.PlatformNotSupportedException">.NET Core and .NET 5+ only: In all cases.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.#ctor(System.Security.Cryptography.X509Certificates.X509Certificate)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> class using an <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> object.</summary>
      <param name="certificate">An <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> object.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs. For example:  
  
-   The certificate file does not exist.  
  
-   The certificate is invalid.  
  
-   The certificate's password is incorrect.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.#ctor(System.String,System.ReadOnlySpan{System.Char},System.Security.Cryptography.X509Certificates.X509KeyStorageFlags)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> class using a certificate file name, a password, and a key storage flag.</summary>
      <param name="fileName">The name of a certificate file.</param>
      <param name="password">The password required to access the X.509 certificate data.</param>
      <param name="keyStorageFlags">A bitwise combination of the enumeration values that control where and how to import the certificate.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs. For example:  
  
-   The certificate file does not exist.  
  
-   The certificate is invalid.  
  
-   The certificate's password is incorrect.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.#ctor(System.String,System.Security.SecureString,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> class using a certificate file name, a password, and a key storage flag.</summary>
      <param name="fileName">The name of a certificate file.</param>
      <param name="password">The password required to access the X.509 certificate data.</param>
      <param name="keyStorageFlags">A bitwise combination of the enumeration values that control where and how to import the certificate.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs. For example:  
  
-   The certificate file does not exist.  
  
-   The certificate is invalid.  
  
-   The certificate's password is incorrect.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.#ctor(System.String,System.Security.SecureString)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> class using a certificate file name and a password.</summary>
      <param name="fileName">The name of a certificate file.</param>
      <param name="password">The password required to access the X.509 certificate data.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs. For example:  
  
-   The certificate file does not exist.  
  
-   The certificate is invalid.  
  
-   The certificate's password is incorrect.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.#ctor(System.String,System.String,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> class using a certificate file name, a password used to access the certificate, and a key storage flag.</summary>
      <param name="fileName">The name of a certificate file.</param>
      <param name="password">The password required to access the X.509 certificate data.</param>
      <param name="keyStorageFlags">A bitwise combination of the enumeration values that control where and how to import the certificate.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs. For example:  
  
-   The certificate file does not exist.  
  
-   The certificate is invalid.  
  
-   The certificate's password is incorrect.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.#ctor(System.String,System.String)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> class using a certificate file name and a password used to access the certificate.</summary>
      <param name="fileName">The name of a certificate file.</param>
      <param name="password">The password required to access the X.509 certificate data.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs. For example:  
  
-   The certificate file does not exist.  
  
-   The certificate is invalid.  
  
-   The certificate's password is incorrect.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.#ctor(System.String)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> class using a certificate file name.</summary>
      <param name="fileName">The name of a certificate file.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">An error with the certificate occurs. For example:  
  
-   The certificate file does not exist.  
  
-   The certificate is invalid.  
  
-   The certificate's password is incorrect.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.CopyWithPrivateKey(System.Security.Cryptography.ECDiffieHellman)">
      <summary>Combines a private key with the public key of an <see cref="T:System.Security.Cryptography.ECDiffieHellman" /> certificate to generate a new ECDiffieHellman certificate.</summary>
      <param name="privateKey">The private ECDiffieHellman key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="privateKey" /> is <see langword="null" />.</exception>
      <exception cref="T:System.InvalidOperationException">The certificate already has an associated private key.</exception>
      <exception cref="T:System.ArgumentException">The certificate doesn't have a public key.

-or-

The specified private key doesn't match the public key for this certificate.</exception>
      <returns>A new ECDiffieHellman certificate with the <see cref="P:System.Security.Cryptography.X509Certificates.X509Certificate2.HasPrivateKey" /> property set to <see langword="true" />.
            The current certificate isn't modified.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.CreateFromEncryptedPem(System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Char})">
      <summary>Creates a new X509 certificate from the contents of an RFC 7468 PEM-encoded certificate and password protected private key.</summary>
      <param name="certPem">The text of the PEM-encoded X509 certificate.</param>
      <param name="keyPem">The text of the password protected PEM-encoded private key.</param>
      <param name="password">The password for the encrypted PEM.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
The contents of <paramref name="certPem" /> do not contain a PEM-encoded certificate, or it is malformed.

-or-

The contents of <paramref name="keyPem" /> do not contain a password protected PEM-encoded private key, or it is malformed.

-or-

The contents of <paramref name="keyPem" /> contains a key that does not match the public key in the certificate.

-or-

The certificate uses an unknown public key algorithm.

-or-

The password specified for the private key is incorrect.</exception>
      <returns>A new certificate with the private key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.CreateFromEncryptedPemFile(System.String,System.ReadOnlySpan{System.Char},System.String)">
      <summary>Creates a new X509 certificate from the file contents of an RFC 7468 PEM-encoded certificate and password protected private key.</summary>
      <param name="certPemFilePath">The path for the PEM-encoded X509 certificate.</param>
      <param name="password">The password for the encrypted PEM.</param>
      <param name="keyPemFilePath">If specified, the path for the password protected PEM-encoded private key.
            If unspecified, the <paramref name="certPemFilePath" /> file will be used to load the private key.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
The contents of the file path in <paramref name="certPemFilePath" /> do not contain a PEM-encoded certificate, or it is malformed.

-or-

The contents of the file path in <paramref name="keyPemFilePath" /> do not contain a password protected PEM-encoded private key, or it is malformed.

-or-

The contents of the file path in <paramref name="keyPemFilePath" /> contains a key that does not match the public key in the certificate.

-or-

The certificate uses an unknown public key algorithm.

-or-

The password specified for the private key is incorrect.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="certPemFilePath" /> is <see langword="null" />.</exception>
      <returns>A new certificate with the private key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.CreateFromPem(System.ReadOnlySpan{System.Char},System.ReadOnlySpan{System.Char})">
      <summary>Creates a new X509 certificate from the contents of an RFC 7468 PEM-encoded certificate and private key.</summary>
      <param name="certPem">The text of the PEM-encoded X509 certificate.</param>
      <param name="keyPem">The text of the PEM-encoded private key.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
The contents of <paramref name="certPem" /> do not contain a PEM-encoded certificate, or it is malformed.

-or-

The contents of <paramref name="keyPem" /> do not contain a PEM-encoded private key, or it is malformed.

-or-

The contents of <paramref name="keyPem" /> contains a key that does not match the public key in the certificate.

-or-

The certificate uses an unknown public key algorithm.</exception>
      <returns>A new certificate with the private key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.CreateFromPem(System.ReadOnlySpan{System.Char})">
      <summary>Creates a new X509 certificate from the contents of an RFC 7468 PEM-encoded certificate.</summary>
      <param name="certPem">The text of the PEM-encoded X509 certificate.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The contents of <paramref name="certPem" /> do not contain a PEM-encoded certificate, or it is malformed.</exception>
      <returns>A new X509 certificate.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.CreateFromPemFile(System.String,System.String)">
      <summary>Creates a new X509 certificate from the file contents of an RFC 7468 PEM-encoded certificate and private key.</summary>
      <param name="certPemFilePath">The path for the PEM-encoded X509 certificate.</param>
      <param name="keyPemFilePath">If specified, the path for the PEM-encoded private key.
            If unspecified, the <paramref name="certPemFilePath" /> file will be used to load the private key.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
The contents of the file path in <paramref name="certPemFilePath" /> do not contain a PEM-encoded certificate, or it is malformed.

-or-

The contents of the file path in <paramref name="keyPemFilePath" /> do not contain a PEM-encoded private key, or it is malformed.

-or-

The contents of the file path in <paramref name="keyPemFilePath" /> contains a key that does not match the public key in the certificate.

-or-

The certificate uses an unknown public key algorithm.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="certPemFilePath" /> is <see langword="null" />.</exception>
      <returns>A new certificate with the private key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.ExportCertificatePem">
      <summary>Exports the public X.509 certificate, encoded as PEM.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The certificate is corrupt, in an invalid state, or could not be exported
            to PEM.</exception>
      <returns>The PEM encoding of the certificate.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.GetCertContentType(System.Byte[])">
      <summary>Indicates the type of certificate contained in a byte array.</summary>
      <param name="rawData">A byte array containing data from an X.509 certificate.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="rawData" /> has a zero length or is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The type of contents in <paramref name="rawData" /> could not be determined or is unknown.</exception>
      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X509ContentType" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.GetCertContentType(System.ReadOnlySpan{System.Byte})">
      <summary>Indicates the type of certificate contained in the provided data.</summary>
      <param name="rawData">The data to identify.</param>
      <returns>One of the enumeration values that indicate the content type of the provided data.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.GetCertContentType(System.String)">
      <summary>Indicates the type of certificate contained in a file.</summary>
      <param name="fileName">The name of a certificate file.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="fileName" /> is <see langword="null" />.</exception>
      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X509ContentType" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.GetECDiffieHellmanPrivateKey">
      <summary>Gets the <see cref="T:System.Security.Cryptography.ECDiffieHellman" /> private key from this certificate.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The handle is invalid.</exception>
      <returns>The private key, or <see langword="null" /> if this certificate does not have an ECDiffieHellman private key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.GetECDiffieHellmanPublicKey">
      <summary>Gets the <see cref="T:System.Security.Cryptography.ECDiffieHellman" /> public key from this certificate.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The handle is invalid.</exception>
      <returns>The public key, or <see langword="null" /> if this certificate does not have an ECDiffieHellman public key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.GetNameInfo(System.Security.Cryptography.X509Certificates.X509NameType,System.Boolean)">
      <summary>Gets the subject and issuer names from a certificate.</summary>
      <param name="nameType">The <see cref="T:System.Security.Cryptography.X509Certificates.X509NameType" /> value for the subject.</param>
      <param name="forIssuer">
        <see langword="true" /> to include the issuer name; otherwise, <see langword="false" />.</param>
      <returns>The name of the certificate.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.Import(System.Byte[],System.Security.SecureString,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags)">
      <summary>Populates an <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> object using data from a byte array, a password, and a key storage flag.</summary>
      <param name="rawData">A byte array that contains data from an X.509 certificate.</param>
      <param name="password">The password required to access the X.509 certificate data.</param>
      <param name="keyStorageFlags">A bitwise combination of the enumeration values that control where and how to import the certificate.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.Import(System.Byte[],System.String,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags)">
      <summary>Populates an <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> object using data from a byte array, a password, and flags for determining how to import the private key.</summary>
      <param name="rawData">A byte array containing data from an X.509 certificate.</param>
      <param name="password">The password required to access the X.509 certificate data.</param>
      <param name="keyStorageFlags">A bitwise combination of the enumeration values that control where and how to import the certificate.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.Import(System.Byte[])">
      <summary>Populates an <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> object with data from a byte array.</summary>
      <param name="rawData">A byte array containing data from an X.509 certificate.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.Import(System.String,System.Security.SecureString,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags)">
      <summary>Populates an <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> object with information from a certificate file, a password, and a key storage flag.</summary>
      <param name="fileName">The name of a certificate file.</param>
      <param name="password">The password required to access the X.509 certificate data.</param>
      <param name="keyStorageFlags">A bitwise combination of the enumeration values that control where and how to import the certificate.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.Import(System.String,System.String,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags)">
      <summary>Populates an <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> object with information from a certificate file, a password, and a <see cref="T:System.Security.Cryptography.X509Certificates.X509KeyStorageFlags" /> value.</summary>
      <param name="fileName">The name of a certificate file.</param>
      <param name="password">The password required to access the X.509 certificate data.</param>
      <param name="keyStorageFlags">A bitwise combination of the enumeration values that control where and how to import the certificate.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.Import(System.String)">
      <summary>Populates an <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> object with information from a certificate file.</summary>
      <param name="fileName">The name of a certificate.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.MatchesHostname(System.String,System.Boolean,System.Boolean)">
      <summary>Checks to see if the certificate matches the provided host name.</summary>
      <param name="hostname">The host name to match against.</param>
      <param name="allowWildcards">
        <see langword="true" /> to allow wildcard matching for <c>dNSName</c> values in the Subject Alternative Name extension; otherwise, <see langword="false" />.</param>
      <param name="allowCommonName">
        <see langword="true" /> to allow matching against the subject Common Name value; otherwise, <see langword="false" />.</param>
      <exception cref="T:System.ArgumentException">The <paramref name="hostname" /> parameter is not a valid DNS hostname or IP address.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
The certificate contains multiple Subject Alternative Name extensions.

-or-

The Subject Alternative Name extension or Subject Name could not be decoded.</exception>
      <returns>
        <see langword="true" /> if the certificate is a match for the requested hostname; otherwise, <see langword="false" /></returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.Reset">
      <summary>Resets the state of an <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> object.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.ToString">
      <summary>Displays an X.509 certificate in text format.</summary>
      <returns>The certificate information.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.ToString(System.Boolean)">
      <summary>Displays an X.509 certificate in text format.</summary>
      <param name="verbose">
        <see langword="true" /> to display the public key, private key, extensions, and so forth; <see langword="false" /> to display information that is similar to the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> class, including thumbprint, serial number, subject and issuer names, and so on.</param>
      <returns>The certificate information.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.TryExportCertificatePem(System.Span{System.Char},System.Int32@)">
      <summary>Attempts to export the public X.509 certificate, encoded as PEM.</summary>
      <param name="destination">The buffer to receive the PEM encoded certificate.</param>
      <param name="charsWritten">When this method returns, the total number of characters written to <paramref name="destination" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The certificate is corrupt, in an invalid state, or could not be exported
            to PEM.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> was large enough to receive the encoded PEM; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2.Verify">
      <summary>Performs a X.509 chain validation using basic validation policy.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The certificate is unreadable.</exception>
      <returns>
        <see langword="true" /> if the validation succeeds; <see langword="false" /> if the validation fails.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Certificate2.Archived">
      <summary>Gets or sets a value indicating that an X.509 certificate is archived.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The certificate is unreadable.</exception>
      <returns>
        <see langword="true" /> if the certificate is archived, <see langword="false" /> if the certificate is not archived.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Certificate2.Extensions">
      <summary>Gets a collection of <see cref="T:System.Security.Cryptography.X509Certificates.X509Extension" /> objects.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The certificate is unreadable.</exception>
      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X509ExtensionCollection" /> object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Certificate2.FriendlyName">
      <summary>Gets or sets the associated alias for a certificate.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The certificate is unreadable.</exception>
      <returns>The certificate's friendly name.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Certificate2.HasPrivateKey">
      <summary>Gets a value that indicates whether an <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> object contains a private key.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The certificate context is invalid.</exception>
      <returns>
        <see langword="true" /> if the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> object contains a private key; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Certificate2.IssuerName">
      <summary>Gets the distinguished name of the certificate issuer.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The certificate context is invalid.</exception>
      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X500DistinguishedName" /> object that contains the name of the certificate issuer.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Certificate2.NotAfter">
      <summary>Gets the date in local time after which a certificate is no longer valid.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The certificate is unreadable.</exception>
      <returns>A <see cref="T:System.DateTime" /> object that represents the expiration date for the certificate.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Certificate2.NotBefore">
      <summary>Gets the date in local time on which a certificate becomes valid.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The certificate is unreadable.</exception>
      <returns>A <see cref="T:System.DateTime" /> object that represents the effective date of the certificate.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Certificate2.PrivateKey">
      <summary>Gets or sets the <see cref="T:System.Security.Cryptography.AsymmetricAlgorithm" /> object that represents the private key associated with a certificate.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key value is not an RSA or DSA key, or the key is unreadable.</exception>
      <exception cref="T:System.ArgumentNullException">The value being set for this property is <see langword="null" />.</exception>
      <exception cref="T:System.NotSupportedException">The key algorithm for this private key is not supported.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException">The X.509 keys do not match.</exception>
      <exception cref="T:System.ArgumentException">The cryptographic service provider key is <see langword="null" />.</exception>
      <exception cref="T:System.PlatformNotSupportedException">.NET Core and .NET 5+ only: An attempt was made to set this property.</exception>
      <returns>An <see cref="T:System.Security.Cryptography.AsymmetricAlgorithm" /> object, which is either an RSA or DSA cryptographic service provider.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Certificate2.PublicKey">
      <summary>Gets a <see cref="P:System.Security.Cryptography.X509Certificates.X509Certificate2.PublicKey" /> object associated with a certificate.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The key value is not an RSA or DSA key, or the key is unreadable.</exception>
      <returns>A <see cref="P:System.Security.Cryptography.X509Certificates.X509Certificate2.PublicKey" /> object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Certificate2.RawData">
      <summary>Gets the raw X.509 public data of a certificate.</summary>
      <returns>The raw X.509 public data of a certificate.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Certificate2.RawDataMemory">
      <summary>Gets the raw X.509 public data of a certificate.</summary>
      <returns>The raw X.509 public data of a certificate.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Certificate2.SerialNumber">
      <summary>Gets the serial number of a certificate as a big-endian hexadecimal string.</summary>
      <returns>The serial number of the certificate as a big-endian hexadecimal string.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Certificate2.SignatureAlgorithm">
      <summary>Gets the algorithm used to create the signature of a certificate.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The certificate is unreadable.</exception>
      <returns>The object identifier of the signature algorithm.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Certificate2.SubjectName">
      <summary>Gets the subject distinguished name from a certificate.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The certificate context is invalid.</exception>
      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X500DistinguishedName" /> object that represents the name of the certificate subject.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Certificate2.Thumbprint">
      <summary>Gets the thumbprint of a certificate.</summary>
      <returns>The thumbprint of the certificate.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Certificate2.Version">
      <summary>Gets the X.509 format version of a certificate.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The certificate is unreadable.</exception>
      <returns>The certificate format.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection">
      <summary>Represents a collection of <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> objects. This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> class without any <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> information.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.#ctor(System.Security.Cryptography.X509Certificates.X509Certificate2)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> class using an <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> object.</summary>
      <param name="certificate">An <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> object to start the collection from.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.#ctor(System.Security.Cryptography.X509Certificates.X509Certificate2[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> class using an array of <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> objects.</summary>
      <param name="certificates">An array of <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> objects.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.#ctor(System.Security.Cryptography.X509Certificates.X509Certificate2Collection)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> class using the specified certificate collection.</summary>
      <param name="certificates">An <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Add(System.Security.Cryptography.X509Certificates.X509Certificate2)">
      <summary>Adds an object to the end of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" />.</summary>
      <param name="certificate">An X.509 certificate represented as an <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> object.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="certificate" /> is <see langword="null" />.</exception>
      <returns>The <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> index at which the <paramref name="certificate" /> has been added.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.AddRange(System.Security.Cryptography.X509Certificates.X509Certificate2[])">
      <summary>Adds multiple <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> objects in an array to the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object.</summary>
      <param name="certificates">An array of <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> objects.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="certificates" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.AddRange(System.Security.Cryptography.X509Certificates.X509Certificate2Collection)">
      <summary>Adds multiple <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> objects in an <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object to another <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object.</summary>
      <param name="certificates">An <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="certificates" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Contains(System.Security.Cryptography.X509Certificates.X509Certificate2)">
      <summary>Determines whether the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object contains a specific certificate.</summary>
      <param name="certificate">The <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> object to locate in the collection.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="certificate" /> is <see langword="null" />.</exception>
      <returns>
        <see langword="true" /> if the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> contains the specified <paramref name="certificate" />; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Export(System.Security.Cryptography.X509Certificates.X509ContentType,System.String)">
      <summary>Exports X.509 certificate information into a byte array using a password.</summary>
      <param name="contentType">A supported <see cref="T:System.Security.Cryptography.X509Certificates.X509ContentType" /> object.</param>
      <param name="password">A string used to protect the byte array.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The certificate is unreadable, the content is invalid or, in the case of a certificate requiring a password, the private key could not be exported because the password provided was incorrect.</exception>
      <returns>X.509 certificate information in a byte array.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Export(System.Security.Cryptography.X509Certificates.X509ContentType)">
      <summary>Exports X.509 certificate information into a byte array.</summary>
      <param name="contentType">A supported <see cref="T:System.Security.Cryptography.X509Certificates.X509ContentType" /> object.</param>
      <returns>X.509 certificate information in a byte array.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.ExportCertificatePems">
      <summary>Exports the public X.509 certificates, encoded as PEM.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">A certificate is corrupt, in an invalid state, or could not be exported
            to PEM.</exception>
      <exception cref="T:System.OverflowException">The combined size of encoding all certificates exceeds <see cref="F:System.Int32.MaxValue">Int32.MaxValue</see>.</exception>
      <returns>The PEM encoding of the certificates.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.ExportPkcs7Pem">
      <summary>Exports the X.509 public certificates as a PKCS7 certificate collection, encoded as PEM.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">A certificate is corrupt, in an invalid state, or could not be exported
            to PEM.</exception>
      <returns>The PEM encoded PKCS7 collection.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)">
      <summary>Searches an <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object using the search criteria specified by the <see cref="T:System.Security.Cryptography.X509Certificates.X509FindType" /> enumeration and the <paramref name="findValue" /> object.</summary>
      <param name="findType">One of the <see cref="T:System.Security.Cryptography.X509Certificates.X509FindType" /> values.</param>
      <param name="findValue">The search criteria as an object.</param>
      <param name="validOnly">
        <see langword="true" /> to allow only valid certificates to be returned from the search; otherwise, <see langword="false" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="findType" /> is invalid.</exception>
      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.GetEnumerator">
      <summary>Returns an enumerator that can iterate through a <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object.</summary>
      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Enumerator" /> object that can iterate through the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Import(System.Byte[],System.String,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags)">
      <summary>Imports a certificate, in the form of a byte array that requires a password to access the certificate, into a <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object.</summary>
      <param name="rawData">A byte array containing data from an <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> object.</param>
      <param name="password">The password required to access the certificate information.</param>
      <param name="keyStorageFlags">A bitwise combination of the enumeration values that control how and where the certificate is imported.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Import(System.Byte[])">
      <summary>Imports a certificate in the form of a byte array into a <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object.</summary>
      <param name="rawData">A byte array containing data from an X.509 certificate.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Import(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Char},System.Security.Cryptography.X509Certificates.X509KeyStorageFlags)">
      <summary>Imports the certificates from the provided data into this collection.</summary>
      <param name="rawData">The certificate data to read.</param>
      <param name="password">The password required to access the certificate data.</param>
      <param name="keyStorageFlags">A bitwise combination of the enumeration values that control where and how to import the certificate.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Import(System.ReadOnlySpan{System.Byte},System.String,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags)">
      <summary>Imports the certificates from the provided data into this collection.</summary>
      <param name="rawData">The certificate data to read.</param>
      <param name="password">The password required to access the certificate data.</param>
      <param name="keyStorageFlags">A bitwise combination of the enumeration values that control where and how to import the certificate.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Import(System.ReadOnlySpan{System.Byte})">
      <summary>Imports the certificates from the provided data into this collection.</summary>
      <param name="rawData">The certificate data to read.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Import(System.String,System.ReadOnlySpan{System.Char},System.Security.Cryptography.X509Certificates.X509KeyStorageFlags)">
      <summary>Imports the certificates from the specified file a into this collection.</summary>
      <param name="fileName">The name of the file containing the certificate information.</param>
      <param name="password">The password required to access the certificate data.</param>
      <param name="keyStorageFlags">A bitwise combination of the enumeration values that control where and how to import the certificate.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Import(System.String,System.String,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags)">
      <summary>Imports a certificate file that requires a password into a <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object.</summary>
      <param name="fileName">The name of the file containing the certificate information.</param>
      <param name="password">The password required to access the certificate information.</param>
      <param name="keyStorageFlags">A bitwise combination of the enumeration values that control how and where the certificate is imported.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Import(System.String)">
      <summary>Imports a certificate file into a <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object.</summary>
      <param name="fileName">The name of the file containing the certificate information.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.ImportFromPem(System.ReadOnlySpan{System.Char})">
      <summary>Imports a collection of RFC 7468 PEM-encoded certificates.</summary>
      <param name="certPem">The text of the PEM-encoded X509 certificate collection.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The decoded contents of a PEM are invalid or corrupt and could not be imported.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.ImportFromPemFile(System.String)">
      <summary>Imports a collection of RFC 7468 PEM-encoded certificates.</summary>
      <param name="certPemFilePath">The path for the PEM-encoded X509 certificate collection.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The decoded contents of a PEM are invalid or corrupt and could not be imported.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="certPemFilePath" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Insert(System.Int32,System.Security.Cryptography.X509Certificates.X509Certificate2)">
      <summary>Inserts an object into the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object at the specified index.</summary>
      <param name="index">The zero-based index at which to insert <paramref name="certificate" />.</param>
      <param name="certificate">The <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> object to insert.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="index" /> is less than zero.  
  
 -or-  
  
 <paramref name="index" /> is greater than the <see cref="P:System.Collections.CollectionBase.Count" /> property.</exception>
      <exception cref="T:System.NotSupportedException">The collection is read-only.  
  
 -or-  
  
 The collection has a fixed size.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="certificate" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Remove(System.Security.Cryptography.X509Certificates.X509Certificate2)">
      <summary>Removes the first occurrence of a certificate from the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object.</summary>
      <param name="certificate">The <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> object to be removed from the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="certificate" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.RemoveRange(System.Security.Cryptography.X509Certificates.X509Certificate2[])">
      <summary>Removes multiple <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> objects in an array from an <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object.</summary>
      <param name="certificates">An array of <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> objects.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="certificates" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.RemoveRange(System.Security.Cryptography.X509Certificates.X509Certificate2Collection)">
      <summary>Removes multiple <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> objects in an <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object from another <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object.</summary>
      <param name="certificates">An <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="certificates" /> is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.System#Collections#Generic#IEnumerable{System#Security#Cryptography#X509Certificates#X509Certificate2}#GetEnumerator">
      <summary>Returns an enumerator that iterates through the collection.</summary>
      <returns>An enumerator that can be used to iterate through the collection.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.TryExportCertificatePems(System.Span{System.Char},System.Int32@)">
      <summary>Attempts to export the public X.509 certificates, encoded as PEM.</summary>
      <param name="destination">The buffer to receive the PEM encoded certificates.</param>
      <param name="charsWritten">When this method returns, the total number of characters written to <paramref name="destination" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">A certificate is corrupt, in an invalid state, or could not be exported
            to PEM.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> was large enough to receive the encoded PEMs; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.TryExportPkcs7Pem(System.Span{System.Char},System.Int32@)">
      <summary>Attempts to export the X.509 public certificates as a PKCS7 certificate collection, encoded as PEM.</summary>
      <param name="destination">The buffer to receive the PEM encoded PKCS7 collection.</param>
      <param name="charsWritten">When this method returns, the total number of characters written to <paramref name="destination" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">A certificate is corrupt, in an invalid state, or could not be exported
            to PEM.</exception>
      <returns>
        <see langword="true" /> if <paramref name="destination" /> was large enough to receive PEM encoded PKCS7 certificate collection; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Item(System.Int32)">
      <summary>Gets or sets the element at the specified index.</summary>
      <param name="index">The zero-based index of the element to get or set.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="index" /> is less than zero.  
  
 -or-  
  
 <paramref name="index" /> is equal to or greater than the <see cref="P:System.Collections.CollectionBase.Count" /> property.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="index" /> is <see langword="null" />.</exception>
      <returns>The element at the specified index.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509Certificate2Enumerator">
      <summary>Supports a simple iteration over a <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object. This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Enumerator.MoveNext">
      <summary>Advances the enumerator to the next element in the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object.</summary>
      <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was created.</exception>
      <returns>
        <see langword="true" /> if the enumerator was successfully advanced to the next element; <see langword="false" /> if the enumerator has passed the end of the collection.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Enumerator.Reset">
      <summary>Sets the enumerator to its initial position, which is before the first element in the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object.</summary>
      <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was created.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Enumerator.System#Collections#IEnumerator#MoveNext">
      <summary>For a description of this member, see <see cref="M:System.Collections.IEnumerator.MoveNext" />.</summary>
      <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was created.</exception>
      <returns>
        <see langword="true" /> if the enumerator was successfully advanced to the next element; <see langword="false" /> if the enumerator has passed the end of the collection.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Enumerator.System#Collections#IEnumerator#Reset">
      <summary>For a description of this member, see <see cref="M:System.Collections.IEnumerator.Reset" />.</summary>
      <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was created.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Certificate2Enumerator.System#IDisposable#Dispose">
      <summary>Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.</summary>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Certificate2Enumerator.Current">
      <summary>Gets the current element in the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object.</summary>
      <exception cref="T:System.InvalidOperationException">The enumerator is positioned before the first element of the collection or after the last element.</exception>
      <returns>The current element in the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Certificate2Enumerator.System#Collections#IEnumerator#Current">
      <summary>For a description of this member, see <see cref="P:System.Collections.IEnumerator.Current" />.</summary>
      <exception cref="T:System.InvalidOperationException">The enumerator is positioned before the first element of the collection or after the last element.</exception>
      <returns>The current element in the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection">
      <summary>Defines a collection that stores <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> objects.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateCollection.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateCollection.#ctor(System.Security.Cryptography.X509Certificates.X509Certificate[])">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" /> class from an array of <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> objects.</summary>
      <param name="value">The array of <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> objects with which to initialize the new object.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateCollection.#ctor(System.Security.Cryptography.X509Certificates.X509CertificateCollection)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" /> class from another <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" />.</summary>
      <param name="value">The <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" /> with which to initialize the new object.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateCollection.Add(System.Security.Cryptography.X509Certificates.X509Certificate)">
      <summary>Adds an <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> with the specified value to the current <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" />.</summary>
      <param name="value">The <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> to add to the current <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" />.</param>
      <returns>The index into the current <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" /> at which the new <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> was inserted.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateCollection.AddRange(System.Security.Cryptography.X509Certificates.X509Certificate[])">
      <summary>Copies the elements of an array of type <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> to the end of the current <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" />.</summary>
      <param name="value">The array of type <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> containing the objects to add to the current <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" />.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="value" /> parameter is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateCollection.AddRange(System.Security.Cryptography.X509Certificates.X509CertificateCollection)">
      <summary>Copies the elements of the specified <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" /> to the end of the current <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" />.</summary>
      <param name="value">The <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" /> containing the objects to add to the collection.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="value" /> parameter is <see langword="null" />.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateCollection.Contains(System.Security.Cryptography.X509Certificates.X509Certificate)">
      <summary>Gets a value indicating whether the current <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" /> contains the specified <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" />.</summary>
      <param name="value">The <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> to locate.</param>
      <returns>
        <see langword="true" /> if the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> is contained in this collection; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateCollection.CopyTo(System.Security.Cryptography.X509Certificates.X509Certificate[],System.Int32)">
      <summary>Copies the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> values in the current <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" /> to a one-dimensional <see cref="T:System.Array" /> instance at the specified index.</summary>
      <param name="array">The one-dimensional <see cref="T:System.Array" /> that is the destination of the values copied from <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" />.</param>
      <param name="index">The index into <paramref name="array" /> to begin copying.</param>
      <exception cref="T:System.ArgumentException">The <paramref name="array" /> parameter is multidimensional.  
  
 -or-  
  
 The number of elements in the <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" /> is greater than the available space between <paramref name="arrayIndex" /> and the end of <paramref name="array" />.</exception>
      <exception cref="T:System.ArgumentNullException">The <paramref name="array" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">The <paramref name="arrayIndex" /> parameter is less than the <paramref name="array" /> parameter's lower bound.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateCollection.GetEnumerator">
      <summary>Returns an enumerator that can iterate through the <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" />.</summary>
      <returns>An enumerator of the subelements of <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" /> you can use to iterate through the collection.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateCollection.GetHashCode">
      <summary>Builds a hash value based on all values contained in the current <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" />.</summary>
      <returns>A hash value based on all values contained in the current <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateCollection.IndexOf(System.Security.Cryptography.X509Certificates.X509Certificate)">
      <summary>Returns the index of the specified <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> in the current <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" />.</summary>
      <param name="value">The <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> to locate.</param>
      <returns>The index of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> specified by the <paramref name="value" /> parameter in the <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" />, if found; otherwise, -1.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateCollection.Insert(System.Int32,System.Security.Cryptography.X509Certificates.X509Certificate)">
      <summary>Inserts a <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> into the current <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" /> at the specified index.</summary>
      <param name="index">The zero-based index where <paramref name="value" /> should be inserted.</param>
      <param name="value">The <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> to insert.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateCollection.OnValidate(System.Object)">
      <summary>Performs additional custom processes when validating a value.</summary>
      <param name="value">The object to validate.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateCollection.Remove(System.Security.Cryptography.X509Certificates.X509Certificate)">
      <summary>Removes a specific <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> from the current <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" />.</summary>
      <param name="value">The <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> to remove from the current <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" />.</param>
      <exception cref="T:System.ArgumentException">The <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> specified by the <paramref name="value" /> parameter is not found in the current <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" />.</exception>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509CertificateCollection.Item(System.Int32)">
      <summary>Gets or sets the entry at the specified index of the current <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" />.</summary>
      <param name="index">The zero-based index of the entry to locate in the current <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" />.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">The <paramref name="index" /> parameter is outside the valid range of indexes for the collection.</exception>
      <returns>The <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> at the specified index of the current <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection.X509CertificateEnumerator">
      <summary>Enumerates the <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> objects in an <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateCollection.X509CertificateEnumerator.#ctor(System.Security.Cryptography.X509Certificates.X509CertificateCollection)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection.X509CertificateEnumerator" /> class for the specified <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" />.</summary>
      <param name="mappings">The <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" /> to enumerate.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateCollection.X509CertificateEnumerator.MoveNext">
      <summary>Advances the enumerator to the next element of the collection.</summary>
      <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was instantiated.</exception>
      <returns>
        <see langword="true" /> if the enumerator was successfully advanced to the next element; <see langword="false" /> if the enumerator has passed the end of the collection.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateCollection.X509CertificateEnumerator.Reset">
      <summary>Sets the enumerator to its initial position, which is before the first element in the collection.</summary>
      <exception cref="T:System.InvalidOperationException">The collection is modified after the enumerator is instantiated.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateCollection.X509CertificateEnumerator.System#Collections#IEnumerator#MoveNext">
      <summary>For a description of this member, see <see cref="M:System.Collections.IEnumerator.MoveNext" />.</summary>
      <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was instantiated.</exception>
      <returns>
        <see langword="true" /> if the enumerator was successfully advanced to the next element; <see langword="false" /> if the enumerator has passed the end of the collection.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateCollection.X509CertificateEnumerator.System#Collections#IEnumerator#Reset">
      <summary>For a description of this member, see <see cref="M:System.Collections.IEnumerator.Reset" />.</summary>
      <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was instantiated.</exception>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509CertificateCollection.X509CertificateEnumerator.Current">
      <summary>Gets the current <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> in the <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" />.</summary>
      <exception cref="T:System.InvalidOperationException">The enumerator is positioned before the first element of the collection or after the last element.</exception>
      <returns>The current <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate" /> in the <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509CertificateCollection.X509CertificateEnumerator.System#Collections#IEnumerator#Current">
      <summary>For a description of this member, see <see cref="P:System.Collections.IEnumerator.Current" />.</summary>
      <exception cref="T:System.InvalidOperationException">The enumerator is positioned before the first element of the collection or after the last element.</exception>
      <returns>The current X.509 certificate object in the <see cref="T:System.Security.Cryptography.X509Certificates.X509CertificateCollection" /> object.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509CertificateLoader" />
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateLoader.LoadCertificate(System.Byte[])">
      <summary>
              Loads a single X.509 certificate from <paramref name="data" />, in either the PEM
              or DER encoding.</summary>
      <param name="data">The data to load.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
              The data did not load as a valid X.509 certificate.</exception>
      <returns>
              The certificate loaded from <paramref name="data" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateLoader.LoadCertificate(System.ReadOnlySpan{System.Byte})">
      <summary>
              Loads a single X.509 certificate from <paramref name="data" />, in either the PEM
              or DER encoding.</summary>
      <param name="data">The data to load.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
              The data did not load as a valid X.509 certificate.</exception>
      <returns>
              The certificate loaded from <paramref name="data" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateLoader.LoadCertificateFromFile(System.String)">
      <summary>
              Loads a single X.509 certificate (in either the PEM or DER encoding)
              from the specified file.</summary>
      <param name="path">The path of the file to open.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="path" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
              The data did not load as a valid X.509 certificate.</exception>
      <exception cref="T:System.IO.IOException">
              An error occurred while loading the specified file.</exception>
      <returns>
              The loaded certificate.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateLoader.LoadPkcs12(System.Byte[],System.String,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags,System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits)">
      <summary>
              Loads the provided data as a PKCS#12 PFX and extracts a certificate.</summary>
      <param name="data">The data to load.</param>
      <param name="password">The password to decrypt the contents of the PFX.</param>
      <param name="keyStorageFlags">
              A bitwise combination of the enumeration values that control where and how to
              import the private key associated with the returned certificate.</param>
      <param name="loaderLimits">
              Limits to apply when loading the PFX.  A <see langword="null" /> value, the default,
              is equivalent to <see cref="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.Defaults" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="keyStorageFlags" /> contains a value, or combination of values,
              that is not valid.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="keyStorageFlags" /> contains a value that is not valid for the
              current platform.</exception>
      <exception cref="T:System.Security.Cryptography.X509Certificates.Pkcs12LoadLimitExceededException">
              The PKCS#12/PFX violated one or more constraints of <paramref name="loaderLimits" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
              An error occurred while loading the PKCS#12/PFX.</exception>
      <returns>The loaded certificate.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateLoader.LoadPkcs12(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Char},System.Security.Cryptography.X509Certificates.X509KeyStorageFlags,System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits)">
      <summary>
              Loads the provided data as a PKCS#12 PFX and extracts a certificate.</summary>
      <param name="data">The data to load.</param>
      <param name="password">The password to decrypt the contents of the PFX.</param>
      <param name="keyStorageFlags">
              A bitwise combination of the enumeration values that control where and how to
              import the private key associated with the returned certificate.</param>
      <param name="loaderLimits">
              Limits to apply when loading the PFX.  A <see langword="null" /> value, the default,
              is equivalent to <see cref="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.Defaults" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="keyStorageFlags" /> contains a value, or combination of values,
              that is not valid.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="keyStorageFlags" /> contains a value that is not valid for the
              current platform.</exception>
      <exception cref="T:System.Security.Cryptography.X509Certificates.Pkcs12LoadLimitExceededException">
              The PKCS#12/PFX violated one or more constraints of <paramref name="loaderLimits" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
              An error occurred while loading the PKCS#12/PFX.</exception>
      <returns>The loaded certificate.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateLoader.LoadPkcs12Collection(System.Byte[],System.String,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags,System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits)">
      <summary>
              Loads the provided data as a PKCS#12 PFX and returns a collection of
              all of the certificates therein.</summary>
      <param name="data">The data to load.</param>
      <param name="password">The password to decrypt the contents of the PFX.</param>
      <param name="keyStorageFlags">
              A bitwise combination of the enumeration values that control where and how to
              import the private key associated with the returned certificate.</param>
      <param name="loaderLimits">
              Limits to apply when loading the PFX.  A <see langword="null" /> value, the default,
              is equivalent to <see cref="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.Defaults" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="keyStorageFlags" /> contains a value, or combination of values,
              that is not valid.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="keyStorageFlags" /> contains a value that is not valid for the
              current platform.</exception>
      <exception cref="T:System.Security.Cryptography.X509Certificates.Pkcs12LoadLimitExceededException">
              The PKCS#12/PFX violated one or more constraints of <paramref name="loaderLimits" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
              An error occurred while loading the PKCS#12/PFX.</exception>
      <returns>A collection of the certificates loaded from the input.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateLoader.LoadPkcs12Collection(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Char},System.Security.Cryptography.X509Certificates.X509KeyStorageFlags,System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits)">
      <summary>
              Loads the provided data as a PKCS#12 PFX and returns a collection of
              all of the certificates therein.</summary>
      <param name="data">The data to load.</param>
      <param name="password">The password to decrypt the contents of the PFX.</param>
      <param name="keyStorageFlags">
              A bitwise combination of the enumeration values that control where and how to
              import the private key associated with the returned certificate.</param>
      <param name="loaderLimits">
              Limits to apply when loading the PFX.  A <see langword="null" /> value, the default,
              is equivalent to <see cref="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.Defaults" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="data" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="keyStorageFlags" /> contains a value, or combination of values,
              that is not valid.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="keyStorageFlags" /> contains a value that is not valid for the
              current platform.</exception>
      <exception cref="T:System.Security.Cryptography.X509Certificates.Pkcs12LoadLimitExceededException">
              The PKCS#12/PFX violated one or more constraints of <paramref name="loaderLimits" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
              An error occurred while loading the PKCS#12/PFX.</exception>
      <returns>A collection of the certificates loaded from the input.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateLoader.LoadPkcs12CollectionFromFile(System.String,System.ReadOnlySpan{System.Char},System.Security.Cryptography.X509Certificates.X509KeyStorageFlags,System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits)">
      <summary>
              Opens the specified file, reads the contents as a PKCS#12 PFX and extracts a certificate.
              Loads the provided data as a PKCS#12 PFX and returns a collection of
              all of the certificates therein.</summary>
      <param name="path">The path of the file to open.</param>
      <param name="password">The password to decrypt the contents of the PFX.</param>
      <param name="keyStorageFlags">
              A bitwise combination of the enumeration values that control where and how to
              import the private key associated with the returned certificate.</param>
      <param name="loaderLimits">
              Limits to apply when loading the PFX.  A <see langword="null" /> value, the default,
              is equivalent to <see cref="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.Defaults" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="path" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="keyStorageFlags" /> contains a value, or combination of values,
              that is not valid.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="keyStorageFlags" /> contains a value that is not valid for the
              current platform.</exception>
      <exception cref="T:System.Security.Cryptography.X509Certificates.Pkcs12LoadLimitExceededException">
              The PKCS#12/PFX violated one or more constraints of <paramref name="loaderLimits" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
              An error occurred while loading the PKCS#12/PFX.</exception>
      <exception cref="T:System.IO.IOException">
              An error occurred while loading the specified file.</exception>
      <returns>
              The loaded certificate.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateLoader.LoadPkcs12CollectionFromFile(System.String,System.String,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags,System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits)">
      <summary>
              Opens the specified file, reads the contents as a PKCS#12 PFX and extracts a certificate.
              Loads the provided data as a PKCS#12 PFX and returns a collection of
              all of the certificates therein.</summary>
      <param name="path">The path of the file to open.</param>
      <param name="password">The password to decrypt the contents of the PFX.</param>
      <param name="keyStorageFlags">
              A bitwise combination of the enumeration values that control where and how to
              import the private key associated with the returned certificate.</param>
      <param name="loaderLimits">
              Limits to apply when loading the PFX.  A <see langword="null" /> value, the default,
              is equivalent to <see cref="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.Defaults" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="path" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="keyStorageFlags" /> contains a value, or combination of values,
              that is not valid.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="keyStorageFlags" /> contains a value that is not valid for the
              current platform.</exception>
      <exception cref="T:System.Security.Cryptography.X509Certificates.Pkcs12LoadLimitExceededException">
              The PKCS#12/PFX violated one or more constraints of <paramref name="loaderLimits" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
              An error occurred while loading the PKCS#12/PFX.</exception>
      <exception cref="T:System.IO.IOException">
              An error occurred while loading the specified file.</exception>
      <returns>
              The loaded certificate.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateLoader.LoadPkcs12FromFile(System.String,System.ReadOnlySpan{System.Char},System.Security.Cryptography.X509Certificates.X509KeyStorageFlags,System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits)">
      <summary>
              Opens the specified file, reads the contents as a PKCS#12 PFX and extracts a certificate.</summary>
      <param name="path">The path of the file to open.</param>
      <param name="password">The password to decrypt the contents of the PFX.</param>
      <param name="keyStorageFlags">
              A bitwise combination of the enumeration values that control where and how to
              import the private key associated with the returned certificate.</param>
      <param name="loaderLimits">
              Limits to apply when loading the PFX.  A <see langword="null" /> value, the default,
              is equivalent to <see cref="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.Defaults" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="path" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="keyStorageFlags" /> contains a value, or combination of values,
              that is not valid.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="keyStorageFlags" /> contains a value that is not valid for the
              current platform.</exception>
      <exception cref="T:System.Security.Cryptography.X509Certificates.Pkcs12LoadLimitExceededException">
              The PKCS#12/PFX violated one or more constraints of <paramref name="loaderLimits" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
              An error occurred while loading the PKCS#12/PFX.</exception>
      <exception cref="T:System.IO.IOException">
              An error occurred while loading the specified file.</exception>
      <returns>
              The loaded certificate.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509CertificateLoader.LoadPkcs12FromFile(System.String,System.String,System.Security.Cryptography.X509Certificates.X509KeyStorageFlags,System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits)">
      <summary>
              Opens the specified file, reads the contents as a PKCS#12 PFX and extracts a certificate.</summary>
      <param name="path">The path of the file to open.</param>
      <param name="password">The password to decrypt the contents of the PFX.</param>
      <param name="keyStorageFlags">
              A bitwise combination of the enumeration values that control where and how to
              import the private key associated with the returned certificate.</param>
      <param name="loaderLimits">
              Limits to apply when loading the PFX.  A <see langword="null" /> value, the default,
              is equivalent to <see cref="P:System.Security.Cryptography.X509Certificates.Pkcs12LoaderLimits.Defaults" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="path" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="keyStorageFlags" /> contains a value, or combination of values,
              that is not valid.</exception>
      <exception cref="T:System.PlatformNotSupportedException">
        <paramref name="keyStorageFlags" /> contains a value that is not valid for the
              current platform.</exception>
      <exception cref="T:System.Security.Cryptography.X509Certificates.Pkcs12LoadLimitExceededException">
              The PKCS#12/PFX violated one or more constraints of <paramref name="loaderLimits" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
              An error occurred while loading the PKCS#12/PFX.</exception>
      <exception cref="T:System.IO.IOException">
              An error occurred while loading the specified file.</exception>
      <returns>
              The loaded certificate.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509Chain">
      <summary>Represents a chain-building engine for <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> certificates.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Chain.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Chain" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Chain.#ctor(System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Chain" /> class specifying a value that indicates whether the machine context should be used.</summary>
      <param name="useMachineContext">
        <see langword="true" /> to use the machine context; <see langword="false" /> to use the current user context.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Chain.#ctor(System.IntPtr)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Chain" /> class using an <see cref="T:System.IntPtr" /> handle to an X.509 chain.</summary>
      <param name="chainContext">An <see cref="T:System.IntPtr" /> handle to an X.509 chain.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="chainContext" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The <paramref name="chainContext" /> parameter points to an invalid context.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Chain.Build(System.Security.Cryptography.X509Certificates.X509Certificate2)">
      <summary>Builds an X.509 chain using the policy specified in <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainPolicy" />.</summary>
      <param name="certificate">An <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> object.</param>
      <exception cref="T:System.ArgumentException">The <paramref name="certificate" /> is not a valid certificate or is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The <paramref name="certificate" /> is unreadable.</exception>
      <returns>
        <see langword="true" /> if the X.509 certificate is valid; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Chain.Create">
      <summary>Creates an <see cref="T:System.Security.Cryptography.X509Certificates.X509Chain" /> object after querying for the mapping defined in the CryptoConfig file, and maps the chain to that mapping.</summary>
      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X509Chain" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Chain.Dispose">
      <summary>Releases all of the resources used by this <see cref="T:System.Security.Cryptography.X509Certificates.X509Chain" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Chain.Dispose(System.Boolean)">
      <summary>Releases the unmanaged resources used by this <see cref="T:System.Security.Cryptography.X509Certificates.X509Chain" />, and optionally releases the managed resources.</summary>
      <param name="disposing">
        <see langword="true" /> to release both managed and unmanaged resources; <see langword="false" /> to release only unmanaged resources.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Chain.Reset">
      <summary>Clears the current <see cref="T:System.Security.Cryptography.X509Certificates.X509Chain" /> object.</summary>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Chain.ChainContext">
      <summary>Gets a handle to an X.509 chain.</summary>
      <returns>An <see cref="T:System.IntPtr" /> handle to an X.509 chain.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Chain.ChainElements">
      <summary>Gets a collection of <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainElement" /> objects.</summary>
      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainElementCollection" /> object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Chain.ChainPolicy">
      <summary>Gets or sets the <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainPolicy" /> to use when building an X.509 certificate chain.</summary>
      <exception cref="T:System.ArgumentNullException">The value being set for this property is <see langword="null" />.</exception>
      <returns>The <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainPolicy" /> object associated with this X.509 chain.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Chain.ChainStatus">
      <summary>Gets the status of each element in an <see cref="T:System.Security.Cryptography.X509Certificates.X509Chain" /> object.</summary>
      <returns>An array of <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainStatus" /> objects.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Chain.SafeHandle">
      <summary>Gets a safe handle for this <see cref="T:System.Security.Cryptography.X509Certificates.X509Chain" /> instance.</summary>
      <returns>The safe handle for this <see cref="T:System.Security.Cryptography.X509Certificates.X509Chain" /> instance.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509ChainElement">
      <summary>Represents an element of an X.509 chain.</summary>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ChainElement.Certificate">
      <summary>Gets the X.509 certificate at a particular chain element.</summary>
      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2" /> object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ChainElement.ChainElementStatus">
      <summary>Gets the error status of the current X.509 certificate in a chain.</summary>
      <returns>An array of <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainStatus" /> objects.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ChainElement.Information">
      <summary>Gets additional error information from an unmanaged certificate chain structure.</summary>
      <returns>A string representing the <see langword="pwszExtendedErrorInfo" /> member of the unmanaged <see langword="CERT_CHAIN_ELEMENT" /> structure in the Crypto API.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509ChainElementCollection">
      <summary>Represents a collection of <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainElement" /> objects. This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509ChainElementCollection.CopyTo(System.Security.Cryptography.X509Certificates.X509ChainElement[],System.Int32)">
      <summary>Copies an <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainElementCollection" /> object into an array, starting at the specified index.</summary>
      <param name="array">An array of <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainElement" /> objects.</param>
      <param name="index">An integer representing the index value.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">The specified <paramref name="index" /> is less than zero, or greater than or equal to the length of the array.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="array" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="index" /> plus the current count is greater than the length of the array.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509ChainElementCollection.GetEnumerator">
      <summary>Gets an <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainElementEnumerator" /> object that can be used to navigate through a collection of chain elements.</summary>
      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainElementEnumerator" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509ChainElementCollection.System#Collections#Generic#IEnumerable{System#Security#Cryptography#X509Certificates#X509ChainElement}#GetEnumerator">
      <summary>Returns an enumerator that iterates through the collection.</summary>
      <returns>An enumerator that can be used to iterate through the collection.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509ChainElementCollection.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">
      <summary>Copies an <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainElementCollection" /> object into an array, starting at the specified index.</summary>
      <param name="array">An array to copy the <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainElementCollection" /> object to.</param>
      <param name="index">The index of <paramref name="array" /> at which to start copying.</param>
      <exception cref="T:System.ArgumentOutOfRangeException">The specified <paramref name="index" /> is less than zero, or greater than or equal to the length of the array.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="array" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="index" /> plus the current count is greater than the length of the array.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509ChainElementCollection.System#Collections#IEnumerable#GetEnumerator">
      <summary>Gets an <see cref="T:System.Collections.IEnumerator" /> object that can be used to navigate a collection of chain elements.</summary>
      <returns>An <see cref="T:System.Collections.IEnumerator" /> object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ChainElementCollection.Count">
      <summary>Gets the number of elements in the collection.</summary>
      <returns>An integer representing the number of elements in the collection.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ChainElementCollection.IsSynchronized">
      <summary>Gets a value indicating whether the collection of chain elements is synchronized.</summary>
      <returns>Always returns <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ChainElementCollection.Item(System.Int32)">
      <summary>Gets the <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainElement" /> object at the specified index.</summary>
      <param name="index">An integer value.</param>
      <exception cref="T:System.InvalidOperationException">
        <paramref name="index" /> is less than zero.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="index" /> is greater than or equal to the length of the collection.</exception>
      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainElement" /> object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ChainElementCollection.SyncRoot">
      <summary>Gets an object that can be used to synchronize access to an <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainElementCollection" /> object.</summary>
      <returns>A pointer reference to the current object.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509ChainElementEnumerator">
      <summary>Supports a simple iteration over an <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainElementCollection" />. This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509ChainElementEnumerator.MoveNext">
      <summary>Advances the enumerator to the next element in the <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainElementCollection" />.</summary>
      <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was created.</exception>
      <returns>
        <see langword="true" /> if the enumerator was successfully advanced to the next element; <see langword="false" /> if the enumerator has passed the end of the collection.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509ChainElementEnumerator.Reset">
      <summary>Sets the enumerator to its initial position, which is before the first element in the <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainElementCollection" />.</summary>
      <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was created.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509ChainElementEnumerator.System#IDisposable#Dispose">
      <summary>Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.</summary>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ChainElementEnumerator.Current">
      <summary>Gets the current element in the <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainElementCollection" />.</summary>
      <exception cref="T:System.InvalidOperationException">The enumerator is positioned before the first element of the collection or after the last element.</exception>
      <returns>The current element in the <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainElementCollection" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ChainElementEnumerator.System#Collections#IEnumerator#Current">
      <summary>Gets the current element in the <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainElementCollection" />.</summary>
      <exception cref="T:System.InvalidOperationException">The enumerator is positioned before the first element of the collection or after the last element.</exception>
      <returns>The current element in the <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainElementCollection" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509ChainPolicy">
      <summary>Represents the chain policy to be applied when building an X509 certificate chain. This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509ChainPolicy.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainPolicy" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509ChainPolicy.Clone">
      <summary>Creates a new chain policy instance that has the same settings as this instance.</summary>
      <returns>A new chain policy instance that has the same settings as this instance.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509ChainPolicy.Reset">
      <summary>Resets the <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainPolicy" /> members to their default values.</summary>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ChainPolicy.ApplicationPolicy">
      <summary>Gets a collection of object identifiers (OIDs) specifying which application policies or enhanced key usages (EKUs) the certificate must support.</summary>
      <returns>An <see cref="T:System.Security.Cryptography.OidCollection" /> object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ChainPolicy.CertificatePolicy">
      <summary>Gets a collection of object identifiers (OIDs) specifying which certificate policies the certificate must support.</summary>
      <returns>An <see cref="T:System.Security.Cryptography.OidCollection" /> object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ChainPolicy.CustomTrustStore">
      <summary>Represents a collection of certificates replacing the default certificate trust.</summary>
      <returns>A collection of certificates replacing the default certificate trust.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ChainPolicy.DisableCertificateDownloads">
      <summary>Gets or sets a value that indicates whether the chain engine can use the Authority Information Access (AIA) extension to locate unknown issuer certificates.</summary>
      <returns>
        <see langword="true" /> if using the AIA extension is disabled; otherwise, <see langword="false" />.
 The default is <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ChainPolicy.ExtraStore">
      <summary>Gets an object that represents an additional collection of certificates that can be searched by the chaining engine when validating a certificate chain.</summary>
      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X509Certificate2Collection" /> object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ChainPolicy.RevocationFlag">
      <summary>Gets or sets values for X509 revocation flags.</summary>
      <exception cref="T:System.ArgumentException">The <see cref="T:System.Security.Cryptography.X509Certificates.X509RevocationFlag" /> value supplied is not a valid flag.</exception>
      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X509RevocationFlag" /> object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ChainPolicy.RevocationMode">
      <summary>Gets or sets values for X509 certificate revocation mode.</summary>
      <exception cref="T:System.ArgumentException">The <see cref="T:System.Security.Cryptography.X509Certificates.X509RevocationMode" /> value supplied is not a valid flag.</exception>
      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X509RevocationMode" /> object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ChainPolicy.TrustMode">
      <summary>The mode determining the root trust for building the certificate chain.</summary>
      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainTrustMode" /> value determining the root trust.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ChainPolicy.UrlRetrievalTimeout">
      <summary>Gets or sets the maximum amount of time to be spent during online revocation verification or downloading the certificate revocation list (CRL). A value of <see cref="F:System.TimeSpan.Zero" /> means there are no limits.</summary>
      <returns>A <see cref="T:System.TimeSpan" /> object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ChainPolicy.VerificationFlags">
      <summary>Gets verification flags for the certificate.</summary>
      <exception cref="T:System.ArgumentException">The <see cref="T:System.Security.Cryptography.X509Certificates.X509VerificationFlags" /> value supplied is not a valid flag. <see cref="F:System.Security.Cryptography.X509Certificates.X509VerificationFlags.NoFlag" /> is the default value.</exception>
      <returns>A value from the <see cref="T:System.Security.Cryptography.X509Certificates.X509VerificationFlags" /> enumeration.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ChainPolicy.VerificationTime">
      <summary>Gets or sets the time for which the chain is to be validated.</summary>
      <returns>A <see cref="T:System.DateTime" /> object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ChainPolicy.VerificationTimeIgnored">
      <summary>Gets or sets a value that indicates whether the chain validation should use <see cref="P:System.Security.Cryptography.X509Certificates.X509ChainPolicy.VerificationTime" /> or the current system time when building an X.509 certificate chain.</summary>
      <returns>
        <see langword="true" /> if <see cref="P:System.Security.Cryptography.X509Certificates.X509ChainPolicy.VerificationTime" /> is ignored and the current system time is used; otherwise <see langword="false" />.
              The default is <see langword="true" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509ChainStatus">
      <summary>Provides a simple structure for storing X509 chain status and error information.</summary>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ChainStatus.Status">
      <summary>Specifies the status of the X509 chain.</summary>
      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags" /> value.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ChainStatus.StatusInformation">
      <summary>Specifies a description of the <see cref="P:System.Security.Cryptography.X509Certificates.X509Chain.ChainStatus" /> value.</summary>
      <returns>A localizable string.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags">
      <summary>Defines the status of an X509 chain.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags.CtlNotSignatureValid">
      <summary>Specifies that the certificate trust list (CTL) contains an invalid signature.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags.CtlNotTimeValid">
      <summary>Specifies that the certificate trust list (CTL) is not valid because of an invalid time value, such as one that indicates that the CTL has expired.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags.CtlNotValidForUsage">
      <summary>Specifies that the certificate trust list (CTL) is not valid for this use.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags.Cyclic">
      <summary>Specifies that the X509 chain could not be built.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags.ExplicitDistrust">
      <summary>Specifies that the certificate is explicitly distrusted.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags.HasExcludedNameConstraint">
      <summary>Specifies that the X509 chain is invalid because a certificate has excluded a name constraint.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags.HasNotDefinedNameConstraint">
      <summary>Specifies that the certificate has an undefined name constraint.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags.HasNotPermittedNameConstraint">
      <summary>Specifies that the certificate has an impermissible name constraint.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags.HasNotSupportedCriticalExtension">
      <summary>Specifies that the certificate does not support a critical extension.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags.HasNotSupportedNameConstraint">
      <summary>Specifies that the certificate does not have a supported name constraint or has a name constraint that is unsupported.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags.HasWeakSignature">
      <summary>Specifies that the certificate has not been strong signed. Typically, this indicates that the MD2 or MD5 hashing algorithms were used to create a hash of the certificate.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags.InvalidBasicConstraints">
      <summary>Specifies that the X509 chain is invalid due to invalid basic constraints.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags.InvalidExtension">
      <summary>Specifies that the X509 chain is invalid due to an invalid extension.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags.InvalidNameConstraints">
      <summary>Specifies that the X509 chain is invalid due to invalid name constraints.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags.InvalidPolicyConstraints">
      <summary>Specifies that the X509 chain is invalid due to invalid policy constraints.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags.NoError">
      <summary>Specifies that the X509 chain has no errors.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags.NoIssuanceChainPolicy">
      <summary>Specifies that there is no certificate policy extension in the certificate. This error would occur if a group policy has specified that all certificates must have a certificate policy.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags.NotSignatureValid">
      <summary>Specifies that the X509 chain is invalid due to an invalid certificate signature.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags.NotTimeNested">
      <summary>Deprecated. Specifies that the CA (certificate authority) certificate and the issued certificate have validity periods that are not nested. For example, the CA cert can be valid from January 1 to December 1 and the issued certificate from January 2 to December 2, which would mean the validity periods are not nested.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags.NotTimeValid">
      <summary>Specifies that the X509 chain is not valid due to an invalid time value, such as a value that indicates an expired certificate.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags.NotValidForUsage">
      <summary>Specifies that the key usage is not valid.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags.OfflineRevocation">
      <summary>Specifies that the online certificate revocation list (CRL) the X509 chain relies on is currently offline.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags.PartialChain">
      <summary>Specifies that the X509 chain could not be built up to the root certificate.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags.RevocationStatusUnknown">
      <summary>Specifies that it is not possible to determine whether the certificate has been revoked. This can be due to the certificate revocation list (CRL) being offline or unavailable.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags.Revoked">
      <summary>Specifies that the X509 chain is invalid due to a revoked certificate.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainStatusFlags.UntrustedRoot">
      <summary>Specifies that the X509 chain is invalid due to an untrusted root certificate.</summary>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509ChainTrustMode">
      <summary>The mode determining the root trust for building the certificate chain.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainTrustMode.CustomRootTrust">
      <summary>When this value is used, the <see cref="P:System.Security.Cryptography.X509Certificates.X509ChainPolicy.CustomTrustStore" /> will be used instead of the default root trust.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ChainTrustMode.System">
      <summary>Use the default (system) root trust.</summary>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509ContentType">
      <summary>Specifies the format of an X.509 certificate.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ContentType.Authenticode">
      <summary>An Authenticode X.509 certificate.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ContentType.Cert">
      <summary>A single X.509 certificate.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ContentType.Pfx">
      <summary>A PFX-formatted certificate. The <see langword="Pfx" /> value is identical to the <see langword="Pkcs12" /> value.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ContentType.Pkcs12">
      <summary>A PKCS #12-formatted certificate. The <see langword="Pkcs12" /> value is identical to the <see langword="Pfx" /> value.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ContentType.Pkcs7">
      <summary>A PKCS #7-formatted certificate.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ContentType.SerializedCert">
      <summary>A single serialized X.509 certificate.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ContentType.SerializedStore">
      <summary>A serialized store.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509ContentType.Unknown">
      <summary>An unknown X.509 certificate.</summary>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509EnhancedKeyUsageExtension">
      <summary>Defines the collection of object identifiers (OIDs) that indicates the applications that use the key. This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509EnhancedKeyUsageExtension.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509EnhancedKeyUsageExtension" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509EnhancedKeyUsageExtension.#ctor(System.Security.Cryptography.AsnEncodedData,System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509EnhancedKeyUsageExtension" /> class using an <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object and a value that identifies whether the extension is critical.</summary>
      <param name="encodedEnhancedKeyUsages">The encoded data to use to create the extension.</param>
      <param name="critical">
        <see langword="true" /> if the extension is critical; otherwise, <see langword="false" />.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509EnhancedKeyUsageExtension.#ctor(System.Security.Cryptography.OidCollection,System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509EnhancedKeyUsageExtension" /> class using an <see cref="T:System.Security.Cryptography.OidCollection" /> and a value that identifies whether the extension is critical.</summary>
      <param name="enhancedKeyUsages">An <see cref="T:System.Security.Cryptography.OidCollection" /> collection.</param>
      <param name="critical">
        <see langword="true" /> if the extension is critical; otherwise, <see langword="false" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The specified <see cref="T:System.Security.Cryptography.OidCollection" /> contains one or more corrupt values.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509EnhancedKeyUsageExtension.CopyFrom(System.Security.Cryptography.AsnEncodedData)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509EnhancedKeyUsageExtension" /> class using an <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object.</summary>
      <param name="asnEncodedData">The encoded data to use to create the extension.</param>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509EnhancedKeyUsageExtension.EnhancedKeyUsages">
      <summary>Gets the collection of object identifiers (OIDs) that indicate the applications that use the key.</summary>
      <returns>An <see cref="T:System.Security.Cryptography.OidCollection" /> object indicating the applications that use the key.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509Extension">
      <summary>Represents an X509 extension.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Extension.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Extension" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Extension.#ctor(System.Security.Cryptography.AsnEncodedData,System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Extension" /> class.</summary>
      <param name="encodedExtension">The encoded data to be used to create the extension.</param>
      <param name="critical">
        <see langword="true" /> if the extension is critical; otherwise <see langword="false" />.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Extension.#ctor(System.Security.Cryptography.Oid,System.Byte[],System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Extension" /> class.</summary>
      <param name="oid">The object identifier used to identify the extension.</param>
      <param name="rawData">The encoded data used to create the extension.</param>
      <param name="critical">
        <see langword="true" /> if the extension is critical; otherwise <see langword="false" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="oid" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="oid" /> is an empty string ("").</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Extension.#ctor(System.Security.Cryptography.Oid,System.ReadOnlySpan{System.Byte},System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Extension" /> class.</summary>
      <param name="oid">The object identifier used to identify the extension.</param>
      <param name="rawData">The encoded data used to create the extension.</param>
      <param name="critical">
        <see langword="true" /> if the extension is critical; otherwise, <see langword="false" />.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Extension.#ctor(System.String,System.Byte[],System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Extension" /> class.</summary>
      <param name="oid">A string representing the object identifier.</param>
      <param name="rawData">The encoded data used to create the extension.</param>
      <param name="critical">
        <see langword="true" /> if the extension is critical; otherwise <see langword="false" />.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Extension.#ctor(System.String,System.ReadOnlySpan{System.Byte},System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Extension" /> class.</summary>
      <param name="oid">The object identifier used to identify the extension.</param>
      <param name="rawData">The encoded data used to create the extension.</param>
      <param name="critical">
        <see langword="true" /> if the extension is critical; otherwise, <see langword="false" />.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Extension.CopyFrom(System.Security.Cryptography.AsnEncodedData)">
      <summary>Copies the extension properties of the specified <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object.</summary>
      <param name="asnEncodedData">The <see cref="T:System.Security.Cryptography.AsnEncodedData" /> to be copied.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="asnEncodedData" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">
        <paramref name="asnEncodedData" /> does not have a valid X.509 extension.</exception>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Extension.Critical">
      <summary>Gets a Boolean value indicating whether the extension is critical.</summary>
      <returns>
        <see langword="true" /> if the extension is critical; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509ExtensionCollection">
      <summary>Represents a collection of <see cref="T:System.Security.Cryptography.X509Certificates.X509Extension" /> objects. This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509ExtensionCollection.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509ExtensionCollection" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509ExtensionCollection.Add(System.Security.Cryptography.X509Certificates.X509Extension)">
      <summary>Adds an <see cref="T:System.Security.Cryptography.X509Certificates.X509Extension" /> object to an <see cref="T:System.Security.Cryptography.X509Certificates.X509ExtensionCollection" /> object.</summary>
      <param name="extension">An <see cref="T:System.Security.Cryptography.X509Certificates.X509Extension" /> object to add to the <see cref="T:System.Security.Cryptography.X509Certificates.X509ExtensionCollection" /> object.</param>
      <exception cref="T:System.ArgumentNullException">The value of the <paramref name="extension" /> parameter is <see langword="null" />.</exception>
      <returns>The index at which the <paramref name="extension" /> parameter was added.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509ExtensionCollection.CopyTo(System.Security.Cryptography.X509Certificates.X509Extension[],System.Int32)">
      <summary>Copies a collection into an array starting at the specified index.</summary>
      <param name="array">An array of <see cref="T:System.Security.Cryptography.X509Certificates.X509Extension" /> objects.</param>
      <param name="index">The location in the array at which copying starts.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="index" /> is a zero-length string or contains an invalid value.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="index" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="index" /> specifies a value that is not in the range of the array.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509ExtensionCollection.GetEnumerator">
      <summary>Returns an enumerator that can iterate through an <see cref="T:System.Security.Cryptography.X509Certificates.X509ExtensionCollection" /> object.</summary>
      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X509ExtensionEnumerator" /> object to use to iterate through the <see cref="T:System.Security.Cryptography.X509Certificates.X509ExtensionCollection" /> object.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509ExtensionCollection.System#Collections#Generic#IEnumerable{System#Security#Cryptography#X509Certificates#X509Extension}#GetEnumerator">
      <summary>Returns an enumerator that iterates through the collection.</summary>
      <returns>An enumerator that can be used to iterate through the collection.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509ExtensionCollection.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">
      <summary>Copies the collection into an array starting at the specified index.</summary>
      <param name="array">An array of <see cref="T:System.Security.Cryptography.X509Certificates.X509Extension" /> objects.</param>
      <param name="index">The location in the array at which copying starts.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="index" /> is a zero-length string or contains an invalid value.</exception>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="index" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="index" /> specifies a value that is not in the range of the array.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509ExtensionCollection.System#Collections#IEnumerable#GetEnumerator">
      <summary>Returns an enumerator that can iterate through an <see cref="T:System.Security.Cryptography.X509Certificates.X509ExtensionCollection" /> object.</summary>
      <returns>An <see cref="T:System.Collections.IEnumerator" /> object to use to iterate through the <see cref="T:System.Security.Cryptography.X509Certificates.X509ExtensionCollection" /> object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ExtensionCollection.Count">
      <summary>Gets the number of <see cref="T:System.Security.Cryptography.X509Certificates.X509Extension" /> objects in a <see cref="T:System.Security.Cryptography.X509Certificates.X509ExtensionCollection" /> object.</summary>
      <returns>An integer representing the number of <see cref="T:System.Security.Cryptography.X509Certificates.X509Extension" /> objects in the <see cref="T:System.Security.Cryptography.X509Certificates.X509ExtensionCollection" /> object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ExtensionCollection.IsSynchronized">
      <summary>Gets a value indicating whether the collection is guaranteed to be thread safe.</summary>
      <returns>
        <see langword="true" /> if the collection is thread safe; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ExtensionCollection.Item(System.Int32)">
      <summary>Gets the <see cref="T:System.Security.Cryptography.X509Certificates.X509Extension" /> object at the specified index.</summary>
      <param name="index">The location of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Extension" /> object to retrieve.</param>
      <exception cref="T:System.InvalidOperationException">
        <paramref name="index" /> is less than zero.</exception>
      <exception cref="T:System.ArgumentOutOfRangeException">
        <paramref name="index" /> is equal to or greater than the length of the array.</exception>
      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X509Extension" /> object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ExtensionCollection.Item(System.String)">
      <summary>Gets the first <see cref="T:System.Security.Cryptography.X509Certificates.X509Extension" /> object whose value or friendly name is specified by an object identifier (OID).</summary>
      <param name="oid">The object identifier (OID) of the extension to retrieve.</param>
      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X509Extension" /> object.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ExtensionCollection.SyncRoot">
      <summary>Gets an object that you can use to synchronize access to the <see cref="T:System.Security.Cryptography.X509Certificates.X509ExtensionCollection" /> object.</summary>
      <returns>An object that you can use to synchronize access to the <see cref="T:System.Security.Cryptography.X509Certificates.X509ExtensionCollection" /> object.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509ExtensionEnumerator">
      <summary>Supports a simple iteration over a <see cref="T:System.Security.Cryptography.X509Certificates.X509ExtensionCollection" />. This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509ExtensionEnumerator.MoveNext">
      <summary>Advances the enumerator to the next element in the <see cref="T:System.Security.Cryptography.X509Certificates.X509ExtensionCollection" />.</summary>
      <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was created.</exception>
      <returns>
        <see langword="true" /> if the enumerator was successfully advanced to the next element; <see langword="false" /> if the enumerator has passed the end of the collection.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509ExtensionEnumerator.Reset">
      <summary>Sets the enumerator to its initial position, which is before the first element in the <see cref="T:System.Security.Cryptography.X509Certificates.X509ExtensionCollection" />.</summary>
      <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was created.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509ExtensionEnumerator.System#IDisposable#Dispose">
      <summary>Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.</summary>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ExtensionEnumerator.Current">
      <summary>Gets the current element in the <see cref="T:System.Security.Cryptography.X509Certificates.X509ExtensionCollection" />.</summary>
      <exception cref="T:System.InvalidOperationException">The enumerator is positioned before the first element of the collection or after the last element.</exception>
      <returns>The current element in the <see cref="T:System.Security.Cryptography.X509Certificates.X509ExtensionCollection" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509ExtensionEnumerator.System#Collections#IEnumerator#Current">
      <summary>Gets an object from a collection.</summary>
      <exception cref="T:System.InvalidOperationException">The enumerator is positioned before the first element of the collection or after the last element.</exception>
      <returns>The current element in the <see cref="T:System.Security.Cryptography.X509Certificates.X509ExtensionCollection" />.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509FindType">
      <summary>Specifies the type of value the <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> method searches for.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509FindType.FindByApplicationPolicy">
      <summary>The <paramref name="findValue" /> parameter for the <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> method must be a string representing either the application policy friendly name or the object identifier (OID, or <see cref="T:System.Security.Cryptography.Oid" />) of the certificate. For example, "Encrypting File System" or "1.3.6.1.4.1.311.10.3.4" can be used. For an application that will be localized, the OID value must be used, because the friendly name is localized.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509FindType.FindByCertificatePolicy">
      <summary>The <paramref name="findValue" /> parameter for the <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> method must be a string representing either the friendly name or the object identifier (OID, or <see cref="T:System.Security.Cryptography.Oid" />) of the certificate policy. The best practice is to use the OID, such as "1.3.6.1.4.1.311.10.3.4". For an application that will be localized, the OID must be used, because the friendly name is localized.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509FindType.FindByExtension">
      <summary>The <paramref name="findValue" /> parameter for the <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> method must be a string describing the extension to find. The object identifier (OID) is most commonly used to direct the <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> method to search for all certificates that have an extension matching that OID value.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509FindType.FindByIssuerDistinguishedName">
      <summary>The <paramref name="findValue" /> parameter for the <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> method must be a string representing the issuer distinguished name of the certificate. This is a more specific search than that provided by the <see cref="F:System.Security.Cryptography.X509Certificates.X509FindType.FindByIssuerName" /> enumeration value. Using the <see cref="F:System.Security.Cryptography.X509Certificates.X509FindType.FindByIssuerDistinguishedName" /> value, the <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> method performs a case-insensitive string comparison for the entire distinguished name. Searching by issuer name is a less precise search.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509FindType.FindByIssuerName">
      <summary>The <paramref name="findValue" /> parameter for the <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> method must be a string representing the issuer name of the certificate. This is a less specific search than that provided by the <see cref="F:System.Security.Cryptography.X509Certificates.X509FindType.FindByIssuerDistinguishedName" /> enumeration value. Using the <see cref="F:System.Security.Cryptography.X509Certificates.X509FindType.FindByIssuerName" /> value, the <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> method performs a case-insensitive string comparison using the supplied value. For example, if you pass "MyCA" to the <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> method, it will find all certificates with the issuer name containing that string, regardless of other issuer values.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509FindType.FindByKeyUsage">
      <summary>The <paramref name="findValue" /> parameter for the <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> method must be either a string representing the key usage or an integer representing a bit mask containing all the requested key usages. For the string value, only one key usage at a time can be specified, but the <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> method can be used in a cascading sequence to get the intersection of the requested usages. For example, the <paramref name="findValue" /> parameter can be set to "KeyEncipherment" or an integer (0x30 indicates "KeyEncipherment" and "DataEncipherment"). Values of the <see cref="T:System.Security.Cryptography.X509Certificates.X509KeyUsageFlags" /> enumeration can also be used.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509FindType.FindBySerialNumber">
      <summary>The <paramref name="findValue" /> parameter for the <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> method must be a string that represents the serial number of the certificate as displayed by the certificate dialog box, but without the spaces, or as returned by the <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate.GetSerialNumberString" /> method.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509FindType.FindBySubjectDistinguishedName">
      <summary>The <paramref name="findValue" /> parameter for the <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> method must be a string representing the subject distinguished name of the certificate. This is a more specific search than that provided by the <see cref="F:System.Security.Cryptography.X509Certificates.X509FindType.FindBySubjectName" /> enumeration value. Using the <see cref="F:System.Security.Cryptography.X509Certificates.X509FindType.FindBySubjectDistinguishedName" /> value, the <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> method performs a case-insensitive string comparison for the entire distinguished name. Searching by subject name is a less precise search.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509FindType.FindBySubjectKeyIdentifier">
      <summary>The <paramref name="findValue" /> parameter for the <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> method must be a string representing the subject key identifier in hexadecimal, such as "F3E815D45E83B8477B9284113C64EF208E897112", as displayed in the UI.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509FindType.FindBySubjectName">
      <summary>The <paramref name="findValue" /> parameter for the <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> method must be a string representing the subject name of the certificate. This is a less specific search than that provided by the <see cref="F:System.Security.Cryptography.X509Certificates.X509FindType.FindBySubjectDistinguishedName" /> enumeration value. Using the <see cref="F:System.Security.Cryptography.X509Certificates.X509FindType.FindBySubjectName" /> value, the <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> method performs a case-insensitive string comparison using the supplied value. For example, if you pass "MyCert" to the <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> method, it will find all certificates with the subject name containing that string, regardless of other subject values. Searching by distinguished name is a more precise search.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509FindType.FindByTemplateName">
      <summary>The <paramref name="findValue" /> parameter for the <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> method must be a string representing the template name of the certificate, such as "ClientAuth". A template name is an X509 version 3 extension that specifies the uses of the certificate.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509FindType.FindByThumbprint">
      <summary>The <paramref name="findValue" /> parameter for the <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> method must be a string representing the thumbprint of the certificate.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509FindType.FindByTimeExpired">
      <summary>The <paramref name="findValue" /> parameter for the <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> method must be a <see cref="T:System.DateTime" /> value in local time. For example, you can find all the certificates that will be valid until the end of the year by eliminating the results of a <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> operation for <see cref="F:System.Security.Cryptography.X509Certificates.X509FindType.FindByTimeExpired" /> of the last day of the year from the results of a <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> operation for <see cref="P:System.DateTime.Now" />.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509FindType.FindByTimeNotYetValid">
      <summary>The <paramref name="findValue" /> parameter for the <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> method must be a <see cref="T:System.DateTime" /> value in local time. The value does not have to be in the future. For example, you can use <see cref="F:System.Security.Cryptography.X509Certificates.X509FindType.FindByTimeNotYetValid" /> to find certificates that became valid in the current year by taking the intersection of the results of a <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> operation for <see cref="F:System.Security.Cryptography.X509Certificates.X509FindType.FindByTimeNotYetValid" /> for the last day of last year with the results of a <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> operation for <see cref="F:System.Security.Cryptography.X509Certificates.X509FindType.FindByTimeValid" /> of <see cref="P:System.DateTime.Now" />.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509FindType.FindByTimeValid">
      <summary>The <paramref name="findValue" /> parameter for the <see cref="M:System.Security.Cryptography.X509Certificates.X509Certificate2Collection.Find(System.Security.Cryptography.X509Certificates.X509FindType,System.Object,System.Boolean)" /> method must be a <see cref="T:System.DateTime" /> value in local time. You can use <see cref="P:System.DateTime.Now" /> to find all the currently valid certificates.</summary>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509IncludeOption">
      <summary>Specifies how much of the X.509 certificate chain should be included in the X.509 data.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509IncludeOption.EndCertOnly">
      <summary>Only the end certificate is included in the X.509 chain information.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509IncludeOption.ExcludeRoot">
      <summary>The entire X.509 chain is included except for the root certificate.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509IncludeOption.None">
      <summary>No X.509 chain information is included.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509IncludeOption.WholeChain">
      <summary>The entire X.509 chain is included.</summary>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509KeyStorageFlags">
      <summary>Defines where and how to import the private key of an X.509 certificate.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509KeyStorageFlags.DefaultKeySet">
      <summary>The default key set is used.  The user key set is usually the default.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509KeyStorageFlags.EphemeralKeySet">
      <summary>The key associated with a PFX file is created in memory and not persisted on disk when importing a certificate.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509KeyStorageFlags.Exportable">
      <summary>Imported keys are marked as exportable.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509KeyStorageFlags.MachineKeySet">
      <summary>Private keys are stored in the local computer store rather than the current user store.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509KeyStorageFlags.PersistKeySet">
      <summary>The key associated with a PFX file is persisted when importing a certificate.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509KeyStorageFlags.UserKeySet">
      <summary>Private keys are stored in the current user store rather than the local computer store. This occurs even if the certificate specifies that the keys should go in the local computer store.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509KeyStorageFlags.UserProtected">
      <summary>Notify the user through a dialog box or other method that the key is accessed.  The Cryptographic Service Provider (CSP) in use defines the precise behavior.</summary>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509KeyUsageExtension">
      <summary>Defines the usage of a key contained within an X.509 certificate.  This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509KeyUsageExtension.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509KeyUsageExtension" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509KeyUsageExtension.#ctor(System.Security.Cryptography.AsnEncodedData,System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509KeyUsageExtension" /> class using an <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object and a value that identifies whether the extension is critical.</summary>
      <param name="encodedKeyUsage">The encoded data to use to create the extension.</param>
      <param name="critical">
        <see langword="true" /> if the extension is critical; otherwise, <see langword="false" />.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509KeyUsageExtension.#ctor(System.Security.Cryptography.X509Certificates.X509KeyUsageFlags,System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509KeyUsageExtension" /> class using the specified <see cref="T:System.Security.Cryptography.X509Certificates.X509KeyUsageFlags" /> value and a value that identifies whether the extension is critical.</summary>
      <param name="keyUsages">One of the <see cref="T:System.Security.Cryptography.X509Certificates.X509KeyUsageFlags" /> values that describes how to use the key.</param>
      <param name="critical">
        <see langword="true" /> if the extension is critical; otherwise, <see langword="false" />.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509KeyUsageExtension.CopyFrom(System.Security.Cryptography.AsnEncodedData)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509KeyUsageExtension" /> class using an <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object.</summary>
      <param name="asnEncodedData">The encoded data to use to create the extension.</param>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509KeyUsageExtension.KeyUsages">
      <summary>Gets the key usage flag associated with the certificate.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The extension cannot be decoded.</exception>
      <returns>One of the <see cref="P:System.Security.Cryptography.X509Certificates.X509KeyUsageExtension.KeyUsages" /> values.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509KeyUsageFlags">
      <summary>Defines how the certificate key can be used. If this value is not defined, the key can be used for any purpose.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509KeyUsageFlags.CrlSign">
      <summary>The key can be used to sign a certificate revocation list (CRL).</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509KeyUsageFlags.DataEncipherment">
      <summary>The key can be used for data encryption.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509KeyUsageFlags.DecipherOnly">
      <summary>The key can be used for decryption only.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509KeyUsageFlags.DigitalSignature">
      <summary>The key can be used as a digital signature.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509KeyUsageFlags.EncipherOnly">
      <summary>The key can be used for encryption only.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509KeyUsageFlags.KeyAgreement">
      <summary>The key can be used to determine key agreement, such as a key created using the Diffie-Hellman key agreement algorithm.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509KeyUsageFlags.KeyCertSign">
      <summary>The key can be used to sign certificates.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509KeyUsageFlags.KeyEncipherment">
      <summary>The key can be used for key encryption.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509KeyUsageFlags.None">
      <summary>No key usage parameters.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509KeyUsageFlags.NonRepudiation">
      <summary>The key can be used for authentication.</summary>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509NameType">
      <summary>Specifies the type of name the X509 certificate contains.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509NameType.DnsFromAlternativeName">
      <summary>The DNS name associated with the alternative name of either the subject or the issuer of an X.509 certificate.  This value is equivalent to the <see cref="F:System.Security.Cryptography.X509Certificates.X509NameType.DnsName" /> value.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509NameType.DnsName">
      <summary>The DNS name associated with the alternative name of either the subject or issuer of an X509 certificate.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509NameType.EmailName">
      <summary>The email address of the subject or issuer associated of an X509 certificate.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509NameType.SimpleName">
      <summary>The simple name of a subject or issuer of an X509 certificate.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509NameType.UpnName">
      <summary>The UPN name of the subject or issuer of an X509 certificate.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509NameType.UrlName">
      <summary>The URL address associated with the alternative name of either the subject or issuer of an X509 certificate.</summary>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509RevocationFlag">
      <summary>Specifies which X509 certificates in the chain should be checked for revocation.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509RevocationFlag.EndCertificateOnly">
      <summary>Only the end certificate is checked for revocation.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509RevocationFlag.EntireChain">
      <summary>The entire chain of certificates is checked for revocation.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509RevocationFlag.ExcludeRoot">
      <summary>The entire chain, except the root certificate, is checked for revocation.</summary>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509RevocationMode">
      <summary>Specifies the mode used to check for X509 certificate revocation.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509RevocationMode.NoCheck">
      <summary>No revocation check is performed on the certificate.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509RevocationMode.Offline">
      <summary>A revocation check is made using a cached certificate revocation list (CRL).</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509RevocationMode.Online">
      <summary>A revocation check is made using an online certificate revocation list (CRL).</summary>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509RevocationReason">
      <summary>Specifies the reason a certificate was revoked.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509RevocationReason.AACompromise">
      <summary>It is known, or suspected, that aspects of the Attribute Authority (AA) validated in the attribute certificate have been compromised.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509RevocationReason.AffiliationChanged">
      <summary>The subject's name, or other validated information in the certificate, has changed without anything being compromised.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509RevocationReason.CACompromise">
      <summary>The private key, or another validated portion of a Certificate Authority (CA) certificate, is suspected to have been compromised.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509RevocationReason.CertificateHold">
      <summary>The certificate is temporarily suspended, and may either return to service or become permanently revoked in the future.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509RevocationReason.CessationOfOperation">
      <summary>The certificate is no longer needed, but nothing is suspected to be compromised.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509RevocationReason.KeyCompromise">
      <summary>The private key, or another validated portion of an end-entity certificate, is suspected to have been compromised.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509RevocationReason.PrivilegeWithdrawn">
      <summary>A privilege contained within the certificate has been withdrawn.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509RevocationReason.RemoveFromCrl">
      <summary>The certificate was revoked with <see cref="F:System.Security.Cryptography.X509Certificates.X509RevocationReason.CertificateHold" /> on a base Certificate Revocation List (CRL) and is being returned to service on a delta CRL.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509RevocationReason.Superseded">
      <summary>The certificate has been superseded, but without anything being compromised.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509RevocationReason.Unspecified">
      <summary>Revocation occurred for a reason that has no more specific value.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509RevocationReason.WeakAlgorithmOrKey">
      <summary>The certificate key uses a weak cryptographic algorithm, or the key is too short, or the key was generated in an unsafe manner.</summary>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509SignatureGenerator">
      <summary>Base class for building encoded signatures as needed for X.509 certificates.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509SignatureGenerator.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509SignatureGenerator" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509SignatureGenerator.BuildPublicKey">
      <summary>When overridden in a derived class, produces the certificate's public key that has the correctly encoded <see cref="T:System.Security.Cryptography.Oid" />, public key parameters and public key values.</summary>
      <returns>The certificate's public key.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509SignatureGenerator.CreateForECDsa(System.Security.Cryptography.ECDsa)">
      <summary>Creates an <see cref="T:System.Security.Cryptography.X509Certificates.X509SignatureGenerator" /> object for ECDSA signatures using the specified private key.</summary>
      <param name="key">The private key.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.</exception>
      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X509SignatureGenerator" /> object for ECDSA signatures.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509SignatureGenerator.CreateForRSA(System.Security.Cryptography.RSA,System.Security.Cryptography.RSASignaturePadding)">
      <summary>Creates an <see cref="T:System.Security.Cryptography.X509Certificates.X509SignatureGenerator" /> object for RSA signatures using the specified private key and padding mode.</summary>
      <param name="key">The private key.</param>
      <param name="signaturePadding">The padding mode.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="key" /> is <see langword="null" />.  
  
 -or-  
  
 <paramref name="signaturePadding" /> is <see langword="null" />.</exception>
      <exception cref="T:System.ArgumentException">The specified padding mode is not valid for this algorithm.</exception>
      <returns>An <see cref="T:System.Security.Cryptography.X509Certificates.X509SignatureGenerator" /> object for RSA signatures.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509SignatureGenerator.GetSignatureAlgorithmIdentifier(System.Security.Cryptography.HashAlgorithmName)">
      <summary>When overridden in a derived class, encodes the X.509 algorithm identifier for this signature.</summary>
      <param name="hashAlgorithm">The hash algorithm to use for encoding.</param>
      <returns>The encoded value for the X.509 algorithm identifier.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509SignatureGenerator.SignData(System.Byte[],System.Security.Cryptography.HashAlgorithmName)">
      <summary>When overridden in a derived class, produces a signature for the specified data using the specified hash algorithm and encodes the results appropriately for X.509 signature values.</summary>
      <param name="data">The input data for which to produce the signature.</param>
      <param name="hashAlgorithm">The hash algorithm to use to produce the signature.</param>
      <returns>The X.509 signature for the specified data.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509SignatureGenerator.PublicKey">
      <summary>Gets the public key associated with the private key with which signatures are being generated.</summary>
      <returns>The public key associated with the private key with which signatures are being generated.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509Store">
      <summary>Represents an X.509 store, which is a physical store where certificates are persisted and managed. This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Store.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Store" /> class using the personal certificates store of the current user.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Store.#ctor(System.IntPtr)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Store" /> class using an Intptr handle to an <see langword="HCERTSTORE" /> store.</summary>
      <param name="storeHandle">A handle to an <see langword="HCERTSTORE" /> store.</param>
      <exception cref="T:System.ArgumentNullException">The <paramref name="storeHandle" /> parameter is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The <paramref name="storeHandle" /> parameter points to an invalid context.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Store.#ctor(System.Security.Cryptography.X509Certificates.StoreLocation)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Store" /> class using the personal certificate store from the specified store location value.</summary>
      <param name="storeLocation">One of the enumeration values that specifies the location of the X.509 certificate store.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Store.#ctor(System.Security.Cryptography.X509Certificates.StoreName,System.Security.Cryptography.X509Certificates.StoreLocation,System.Security.Cryptography.X509Certificates.OpenFlags)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Store" /> class using the specified store name and store location values, then opens it using the specified flags.</summary>
      <param name="storeName">One of the enumeration values that specifies the name of the X.509 certificate store.</param>
      <param name="storeLocation">One of the enumeration values that specifies the location of the X.509 certificate store.</param>
      <param name="flags">A bitwise combination of enumeration values that specifies the way to open the X.509 certificate store.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="storeLocation" /> is not a valid location or <paramref name="storeName" /> is not a valid name.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The store cannot be opened.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Store.#ctor(System.Security.Cryptography.X509Certificates.StoreName,System.Security.Cryptography.X509Certificates.StoreLocation)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Store" /> class using the specified <see cref="T:System.Security.Cryptography.X509Certificates.StoreName" /> and <see cref="T:System.Security.Cryptography.X509Certificates.StoreLocation" /> values.</summary>
      <param name="storeName">One of the enumeration values that specifies the name of the X.509 certificate store.</param>
      <param name="storeLocation">One of the enumeration values that specifies the location of the X.509 certificate store.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="storeLocation" /> is not a valid location or <paramref name="storeName" /> is not a valid name.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Store.#ctor(System.Security.Cryptography.X509Certificates.StoreName)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Store" /> class using the specified store name from the current user's certificate stores.</summary>
      <param name="storeName">One of the enumeration values that specifies the name of the X.509 certificate store.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="storeName" /> is not a valid name.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Store.#ctor(System.String,System.Security.Cryptography.X509Certificates.StoreLocation,System.Security.Cryptography.X509Certificates.OpenFlags)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Store" /> class using the specified store name and store location values, then opens it using the specified flags.</summary>
      <param name="storeName">The name of the certificate store.</param>
      <param name="storeLocation">One of the enumeration values that specifies the location of the X.509 certificate store.</param>
      <param name="flags">A bitwise combination of enumeration values that specifies the way to open the X.509 certificate store.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="storeLocation" /> is not a valid location.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Store.#ctor(System.String,System.Security.Cryptography.X509Certificates.StoreLocation)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Store" /> class using a specified store name and store location.</summary>
      <param name="storeName">The name of the certificate store.</param>
      <param name="storeLocation">One of the enumeration values that specifies the location of the X.509 certificate store.</param>
      <exception cref="T:System.ArgumentException">
        <paramref name="storeLocation" /> contains invalid values.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Store.#ctor(System.String)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509Store" /> class using the specified store name.</summary>
      <param name="storeName">The name of the certificate store.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Store.Add(System.Security.Cryptography.X509Certificates.X509Certificate2)">
      <summary>Adds a certificate to an X.509 certificate store.</summary>
      <param name="certificate">The certificate to add.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="certificate" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The certificate could not be added to the store.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Store.AddRange(System.Security.Cryptography.X509Certificates.X509Certificate2Collection)">
      <summary>Adds a collection of certificates to an X.509 certificate store.</summary>
      <param name="certificates">The collection of certificates to add.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="certificates" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.SecurityException">The caller does not have the required permission.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Store.Close">
      <summary>Closes an X.509 certificate store.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Store.Dispose">
      <summary>Releases the resources used by this <see cref="T:System.Security.Cryptography.X509Certificates.X509Store" />.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Store.Open(System.Security.Cryptography.X509Certificates.OpenFlags)">
      <summary>Opens an X.509 certificate store or creates a new store, depending on <see cref="T:System.Security.Cryptography.X509Certificates.OpenFlags" /> flag settings.</summary>
      <param name="flags">A bitwise combination of enumeration values that specifies the way to open the X.509 certificate store.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The store cannot be opened as requested.</exception>
      <exception cref="T:System.Security.SecurityException">The caller does not have the required permission.</exception>
      <exception cref="T:System.ArgumentException">The store contains invalid values.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Store.Remove(System.Security.Cryptography.X509Certificates.X509Certificate2)">
      <summary>Removes a certificate from an X.509 certificate store.</summary>
      <param name="certificate">The certificate to remove.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="certificate" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.SecurityException">The caller does not have the required permission.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509Store.RemoveRange(System.Security.Cryptography.X509Certificates.X509Certificate2Collection)">
      <summary>Removes a range of certificates from an X.509 certificate store.</summary>
      <param name="certificates">A range of certificates to remove.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="certificates" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.SecurityException">The caller does not have the required permission.</exception>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Store.Certificates">
      <summary>Returns a collection of certificates located in an X.509 certificate store.</summary>
      <returns>A collection of certificates.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Store.IsOpen">
      <summary>Gets a value that indicates whether the instance is connected to an open certificate store.</summary>
      <returns>
        <see langword="true" /> if the instance is connected to an open certificate store; otherwise, <see langword="false" />.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Store.Location">
      <summary>Gets the location of the X.509 certificate store.</summary>
      <returns>The location of the certificate store.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Store.Name">
      <summary>Gets the name of the X.509 certificate store.</summary>
      <returns>The name of the certificate store.</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509Store.StoreHandle">
      <summary>Gets an <see cref="T:System.IntPtr" /> handle to an <see langword="HCERTSTORE" /> store.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The store is not open.</exception>
      <returns>A handle to an <see langword="HCERTSTORE" /> store.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509SubjectAlternativeNameExtension">
      <summary>Represents the Subject Alternative Name X.509 Extension (2.5.29.17).</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509SubjectAlternativeNameExtension.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509SubjectAlternativeNameExtension" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509SubjectAlternativeNameExtension.#ctor(System.Byte[],System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509SubjectAlternativeNameExtension" /> class from an encoded representation of the extension and an optional critical marker.</summary>
      <param name="rawData">The encoded data used to create the extension.</param>
      <param name="critical">
        <see langword="true" /> if the extension is critical; otherwise, <see langword="false" />. The default is <see langword="false" />.</param>
      <exception cref="T:System.ArgumentNullException">
        <paramref name="rawData" /> is <see langword="null" />.</exception>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="rawData" /> did not decode as a Subject Alternative Name extension.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509SubjectAlternativeNameExtension.#ctor(System.ReadOnlySpan{System.Byte},System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509SubjectAlternativeNameExtension" /> class from an encoded representation of the extension and an optional critical marker.</summary>
      <param name="rawData">The encoded data used to create the extension.</param>
      <param name="critical">
        <see langword="true" /> if the extension is critical; otherwise, <see langword="false" />. The default is <see langword="false" />.</param>
      <exception cref="T:System.Security.Cryptography.CryptographicException">
        <paramref name="rawData" /> did not decode as a Subject Alternative Name extension.</exception>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509SubjectAlternativeNameExtension.CopyFrom(System.Security.Cryptography.AsnEncodedData)">
      <summary>Copies the extension properties of the specified <xref data-throw-if-not-resolved="true" uid="System.Security.Cryptography.AsnEncodedData"></xref> object.</summary>
      <param name="asnEncodedData">The <xref data-throw-if-not-resolved="true" uid="System.Security.Cryptography.AsnEncodedData"></xref> to be copied.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509SubjectAlternativeNameExtension.EnumerateDnsNames">
      <summary>Enumerates the alternative name entries with a DNS Name type identifier.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The contents of the extension could not be decoded successfully.</exception>
      <returns>The name entries with a DNS Name type identifier.</returns>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509SubjectAlternativeNameExtension.EnumerateIPAddresses">
      <summary>Enumerates the alternative name entries with an IP Address type identifier.</summary>
      <returns>The name entries with an IP Address type identifier.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierExtension">
      <summary>Defines a string that identifies a certificate's subject key identifier (SKI). This class cannot be inherited.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierExtension.#ctor">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierExtension" /> class.</summary>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierExtension.#ctor(System.Byte[],System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierExtension" /> class using a byte array and a value that identifies whether the extension is critical.</summary>
      <param name="subjectKeyIdentifier">A byte array that represents data to use to create the extension.</param>
      <param name="critical">
        <see langword="true" /> if the extension is critical; otherwise, <see langword="false" />.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierExtension.#ctor(System.ReadOnlySpan{System.Byte},System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierExtension" /> class using a read-only span of bytes and a value that identifies whether the extension is critical.</summary>
      <param name="subjectKeyIdentifier">A read-only span of bytes that represents data to use to create the extension.</param>
      <param name="critical">
        <see langword="true" /> if the extension is critical; otherwise, <see langword="false" />.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierExtension.#ctor(System.Security.Cryptography.AsnEncodedData,System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierExtension" /> class using encoded data and a value that identifies whether the extension is critical.</summary>
      <param name="encodedSubjectKeyIdentifier">The <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object to use to create the extension.</param>
      <param name="critical">
        <see langword="true" /> if the extension is critical; otherwise, <see langword="false" />.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierExtension.#ctor(System.Security.Cryptography.X509Certificates.PublicKey,System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierExtension" /> class using a public key and a value indicating whether the extension is critical.</summary>
      <param name="key">A <see cref="T:System.Security.Cryptography.X509Certificates.PublicKey" /> object to create a subject key identifier (SKI) from.</param>
      <param name="critical">
        <see langword="true" /> if the extension is critical; otherwise, <see langword="false" />.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierExtension.#ctor(System.Security.Cryptography.X509Certificates.PublicKey,System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierHashAlgorithm,System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierExtension" /> class using a public key, a hash algorithm identifier, and a value indicating whether the extension is critical.</summary>
      <param name="key">A <see cref="T:System.Security.Cryptography.X509Certificates.PublicKey" /> object to create a subject key identifier (SKI) from.</param>
      <param name="algorithm">One of the <see cref="T:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierHashAlgorithm" /> values that identifies which hash algorithm to use.</param>
      <param name="critical">
        <see langword="true" /> if the extension is critical; otherwise, <see langword="false" />.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierExtension.#ctor(System.String,System.Boolean)">
      <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierExtension" /> class using a string and a value that identifies whether the extension is critical.</summary>
      <param name="subjectKeyIdentifier">A string, encoded in hexadecimal format, that represents the subject key identifier (SKI) for a certificate.</param>
      <param name="critical">
        <see langword="true" /> if the extension is critical; otherwise, <see langword="false" />.</param>
    </member>
    <member name="M:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierExtension.CopyFrom(System.Security.Cryptography.AsnEncodedData)">
      <summary>Creates a new instance of the <see cref="T:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierExtension" /> class by copying information from encoded data.</summary>
      <param name="asnEncodedData">The <see cref="T:System.Security.Cryptography.AsnEncodedData" /> object to use to create the extension.</param>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierExtension.SubjectKeyIdentifier">
      <summary>Gets a string that represents the subject key identifier (SKI) for a certificate.</summary>
      <exception cref="T:System.Security.Cryptography.CryptographicException">The extension cannot be decoded.</exception>
      <returns>A string, encoded in hexadecimal format, that represents the subject key identifier (SKI).</returns>
    </member>
    <member name="P:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierExtension.SubjectKeyIdentifierBytes">
      <summary>Gets a value whose contents represent the subject key identifier (SKI) for a certificate.</summary>
      <returns>The subject key identifier (SKI) for a certificate.</returns>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierHashAlgorithm">
      <summary>Defines the type of hash algorithm to use with the <see cref="T:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierExtension" /> class.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierHashAlgorithm.CapiSha1">
      <summary>The subject key identifier (SKI) is composed of a 160-bit SHA-1 hash of the encoded public key (including the tag, length, and number of unused bits).</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierHashAlgorithm.Sha1">
      <summary>The SKI is composed of the 160-bit SHA-1 hash of the value of the public key (excluding the tag, length, and number of unused bits).</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierHashAlgorithm.Sha256">
      <summary>The SHA-256 hash over the SubjectPublicKeyInfo as described in RFC 7093.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierHashAlgorithm.Sha384">
      <summary>The SHA-384 hash over the SubjectPublicKeyInfo as described in RFC 7093.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierHashAlgorithm.Sha512">
      <summary>The SHA-512 hash over the SubjectPublicKeyInfo as described in RFC 7093.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierHashAlgorithm.ShortSha1">
      <summary>The SKI is composed of a four-bit type field with the value 0100, followed by the least significant 60 bits of the SHA-1 hash of the value of the public key (excluding the tag, length, and number of unused bit string bits)</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierHashAlgorithm.ShortSha256">
      <summary>The SHA-256 hash over the subjectPublicKey truncated to the leftmost 160-bits as described in RFC 7093.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierHashAlgorithm.ShortSha384">
      <summary>The SHA-384 hash over the subjectPublicKey truncated to the leftmost 160-bits as described in RFC 7093.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierHashAlgorithm.ShortSha512">
      <summary>The SHA-512 hash over the subjectPublicKey truncated to the leftmost 160-bits as described in RFC 7093.</summary>
    </member>
    <member name="T:System.Security.Cryptography.X509Certificates.X509VerificationFlags">
      <summary>Specifies conditions under which verification of certificates in the X509 chain should be conducted.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509VerificationFlags.AllFlags">
      <summary>All flags pertaining to verification are included.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509VerificationFlags.AllowUnknownCertificateAuthority">
      <summary>Ignore that the chain cannot be verified due to an unknown certificate authority (CA) or partial chains.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509VerificationFlags.IgnoreCertificateAuthorityRevocationUnknown">
      <summary>Ignore that the certificate authority revocation is unknown when determining certificate verification.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509VerificationFlags.IgnoreCtlNotTimeValid">
      <summary>Ignore that the certificate trust list (CTL) is not valid, for reasons such as the CTL has expired, when determining certificate verification.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509VerificationFlags.IgnoreCtlSignerRevocationUnknown">
      <summary>Ignore that the certificate trust list (CTL) signer revocation is unknown when determining certificate verification.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509VerificationFlags.IgnoreEndRevocationUnknown">
      <summary>Ignore that the end certificate (the user certificate) revocation is unknown when determining certificate verification.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509VerificationFlags.IgnoreInvalidBasicConstraints">
      <summary>Ignore that the basic constraints are not valid when determining certificate verification.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509VerificationFlags.IgnoreInvalidName">
      <summary>Ignore that the certificate has an invalid name when determining certificate verification.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509VerificationFlags.IgnoreInvalidPolicy">
      <summary>Ignore that the certificate has invalid policy when determining certificate verification.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509VerificationFlags.IgnoreNotTimeNested">
      <summary>Ignore that the CA (certificate authority) certificate and the issued certificate have validity periods that are not nested when verifying the certificate. For example, the CA cert can be valid from January 1 to December 1 and the issued certificate from January 2 to December 2, which would mean the validity periods are not nested.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509VerificationFlags.IgnoreNotTimeValid">
      <summary>Ignore certificates in the chain that are not valid either because they have expired or they are not yet in effect when determining certificate validity.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509VerificationFlags.IgnoreRootRevocationUnknown">
      <summary>Ignore that the root revocation is unknown when determining certificate verification.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509VerificationFlags.IgnoreWrongUsage">
      <summary>Ignore that the certificate was not issued for the current use when determining certificate verification.</summary>
    </member>
    <member name="F:System.Security.Cryptography.X509Certificates.X509VerificationFlags.NoFlag">
      <summary>No flags pertaining to verification are included.</summary>
    </member>
  </members>
</doc>