get x and y components from ecc public key in PEM format using openssl

10,767
Pub:
04:04:ce:24:34:d4:cb:f2:58:94:2f:8a:5f:06:d7:
3f:ed:5a:50:ef:fb:cc:b7:49:62:16:62:9e:aa:d5:
30:a8:a5
  • 0x04 indicates uncompressed form
  • From what remains:
    • X is first half 04:ce:24:34:d4:cb:f2:58:94:2f:8a:5f:06:d7:3f:ed
    • Y is second half 5a:50:ef:fb:cc:b7:49:62:16:62:9e:aa:d5:30:a8:a5

UPD. Found this website that contains further details.

Share:
10,767
Dhruv Agarwal
Author by

Dhruv Agarwal

Updated on June 14, 2022

Comments

  • Dhruv Agarwal
    Dhruv Agarwal almost 2 years

    I am generating a KeyPair for ECC from curve 'secp128r1' using openssl

    Steps I followed :

    • first I generated a private key using the command

      openssl ecparam -genkey -name secp128r1 -noout -out private.pem

    • then i viewed the corresponding public key using the command

      openssl ec -in private.pem -text -noout

      which showed an output as :

      read EC key

      Private-Key: (128 bit)
      priv:
      00:9f:bf:2b:bd:06:86:3a:a1:bc:7c:3e:90:57:40:
      f4:bc
      pub:
      04:04:ce:24:34:d4:cb:f2:58:94:2f:8a:5f:06:d7:
      3f:ed:5a:50:ef:fb:cc:b7:49:62:16:62:9e:aa:d5:
      30:a8:a5

      ASN1 OID: secp128r1

    I want explicitly x and y components from the public key generated here, please can anyone suggest the correct way of doing this ?
    The above public key is 264 bits long, hence cannot take(/split) it as is
    Thanks