Mike Hearn figura entre los colaboradores de bitcoinj y autores de BIP 31, BIP 37 y BIP 70. Ser autor de código o propuestas no determina por sí solo el consenso de Bitcoin.
El archivo AUTHORS de bitcoinj incluye a Mike Hearn entre muchos colaboradores y remite al historial Git. Demuestra contribución, no autoría exclusiva de todas las funciones ni dirección actual. [bitcoinj — recorded contributors]
bitcoinj ofrece una biblioteca Java para protocolo, cartera y transacciones sin una copia local de Bitcoin Core. La documentación distingue SPV ligero de verificación completa experimental; descargar menos no equivale a comprobar todas las reglas igual. [bitcoinj — library and verification modes]
BIP 31 de Hearn añade un nonce que el par devuelve en pong. Con versiones de protocolo superiores a 60000 permite emparejar respuestas y medir tiempos; una respuesta no prueba honestidad del nodo ni validez del pago. [BIP 31 — Pong message]
BIP 37 de Hearn y Matt Corallo describe filtros Bloom con filterload, filteradd y filterclear. Una coincidencia falsa puede transmitir una transacción irrelevante; mayor precisión ahorra ancho de banda, pero puede facilitar relacionar transacciones con una dirección IP. [BIP 37 — connection Bloom filtering]
merkleblock de BIP 37 demuestra inclusión de una transacción coincidente en un bloque. No descarta transacciones omitidas y SPV no sustituye la comprobación completa de validez. bitcoinj también documenta riesgos de conexiones controladas por atacantes. [BIP 37 — connection Bloom filtering] [bitcoinj — security model]
BIP 70 de Gavin Andresen y Hearn usa PaymentRequest con salidas, importe y vencimiento opcional. Verificar identidad mediante X.509 difiere de pki_type none; sin esa verificación la solicitud no demuestra identidad certificada del comerciante. [BIP 70 — Payment Protocol]
PaymentACK de BIP 70 es una respuesta del servidor a Payment. Puede indicar solo aceptación para procesamiento. No prueba confirmación en un bloque y refund_to no devuelve fondos por sí mismo. [BIP 70 — Payment Protocol]
El registro marca BIP 70 Deployed, pero Bitcoin Core 0.20.0 documenta la eliminación completa de su soporte en ese cliente. El estado no promete soporte en todas las carteras actuales. [BIP 70 — Payment Protocol] [Bitcoin Core 0.20.0 — BIP70 removal]
Para obtener la imagen más completa, lee esta entrada junto con Jeff Garzik, Gloria Zhao, Árbol de Merkle. También enlazan con esta entrada Jeff Garzik, Gloria Zhao.