LearnBitcoin

Bitcoin Dev Archive 2014

Another weird transaction question...

2 messages, 13 Aug 2014. Started by Richard Moore.

Richard Moore, Peter Todd

Permalink Original thread on gnusha.org

Richard Moore permalink original

Hey all,

Sorry to keep bugging you all, as I slowly verify the blockchain one transaction after another with my own implementation, but I have found another transaction that is obviously correct (as it is verified by the legit client) that has me seeking clarification.

This multisig output script:

https://blockchain.info/tx-index/12809044/0 (txid: 274f8be3b7b9b1a220285f5f71f61e2691dd04df9d69bb02a8b3b85f91fb1857)

contains a public key:

00f2b7816db49d55d24df7bdffdbc1e203b424e8cd39f5651ab938e5e4a193569e

Are invalid public keys permitted and silently ignored? Or does the 0x00 prefix have some interesting meaning?

Thanks again,

RicMoo

.·´¯`·.¸¸.·´¯`·.¸¸.·´¯`·.¸¸.·´¯`·.¸¸.·´¯`·.¸><(((º>

Richard Moore ~ Founder Genetic Mistakes Software inc. phone: (778) 882-6125 email: ricmoo@geneticmistakes•com www: http://GeneticMistakes.com

Peter Todd in reply to Richard Moore permalink original

On 13 August 2014 11:00:22 GMT-07:00, Richard Moore <me@ricmoo•com> wrote:

Quoted text (18 lines)
>Hey all,
>
>Sorry to keep bugging you all, as I slowly verify the blockchain one
>transaction after another with my own implementation, but I have found
>another transaction that is obviously correct (as it is verified by the
>legit client) that has me seeking clarification.
>
>This multisig output script:
>
>https://blockchain.info/tx-index/12809044/0  (txid:
>274f8be3b7b9b1a220285f5f71f61e2691dd04df9d69bb02a8b3b85f91fb1857)
>
>contains a public key:
>
>00f2b7816db49d55d24df7bdffdbc1e203b424e8cd39f5651ab938e5e4a193569e
>
>Are invalid public keys permitted and silently ignored? Or does the
>0x00 prefix have some interesting meaning?

Have you looked at the Bitcoin Core script test cases yet? You might be surprised at what is allowed. Equally, read the source code! In particular follow the block acceptance logic line by line from start to finish.

In any case, the Bitcoin protocol doesn't care whether or not a public key is valid.