🇪🇸 Cardano, su cambio seguro a la descentralización

Traducción al español de “Cardano’s secure switch to decentralization” escrito por el profesor Alexander Russell, Investigador Superior de IOHK, el 28 de marzo de 2021.


El evento se iniciará con una “declaración pública de aleatoriedad”, con una entropía¹ aportada por la comunidad.

descarga

La seguridad de una blockchain de prueba de participación se basa en una relación de dependencia mutua entre su token nativo y el mecanismo de consenso que lo sustenta: la elección de los nodos para emitir bloques de acuerdo con su participación requiere una visión global coherente de la distribución de la participación, y para mantener la coherencia se precisa un mecanismo de elección imparcial. Precisamente, el nombre de Ouroboros ² -un símbolo clásico que evoca la recursividad matemática ³ - ha sido elegido originalmente para resaltar esta relación.

El protocolo Ouroboros designa a los productores de bloques mediante una secuencia cambiante de nonces ⁴ de liderazgo: cada nonce dirige el proceso durante una “época” de 120 horas, tiempo durante el cual ayuda a determinar qué grupos de participación [stake pool] son eligidos como líderes únicos para crear bloques. Estos, al tiempo que confirman las nuevas transacciones en el libro mayor contable [ledger], son responsables de generar el nonce lider para la siguiente época: ¡más recursividad! Los nonces de liderazgo y las distribuciones de participación varían de forma conjunta para aportar las propiedades esenciales del libro mayor contable que exigimos al sistema.

La blockchain de Cardano comenzará a producir bloques de forma totalmente descentralizada el 31 de marzo [de 2021]. Acto seguido, el nonce de liderazgo vigente se mejorará añadiendo un “nonce de transición” que refleje la entropía [aleatoriedad] de una variedad de orígenes externos e impredecibles. Significando que, todas las transacciones registradas en la blockchain con anterioridad al miércoles 7 de abril a las 15:44:51 UTC (slot 151200 de la época [epoch] 258) desempeñarán para el futuro de la blockchain una función especial: el valor de su hash acumulado, reflejado en el “hash del bloque anterior” del primer bloque de la cadena creado a partir de ese momento, será el que determine el nonce de transición y, por consiguiente, el que contribuya directamente al ciclo perpetuo de generación de aleatoriedad del protocolo.

Los científicos e ingenieros de IO Global [anteriormente llamada IOHK] contribuirán con una serie de orígenes de entropía específicas, externas e impredecibles. Adicionalmente, con el fin de reflejar la naturaleza descentralizada de Cardano, solicitamos a toda la comunidad, incluidos los desarrolladores y operadores de grupos de participación [SPO, stake pool operators], que se sumen a nosotros (en la cadena) para un evento que llamamos la declaración pública de aleatoriedad de Cardano. En este ejercicio comunitario se establecerá el nonce aleatorio de transición de 256 bits, único en el sistema, que anunciará la transición oficial del protocolo al funcionamiento descentralizado.

Ahora nos pondremos algo más técnicos, por lo que abróchense los cinturones o pueden desplazarse a el final.

Algunos fundamentos

El protocolo Ouroboros está organizado en periodos de cinco días (120 horas) llamados “épocas” [epochs]. Estas coordinan, como se ha descrito anteriormente, dos esenciales funciones: la actualización de la distribución de la participación [stake] y la actualización del nonce de liderazgo. La prueba de eficacia del protocolo indica que alcanza un estado estable propicio: siempre que una época se inicie con un nonce de liderazgo no previsible, ofrecerá un nonce de liderazgo nuevo y no previsible a la siguiente época. Con el objetivo de iniciar la recursión, este evento de afirmación pública está diseñado para garantizar esta propiedad de ser impredecible. Destacamos que los protocolos de prueba de trabajo están sujetos a exigencias de aleatoriedad similares: es bien conocido que Nakamoto incluyó la cadena presuntamente impredecible “The Times 03/Jan/2009 Chancellor on brink of second bailout for banks” [“The Times 03/enero/2009 El canciller al borde del segundo rescate de los bancos”] en el bloque de génesis de Bitcoin.

