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
(Android™) Get an EC Key in Raw Hex FormatDemonstrates how to get the private and public key parts of an EC (ECDSA) key in lowercase hex formmat. Note: This example requires Chilkat v9.5.0.83 or greater.
// 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); // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. // Load an EC key from some format.. CkPrivateKey privKey = new CkPrivateKey(); // This loads an ECDSA key from an unencrypted PEM file (no password required). boolean success = privKey.LoadAnyFormatFile("qa_data/ecc/openssl_ecc_privKey.pem",""); if (success == false) { Log.i(TAG, privKey.lastErrorText()); return; } // The key type should be "ecc" to indicate an EC key. Log.i(TAG, "key type = " + privKey.keyType()); // What is the size of the private key in bits? Log.i(TAG, "size in bits = " + String.valueOf(privKey.get_BitLength())); // Get the private and public EC key parts in raw hex format: CkStringBuilder sbPubKeyHex = new CkStringBuilder(); String privKeyHex = privKey.getRawHex(sbPubKeyHex); // If the private key size in bits is 256, then we should have a 32-byte key (a 64 character hex string). Log.i(TAG, "private key = " + privKeyHex); // The public key is composed of the "x" and "y" parts, and is composed like this: 04||HEX(x)||HEX(y) Log.i(TAG, "public key = " + sbPubKeyHex.getAsString()); // Sample output: // key type = ecc // size in bits = 256 // private key = ced36f2ba3332be439f79143d69937fc52494cd38e45243c3ea05db183919f1b // public key = 045b4edcd501831740895f5907feabb71587076a6314d9d5141f9f8c33a478b8ce08b8dfd2a091eb6355803d7e729876c790bc0b176f2015f3bb103813753f676a } 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." } } |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.