On 01/23/2012 06:50 PM, Mike Hearn wrote: >> I double checked that the official (C++) client is indeed successful >> here. Oddly enough the bitcoinj implementation also seems to fail to >> verify this transaction, which seems to point in the direction of >> BouncyCastle (which we both use). > > BitCoinJ does not verify signatures (it is an SPV implementation), so > I'm not sure what you mean by this. Are you using old code? There used > to be some stuff that checked signatures but it was removed some time > ago.
Hi Mike, Bitcoinj has a class named ECKey. I just hardwired it with a main() to check the mentioned transaction's signature. I debugged the official client to get the exact data (hash, signed data and public key). I checked signatures of transactions prior to the mentioned one, all work, so the test code and the data I got are very likely correct. It might be that I'm using old bitcoinj code (I think it is 0.3, can't find a version string anywhere), but I doubt that has any impact on the ecc verification. Even if it did, I got my on code too, so what are the odds that two implementations fail at the same point? Anyway it would be helpful if someone just tried to run a verification independently with the mentioned transaction (with BouncyCastle and with openssl) and see whether he/she gets the same result. I tried with BouncyCastle 140 and the newest 1.46, both fail. Robert. ------------------------------------------------------------------------------ Keep Your Developer Skills Current with LearnDevNow! The most comprehensive online learning library for Microsoft developers is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3, Metro Style Apps, more. Free future releases when you subscribe now! http://p.sf.net/sfu/learndevnow-d2d _______________________________________________ Bitcoin-development mailing list Bitcoin-development@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/bitcoin-development