Tal como está ahora, un minero (o grupo de minería) puede discriminar cualquier transacción por cualquier motivo si está ejecutando una versión personalizada de código.
Supongamos que un grupo de minería malvado y poderoso decidió hacer hash de bloques, pero no incluyó ninguna transacción, incluso si se incluyó una tarifa. Esto reduciría la velocidad a la que se incluiría un bloque en la cadena... causando efectivamente un DOS contra ciertas transacciones.
Este es un comportamiento destinado a fomentar que las transacciones incluyan tarifas (o pronto será el comportamiento). Pero supongamos que un operador de grupo (o un poderoso consorcio minero) decide que quiere acabar con Bitcoin y no incluir ninguna transacción... en absoluto.
Pregunta
Desafío
No queremos que el atacante solo incluya las transacciones que crea el grupo de minería malvado, sino también las transacciones que crean otros.
No quiero alentar demasiadas transacciones de bajo costo en este modelo, desincentivando así la actividad minera.
¿Existe alguna solución que aborde estos objetivos de manera justa y equilibrada?
Si el atacante tiene un hashrate minoritario, no creo que esto sea un gran problema. Si excluye todas las transacciones en sus bloques pero no intenta dejar huérfanos a otros bloques, lo peor que puede pasar es un aumento de x2 en el tiempo promedio hasta la primera confirmación (sin efecto en las confirmaciones posteriores). Esto es bastante menor.
Si el atacante tiene una tasa de hash mayoritaria, puede dejar huérfanos todos los demás bloques y excluir todas las transacciones, y luego las transacciones nunca se confirmarán. Este es un problema y la variante principal del ataque >50%. Las posibles soluciones incluyen modificar el mecanismo de selección de sucursales para preferir bloques con más transacciones de alta prioridad, lo que significa que incluso con una tasa de hash mayoritaria, si intenta denegar la transacción, no tiene la garantía de vencer a la sucursal honesta.
Por cierto, si el atacante tiene una tasa de hash superior al 40 %, existe una técnica para amplificar su tasa de hash y obtener más bloques de los que le corresponde. Entonces, si, por ejemplo, tiene un hashrate del 49% y usa esta técnica, puede acercarse al 100% de los bloques, lo que retrasa significativamente la confirmación de tx.
No estoy de acuerdo con su premisa "Esto reduciría la velocidad a la que se incluiría un bloque en la cadena". Todos los demás mineros o grupos tienen tantas posibilidades de descubrir un bloque como el malvado. A menos que el malvado sea tan poderoso que esté afectando la dificultad de manera significativa, sus bloques en blanco no impedirán que otros mineros descubran bloques normales.
Creo que su pregunta es simplemente una reafirmación del problema del "51%".
david schwartz
muro