Mecanismo de entropía y cronología

En su implementación del protocolo Ouroboros, Cardano ofrece un “mecanismo de incorporación de entropía [aleatoriedad]” que puede introducir una cadena de bits identificada en la blockchain en los siguientes nonces de liderazgo, que son precisamente los objetivos del nonce de transición. Por supuesto, con este mecanismo se requiere una declaración pública de la cadena de bits y una aprobación expresa y criptográficamente segura: en concreto, solo un conjunto de votos firmados digitalmente por los delegados de génesis puede completar el proceso. Este proceso tiene, además, un umbral temporal concreto: los votos deben presentarse antes de las 48 horas de la época.

La época que se inicia el lunes 5 de abril a las 21:44:51 UTC (época 258) activará el mecanismo de adición de entropía: concretamente, el hash del bloque anterior que aparezca en el primer bloque a partir del miércoles 7 de abril a las 15:44:51 UTC (slot 151200 de la época [epoch] 258) será el que determine el nonce de transición; esto ocurrirá aproximadamente 42 horas después del inicio de la época y, con ello, quedarán seis horas para que los delegados de génesis emitan sus votos. Si recordamos la estructura de la cadena hash de la blockchain de Ouroboros, este valor hash depende de toda la blockchain hasta ese momento.

Un examen minucioso de las pruebas de exactitud del protocolo ofrece una imagen más precisa de las propiedades esenciales del nonce de transición: debe depender de valores aleatorios -introducidos en nuestro entorno a través de las transacciones de la blockchain de Cardano- que no pueden predecirse con exactitud cuando se resuelve la distribución de la participación para la época del 10 de abril. Esto pone especial énfasis en las transacciones que aparecen en la blockchain entre la marca de 12 horas, cuando la distribución de la participación está firmemente establecida, y la marca de 42 horas, cuando el valor hash se levantará.

Las fuentes de entropía presentadas por IO Global

Mientras que la comunidad de Cardano está obligada a introducir una gran variedad de fuentes aleatorias - ¡véase más abajo! - los científicos e ingenieros de IO Global insertarán transacciones con metadatos determinados por varias fuentes públicas de entropía: hashes de los precios de cierre de la Bolsa de Nueva York el 6 de abril, y datos sísmicos en tiempo real del Servicio Geológico de EE. UU., la Universidad de Atenas y la Sociedad Meteorológica de Japón. La información sísmica de estas fuentes cubrirá las primeras 36 horas de la época. En este repositorio público de github se ofrecen más detalles, incluidos los scripts que se utilizarán para recopilar los datos y las fuentes exactas.

Nos gustaría que los miembros más técnicos de la comunidad de Cardano se unieran también, añadiendo su propia contribución a la aleatoriedad. A continuación se detalla lo que nos gustaría que usted hiciera.

  • Escoja algunas fuentes divertidas de aleatoriedad: un sorteo de la lotería de su localidad, una nueva clave pública RSA creada con sus herramientas habituales o el resultado de varias tiradas de un dado de 20 caras.

  • Coloque el resultado de estas fuentes en un documento de texto, guárdelo y haga un hash del archivo utilizando su función hash favorita, como SHA256. Publique este hash en la blockchain utilizando una transacción con metadatos. (Vea este vídeo).

  • Para que sea más útil, la fuente u origen de la aleatoriedad ha de ser determinado después del martes 6 de abril a las 9:44:51 UTC (ranura 43200 de la época 258) y ha de incluirse en una transacción blockchain antes del miércoles 7 de abril a las 15:44:51 UTC (ranura 151200 de la época 258).

Si no tiene tantos conocimientos técnicos, también puede participar. Es posible que desee probar una nueva e interesante herramienta de la comunidad [descrita por su propio autor en este artículo], llamada Cardano Wall . Esta herramienta le permite escribir fácilmente en la blockchain de Cardano. Independientemente de cómo decida participar, anuncie su iniciativa de servicio comunitario en las redes sociales, publicando tanto su fuente (sin hash) como el valor de hash que aparece en su transacción.

