¿Qué sucede cuando un minero no reclama todas las tarifas/monedas generadas?

Supongamos que un minero por alguna razón tiene la transacción de generación de sus bloques no tomando todas las monedas posibles. Esto puede suceder por una variedad de razones, la mayoría de las cuales son errores:

  • Un error de uno por uno les hace pensar que su bloque debería generar solo 25 BTC cuando todavía estamos en 50 BTC por bloque
  • Algún error les impide notar una tarifa de transacción; tal vez estaban extrayendo y actualizando el bloque en paralelo usando un código no seguro para subprocesos.
  • Dependiendo de la respuesta a esta pregunta, en realidad pueden decidir hacer esto a propósito (aunque no puedo pensar en una respuesta que cause esto en la gran mayoría de los casos)

Puedo pensar en algunas formas posibles en que la red respondería, y ninguna parece ideal.

  • El bloque podría ser rechazado, tal como sería si hubiera generado demasiado.
  • El bloque podría aceptarse y las monedas adicionales estarían disponibles para quien extraiga el siguiente bloque (en cuyo caso, alguien puede hacer esto a propósito para alentar a otros a extraer).
  • El bloque podría aceptarse y perder las monedas adicionales.

¿Qué sucede realmente?

Pieter Wuille ha mencionado ejemplos de esto en ¿Habrá finalmente 21 millones de bitcoins? .

Respuestas (1)

Se acepta el bloque y se pierden las monedas. Pobre minero.

Aquí hay un enlace a la parte de la fuente 0.6.3 que verifica esto: https://github.com/bitcoin/bitcoin/blob/v0.6.3/src/main.cpp#L1362

Además, esto efectivamente ha sucedido antes; el bloque # 124724 reclamó un satoshi menos de lo que podría tener.

¿Tiene una fuente sobre esto, como el código de cliente estándar o la documentación?
Si observa el código del cliente, verá que solo verifica que el resultado no supere el total de todas las tarifas más la recompensa del bloque. No se realizan otras comprobaciones del importe.
Actualicé mi respuesta con un enlace a la fuente.
¿No estarían todavía disponibles las monedas para ser recolectadas por bloques posteriores, ya que no están asignadas a ninguna dirección?
@Murch: No. Quizás eso hubiera tenido sentido, pero las reglas no son así, y cambiar las cosas a este nivel es extremadamente difícil.