Sample code for 30+ languages & platforms
B4X

SFTP Host Key Fingerprint

See more SFTP Examples

Demonstrates how to get the SSH server's host key fingerprint after connecting.

Chilkat B4X Downloads

B4X
Dim success As Boolean = False

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

Dim sftp As ChilkatSFtp
sftp.Initialize("sftp")

Dim hostname As String = "sftp.example.com"
Dim port As Int = 22
success = sftp.Connect(hostname, port)
If success <> True Then
    Log(sftp.LastErrorText)
    Return
End If


'  Get the classic MD5 fingeprint
Dim md5_fingerprint As String = sftp.HostKeyFingerprint
Log(md5_fingerprint)

'  Sample output:
'  ssh-rsa 3072 21:b0:d8:41:4e:ef:78:10:20:af:01:b7:71:5d:eb:94

'  Starting in Chilkat v9.5.0.92, we can also get the SHA256 fingerprint.
'  (it is also possible to get fingerprints using other hash algorithms such as SHA384, SHA512, etc.)

Dim includeKeyType As Boolean = True
Dim includeHashName As Boolean = True
Dim sha256_fingerprint As String = sftp.GetHostKeyFP("SHA256", includeKeyType, includeHashName)
Log(sha256_fingerprint)

'  Sample output:
'  ssh-rsa SHA256:Ufgj480OsdsCZRjj9sSNM6fpgIcSJ61RsIG8usndUIY=

'  The key type and hash name can be optionally included or not.
includeKeyType = False
includeHashName = True
sha256_fingerprint = sftp.GetHostKeyFP("SHA256", includeKeyType, includeHashName)
Log(sha256_fingerprint)

'  SHA256:Ufgj480OsdsCZRjj9sSNM6fpgIcSJ61RsIG8usndUIY=

includeKeyType = True
includeHashName = False
sha256_fingerprint = sftp.GetHostKeyFP("SHA256", includeKeyType, includeHashName)
Log(sha256_fingerprint)

'  ssh-rsa Ufgj480OsdsCZRjj9sSNM6fpgIcSJ61RsIG8usndUIY=

includeKeyType = False
includeHashName = False
sha256_fingerprint = sftp.GetHostKeyFP("SHA256", includeKeyType, includeHashName)
Log(sha256_fingerprint)

'  Ufgj480OsdsCZRjj9sSNM6fpgIcSJ61RsIG8usndUIY=