I am interested in finding or writing a fuzzer for push tx APIs. I did not find one after a brief search. Has anyone found otherwise, or is she in the process of writing one?

If not, what features would people recommend for a new push tx fuzzer?

Endpoints I would like to test include:

https://live.blockcypher.com/btc-testnet/pushtx/

https://insight.bitpay.com/tx/send

https://blockchain.info/pushtx

https://coinb.in/#broadcast

https://btc.blockr.io/tx/push

https://chain.localbitcoins.com/tx/send


The fuzzer should be able to send random data, invalid characters, etc. but also fuzz particular aspects of the transaction format such as malformed P2SH and P2PKH transactions, fields such as lock time, size, # inputs, version number, vin size, etc. It should also be able to fuzz a variety of valid and invalid script formats using odd op codes, changing the order of op codes, etc.


If anyone has recommendations about how such a fuzzer should be structured, please let me know.


Finally, if you are interested in collaborating, please contact me via private message.


Thanks!

Kristov