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
(Tcl) Generate DSA SSH KeyGenerates a DSA SSH key and saves to various public and private key file formats (OpenSSH and PuTTY).
load ./chilkat.dll set key [new_CkSshKey] # numBits should be a minimum of 1024 and # a multiple of 64. Typical values are # 1024 or 2048. set numBits 2048 set success [CkSshKey_GenerateDsaKey $key $numBits] if {$success != 1} then { puts "Invalid numBits passed to DSA key generation method." delete_CkSshKey $key exit } # Note: Generating a public/private key pair is CPU intensive # and may take a short amount of time (more than few seconds, # but less than a minute). # Export the DSA private key to OpenSSH, PuTTY, and XML and save. set exportEncrypted 0 set exportedKey [CkSshKey_toOpenSshPrivateKey $key $exportEncrypted] # Chilkat provides a SaveText method for convenience... set success [CkSshKey_SaveText $key $exportedKey "privkey_openssh_unencrypted.pem"] # Export with encryption to OpenSSH private key format: CkSshKey_put_Password $key "secret" set exportEncrypted 1 set exportedKey [CkSshKey_toOpenSshPrivateKey $key $exportEncrypted] set success [CkSshKey_SaveText $key $exportedKey "privkey_openssh_encrypted.pem"] # Export the DSA private key to unencrypted PuTTY format: set exportEncrypted 0 set exportedKey [CkSshKey_toPuttyPrivateKey $key $exportEncrypted] set success [CkSshKey_SaveText $key $exportedKey "privkey_putty_unencrypted.ppk"] # Export the DSA private key to encrypted PuTTY format: CkSshKey_put_Password $key "secret" set exportEncrypted 1 set exportedKey [CkSshKey_toPuttyPrivateKey $key $exportEncrypted] set success [CkSshKey_SaveText $key $exportedKey "privkey_putty_encrypted.ppk"] # Export private key to XML: set exportedKey [CkSshKey_toXml $key] set success [CkSshKey_SaveText $key $exportedKey "privkey.xml"] # ---------------------------------------------------- # Now for the public key.... # ---------------------------------------------------- # The Secure Shell (SSH) Public Key File Format # is documented in RFC 4716. set exportedKey [CkSshKey_toRfc4716PublicKey $key] set success [CkSshKey_SaveText $key $exportedKey "pubkey_rfc4716.pub"] # OpenSSH has a separate public-key file format, which # is also supported by Chilkat SshKey: set exportedKey [CkSshKey_toOpenSshPublicKey $key] set success [CkSshKey_SaveText $key $exportedKey "pubkey_openSsh.pub"] puts "Finished." delete_CkSshKey $key |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.