Author: Brautigam Róbert 2012-01-27 18:19:54
Published on: 2012-01-27T18:19:54+00:00
A user named Brautigam Róbert posted on a forum stating that he had encountered an issue with BouncyCastle while verifying a particular signature. Dave Hook from Bouncycastle replied to the post, stating that one of the ASN1 encoded integers in the signature was negative, which is not a valid coordinate for a point on a curve. Since ASN1 integers are always signed, "big" values need to be padded with a zero byte to stay positive. A simple workaround for verification would be to convert the integer to a positive value. The official C++ client was able to verify the transaction successfully, but the bitcoinj implementation failed to do so, which suggests that the issue may lie with BouncyCastle, which both implementations use.
Updated on: 2023-06-05T01:51:46.312366+00:00