Xceed .NET Libraries Documentation
Xceed.SSH.Client Assembly / Xceed.SSH.Client Namespace / SSHClient Class / ActivePublicKeyAlgorithmString Property


In This Topic
    ActivePublicKeyAlgorithmString Property
    In This Topic
    TODODOC Gets a string that indicates the currently active public key algorithm.
    Syntax
    'Declaration
     
    
    Public ReadOnly Property ActivePublicKeyAlgorithmString As String
    'Usage
     
    
    Dim instance As SSHClient
    Dim value As String
     
    value = instance.ActivePublicKeyAlgorithmString
    public string ActivePublicKeyAlgorithmString {get;}
    Remarks

    Public key algorithms are implementations of a cryptographic system that requires two separate keys, one that is secret and one that is public. SSH uses a public key algorithm to verify the identify of a server and to securely exchange information that each side will use to generate encryption keys, initialization vectors and data integrity keys between the server and the client.

    The SSH specification allows, at the preference of both server and client to select an algorithm among a list of several supported ones. The specification marks some algorithms as 'required' to insure that any client can connect to any server.

    Examples of public key algorithm names for SSH are 'ssh-rsa', 'ssh-dss'.

    The currently active algorithm is the one that was negotiated between the client and the server during Connect(). That negociation is part of what is called 'key exchange'.

    While the value should remain constant throughout the entire connection, it might change during what is called 'key re-exchange'. This usually happens after 1GB of data is exchanged or after each hour of connection time, whichever comes sooner. Typically, even after key re-exchange, the encryption and other parameters remain the same unless the configuration was changed on the server or on the SSHClient object.

    If the client is not connected, the value is an empty string.

    Supported Frameworks

    .NET: net5.0, net5.0-windows, net6.0, net6.0-macos, net6.0-windows, net7.0, net7.0-macos, net7.0-windows, net8.0, net8.0-browser, net8.0-macos, net8.0-windows, net9.0, net9.0-browser, net9.0-macos, net9.0-windows, net10.0, net10.0-browser, net10.0-macos, net10.0-windows.

    .NET Standard: netstandard2.0, netstandard2.1

    .NET Framework: net20, net35, net40, net403, net45, net451, net452, net46, net461, net462, net463, net47, net471, net472, net48, net481.

    See Also