Android Programming Examples

ChilkatHOMEAndroid™ASPVisual BasicVB.NETC#iOS (IPhone)Objective-CC++CUnicode C++Unicode CMFCDelphi DLLDelphi ActiveXFoxProJavaPerlPHP ExtensionPHP ActiveXPythonPowerShellRubySQL ServerVBScript

Android™ Examples

Bounced Email
Digital Certificates
Digital Signatures
DSA
Email Object
Encryption
FTP
HTML-to-XML
HTTP
IMAP
MHT / HTML Email
POP3
RSA
MIME
SMTP
Socket
SOCKS Proxy
Spider
SSH Key
SSH
SFTP
Tar
Upload
XML
XMP
Zip


More Examples...
Amazon S3
NTLM
RSS
Atom
PPMD
Deflate
Bzip2
LZW
Diffie-Hellman
Bz2
Character Encoding
CSV

 

 

 

 

 

 

 

 

(Chilkat for Android™ API) Generate DSA SSH Key

Generates a DSA SSH key and saves to various public and private key file formats (OpenSSH and PuTTY).

Download: Chilkat for Android™ Java Libraries

// Important: Don't forget to include the call to System.loadLibrary
// as shown at the bottom of this code sample.
package com.test;

import android.app.Activity;
import com.chilkatsoft.*;

import android.widget.TextView;
import android.os.Bundle;

public class SimpleActivity extends Activity {
  // Called when the activity is first created.
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    TextView tv = new TextView(this);
    String outStr = "";

    CkSshKey key = new CkSshKey();

    boolean success;

    int numBits;

    //  numBits should be a minimum of 1024 and
    //  a multiple of 64.  Typical values are
    //  1024 or 2048.
    numBits = 2048;
    success = key.GenerateDsaKey(numBits);
    if (success != true) {
        outStr += "Invalid numBits passed to DSA key generation method." + "\n";
        tv.setText(outStr);
        setContentView(tv);
        return;
    }

    //  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).

    String exportedKey;
    boolean exportEncrypted;

    //  Export the DSA private key to OpenSSH, PuTTY, and XML and save.
    exportEncrypted = false;
    exportedKey = key.toOpenSshPrivateKey(exportEncrypted);
    //  Chilkat provides a SaveText method for convenience...
    success = key.SaveText(exportedKey,"privkey_openssh_unencrypted.pem");

    //  Export with encryption to OpenSSH private key format:
    key.put_Password("secret");
    exportEncrypted = true;
    exportedKey = key.toOpenSshPrivateKey(exportEncrypted);
    success = key.SaveText(exportedKey,"privkey_openssh_encrypted.pem");

    //  Export the DSA private key to unencrypted PuTTY format:
    exportEncrypted = false;
    exportedKey = key.toPuttyPrivateKey(exportEncrypted);
    success = key.SaveText(exportedKey,"privkey_putty_unencrypted.ppk");

    //  Export the DSA private key to encrypted PuTTY format:
    key.put_Password("secret");
    exportEncrypted = true;
    exportedKey = key.toPuttyPrivateKey(exportEncrypted);
    success = key.SaveText(exportedKey,"privkey_putty_encrypted.ppk");

    //  Export private key to XML:
    exportedKey = key.toXml();
    success = key.SaveText(exportedKey,"privkey.xml");

    //  ----------------------------------------------------
    //  Now for the public key....
    //  ----------------------------------------------------

    //  The Secure Shell (SSH) Public Key File Format
    //  is documented in RFC 4716.
    exportedKey = key.toRfc4716PublicKey();
    success = key.SaveText(exportedKey,"pubkey_rfc4716.pub");

    //  OpenSSH has a separate public-key file format, which
    //  is also supported by Chilkat SshKey:
    exportedKey = key.toOpenSshPublicKey();
    success = key.SaveText(exportedKey,"pubkey_openSsh.pub");

    outStr += "Finished." + "\n";
    tv.setText(outStr);
    setContentView(tv);
  }

  static {
      // Important: Make sure the name passed to loadLibrary matches the shared library
      // found in your project's libs/armeabi directory.
      //  for "libchilkat.so", pass "chilkat" to loadLibrary
      //  for "libchilkatemail.so", pass "chilkatemail" to loadLibrary
      //  etc.
      // 
      System.loadLibrary("chilkat");

      // Note: If the incorrect library name is passed to System.loadLibrary,
      // then you will see the following error message at application startup:
      //"The application <your-application-name> has stopped unexpectedly. Please try again."
  }
}

© 2000-2013 Chilkat Software, Inc. All Rights Reserved.