![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(PureBasic) Get EC Public Key from EC Private KeyDemonstrates how to get an EC public key from an EC private key. Note: This example requires Chilkat v11.0.0 or greater.
IncludeFile "CkPublicKey.pb" IncludeFile "CkPrivateKey.pb" Procedure ChilkatExample() success.i = 0 ; We have an ECC private key... ; The contents of the private key PEM file look like this: ; -----BEGIN PRIVATE KEY----- ; MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg3J8q/24D1sEKGdP9 ; 72MGYElLGpw/a56Y3t6pfON3uhShRANCAATlSmoizyhAwoYZAOuFBATl07/1RR54 ; a1Dzfm16grxJe666AGKR+bSs24hk7TEpaeCTvT8YOOM3l+xKFg7zq6Q9 ; -----END PRIVATE KEY----- privKey.i = CkPrivateKey::ckCreate() If privKey.i = 0 Debug "Failed to create object." ProcedureReturn EndIf success = CkPrivateKey::ckLoadPemFile(privKey,"qa_data/ecc/secp256r1-key-pkcs8.pem") If success = 0 Debug CkPrivateKey::ckLastErrorText(privKey) CkPrivateKey::ckDispose(privKey) ProcedureReturn EndIf ; Get the public key. pubKey.i = CkPublicKey::ckCreate() If pubKey.i = 0 Debug "Failed to create object." ProcedureReturn EndIf CkPrivateKey::ckToPublicKey(privKey,pubKey) ; Save the public key to a PEM file. success = CkPublicKey::ckSavePemFile(pubKey,0,"qa_data/ecc/secp256r1-pubkey.pem") If success = 0 Debug CkPublicKey::ckLastErrorText(pubKey) CkPrivateKey::ckDispose(privKey) CkPublicKey::ckDispose(pubKey) ProcedureReturn EndIf ; The contents of the ECC public key PEM file look like this: ; -----BEGIN PUBLIC KEY----- ; MIIBSzCCAQMGByqGSM49AgEwgfcCAQEwLAYHKoZIzj0BAQIhAP////8AAAABAAAA ; AAAAAAAAAAAA////////////////MFsEIP////8AAAABAAAAAAAAAAAAAAAA//// ; ///////////8BCBaxjXYqjqT57PrvVV2mIa8ZR0GsMxTsPY7zjw+J9JgSwMVAMSd ; NgiG5wSTamZ44ROdJreBn36QBEEEaxfR8uEsQkf4vOblY6RA8ncDfYEt6zOg9KE5 ; RdiYwpZP40Li/hp/m47n60p8D54WK84zV2sxXs7LtkBoN79R9QIhAP////8AAAAA ; //////////+85vqtpxeehPO5ysL8YyVRAgEBA0IABOVKaiLPKEDChhkA64UEBOXT ; v/VFHnhrUPN+bXqCvEl7rroAYpH5tKzbiGTtMSlp4JO9Pxg44zeX7EoWDvOrpD0= ; -----END PUBLIC KEY----- Debug "Success." CkPrivateKey::ckDispose(privKey) CkPublicKey::ckDispose(pubKey) ProcedureReturn EndProcedure |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.