Sample code for 30+ languages & platforms
Android™

Load any format Ed25519 Key

See more Ed25519 Examples

Demonstrates how to load any format Ed25519 private or public key.

Note: Chilkat began support for Ed25519 keys in version 9.5.0.83

Chilkat Android™ Downloads

Android™
// 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 {

  private static final String TAG = "Chilkat";

  // Called when the activity is first created.
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    boolean success = false;

    // This example assumes the Chilkat API to have been previously unlocked.
    // See Global Unlock Sample for sample code.

    // A private key, regardless of type or format (RSA, EC, DSA, Ed25519) can be loaded by
    // calling LoadAnyFormat or LoadAnyFormatFile.

    // Likewise, a public key, regardless of type or format can be loaded by calling
    // LoadFromFile or LoadBd.

    // For example:
    CkPrivateKey privKey = new CkPrivateKey();

    // Pass an empty password if not needed.
    String password = "";
    success = privKey.LoadAnyFormatFile("qa_data/eddsa/ed25519.pem",password);

    // For example, an encrypted PKCS8 key of any type (Ed25519, RSA, EC, etc.)
    password = "secret";
    success = privKey.LoadAnyFormatFile("qa_data/rsa/pkcs8.key",password);

    // The same for public keys..
    // (public keys never have nor need passwords)
    CkPublicKey pubKey = new CkPublicKey();
    success = pubKey.LoadFromFile("qa_data/pubkeys/pubkey_pkcs1.der");

  }

  static {
      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."
  }
}