Danny, you were so helpful figuring out that compressed public key, maybe you can help me out with this one too.
Take a look at this transaction:
https://blockchain.info/tx/195c96a25c4e63f641a2ddd920a9d00d2db947752f41c6be6d4cdd21e54f7ae8It has two output scripts, the second one contains a RIPEMD160 hash as follows:
OP_HASH160 49206c6f76652077697a6b6964303537203c3300 OP_EQUAL
When I run: "49206c6f76652077697a6b6964303537203c3300" through my code to produce the ASCII key, I get:
"17ffAqKkfMLF5QAYwFEDkRtF2mJMzrkmpi" as a result.
However, blockchain.info says the ASCII address is: "38Mg6NpCDFedAZrz4LtpB4FBBHb5WqwHaN"
This looks suspect to me, to begin with, because it doesn't start with '1'. I tend to think that my representation is correct and blockchain.info has a bug. Can you confirm?
*EDIT* and here is one more:
https://blockchain.info/tx/d37e9d75ea61dd3f019626f077d74081bca0e80336ae9263cb362c094444c075The third output script is only 60 bytes long, and once you remove the push data operator and the OP_CHECKSIG, there are only 58 bytes left. I'm used to getting uncompressed public keys of 65 bytes in length. What does a 58 byte long public key mean? How is it supposed to be interpreted?
Thanks,
John