Ethereum: How to generate extended public keys to children’s public key without generating children’s private key in HD wallets?

In Ethereum, extended public keys (EPKS) ​​is an effective tool that allows users to create complex private keys with multilayer safety layers. One of the most common misconceptions is that EPK children can generate a public key without generating the right child’s private key in HD wallets. In this article, we examine why this is not always the case and we provide guidance to the efficient use of EPKS.

What are the extended public keys (EPK)?

In Ethereum, a private key is represented as an extended public key consisting of several layers:

1.

  • The middle layer contains the private key in hexadecimal format.

  • The right layer represents the signature of the private key.

How to create a child’s public keys with EPKS

In order to create public keys in children with the help of an expanded public key, the left and middle layers (the public key encoded by the BASE58) must be combined with the right layer (signature). This process was known as “Hasing”, the Private Key.

If you use a device like Bitcoin Core or Ethereum Explorer, you can subtract the private key to produce a child’s public key. The child received a public key should be in hexadecimal format and look at:

`

0x … (Base58-encoded public key)

+ ——+ | (middle layer)

| signature

+—- ++ ————————–+

| … (signature)

+—————————-+

`

EPKS can generate a public key to EPK -K children without generating the right child private key?

Yes, it is possible to create a child public keys without producing the right child without producing a private key. However, this process is not that simple and requires further steps.

There are some approaches to achieve this:

  • Using the “Sign” method

    : This includes a private key with a child’s signature (CS) algorithm, such as ED25519 or SECP256K1. The resulting cs can then be used to create a child’s public key.

  • Using the “Dervy” method

    Ethereum: How can extended public keys generate child public keys without generating the child private key in HD wallets?

    : In some cases, you can use the “Derive” function that certain Ethereum wallets and libraries provide for the production of children’s public keys without generating the right child’s private key.

Example Use the case

Here’s an example of how to use an EPK to create a child’s public key with Bitcoin Core:

`

  • Create a new HD wallet on EPKS enabled.

  • Use the “Derize” function to subtract the private key and generate a child’s signature (CS).

  • Sign the CS with a child’s signature algorithm, such as ED25519 or SECP256K1.

  • Use the child received a public key to interact with the Ethereum network.

Conclusion

In summary, although it is technically possible to create a child’s public keys without generating the right child key with expanded public keys (EPK), this approach requires further steps and may not be as safe or comfortable as other methods. However, for experienced users, who need more control over their private key, EPKs can continue to provide an effective toolkit to create complex private keys with multiple security layers.

Recommended tools and libraries

For those who want to implement EPK-based Children’s Key Generation in their own projects, the following tools and libraries can be useful:

  • Bitcoin Core: A popular Ethereum wallet that supports EPKS.

  • Ethereum Explorer: A web interface for interaction with the Ethereum network that allows users to create and manage the EPKS.

  • ETHTOOL: Python Library for cooperation with Ethereum with smart contracts and wallets that supports the EPK-based child key generation.
(Visited 1 times, 1 visits today)