Sample code for 30+ languages & platforms
VB.NET

Load a PuTTY Public Key

See more SSH Key Examples

Demonstrates how to load a PuTTY public key.

Chilkat VB.NET Downloads

VB.NET
Dim success As Boolean = False

' Load a PuTTY public key.
Dim puttyKey As New Chilkat.SshKey
Dim pubKeyText As String = puttyKey.LoadText("qa_data/ppk/putty_public.pem")

' The pubKeyText contains this content:

' 	---- BEGIN SSH2 PUBLIC KEY ----
' 	Comment: "rsa-key-20170126"
' 	AAAAB3NzaC1yc2EAAAABJQAAAQEAx+52s7vvaZ8rT2UdFZWlSUVDHDQ+5ZRFvgRW
' 	6nm2sO1c9WqNg7u2PQL4jeKSDX2XWcMnpleALz2x8Rr4rMy5E1iZzvWov8VtFd8l
' 	fa9HOkgEeJB3VFuYR3NlnD3eyCoYJYPVpHJHrIeui2WZs5vQ76HDe+th8+z5Ald4
' 	zPw3p2c6ZJpBrkSBM67hWokoBDi23c7NhszDHhJBrv+B98cQxnagI1PUKqN7E8Vg
' 	bNtBI8beIMHyI69up9G1AXSEi0cGIjYNx9RNUPau1mRk/SvfqxgWkAjM005lj7hc
' 	bOsjbdKK3T2NtrKTaYjEiXlEXcj1iGuApsD/m73pYaEJB3Nd7w==
' 	---- END SSH2 PUBLIC KEY ----

success = puttyKey.FromRfc4716PublicKey(pubKeyText)
If (success <> True) Then
    Debug.WriteLine(puttyKey.LastErrorText)
    Exit Sub
End If


' If desired, convert to other public key formats:
Dim openSshPubKeyStr As String = puttyKey.ToOpenSshPublicKey()
Debug.WriteLine(openSshPubKeyStr)

' openSshPubKeyStr contains:
' ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAQEAx+52s7vvaZ8rT2UdFZWlSUVDHDQ+5ZRFvgRW6nm2sO1c9WqNg7u2PQL4jeKSDX2XWcMnpleALz2x8Rr4rMy5E1iZzvWov8VtFd8lfa9HOkgEeJB3VFuYR3NlnD3eyCoYJYPVpHJHrIeui2WZs5vQ76HDe+th8+z5Ald4zPw3p2c6ZJpBrkSBM67hWokoBDi23c7NhszDHhJBrv+B98cQxnagI1PUKqN7E8VgbNtBI8beIMHyI69up9G1AXSEi0cGIjYNx9RNUPau1mRk/SvfqxgWkAjM005lj7hcbOsjbdKK3T2NtrKTaYjEiXlEXcj1iGuApsD/m73pYaEJB3Nd7w== rsa-key-20170126

' Convert to an XML format:
Dim xmlPubKeyStr As String = puttyKey.ToXml()
Debug.WriteLine(xmlPubKeyStr)

' xmlPubKeyStr contains:
' <RSAPublicKey>
'     <Modulus>x+52s7vvaZ8rT2UdFZWlSUVDHDQ+5ZRFvgRW6nm2sO1c9WqNg7u2PQL4jeKSDX2XWcMnpleALz2x8Rr4rMy5E1iZzvWov8VtFd8lfa9HOkgEeJB3VFuYR3NlnD3eyCoYJYPVpHJHrIeui2WZs5vQ76HDe+th8+z5Ald4zPw3p2c6ZJpBrkSBM67hWokoBDi23c7NhszDHhJBrv+B98cQxnagI1PUKqN7E8VgbNtBI8beIMHyI69up9G1AXSEi0cGIjYNx9RNUPau1mRk/SvfqxgWkAjM005lj7hcbOsjbdKK3T2NtrKTaYjEiXlEXcj1iGuApsD/m73pYaEJB3Nd7w==</Modulus>
'     <Exponent>JQ==</Exponent>
' </RSAPublicKey>
' 
'