"Whiteboard Video" Parte 2: Escalabilidad

Esta serie de artículos es un resumen escrito del famoso vídeo de Charles Hoskinson que llamamos "The Whiteboard Video", que fue publicado en 2017. En este video, Charles explicó la fundación y la visión de Cardano. Para mucha gente, este vídeo es un "punto de inflexión" para su entusiasmo sobre Cardano, y de por qué es importante. Es notable que el video es de 2017 - hace muchísimo tiempo en esta industria - sin embargo, estas ideas siguen impulsando y dinamizando a la comunidad de Cardano hoy en día. Estos artículos son las palabras e ideas de Charles, editadas para mayor claridad y legibilidad en forma escrita.

En la Parte 1, aprendimos que la 3ª Generación de criptomonedas trata de resolver los problemas de Escalabilidad, Interoperabilidad y Sostenibilidad. En este segundo extracto del “Whiteboard Video”, Charles explica cómo Cardano puede resolver el problema de la escalabilidad.

La escalabilidad tiene varios significados, pero cuando hablamos de criptomonedas, la pensamos de tres maneras:

1) Transacciones por segundo (TPS)

A menudo, la gente dice: “Bueno, Bitcoin tiene 7 transacciones por segundo” o “Ethereum tiene 10 o 20 transacciones por segundo”. Esto simplemente quiere decir cuántas transacciones se puede procesar el blockchain durante un período de tiempo finito. [Nota del editor: Cardano ha alcanzado a ~250 TPS, ¡y tiene planes de aumentar ese número mucho más!]

Presentando a Ouroboros

Para abordar al TPS, creamos un documento técnico revisado por pares para nuestro protocolo de “Proof-of-Stake”, de seguridad comprobable, llamado Ouroboros. Ouroboros es uno de los protocolos de consenso más eficientes en el mundo de las criptomonedas. Además, es el primero que se ha demostrado a ser seguro de una manera criptográfica y muy rigurosa. La magia de Ouroboros es que ha sido diseñado de forma modular y con garantía de futuro en su ADN.

Ouroboros funciona así:

Primero, divide el mundo en épocas. [Actualmente, una época de Cardano es de 5 días] Dentro de una época, evalua a la distribución de los tokens y, desde una fuente de números aleatorios, hace una elección para crear “Slot Leaders”. Los Slot Leaders hacen basicamente lo mismo que hace un minero en Bitcoin cuando “gana un bloque”. La diferencia es que no requiere los extensos recursos computacionales que requiere Bitcoin. Como consecuencia, este sistema es mucho más barato para usar y mantener, aunque tengamos garantías de seguridad similares. Es un gran avance.

Estas son algunas de las ventajas de Ouroboros:

-> Los “Slot Leaders” no tienen que limitarse a mantener un solo bloque y una sola cadena. Pueden mantener otros bloques y otras cadenas porque el precio de construir un bloque es muy bajo. En realidad, ahora es posible hablar de consenso en una serie de cadenas de bloques en lugar de en una única cadena.

->Además, las épocas podrían ejecutarse en paralelo; en lugar de ejecutar una época y luego otra, vamos a construir un sistema con Ouroboros en el que las épocas se ejecutan en paralelo, y las transacciones se dividen en consecuencia. Lo que esto significa es que cuando se gane más usuarios, y cuando sus usuarios ganen más capacidades, estos “Slot Leaders” podrán mantener más tipos de blockchains y también ejecutar el procesamiento de transacciones para blockchains en paralelo. ¡Esto es un gran avance!

->Ouroboros tiene unos estándares de seguridad muy rigurosos: hablando de sus fundamentos teóricos y de su implementación. Mientras desarrollemos nuevas capacidades para el protocolo, éstas quedarán seguras. Esto contrasta con otros sistemas, en los que hay que probar estas cosas caso por caso, y a veces hacer modificaciones importantes en el sistema para crecer de forma segura.

->Intentamos que Ouroboros llegue a ser “Quantum resistant” durante el año 2018. Cuando el “Slot Leader” hace sus bloques, estará utilizando un esquema “Quantum resistant”. Con esto, conseguimos aún más resistencia al futuro en el sistema. [Nota del editor: Las computadores “quantum” son las computadores muy poderosas del futuro. Son las que imaginamos pueden ser capaces de romper las claves criptográficas. Hoy en día, esta amenaza es hipotética, pero planificarla ahora es algo importante].

Estas características nos dan alguna respuesta a estas cuestiones de escalabilidad:

¿Cómo construimos una forma de mantener la red que no cueste $300,000 dólares/hora, que es lo que cuesta actualmente Bitcoin? [Nota del editor: Charles Hoskinson hizo este video en 2017. El coste energético de Bitcoin se ha multiplicado por más de cuatro hoy en día. Los requisitos de energía para Bitcoin superan a los de todo el país de Argentina.] https://www.nytimes.com/interactive/2021/09/03/climate/bitcoin-carbon-footprint-electricity.html

¿Cómo construimos un sistema que nos permita ir en paralelo y mantener múltiples cadenas de forma concurrente?

Responder a estas preguntas es el núcleo de Ouroboros.

2) Ancho de banda

Las transacciones por segundo son importantes, pero no es lo único que debe preocuparnos. Las transacciones transportan datos, y cuando que hay más transacciones se requieren más recursos de red. Esta es lo que llamamos “ancho de banda.” Si un sistema puede “escalar” -si puede crecer hasta millones y miles de millones de usuarios- ese sistema podría requerir cientos de gigabytes por segundo de ancho de banda para soportarlo. Esta cantidad es más o menos normal en el mundo empresarial, pero no en el mundo peer-to-peer.

