Sample code for 30+ languages & platforms
Visual Basic 6.0

SSH Public Key Authentication

See more SSH Examples

Demonstrates how to authenticate with an SSH server using public key authentication.

Chilkat Visual Basic 6.0 Downloads

Visual Basic 6.0
Dim success As Long
success = 0

' This example assumes the Chilkat API to have been previously unlocked.
' See Global Unlock Sample for sample code.

Dim ssh As New ChilkatSsh

' Set some timeouts, in milliseconds:
ssh.ConnectTimeoutMs = 5000
ssh.IdleTimeoutMs = 15000

' Connect to the SSH server.  
' The standard SSH port = 22
' The hostname may be a hostname or IP address.
Dim hostname As String
hostname = "sftp.example.com"
Dim port As Long
port = 22
success = ssh.Connect(hostname,port)
If (success <> 1) Then
    Debug.Print ssh.LastErrorText
    Exit Sub
End If

Dim key As New ChilkatSshKey

' Read the PEM file into a string variable:
' (This does not load the PEM file into the key.  The LoadText
' method is a convenience method for loading the full contents of ANY text
' file into a string variable.)
Dim privKey As String
privKey = key.LoadText("myPrivateKey.pem")
If (key.LastMethodSuccess <> 1) Then
    Debug.Print key.LastErrorText
    Exit Sub
End If

' Load a private key from a PEM string:
' (Private keys may be loaded from OpenSSH and Putty formats.
' Both encrypted and unencrypted private key file formats
' are supported.  This example loads an unencrypted private
' key in OpenSSH format.  PuTTY keys typically use the .ppk
' file extension, while OpenSSH keys use the PEM format.
' (For PuTTY keys, call FromPuttyPrivateKey instead.)
success = key.FromOpenSshPrivateKey(privKey)
If (success <> 1) Then
    Debug.Print key.LastErrorText
    Exit Sub
End If

' Authenticate with the SSH server using the login and
' private key.  (The corresponding public key should've 
' been installed on the SSH server beforehand.)
success = ssh.AuthenticatePk("myLogin",key)
If (success <> 1) Then
    Debug.Print ssh.LastErrorText
    Exit Sub
End If

Debug.Print ssh.LastErrorText
Debug.Print "Public-Key Authentication Successful!"