DataFlex
DataFlex
Load an Ed25519 Private Key from Hex
See more Ed25519 Examples
Demonstrates how to load an Ed25519 private key from raw hex bytes.Note: This example requires Chilkat v9.5.0.83 or greater.
Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Handle hoPrivKey
String sPrivKeyHex
String sPubKeyHex
2 Handle hoPrivKey2
Variant vSbPubKeyHex
Handle hoSbPubKeyHex
String sTemp1
Move False To iSuccess
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
Get Create (RefClass(cComChilkatPrivateKey)) To hoPrivKey
If (Not(IsComObjectCreated(hoPrivKey))) Begin
Send CreateComObject of hoPrivKey
End
// We have the hexidecimal encoded bytes of the private key and public key:
Move "d4ee72dbf913584ad5b6d8f1f769f8ad3afe7c28cbf1d4fbe097a88f44755842" To sPrivKeyHex
Move "19bf44096984cdfe8541bac167dc3b96c85086aa30b6b6cb0c5c38ad703166e1" To sPubKeyHex
// Load these values into the Chilkat private key object:
Get ComLoadEd25519 Of hoPrivKey sPrivKeyHex sPubKeyHex To iSuccess
If (iSuccess = False) Begin
Get ComLastErrorText Of hoPrivKey To sTemp1
Showln sTemp1
Procedure_Return
End
// ---------------------------------------------------------------
// We don't actually need the public key. If we pass an empty string for the public key,
// Chilkat will automatically compute it.
Get Create (RefClass(cComChilkatPrivateKey)) To hoPrivKey2
If (Not(IsComObjectCreated(hoPrivKey2))) Begin
Send CreateComObject of hoPrivKey2
End
Get ComLoadEd25519 Of hoPrivKey2 sPrivKeyHex "" To iSuccess
// Let's get the public key to see that it computed the same value.
Get Create (RefClass(cComChilkatStringBuilder)) To hoSbPubKeyHex
If (Not(IsComObjectCreated(hoSbPubKeyHex))) Begin
Send CreateComObject of hoSbPubKeyHex
End
Get pvComObject of hoSbPubKeyHex to vSbPubKeyHex
Get ComGetRawHex Of hoPrivKey2 vSbPubKeyHex To sPrivKeyHex
Get ComGetAsString Of hoSbPubKeyHex To sTemp1
Showln "computed public key = " sTemp1
// The output should be:
// computed public key = 19bf44096984cdfe8541bac167dc3b96c85086aa30b6b6cb0c5c38ad703166e1
End_Procedure