Sample code for 30+ languages & platforms
PowerBuilder

Load EC Public Key from X,Y Values

See more ECC Examples

Demonstrates how to load an EC public key from X and Y values.

Chilkat PowerBuilder Downloads

PowerBuilder
integer li_rc
integer li_Success
string x
string y
oleobject loo_Json
oleobject loo_Pubkey

li_Success = 0

// We have the following x and y values in base64 (for an EC point on the P-256 curve).
x = "Dn7uB1O7kgk74G6qfQwFJESeDnxO6lLjGZFWZJE16tw"
y = "iOWA5DInzK6nuUGvHJbMVq1Dpj248FqSV2teN3HzmhU"

// Build a JWK that looks like this:

// {
//   "kty": "EC",
//   "crv": "P-256",
//   "x": "Dn7uB1O7kgk74G6qfQwFJESeDnxO6lLjGZFWZJE16tw",
//   "y": "iOWA5DInzK6nuUGvHJbMVq1Dpj248FqSV2teN3HzmhU"
// }

loo_Json = create oleobject
li_rc = loo_Json.ConnectToNewObject("Chilkat.JsonObject")
if li_rc < 0 then
    destroy loo_Json
    MessageBox("Error","Connecting to COM object failed")
    return
end if
loo_Json.UpdateString("kty","EC")
loo_Json.UpdateString("crv","P-256")
loo_Json.UpdateString("x",x)
loo_Json.UpdateString("y",y)

// Load from the JWK.
loo_Pubkey = create oleobject
li_rc = loo_Pubkey.ConnectToNewObject("Chilkat.PublicKey")

li_Success = loo_Pubkey.LoadFromString(loo_Json.Emit())
if li_Success = 0 then
    Write-Debug loo_Pubkey.LastErrorText
    destroy loo_Json
    destroy loo_Pubkey
    return
end if

Write-Debug "Success."


destroy loo_Json
destroy loo_Pubkey