DataFlex
DataFlex
Load an EC Public Key from Point Coordinates
Demonstrates the Chilkat PublicKey.LoadEcdsa method, which loads an elliptic-curve public key from its affine point coordinates. The first argument names the curve, the second is the hexadecimal x-coordinate (Qx), and the third is the y-coordinate (Qy).
Background: An EC public key is a point (x, y) on a named curve, so this loader constructs the key from those raw values directly — the option to use when a system hands you the coordinates rather than an encoded key. The curve name (for example
secp256r1) is essential, since the same coordinates mean nothing without knowing which curve they lie on.Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Boolean iSuccess
Handle hoPubKey
String sCurveName
String sQx
String sQy
String sTemp1
Move False To iSuccess
// Demonstrates the PublicKey.LoadEcdsa method, which loads an elliptic-curve public key from its
// affine point coordinates. The 1st argument names the curve, the 2nd is the hex x-coordinate
// (Qx), and the 3rd is the hex y-coordinate (Qy).
Get Create (RefClass(cComChilkatPublicKey)) To hoPubKey
If (Not(IsComObjectCreated(hoPubKey))) Begin
Send CreateComObject of hoPubKey
End
Move "secp256r1" To sCurveName
Move "1ccbe91c075fc7f4f033bfa248db8fccd3565de94bbfb12f3c59ff46c271bf83" To sQx
Move "ce4014c68811f9a21a1fdb2c0e6113e06db7ca93b7404e78dc7ccd5ca89a4ca9" To sQy
Get ComLoadEcdsa Of hoPubKey sCurveName sQx sQy To iSuccess
If (iSuccess = False) Begin
Get ComLastErrorText Of hoPubKey To sTemp1
Showln sTemp1
Procedure_Return
End
Showln "Loaded an EC public key on " sCurveName
End_Procedure