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)
PBKDF2 - Derive Key from Password

Demonstrates how to derive a symmetric encryption key from a password using PBKDF2. This example matches the results found at this URL: http://www.di-mgt.com.au/cryptoKDFs.html#examplespbkdf

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 = "";

    CkCrypt2 crypt = new CkCrypt2();

    boolean success;
    success = crypt.UnlockComponent("Anything for 30-day trial");
    if (success != true) {
        outStr += crypt.lastErrorText() + "\n";
        tv.setText(outStr);
        setContentView(tv);
        return;
    }

    String hexKey;
    //  http://www.di-mgt.com.au/cryptoKDFs.html#examplespbkdf

    String pw;
    pw = "password";
    String pwCharset;
    pwCharset = "ansi";
    //  Hash algorithms may be: sha1, md2, md5, etc.
    String hashAlg;
    hashAlg = "sha1";
    //  The salt should be 8 bytes:
    String saltHex;
    saltHex = "78578E5A5D63CB06";
    int iterationCount;
    iterationCount = 2048;
    //  Derive a 192-bit key from the password.
    int outputBitLen;
    outputBitLen = 192;

    //  The derived key is returned as a hex or base64 encoded string.
    //  (Note: The salt argument must be a string that also uses
    //  the same encoding.)
    String enc;
    enc = "hex";

    hexKey = crypt.pbkdf2(pw,pwCharset,hashAlg,saltHex,iterationCount,outputBitLen,enc);

    outStr += hexKey + "\n";

    //  The output should have this value:
    //  BFDE6BE94DF7E11DD409BCE20A0255EC327CB936FFE93643

    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.