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
(DataFlex) Generate an Ed25519 Key PairDemonstrates how to generate a new Ed25519 public/private key pair. Note: This example requires Chilkat v9.5.0.83 or greater.
Use ChilkatAx-win32.pkg Procedure Test Handle hoEddsa Variant vPrng Handle hoPrng Variant vPrivKey Handle hoPrivKey Boolean iSuccess String sJwk Handle hoJson String sTemp1 // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. Get Create (RefClass(cComChilkatEdDSA)) To hoEddsa If (Not(IsComObjectCreated(hoEddsa))) Begin Send CreateComObject of hoEddsa End Get Create (RefClass(cComChilkatPrng)) To hoPrng If (Not(IsComObjectCreated(hoPrng))) Begin Send CreateComObject of hoPrng End Get Create (RefClass(cComChilkatPrivateKey)) To hoPrivKey If (Not(IsComObjectCreated(hoPrivKey))) Begin Send CreateComObject of hoPrivKey End // Generates a new eddsa key and stores it in privKey. Get pvComObject of hoPrng to vPrng Get pvComObject of hoPrivKey to vPrivKey Get ComGenEd25519Key Of hoEddsa vPrng vPrivKey To iSuccess If (iSuccess = False) Begin Get ComLastErrorText Of hoEddsa To sTemp1 Showln sTemp1 Procedure_Return End // Examine the ed25519 key in JWK format; Get ComGetJwk Of hoPrivKey To sJwk Get Create (RefClass(cComChilkatJsonObject)) To hoJson If (Not(IsComObjectCreated(hoJson))) Begin Send CreateComObject of hoJson End Get ComLoad Of hoJson sJwk To iSuccess Set ComEmitCompact Of hoJson To False Get ComEmit Of hoJson To sTemp1 Showln sTemp1 // Sample output: // { // "kty": "OKP", // "crv": "Ed25519", // "x": "SE2Kne5xt51z1eciMH2T2ftDQp96Gl6FhY6zSQujiP0", // "d": "O-eRXewadF0sNyB0U9omcnt8Qg2ZmeK3WSXPYgqe570", // "use": "sig" // } // In the above JWK, x is the public key, y is the private key. // Both are 32 bytes and are base64-url encoded. End_Procedure |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.