<p>No sufficiently efficient algorithm for division is known. Multiplication over a closed group is a lossy process.</p>

<p>For an imperfect analogy, consider multiplication over the group of 100-digit numbers where you just keep the last 100 digits of the result. Since you don't know what digits were discarded, you can't naively reverse a multiplication.</p>

<p>The corresponding algorithm in DSA is modular exponentiation -- <code>(G^X) mod n</code>, which is also, for practical purposes with large numbers, irreversible even if G and n are known.</p>

CC BY-SA 3.0
2014-05-15T08:27:24.910Z
Multiplication in a closed group is not lossy. It is hard to go back, but with a*G = P, if you know P and G, there will be exactly one a (modulo the order of the group) that satisfies it. It's just very hard to compute.
Pieter Wuille
CC BY-SA 3.0
2014-05-14T06:25:07.397Z
2014-05-14T06:25:07.397Z
David Schwartz
<p>Uncompressed "G" is 0479BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798483ADA7726A3C4655DA4FBFC0E1108A8FD17B448A68554199C47D08FFB10D4B8</p>

<p>The "04" at the beginning is simply added (for what reason I don't know).</p>

<p>The first 64 hex characters after the "04" supposedly represent the "x" value and the last 64 hex characters supposedly represent the "y" value.</p>

<p>I don't know the specifics of why it cannot be reversed (I am also seeking the answer to that question).</p>

CC BY-SA 3.0
2014-05-14T05:53:23.947Z
2014-05-14T05:53:23.947Z
Mine
<p>Note that the "multiplication" in question is not ordinary integer multiplication, but <a href="http://en.wikipedia.org/wiki/Elliptic_curve_point_multiplication" rel="nofollow">elliptic curve point multiplication</a>.</p>

<p>The whole point of working over an elliptic curve in this way is that multiplication is easy, but division is hard.</p>

CC BY-SA 3.0
2014-05-14T06:00:50.960Z
2014-05-14T06:00:50.960Z
Nate Eldredge
<p>If so, what is that number and why can't you divide the public key by G to obtain the private key?</p>

CC BY-SA 3.0
2013-03-04T17:22:20.023Z
G's not publicized.
Nick ODell
CC BY-SA 3.0
2013-03-04T23:08:34.703Z
i thought the generator point G was publicly known?
joe
<protocol><ecdsa>
Is the generator G of the keypair always the same number for all different tx messages in Bitcoin?
joe
# Is the generator G of the keypair always the same number for all different tx messages in Bitcoin?

(Asked by: username_0 on 2013-03-04)

If so, what is that number and why can't you divide the public key by G to obtain the private key?

**Tags:** protocol, ecdsa

> **Comments:**
> **username_1**: G's not publicized.  
> **username_0**: i thought the generator point G was publicly known?  

---

## 3 answers

### Answer by username_2 on 2014-05-14. Score: 2

No sufficiently efficient algorithm for division is known. Multiplication over a closed group is a lossy process.

For an imperfect analogy, consider multiplication over the group of 100-digit numbers where you just keep the last 100 digits of the result. Since you don't know what digits were discarded, you can't naively reverse a multiplication.

The corresponding algorithm in DSA is modular exponentiation -- `(G^X) mod n`, which is also, for practical purposes with large numbers, irreversible even if G and n are known.

> **Comments:**
> **username_3**: Multiplication in a closed group is not lossy. It is hard to go back, but with a*G = P, if you know P and G, there will be exactly one a (modulo the order of the group) that satisfies it. It's just very hard to compute.  

---

### Answer by username_4 on 2014-05-14. Score: 2

Uncompressed "G" is 0479BE667EF9DCBBAC55A06295CE870B07029BFCDB2DCE28D959F2815B16F81798483ADA7726A3C4655DA4FBFC0E1108A8FD17B448A68554199C47D08FFB10D4B8

The "04" at the beginning is simply added (for what reason I don't know).

The first 64 hex characters after the "04" supposedly represent the "x" value and the last 64 hex characters supposedly represent the "y" value.

I don't know the specifics of why it cannot be reversed (I am also seeking the answer to that question).


---

### Answer by username_5 on 2014-05-14. Score: 1

Note that the "multiplication" in question is not ordinary integer multiplication, but [elliptic curve point multiplication](http://en.wikipedia.org/wiki/Elliptic_curve_point_multiplication).

The whole point of working over an elliptic curve in this way is that multiplication is easy, but division is hard.


---

