timmattison / brick-rope

GNU General Public License v2.0
0 stars 1 forks source link

Bug introduced by more stringent signature checks #16

Closed timmattison closed 10 years ago

timmattison commented 10 years ago

In the fix for #11 I included a check that checked the final byte of the signature and made sure that it was 0x01. There are cases where it is not 0x01 legitimately so I need to update the check to deal with that.

timmattison commented 10 years ago

Relevant log data:

INFO: Validating 17 transaction(s) in block number 110300
java.lang.UnsupportedOperationException: Signature does not end with 0x01
at com.timmattison.cryptocurrency.bitcoin.words.crypto.OpCheckSig.execute(OpCheckSig.java:81)
at com.timmattison.cryptocurrency.bitcoin.BitcoinStateMachine.execute(BitcoinStateMachine.java:86)
at com.timmattison.cryptocurrency.bitcoin.AbstractBitcoinTransactionValidator.innerValidateTransactionInput(AbstractBitcoinTransactionValidator.java:55)
at com.timmattison.cryptocurrency.bitcoin.BitcoinParallelTransactionValidator$1.call(BitcoinParallelTransactionValidator.java:51)
at com.timmattison.cryptocurrency.bitcoin.BitcoinParallelTransactionValidator$1.call(BitcoinParallelTransactionValidator.java:47)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
timmattison commented 10 years ago

Fixed in #17