2
$\begingroup$

This is the equation

Public key = Private key * G

Here,

 Private key = 0000000000000000000000000000000000000000000000000000000000000001

 G = (0x79BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798,
 0x483ADA7726A3C4655DA4FBFC0E1108A8FD17B448A68554199C47D08FFB10D4B8) 

As Private key =1, there is no iteration on the curve. So value of Public key should be G

But the reality is

Public key = 0x7E5F4552091A69125d5DfCb7b8C2659029395Bdf

NB: Well none Ethereum Private key and Public key

Is there anybody who could make me understand how?

Could you help me showing any math how

Private key = 0000000000000000000000000000000000000000000000000000000000000001 is converted into 0x7E5F4552091A69125d5DfCb7b8C2659029395Bdf as wallet address?

$\endgroup$
0

1 Answer 1

3
$\begingroup$

From Yellow Paper of Ethereum

For a given private key, $p_r$ , the Ethereum address $A(p_r )$ (a 160-bit value) to which it corresponds is defined as the right most 160-bits of the Keccak hash of the corresponding ECDSA public key: $$ A(p_r ) = B_{96\ldots255}(\textit{KEC}(\textit{ECDSAPUBKEY}(p_r )$$

  • first find the public key in the ECC using the private key $k$

    $$PublicKey = k \cdot G= [k]G $$ set $k=1$ and get $PublicKey = G$

  • Now, we need to use Keccak-256 with $x$ and $y$ coordinate is concatanated, we can use an online tool, Never Use for real keys online

  • we get

    c0a6c424ac7157ae408398df7e5f4552091a69125d5dfcb7b8c2659029395bdf
    
  • Take the rightmost 160-bit from the result or 40-hex from already hex encoded result of hashing.

    0x7E5F4552091A69125D5DFCB7B8C2659029395BDF
    
  • Now, we have arrived at your Ethereum address.

$\endgroup$
1
  • 1
    $\begingroup$ Thank you very much $\endgroup$
    – Asif Iqbal
    Commented Feb 6 at 15:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.