Bitcoin RBF, Bitcoin Knots y Bitcoin Addrindex: tres horquillas principales que no rompen con el consenso

Ke$ha - Blow (Julio 2019).

Anonim

Bitcoin Core, descendiente del software original de Bitcoin lanzado por Satoshi Nakamoto en 2009, siempre ha sido el cliente de referencia de Bitcoin. La implementación, anteriormente conocida como Bitcoin QT, propone estándares para el protocolo Bitcoin en sí mismo. Pero estos estándares no son vinculantes. Con base en el software de código abierto, cualquiera puede tomar el código, modificarlo como mejor le parezca y ofrecer la versión ajustada al mundo.

Esto se destacó recientemente con el lanzamiento de Bitcoin Classic y Bitcoin Unlimited, y Bitcoin XT antes de eso. Pero estas implementaciones hicieron algo que no se había intentado antes, al menos no en forma seria. Bifurcaron el software de modo que podría volverse incompatible con las reglas de consenso existentes de Bitcoin, y esencialmente proponen que los usuarios cambien a una red que no sea compatible con versiones anteriores. Bitcoin Classic, Bitcoin Unlimited y Bitcoin XT no son solo aplicaciones de software, sino de consenso.

Bifurcar el software de Bitcoin Core en sí mismo, sin embargo, se ha hecho varias veces antes sin generar problemas de consenso. Al menos tres prominentes desarrolladores, todos los cuales contribuyen con Bitcoin Core, mantienen sus propias horquillas, ajustadas para adaptarse a su visión y casos de uso preferidos para Bitcoin. Debido a que ninguno de estos rompe con las reglas de consenso existentes, son totalmente compatibles con la red actual de Bitcoin.

Bitcoin RBF (por Peter Todd)

& ldquo; Bitcoin RBF y rdquo; (no tiene nombre oficial) es una bifurcación de Bitcoin Core mantenida por Peter Todd, y se lanzó a principios de 2014. Es una copia directa de Bitcoin Core, excepto por su política de grupo de memoria (& ldquo; mempool & rdquo;): las reglas que deciden qué las transacciones no confirmadas son aceptadas y rechazadas.

La mayoría de los nodos de Bitcoin aplican actualmente un & ldquo; primero visto y rdquo; política de mempool, lo que significa que rechazan las transacciones entrantes si entran en conflicto con transacciones anteriores no confirmadas. Y Bitcoin Core recientemente presentó & ldquo; opt-in reemplazar-por-tarifa, y rdquo; que reemplaza una transacción con una transacción en conflicto que incluye una tarifa más alta, pero solo si la transacción inicial fue marcada específicamente por el remitente para permitir esto. Estas políticas dificultan, pero no imposibilitan, el doble gasto de transacciones no confirmadas.

Bitcoin RBF, en cambio, aplica un reemplazo completo por tarifa, lo que significa que reemplaza las transacciones no confirmadas cada vez que una transacción más nueva (conflictiva) paga una tarifa más alta. Esto permite a los remitentes, entre otras ventajas, obtener una transacción & ldquo; sin pegar y rdquo; si la red de Bitcoin tiene una carga pesada. También les permite a los usuarios gastar doblemente transacciones no confirmadas más fácilmente.

Además, para garantizar que los gastos dobles no confirmados se propaguen a través de la red de Bitcoin, Bitcoin RBF incluye un código de red especial. Esto conecta Bitcoin RBF con otros nodos RBF de Bitcoin, además de los nodos que no se aplican reemplaza por tarifa.Como tal, los usuarios que desean transmitir una transacción conflictiva no confirmada realmente solo necesitan conectarse a un nodo Bitcoin RBF; la transacción encontrará su camino a través de la red desde allí.

Es importante destacar, sin embargo, que Bitcoin RBF no está en desacuerdo con el modelo de consenso basado en blockchain de Bitcoin; las políticas de retransmisión de transacciones y mempool no pueden ser.

Todd en realidad no apunta a la adopción generalizada de Bitcoin RBF. Una pequeña minoría de usuarios que ejecutan la implementación permite que las transacciones conflictivas no confirmadas lleguen a los mineros (incluso si estos mineros no ejecutan Bitcoin RBF). Esto ya hace que sea relativamente fácil reemplazar algunas transacciones no confirmadas.

