I did go thru a lot of articles which say's It's highly impossible to break the bitcoin public-key and get a private key from it. I understand that the public key does hold some info of it's corresponding private key. Can anyone suggest me some steps for manual calculation and reversing the scalar multiplication from the public key so I obtain the private key? I'm not looking for any scripts for doing this but I'm looking for mathematical steps in-order to reverse the public key to private key.

  • The mathematical steps that you ask for are those required for breaking the public key cryptography system. Currently, those steps are unknown. – Willtech Jan 29 '18 at 12:11
  • Ya may want to try the math stack, there's LaTeX support there instead of code highlighting... From what I've read if you can get the owner of a given address to sign things improperly, see the Wiki Signature generation algorithm (jump to ... it is also crucial to select different k for different signatures... specifically), it's then possible to solve for the private key without an exhaustive search. Side note, this could be used for burning data via private keys intentionally revealed as a final transaction. – S0AndS0 May 22 at 19:05

I think this can serve as a start point.

  • How to find at least one private key from a large list of compressed public keys secp256k1 I assume that there are new methods and ways to do this. Please describe how this can be done? crypto.stackexchange.com/questions/70006/… – Rozwrcd May 22 at 9:18
  • @Rozwrcd: what you ask is infeasible. – RedGrittyBrick May 22 at 9:43

This is simply practically not possible; it's one of the basic premises of public-key cryptography:

The strength of a public key cryptography system relies on the computational effort (work factor in cryptography) required to find the private key from its paired public key. If so, effective security only requires keeping the private key private; the public key can be openly distributed without compromising security.

Unless somebody breaks the cryptographic algorithm used to generate the keys, your best bet is to simply generate random keys and check whether the corresponding public key matches the one you already have. (Well, that's a slight exaggeration but you get the point.)

  • Yes, brute force the private key and check if generated public keys match is about the only conceivable method presently. – Willtech Jan 29 '18 at 12:10

I think its not possible to get back the public key, someone would have applied supercomputing power to get back all the bitcoins and become super rich.

We're looking for long answers that provide some explanation and context. Don't just give a one-line answer; explain why your answer is right, ideally with citations. Answers that don't include explanations may be removed.


A public key is derived from a private key. To derive the public key you need an Elliptic Curve, Bitcoin chose to use secp256k1. Your public key is your private key multiplied by the generator point (which is a constant set in the secp256k1 standard), so it's a point on the curve

New contributor
Ammar Younis is a new contributor to this site. Take care in asking for clarification, commenting, and answering. Check out our Code of Conduct.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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