Bitcoin derivative limits: Can you produce all the cores of all public keys?
The unique bitcoin cryptography is based on the Bip 32 path, which allows users to create more public keys from one core. Although this concept seems to offer unlimited options for the production of new keys, a closer study shows that not all seeds can produce a combination of all possible derivatives.
What are BIP 32 derivatives?
In the Bip 32 protocol, “seed” is the key used to get more public keys. These routes of performance are created according to the following rules:
- Each derivation route consists of two sets of parameters:
M
, which is the parent button (leaf node) and” N “, the number of root key.
- The first parameter, “M”, can be a node of leaves (for example, 0) or an empty string (
'').
- Second parameter, "n", determines how many times the parent key is connected.
Combining two parameters in different ways, users can create more derivatives, which eventually create different public keys. For example:
| M | n | Purchase of the answer
| --- ---
| 0 | 2 "m = 0, n = 2" |
| 0 | 3 | "M = 0, n = 3" |
| 1 | 2 "m = '', n = 2" |
| ... ... ...
Theoretical borders of derivate
When examining possible combinations of BIP 32 performance routes, it becomes clear that all seeds cannot produce any possible combination. The main reason for this limit is that each seed is associated with a particular public key.
In Bitcoin, the user's private key (ie their core) corresponds to a unique public key (P). In order to create more public keys from the same seed, users must originate from different roots from the same parental key. However, since each time the performance requires two parameters (mand n
), there are only 2^n possible combinations.
For example, consider a user with seeds that produce two separate public keys:
- P1 (root) | Root hash path of origin
| — —
| A | ABCDEFG “M = 0, N = 2” |
| H | xyzdefgh | “M = ”, n = 2″ |
As you can see, there are only two possible derivative paths for each seed (since they can be distributed from 0 to 0 to 1 to 1). The reason for this is that each time the performance requires a certain combination of the parent key (M
) and the number of connections (N
). No matter how many seeds there are, not all derivatives will produce any possible public key.
Conclusion
Although the Bip 32 derivative system seems to allow unlimited options for creating new keys, the reality is tinted. The theoretical boundaries of derivatives mean that not all cores are able to produce a combination of all possible roots and derivatives, leading to the final public keys associated with each seed.
In practice, users can continue to create several separate public keys from one seed using different techniques, such as using different values for “m` or” n “. However, inherent bip 32 derivative limitations mean that they do not create all seeds of all possible trails of all possible trails, finally limiting the number of public keys available.