Y si los mineros (o grupos) eligen ejecutar Bitcoin RBF ellos mismos, el reemplazo total por tarifa podría incluso convertirse en una política común en toda la red, proporcional a la cantidad de energía hash representada por estos mineros. El grupo minero chino principal F2Pool adoptó Bitcoin RBF durante un período muy corto el año pasado, pero desde entonces ha cambiado a la política de mempool típica. No está claro si otros mineros ejecutan Bitcoin RBF.

Para obtener más información sobre el reemplazo por tarifa, consulte: ' El caso de reemplazo por pago (y el caso en contra) '.

Nudos de Bitcoin (por Luke Dashjr)

Nudos de Bitcoin (hasta hace poco conocidos como Bitcoin LJR) es una horquilla de Bitcoin Core mantenida por Luke Dashjr, y se lanzó en 2011. El nombre es un guiño al pasaje bíblico en el que Jesús expulsa a los cambistas del templo con un látigo de nudos (Dashjr es católico), y también se refiere a la fusión del código.

Comparado con Bitcoin Core, Bitcoin Knots ofrece una capacidad de configuración mucho mayor de mempool y minería para operadores de nodo y mineros. Los operadores de nodos y mineros deberían tener esa capacidad de configuración, cree Dashjr, porque necesitan verificar, almacenar y transmitir transacciones y bloques sobre la red de Bitcoin; todo lo cual tiene un costo para ellos.

Con Bitcoin Knots, los operadores de nodos y los mineros pueden habilitar las políticas de mempool reemplazadas por pago por primera vez, optar por reemplazar, además de seleccionar una miríada de condiciones adicionales para aceptar o rechazar ( transacciones no confirmadas). Además, los mineros pueden reducir fácilmente el tamaño máximo de los bloques que extraen, desde 1 megabyte hacia abajo. También pueden cambiar el tamaño de prioridad en bloques reservados para bitcoins que no se han usado por un tiempo, y pueden ajustar cuántas transacciones de bajo costo están dispuestas a incluir: dos medidas antispam.

Y nuevamente, nada de esto está en desacuerdo con el modelo de consenso basado en blockchain de Bitcoin.

Por último, Bitcoin Knots sirve como banco de pruebas para Bitcoin Core hasta cierto punto. Dashjr a menudo implementa optimizaciones de software que son adoptadas por Bitcoin Core en una etapa posterior. Desde que cambió el nombre de su implementación como Bitcoin Knots y lo promocionó a un público más amplio, Dashjr adoptó un enfoque un poco más conservador. Ahora solo incluye optimizaciones que considera razonablemente seguras.

Numerosos mineros han adoptado Bitcoin Knots, incluido el grupo minero relativamente pequeño Eligius, que Dashjr lanzó en 2011, pero que actualmente es administrado por & ldquo; wizkid057.& rdquo;

Bitcoin Addrindex (por BtcDrak)

Bitcoin Addrindex es una horquilla Bitcoin Core mantenida por el desarrollador pseudónimo y ldquo; BtcDrak, y rdquo; y se lanzó a finales de 2014. Bitcoin Addrindex es una copia directa de Bitcoin Core con una característica adicional: permite a los usuarios buscar cualquier dirección de Bitcoin para explorar su historia, como un típico explorador de bloques.

Bitcoin Addrindex es especialmente útil para aplicaciones construidas sobre la cadena de bloques de Bitcoin: no necesitan depender de una API (centralizada) para obtener datos de la cadena de bloques. Bitcoin Addrindex actualmente impulsa CounterParty y CounterParty block explorer Blockscan. Podría ser adoptado por una variedad de otros servicios, incluidos exploradores de bloques, carteras y más.

Bitcoin Addrindex no está diseñado para usuarios promedio de Bitcoin, ya que la función adicional no tiene una interfaz de usuario conveniente. Bitcoin Addrindex está específicamente diseñado como un bloque de construcción para programadores.

Nota: Bitcoin Magazine no ha probado ni revisado el código de ninguna de estas implementaciones. Gracias a Bryan Bishop por las sugerencias adicionales.