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
(PowerBuilder) Generate an ECC KeyDemonstrates how to generate an ECC key.
integer li_rc oleobject loo_ChilkatGlob integer li_Success oleobject loo_Fortuna string ls_Entropy oleobject loo_Ecc oleobject loo_PrivKey // All Chilkat classes can be unlocked at once at the beginning of a program // by calling UnlockBundle. It requires a Bundle unlock code. loo_ChilkatGlob = create oleobject // Use "Chilkat_9_5_0.Global" for versions of Chilkat < 10.0.0 li_rc = loo_ChilkatGlob.ConnectToNewObject("Chilkat.Global") if li_rc < 0 then destroy loo_ChilkatGlob MessageBox("Error","Connecting to COM object failed") return end if li_Success = loo_ChilkatGlob.UnlockBundle("Anything for 30-day trial.") if li_Success <> 1 then Write-Debug loo_ChilkatGlob.LastErrorText destroy loo_ChilkatGlob return end if // Create a Fortuna PRNG and seed it with system entropy. // This will be our source of random data for generating the ECC private key. loo_Fortuna = create oleobject // Use "Chilkat_9_5_0.Prng" for versions of Chilkat < 10.0.0 li_rc = loo_Fortuna.ConnectToNewObject("Chilkat.Prng") ls_Entropy = loo_Fortuna.GetEntropy(32,"base64") li_Success = loo_Fortuna.AddEntropy(ls_Entropy,"base64") loo_Ecc = create oleobject // Use "Chilkat_9_5_0.Ecc" for versions of Chilkat < 10.0.0 li_rc = loo_Ecc.ConnectToNewObject("Chilkat.Ecc") // Generate a random ECC private key on the secp256r1 curve. // Chilkat also supports other curves, such as secp384r1, secp521r1, and secp256k1. loo_PrivKey = loo_Ecc.GenEccKey("secp256r1",loo_Fortuna) if loo_Ecc.LastMethodSuccess <> 1 then Write-Debug loo_Ecc.LastErrorText destroy loo_ChilkatGlob destroy loo_Fortuna destroy loo_Ecc return end if Write-Debug loo_PrivKey.GetXml() // Save the private key to PKCS8 encrypted PEM // (The private key can be saved in a variety of different formats. See the online reference documentation.) li_Success = loo_PrivKey.SavePkcs8EncryptedPemFile("pemPassword","myPemFiles/eccKey123.pem") if li_Success <> 1 then Write-Debug loo_PrivKey.LastErrorText end if destroy loo_PrivKey Write-Debug "finished." destroy loo_ChilkatGlob destroy loo_Fortuna destroy loo_Ecc |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.