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
(Delphi ActiveX) Get ECC Public Key from ECC Private KeyDemonstrates how to get an ECC public key from an ECC private key.
uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Chilkat_TLB; ... procedure TForm1.Button1Click(Sender: TObject); var privKey: TPrivateKey; success: Integer; pubKey: IPublicKey; begin // 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 := TPrivateKey.Create(Self); success := privKey.LoadPemFile('qa_data/ecc/secp256r1-key-pkcs8.pem'); if (success <> 1) then begin Memo1.Lines.Add(privKey.LastErrorText); Exit; end; // Get the public key. pubKey := privKey.GetPublicKey(); if (privKey.LastMethodSuccess <> 1) then begin Memo1.Lines.Add(privKey.LastErrorText); Exit; end; // Save the public key to a PEM file. success := pubKey.SavePemFile(0,'qa_data/ecc/secp256r1-pubkey.pem'); if (success <> 1) then begin Memo1.Lines.Add(pubKey.LastErrorText); Exit; end; // 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----- Memo1.Lines.Add('Success.'); end; |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.