HashAlgorithmType HashAlgorithmType HashAlgorithmType HashAlgorithmType Enum

Определение

Задает алгоритм, используемый для создания кодов проверки подлинности сообщений.Specifies the algorithm used for generating message authentication codes (MACs).

public enum class HashAlgorithmType
public enum HashAlgorithmType
type HashAlgorithmType = 
Public Enum HashAlgorithmType
Наследование
HashAlgorithmTypeHashAlgorithmTypeHashAlgorithmTypeHashAlgorithmType

Поля

Md5 Md5 Md5 Md5 32771

Алгоритм хэширования Message Digest 5 (MD5).The Message Digest 5 (MD5) hashing algorithm.

None None None None 0

Алгоритм хеширования не используется.No hashing algorithm is used.

Sha1 Sha1 Sha1 Sha1 32772

Алгоритм Secure Hashing Algorithm (SHA1).The Secure Hashing Algorithm (SHA1).

Sha256 Sha256 Sha256 Sha256 32780

SHA-2 с длиной дайджеста 256 бит.The Secure Hashing Algorithm 2 (SHA-2), using a 256-bit digest.

Sha384 Sha384 Sha384 Sha384 32781

SHA-2 с длиной дайджеста 384 бит.The Secure Hashing Algorithm 2 (SHA-2), using a 384-bit digest.

Sha512 Sha512 Sha512 Sha512 32782

SHA-2 с длиной дайджеста 512 бит.The Secure Hashing Algorithm 2 (SHA-2), using a 512-bit digest.

Примеры

В следующем примере отображаются свойства SslStream после успешной проверки подлинности.The following example displays the properties of an SslStream after authentication has succeeded.

static void AuthenticateCallback( IAsyncResult^ ar )
{
   SslStream^ stream = dynamic_cast<SslStream^>(ar->AsyncState);
   try
   {
      stream->EndAuthenticateAsClient( ar );
      Console::WriteLine( L"Authentication succeeded." );
      Console::WriteLine( L"Cipher: {0} strength {1}", stream->CipherAlgorithm, stream->CipherStrength );
      Console::WriteLine( L"Hash: {0} strength {1}", stream->HashAlgorithm, stream->HashStrength );
      Console::WriteLine( L"Key exchange: {0} strength {1}", stream->KeyExchangeAlgorithm, stream->KeyExchangeStrength );
      Console::WriteLine( L"Protocol: {0}", stream->SslProtocol );
      
      // Encode a test message into a byte array.
      // Signal the end of the message using the "<EOF>".
      array<Byte>^message = Encoding::UTF8->GetBytes( L"Hello from the client.<EOF>" );
      
      // Asynchronously send a message to the server.
      stream->BeginWrite( message, 0, message->Length, gcnew AsyncCallback( WriteCallback ), stream );
   }
   catch ( Exception^ authenticationException ) 
   {
      e = authenticationException;
      complete = true;
      return;
   }

}


static void AuthenticateCallback(IAsyncResult ar)
{
    SslStream stream = (SslStream) ar.AsyncState;
    try 
    {
        stream.EndAuthenticateAsClient(ar);
        Console.WriteLine("Authentication succeeded.");
        Console.WriteLine("Cipher: {0} strength {1}", stream.CipherAlgorithm, 
            stream.CipherStrength);
        Console.WriteLine("Hash: {0} strength {1}", 
            stream.HashAlgorithm, stream.HashStrength);
        Console.WriteLine("Key exchange: {0} strength {1}", 
            stream.KeyExchangeAlgorithm, stream.KeyExchangeStrength);
        Console.WriteLine("Protocol: {0}", stream.SslProtocol);
        // Encode a test message into a byte array.
        // Signal the end of the message using the "<EOF>".
        byte[] message = Encoding.UTF8.GetBytes("Hello from the client.<EOF>");
        // Asynchronously send a message to the server.
        stream.BeginWrite(message, 0, message.Length, 
            new AsyncCallback(WriteCallback),
            stream);
    }
    catch (Exception authenticationException)
    {
        e = authenticationException;
        complete = true;
        return;
    }
}

Комментарии

Это перечисление указывает допустимые SslStream.HashAlgorithm значения для свойства.This enumeration specifies valid values for the SslStream.HashAlgorithm property.

Применяется к

Дополнительно