Le agradecemos su apoyo y estamos deseando que llegue el slot 151200, cuando podamos reunirnos, en espíritu, para una “fiesta de bloques” y ver los votos de los delegados del génesis aparecer en la cadena.


Notas del Traductor

¹ entropía es la aleatoriedad recogida por un sistema operativo o una aplicación para su uso en criptografía o para otros usos que requieren datos aleatorios. Esta aleatoriedad a menudo se obtiene de fuentes de hardware, ya sea preexistentes, tales como los movimientos del ratón o, si se dispone, de generadores de azar.

² ouroboro (también uróboro o uroboro) (del griego ???ßó??? [?f??], ‘[serpiente] que se come la cola’, a su vez de ???, ‘cola’, y ß???, ‘que come’) es un símbolo que muestra a un animal serpentiforme que engulle su propia cola y que forma un círculo con su cuerpo. El uróboro simboliza el ciclo eterno de las cosas, también el esfuerzo eterno, la lucha eterna o bien el esfuerzo inútil, ya que el ciclo vuelve a comenzar a pesar de las acciones para impedirlo.

³ recursividad o recursión es la forma en la cual se especifica un proceso basado en su propia definición. Circula entre informáticos el chiste de que “para entender qué es la recursividad antes hay que entender qué es la recursividad”

4 nonce proviene del ingles ‘number that can be only used once’, esto es ‘número que solo puede usarse una vez’. En criptografía es un número aleatorio usado una sola vez destinado a la autenticación de transferencia de datos entre dos o más partes.

5 Likes

Las notas del traductor son un excelente valor agregado.

3 Likes

¡Gracias @arielfavio!

Con ellas intento hacerle más amena la lectura al usuario sin tener que abandonar el artículo en buscar de significados, aunque también dejo la libertad de profundizar en ellos con los enlaces referenciales. En ocasiones estás me toman casi la un cuarto del tiempo de traducción.

Un abrazo.

Hola Napoles,

Muchas gracias por el aporte.

Yo me he quedado con el punto de la parte técnica. Lo que se refiere a la parte aleatoria tomando fuentes externas. Estoy pesando en aportar mediciones que realizo con diferentes tipos de sensores. tengo que echar un ojo al video que has linkado.

Un saludo

1 Like

Hola @keltxo

No sabes lo que me alegra leer que lo intentas. Luego nos cuentas que tal te fue, que fuente utilizaste, los resultados que obtuviste y publicaste en los metadatos de una transacción.

Saludos.

1 Like

Hola de nuevo Napoles, sabes si la estructura del archivo de datos tiene que tener algun formato especial? y el ta,año min-max que debe tener?

Un saludo

1 Like

Hola @keltxo

Disculpa la demora de la respuesta y el que no sea de mucha ayuda a esta altura pues ya pasó el momento. A ver, la estructura, formato o tamaño no tenían que ser específicos, lo que se requiere es el hash del archivo (dado que se le puede hallar el hash a casi cualquier archivo digital, pode utilizarse prácticamente cualquiera). Luego poner ese hash como metadato en una transacción y enviarla, (CardanoWall es una forma fácil y divertida de hacerlo).

Keltxo, lamento mucho que sea ahora que note este comentario. La verdad es que me hubiera gustado haber participado junto contigo. Pero lo que si puedes hacer ahora, es dedicarle una frase especial a uno de tus seres más queridos e inmortalizarla en la blockchain de Cardano haciendo uso de CardanoWall, por un costo ínfimo. Para ello no importa el momento. Si no se trata de algo muy personal, y deseas compartirlo con tus colegas, pues aquí estoy :wink:.

Cordiales saludos.
Nápoles.

1 Like

Buenos días Napoles

No pasa nada, estos dias ando ando ocupado con la nueva versión del nodo cardano 1.26.1 y no he podido hacer mucho más.
Me parece interesante el CardanoWall. Lo tendré en cuenta.

Un saludo

1 Like