In BIP143 the first example
has a witness signature and it doesn’t appear to validate/be correct?! I wrote a super simple python program to demonstrate
import ecdsa import asn1 #Importing the 3 pieces of data from the example to byte arrays pub = bytearray.fromhex("025476c2e83188368da1ff3e292e7acafcdb3566bb0ad253f62fc70f07aeee6357") sighash = bytearray.fromhex("c37af31116d1b27caf68aae9e3ac82f1477929014d5b917657d0eb49478cb670") dersigscript = bytearray.fromhex("304402203609e17b84f6a7d30c80bfa610b5b4542f32a8a0d5447a12fb1366d7f01cc44a0220573a954c4518331561406f90300e8f3358f51928d43c212a8caed02de67eebee") #deocding the DEC encoding decoder = asn1.Decoder() decoder.start(bytes(dersigscript)) tag, sigscript = decoder.read() #stripping off the script potion so we just have a signature sig = bytearray(sigscript)[2:66] vk = ecdsa.VerifyingKey.from_string(pub, curve=ecdsa.SECP256k1) vk.verify(sig, sighash)
If anyone can shed some light on what stupid thing I am doing, or an example reference that breaks it down, so it works, that would be really helpful. I have also tried reversing byte order on all 8 combinations of the 3 inputs. That being said I have used the private and public key posted to do my own signatures/validation, so I am fairly confident they are in correct order, just less sure about the sig.
Business News Governmental News Finance News