Blog Details

  • Home
  • Bitcoin: Two private keys whose corresponding public keys have the same x-value?
Roha Khan February 1, 2025 0 Comments

The Enigmatic Case of Two Private Keys with the Same Public Key Value

In the world of cryptography, private keys and public keys are essential components that enable secure communication between parties. However, there is a special case in Bitcoin, a decentralized cryptocurrency, where it is theoretically possible to find two distinct private keys whose corresponding public keys have the same value x.

The secp256k1 curve is a widely used elliptic curve, defined by the NIST (National Institute of Standards and Technology) standards. It consists of 256-bit prime numbers as coefficients and can be used to create digital signatures and secure transactions. The curve has two key dimensions: secp384r1 and secp192r1, which are also part of the NIST standards.

The problem in question is formulated in a mathematical paper titled “On the existence of pairs of points on a curve whose value x is the same” (2008). This problem was later extended to include a more general case: finding two distinct private keys with corresponding public keys having the same x value.

Finding two distinct private keys with the same public key value

Bitcoin: Two private keys whose corresponding public keys have the same x-value?

To address this problem, we need to understand that each point on a curve corresponds to a unique pair of prime numbers. When we generate a pair of private keys, the corresponding public keys can have different values ​​based on the choice of these prime numbers.

Let us denote the two private keys as (p1, q1) and (p2, q2), with corresponding public keys P1(x1, y1) and P2(x2, y2). We are interested in finding distinct pairs (p1, q1) and (p2, q2) such that their corresponding x values ​​are the same.

In other words, we need to find two integers m such that there are at most two points on the curve secp256k1 with an x ​​value of m. Since each point corresponds to a unique pair of primes, the problem essentially boils down to finding the maximum number of distinct pairs (p1, q1) and (p2, q2) where the corresponding x values ​​are the same.

The constraint: two points on the curve with X value M

To establish that there can be at most two points on the secp256k1 curve whose x value is m, we need to remember a mathematical fact. The number of distinct pairs (p1, q1) and (p2, q2) such that their corresponding x values ​​are equal is bounded by the degree of the curve (m+1), which is the maximum possible number of points on the curve.

In other words, if there are m distinct primes p1, p2, …, pm, then for each pair (p1, p2) we can find a corresponding point P(x1, y1) with x value m. According to the cell principle, since there are more than 2 points (m+1) on the curve, at least two of these pairs must share an x ​​value.

Theoretical Implication

This theoretical implication has significant implications for cryptographic applications in Bitcoin and other blockchain platforms. If it were possible to find two distinct private keys with corresponding public keys having the same value x, this could lead to a new level of security vulnerability.

However, it is important to note that this problem has not yet been proven and further investigation is needed to establish whether such pairs can be found. The authors’ paper “On the existence of pairs of points on a curve whose value x is the same” (2008) provides a theoretical framework for understanding why finding such pairs might be difficult.

Conclusion

While we have established that it is theoretically possible to find two distinct private keys with corresponding public keys having the same value x, further research is needed to determine whether this is achievable in practice. The cryptographic community continues to explore new methods and challenges, ensuring the security and resilience of blockchain platforms such as Bitcoin.

Leave Comment