ExchangeAlgorithmType ExchangeAlgorithmType ExchangeAlgorithmType ExchangeAlgorithmType Enum

Definition

Gibt den Algorithmus zum Erstellen von Schlüsseln an, die vom Client und Server gemeinsam verwendet werden.Specifies the algorithm used to create keys shared by the client and server.

public enum class ExchangeAlgorithmType
public enum ExchangeAlgorithmType
type ExchangeAlgorithmType = 
Public Enum ExchangeAlgorithmType
Vererbung
ExchangeAlgorithmTypeExchangeAlgorithmTypeExchangeAlgorithmTypeExchangeAlgorithmType

Felder

DiffieHellman DiffieHellman DiffieHellman DiffieHellman 43522

Der Diffie-Hellman-Algorithmus für den Austausch von flüchtigen Schlüsseln.The Diffie Hellman ephemeral key exchange algorithm.

None None None None 0

Es wird kein Algorithmus für den Schlüsselaustausch verwendet.No key exchange algorithm is used.

RsaKeyX RsaKeyX RsaKeyX RsaKeyX 41984

Der RSA-Algorithmus für den Austausch öffentlicher Schlüssel.The RSA public-key exchange algorithm.

RsaSign RsaSign RsaSign RsaSign 9216

Der RSA-Algorithmus für Signaturen öffentlicher Schlüssel.The RSA public-key signature algorithm.

Beispiele

Im folgenden Beispiel werden die Eigenschaften von SslStreamangezeigt.The following example displays the properties of an SslStream.

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;
    }
}

Hinweise

Diese Enumeration gibt gültige Werte für die SslStream.KeyExchangeAlgorithm -Eigenschaft an.This enumeration specifies valid values for the SslStream.KeyExchangeAlgorithm property.

Gilt für:

Siehe auch