If I have just the (r,s,v) values of the signature and the message hash, what is the most efficient way to determine if a valid public key exists?
I do not need to know the public key, just that the signature and message hash recover to a public key.
Lets say with the notation:
- π,π are the values from the signature.
- β is the hash of the message being verified
- π is the public key
- πΊ is the group generator
- |π|π₯ is the x-coordinate of the point π
- {π ,π β²} are the two curve points with x-coordinate π
The recovery would be:
$$P \ \overset{?}{=} r^{-1}s\{R, R'\} - r^{-1}hG$$
My question is if there is a fast way of determining whether P exists, without doing the full expensive calculations to determine P.