-1
$\begingroup$

I am making a program using the library cryptopp using curve secp521, in which at the end of that program I get n*Point Because I am writing that program I know that what is the value of 'n'. So, I can verify it. Is there a way in which if some one else, third person when gets that result nP can find out that what number was multiplied with that point. And he knows curve and all other parameters of curve

Is there any function in cryptopp that can perform this task?

I can do this thing in small curve whose q is lets say 19.

In case of this curve like secp, I can't even find out their q i. e. Cyclic group. So how can I implement it in a program .

Or is it possible to implement it by taking a subgroup of some curve? If it is possible can you please guide me.

$\endgroup$
  • 1
    $\begingroup$ Possible duplicate of Summarize the mathematical problem at the heart of breaking a Curve25519 public key $\endgroup$ – kelalaka Aug 24 '19 at 23:02
  • $\begingroup$ The q is either the order of the curve or the prime (Q can even be the public point in some systems, depending on the definition). It seems it is the order in your question. However, the order is part of the domain parameters and should be considered public knowledge; there is certainly no reason to keep it secret. $\endgroup$ – Maarten Bodewes Aug 25 '19 at 15:36
2
$\begingroup$

Is there a way in which if some one else, third person when gets that result nP can find out that what number was multiplied with that point. And he knows curve and all other parameters of curve

We most certainly hope that it is infeasible, given the points $P$ and $nP$, to recover the value $n$. This is the ECDLog problem, and essentially all of Elliptic Curve Cryptography is broken if this assumption is not true.

$\endgroup$

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