Back to product page

FingerPrintEvent event


Fires when wodSSH.NET receives public key from the server.

Syntax

  • C#
  • VB.NET
FingerPrintDelegate FingerPrintEvent
The FingerPrintEvent(Args.Accept,Args.FingerPrint,Args.PublicKeyOpenSSH,Args.PublicKeySSH) syntax has these parts:
Args.AcceptBoolean. When set to False, wodSSH.NET drops connection.
Args.FingerPrintByte[]. Array containing fingerprint of remote server's public key.
Args.PublicKeyOpenSSHString. Contains public key in OpenSSH format.
Args.PublicKeySSHString. Contains public key in SSH.COM format.

FingerPrintDelegate FingerPrintEvent
The FingerPrintEvent(Args.Accept,Args.FingerPrint,Args.PublicKeyOpenSSH,Args.PublicKeySSH) syntax has these parts:
Args.AcceptBoolean. When set to False, wodSSH.NET drops connection.
Args.FingerPrintByte[]. Array containing fingerprint of remote server's public key.
Args.PublicKeyOpenSSHString. Contains public key in OpenSSH format.
Args.PublicKeySSHString. Contains public key in SSH.COM format.

Remarks

Since SSH architecture doesn't know about certificates or other means of checking if remote server is really the one you intended to connect to, it is a matter of 'trust' if you will accept connection or not.

This is how SSH works in real life - once you connect to remote server and you are sure it is really the server you expect it to be, you should store Args.FingerPrint information locally. For each new connection, you should test if FingerPrint information is same as stored one - to be sure that no one is 'in the middle' spying on your connection. FingerPrint information is almost unique among different server, and it is generated from server's private key.

If you set Args.Accept to True (default), wodSSH.NET will continue to perform negotiation with the server normally. If you set it to False (for instance, because you see that Args.FingerPrint information is not the same as before), it will drop the connection.

Even you connect to same server, different protocol versions will produce different FingerPrint information. So, if you use SSH1 and store fingerprint information, and then later you use SSH2 - you will see this information is different. This is to be expected. You should store new information also.

Platforms

Windows