Volver al inicio
Cinco ideas. Empieza donde quieras.

05 · Kaspa

¿Cómo maneja Kaspa los bloques que se crean en paralelo?

Kaspa usa prueba de trabajo.

Los mineros buscan bloques, igual que en otras redes de prueba de trabajo.

Pero la información todavía tarda en viajar entre computadoras de todo el mundo.

Un minero puede encontrar un bloque nuevo y, antes de que otro minero se entere, ese segundo minero también puede encontrar un bloque construido sobre la misma historia anterior.

Ahora existen dos bloques válidos en paralelo.

Kaspa se diseñó para manejar esa situación de una forma distinta a la de una blockchain tradicional de una sola cadena.

En una sola cadena, dos bloques crean dos ramas

En una blockchain tradicional, cada bloque continúa desde un bloque anterior.

Si se encuentran dos bloques a partir de la misma historia anterior, aparecen dos ramas.

En Bitcoin, las dos ramas pueden ser válidas durante un momento breve.

A medida que se agrega más trabajo, la red sigue la rama válida con más prueba de trabajo acumulada.

La otra rama no tiene que ser falsa ni maliciosa.

Simplemente no permanece en la cadena principal.

Kaspa puede mantener los dos bloques conectados

En Kaspa, un bloque nuevo puede referirse a más de un bloque anterior.

Eso significa que un bloque posterior puede conectarse con los dos bloques que se crearon en paralelo.

En lugar de convertir de inmediato dos bloques válidos en ramas que compiten, donde solo una permanece en la historia principal, las dos pueden seguir conectadas.

Esa estructura se llama BlockDAG.

Aparece un bloque anterior A y, después, dos bloques descubiertos de forma independiente, B y C, cada uno con una referencia a A. Un bloque posterior D se refiere tanto a B como a C. Los cuatro bloques siguen conectados. Las flechas apuntan desde los bloques más nuevos hacia los bloques anteriores a los que se refieren.

Dos bloques en paralelo comparten un historial anterior. Un bloque posterior se refiere a los dos. Las flechas apuntan hacia los bloques anteriores a los que se hace referencia.

Un BlockDAG no es una sola cadena

Una blockchain tradicional se ve sobre todo como una línea:

Bloque → Bloque → Bloque → Bloque

Un BlockDAG también puede contener bloques en paralelo, y los bloques posteriores pueden conectarse con varios de ellos.

Así que la historia se parece más a un grafo de relaciones entre bloques que a una línea recta.

Pero conservar los dos bloques todavía no resuelve todo.

La red sigue necesitando un orden acordado

Imagina que un bloque contiene:

Emma → Liam: 30 KAS

y un bloque en paralelo contiene:

Emma → Olivia: los mismos 30 KAS

Los dos bloques pueden permanecer en el BlockDAG.

Pero los dos pagos no se pueden aceptar.

Los nodos todavía necesitan llegar al mismo orden para saber qué transacción se comprueba primero.

GHOSTDAG le da a la red una forma de ponerse de acuerdo sobre ese orden

Kaspa usa GHOSTDAG para tomar las relaciones del BlockDAG y derivar un orden acordado.

Mira la estructura del grafo y la prueba de trabajo representada en él.

Los nodos que tienen los mismos bloques pueden, por lo tanto, llegar a la misma forma de ordenarlos.

En términos simples:

El BlockDAG mantiene conectado el trabajo que ocurrió en paralelo.

GHOSTDAG ayuda a decidir cómo se debe ordenar esa historia conectada.

Después de determinar el orden, las transacciones todavía tienen que pasar las reglas normales de validación.

GHOSTDAG no hace válida una transacción inválida.

Los números muestran un orden ilustrativo de los bloques conectados. No es un cálculo de GHOSTDAG ni una garantía de aceptación; las reglas de las transacciones siguen vigentes.

¿Qué gana Kaspa con esto?

Como los bloques en paralelo no tienen que convertirse de inmediato en ramas que compiten, donde solo una permanece en la historia principal, los bloques se pueden crear con más frecuencia mientras más del trabajo hecho en paralelo sigue siendo útil.

Kaspa actualmente tiene como objetivo 10 BPS: diez bloques por segundo.

Eso es, en promedio, aproximadamente un bloque nuevo cada 0,1 segundos.

Pero 10 BPS no significa «10 veces más transacciones»

BPS nos dice cuántos bloques se crean.

No nos dice cuántas transacciones hay dentro de cada bloque.

Transacciones distintas pueden exigir cantidades distintas de espacio, cómputo y almacenamiento.

Una ilustración simple:

Los ejemplos publicados de transaction-mass de Kaspa muestran que un bloque lleno solo con una transacción simple común, de una entrada y dos salidas, podría contener alrededor de 245 transacciones.

Si los diez bloques de un segundo estuvieran completamente llenos solo con ese tipo de transacción:

245 × 10 ≈ 2.450 transacciones por segundo.

Eso es una ilustración de la relación entre BPS y TPS, no una promesa de 2.450 TPS en todas las situaciones.

En Bitcoin, un bloque lleno solo con transacciones simples podría contener alrededor de 7.000 transacciones.

Pero Bitcoin tiene como objetivo aproximadamente un bloque cada diez minutos, en promedio.

La idea es que las redes no se pueden comparar solo por el número de bloques ni solo por las transacciones por bloque.

Las dos cosas importan, y también importan los requisitos que se les ponen a las computadoras que verifican la red.

Más bloques también significan más trabajo para los nodos

Si se crean más bloques cada segundo, los nodos tienen que recibir más bloques, verificar más bloques, seguir más relaciones y mantenerse sincronizados.

Así que la pregunta no es solo:

«¿Con qué rapidez se pueden crear los bloques?»

También es:

«¿Cuántas personas pueden seguir verificando la red por su cuenta?»

Eso lleva directamente a la descentralización.

Entonces, ¿qué hace Kaspa de forma distinta?

Los mineros siguen usando prueba de trabajo.

Los bloques todavía tienen que validarse.

Pero los bloques creados en paralelo pueden permanecer conectados dentro de un BlockDAG.

GHOSTDAG les da un orden acordado.

Esa estructura le permite a Kaspa funcionar con una tasa alta de bloques sin exigir que todo el mundo se entere de un bloque antes de que se pueda crear el siguiente.

Fuentes

Las fuentes externas están en inglés.