Presentando a RINA

Mientras que nuestra red de blockchain pasa de unos cientos de transacciones por segundo hasta cientos de miles de transacciones por segundo, no podemos mantener qua la topología de red sea homogénea. O sea, no soportamos una situación en la que cada nodo tenga que procesar cada transacioncita. Mientras crezcamos, habrá nodos que no tengan esa capacidad. Así que estudiamos ahora un nuevo tipo de tecnología que se llama RINA. Eso quiere decir “arquitectura de internet recursiva”. RINA es una nueva forma de estructurar las redes utilizando unos principios de ingeniería bien listos. Estos principios originaron principalmente por John Day, de la Universidad de Boston. El objetivo de RINA es construir una red heterogénea que nos da privacidad, transparencia y escalabilidad. RINA es un gran paso adelante. Nos da una forma de ajustar y configurar al Cardano a medida que crezca.

3) Escala de datos

Las Blockchains almacenan cosas (datos) - ¡esperablemente para siempre! Cuandoquiera que haya una transacción, se acaba en el registro. Entonces, cuando hay más transacciones, hay más y más datos. Eventualmente las blockchains crecerán de megabytes a gigabytes a terabytes a petabytes…. quizás hasta los exabytes. Esto está bien para los grandes negocios [con gran centros de datos centralizados], pero cuando hablamos de un sistema replicado, cuyo modelo de seguridad depende de que cada nodo tenga una copia de la blockchain? Ese volumen de datos es simplemente inviable para las computadoras normales de casa.

Cardano intenta resolver estos problemas de una manera muy elegante. En Cardano, cuando añadimos personas a la red, obtenemos naturalmente más transacciones por segundo. También obtenemos naturalmente más recursos de la red. Eventualmente, obtendremos más almacenamiento de datos en general. Todo ello sin comprometer nuestro modelo de seguridad.

Presentando la Poda, las Particiones y las Cadenas Laterales (“Side Chains”)

Para abordar el problema del escalado de datos, debemos darnos cuenta de que no todo el mundo necesita todos los datos. Las transacciones que Alicia envía a Roberto quizás no son relevantes para Julia y Guillermo. Sólo son relevantes en el sentido que estas personas pueden saber que los tokens que reciben son legítimos y correctos. Soluciones posibles incluyen:

  1. La Poda: Restringir lo que algunas personas pueden ver, de forma inteligente y caso por caso.
  2. Las Particiones: una persona quizás no tenga una copia completa de la blockchain, sino sólo un trozo.
  3. Las Cadenas Laterales (“Side Chains”): crear una representación comprimida de una blockchain [en una cadena secundaria], y sincronizar las transacciones entre cadenas

Rigor académico - Algo diferente de Cardano

Una de las cosas más importantes cuano diseñamos una nueva criptografía es asegurarse de que el proceso rigurosa y revisada por pares. Ouroboros fue aceptado en “Crypto 17” [la 37ª Conferencia Anual de Criptografía Académica], donde nuestro equipo lo presentó. Versiones del protocolo que vienen en el futuro siguen pasando por una revisión por pares más rigurosa, lo que nos da una gran garantía de que el diseño conceptual del sistema es correcto. También inventamos una nueva especificación de Ouroboros mediante el “cálculo lateral”, un lenguaje de modelado formal comprensible para las máquinas. Próximo, conectaremos con el código Haskell en nuestro repositorio de github y demostrar realmente que hemos implementado correctamente el protocolo. Este es un estándar que no existe con otros proyectos de blockchain, y estamos muy contentos de ser los primeros en hacerlo.

El objetivo del proyecto Cardano es estudiar todas las cuestiones de forma rigurosa y proponer nuevas arquitecturas de blockchain. Las soluciones deben permitir que la gente solo necesite cantidades muy pequeñas de datos, sin perder la garantía de que las transacciones son correctas. Algo afortunada es que mientras los requisitos de TPS y de ancho de banda crecen rápidamente, el almacenamiento de datos todavía es bien barato y disponible. Así que creemos que el aspecto del escalado de datos de Cardno será algo que no tendremos que resolver con tanta urgencia. En la Universidad de Edimburgo están investigando estas cuestiones; creemos que tendremos una solución total a este problema a finales de 2019.

Entonces, este es el primer "pilar" de la criptomoneda de tercera generación: La escalabilidad.

Recibe más artículos como éste en tu email

What questions do you have about Scalability?

Or leave comment
Share

Aún no hay comentarios…

avatar
You can use Markdown
close

Playlist

  • EP2: epoch_length

    Authored by: Darlington Kofa

    3m 24s
    Darlington Kofa
  • EP1: 'd' parameter

    Authored by: Darlington Kofa

    4m 3s
    Darlington Kofa
  • EP3: key_deposit

    Authored by: Darlington Kofa

    3m 48s
    Darlington Kofa
  • EP4: epoch_no

    Authored by: Darlington Kofa

    2m 16s
    Darlington Kofa
  • EP5: max_block_size

    Authored by: Darlington Kofa

    3m 14s
    Darlington Kofa
  • EP6: pool_deposit

    Authored by: Darlington Kofa

    3m 19s
    Darlington Kofa
  • EP7: max_tx_size

    Authored by: Darlington Kofa

    4m 59s
    Darlington Kofa
0:00
/
~0:00