Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PureBasic) Generate ed25519 Key and Save to PuTTY FormatGenerates an ED25519 key and saves to PuTTY format. Note: This example requires Chilkat v9.5.0.83 or greater.
IncludeFile "CkSshKey.pb" Procedure ChilkatExample() ; Note: Requires Chilkat v9.5.0.83 or greater. ; This requires the Chilkat API to have been previously unlocked. ; See Global Unlock Sample for sample code. key.i = CkSshKey::ckCreate() If key.i = 0 Debug "Failed to create object." ProcedureReturn EndIf success.i = CkSshKey::ckGenerateEd25519Key(key) If success <> 1 Debug CkSshKey::ckLastErrorText(key) CkSshKey::ckDispose(key) ProcedureReturn EndIf ; We can optionally set a comment to be included in the exported key. CkSshKey::setCkComment(key, "This is my new ed25519 key.") ; Export the ed25519 private key to unencrypted PuTTY format: exportEncrypted.i = 0 exportedKey.s = CkSshKey::ckToPuttyPrivateKey(key,exportEncrypted) success = CkSshKey::ckSaveText(key,exportedKey,"qa_output/privkey_putty_unencrypted.ppk") ; The unencrypted PuTTY key looks like this: ; PuTTY-User-Key-File-2: ssh-ed25519 ; Encryption: none ; Comment: This is my new ed25519 key. ; Public-Lines: 2 ; AAAAC3NzaC1lZDI1NTE5AAAAIJn6m7yKzkAAHXzzjE1zv4RqtdE8r5eTegcpbNDF ; OPYs ; Private-Lines: 1 ; AAAAIFgwbZ38AR9Oiw930wsCcCGymQRBa2Y7qBq6R3HCe9VL ; Private-MAC: 892573676dd13ef70b6ab7ef219decdfbd5b1857 ; Export the ed25519 private key to encrypted PuTTY format: CkSshKey::setCkPassword(key, "secret") exportEncrypted = 1 exportedKey = CkSshKey::ckToPuttyPrivateKey(key,exportEncrypted) success = CkSshKey::ckSaveText(key,exportedKey,"qa_output/privkey_putty_encrypted.ppk") ; The encrypted PuTTY key looks like this: ; PuTTY-User-Key-File-2: ssh-ed25519 ; Encryption: aes256-cbc ; Comment: This is my new ed25519 key. ; Public-Lines: 2 ; AAAAC3NzaC1lZDI1NTE5AAAAIJn6m7yKzkAAHXzzjE1zv4RqtdE8r5eTegcpbNDF ; OPYs ; Private-Lines: 1 ; aIa9mY22htPElPgWhtXesp97662JECxaSsnNqvhD06P+o18immv8ohn73vI/bhQB ; Private-MAC: 312221dc90660859fe68df300767f8f779046815 Debug "Success!" CkSshKey::ckDispose(key) ProcedureReturn EndProcedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.