Saltar al contenido

¿De qué hablas cuando hablas de seguridad, consenso y descentralización?

Seguridad, Consenso y Descentralización

Cuando debatimos sobre tópicos relacionados a Bitcoin (¡y cómo debatimos!) en oportunidades es difícil ponerse de acuerdo, pero no siempre es porque existan ideas opuestas sino porque los puntos de discusión son difusos. En este caso no me refiero a términos cuya definición parece no estar consensuada, y para lo cual espero escribir otro artículo en algún momento (hola “blockchain” y “wallet” 😉). Sino que me refiero a términos en los que estamos de acuerdo sobre su significado, pero aplicamos a objetos de análisis diferentes durante la conversación.

En esta oportunidad voy a concentrarme en tres términos ampliamente utilizados en Bitcoin: “seguridad”, “consenso” y “descentralización”. He visto numerosas conversaciones en donde estos términos se aplicaban arbitrariamente a diferentes objetos de discusión, sin necesidad de estar claros los mismos. Mi objetivo en esta pieza no es discutir las ventajas o desventajas de Bitcoin al respecto de estos puntos, sino enumerar los diferentes objetos de análisis en cada caso.

Seguridad

Creo que todos podemos tener una idea de lo que “seguridad” significa, y es muy probable que estemos de acuerdo en asociarla a certeza, o resistencia a ser vulnerado. Pero específicamente en Bitcoin puede aplicarse a varios aspectos.

Por un lado tenemos la seguridad de que nuestros fondos están protegidos. En este aspecto por supuesto tenemos algunas variantes: por un lado está la criptografía que permite que nadie pueda encontrar nuestras claves privadas de manera viable sin información adicional, y por otro lado están las buenas prácticas que podamos aplicar para no perder dichas claves o compartir información crítica sobre ellas. Dentro del segundo grupo también se encuentran los mecanismos de seguridad que cada software que interactúa con Bitcoin (ej: wallets) implemente para reducir pérdida de fondos.

Por otro lado también tenemos lo que comúnmente se menciona como la “seguridad de la red”, y se relaciona con la minería y el hashrate. En este caso la certeza a la que nos referimos viene de la mano de otro término utilizado con frecuencia y es la “inmutabilidad”. Pero para resumirlo (y para agregar otro término más a la ensalada, por qué no 🙃) podemos hablar de “finalidad”, que se refiere a la idea de que una transacción no pueda ser revertida. En Bitcoin la finalidad es probabilística y a medida que nuevos bloques se van generando, las transacciones que quedaron enterradas en el fondo van ganando finalidad ya que revertirlas implicaría generar nuevamente todos los bloques que están sobre ellas. Si pensamos en la minería y en la Prueba de Trabajo sabemos lo costoso que puede ser y que es un juego de probabilidades, con lo cual mientras más hashrate tenga la red, mayor seguridad tendremos en este aspecto.

Finalmente podemos hablar de seguridad cuando pensamos sobre diferentes contextos, situaciones o ambientes en donde uno se mueve dentro de Bitcoin. Me refiero específicamente a configuraciones en donde existan terceras partes y, por consecuencia, confianza en ellas. Por ejemplo, las condiciones de seguridad no son las mismas si utilizo una wallet móvil cuyo código fuente es cerrado y se conecta a servidores de la empresa para operar, que si por el contrario utilizo una wallet de código abierto que pude haber auditado e incluso compilado individualmente, y que además sólo se conecta a un Nodo que yo controlo. El tipo de seguridad al que nos referimos aquí está muy relacionado también a la privacidad y a la idea de que ambas puedan ser vulneradas.

Consenso

Consenso es, en términos simples, un acuerdo entre diferentes partes sobre algo en particular. En Bitcoin ese “algo en particular” pueden ser varias cuestiones.

Por un lado tenemos la idea más sencilla e intuitiva de entender, y es el acuerdo entre los diferentes miembros de la comunidad sobre el camino que debe seguir Bitcoin, principalmente cuando se trata de cambios en la red o el protocolo. De más está decir que poder detectar si se ha llegado a dicho consenso, y bajo qué parámetros, no es tarea sencilla. A su vez, dentro de este consenso podemos mencionar el caso particular que se da en situaciones cuando hay un determinado cambio en el protocolo para el cual se define un mecanismo mediante el que los nodos de la red pueden manifestar su apoyo o no a dicho cambio (signaling). En este caso la medición resulta algo más objetiva (ver por ejemplo el caso SegWit en 2017).

También tenemos otro consenso, que es aquel mencionado por Satoshi Nakamoto en su white paper original de Bitcoin. Aquí nos referimos al acuerdo que los diferentes nodos deben hacer con respecto a qué cadena de bloques considerar como válida ante la aparición de bloques que conflictúan o compiten entre sí. En este escenario la decisión se toma en base a reglas muy específicas que son parte del protocolo, incluyendo la Prueba de Trabajo. Esas reglas sólo aplican a este escenario puntual de decisión entre bloques de una misma red. A este consenso se lo llama Nakamoto Consensus.

Además, en algunos casos, se utiliza la palabra consenso para hablar del (libre) mercado al momento de determinar qué proyecto, red o cadena se le ha asignado mayor valor por la comunidad. El problema con este uso se da cuando se lo mezcla con otros casos de consenso. Sumado a que, para esto, ya tenemos la palabra adecuada: mercado.

(Des)centralización

Término usado y gastado si los hay en este ecosistema, la “descentralización” se usa muchísimo pero puede uno estar hablando de diferentes cosas. En todos los casos el foco está puesto en la ausencia de un punto único de falla o control (centralización) y la distribución de poder en cada uno de los ámbitos.

Primero tenemos la descentralización de la minería, aquella que controla el hashpower de la red. Estos elementos centralizados o descentralizados son los que afectan uno de los aspectos de seguridad mencionados previamente. En este aspecto se habla de geolocación de mineros, entidades detrás de las operaciones, así como también del capital en equipamiento y recursos puesto a la tarea en cuestión.

Luego tenemos la descentralizaciones de nodos de usuario en la red, que son aquellos que almacenan una copia de la blockchain, propagan datos, y validan que todas las reglas correspondientes se cumplan. En este aspecto también se habla de geolocalización de los nodos, así como también de la variedad de actores que controlan los mismos.

En tercer lugar se encuentra la descentralización de los participantes en la construcción o desarrollo de los cimientos de la red (el protocolo), así como la toma de decisiones al respecto de esto. Aquí se tiene en cuenta cada uno de los actores, los intereses y motivaciones que pueden o no tener, y el nivel de influencia y reputación con el que cuentan. Aquí la complejidad del factor humano se intensifica en comparación con otros objetos de análisis.

Por último, hay un foco de atención que he visto surgir en algunas discusiones sobre la descentralización, y es la riqueza. Desde este punto de vista se mira que tan distribuida está la riqueza (los bitcoins en este caso) entre diferentes actores del ecosistema, hasta donde puede saberse claro. Muy relacionado a esto podemos mencionar también la descentralización de la actividad económica en Bitcoin.

Entonces, ¿a qué nos referimos?

Aún sabiendo cuál es el objeto de análisis, los conceptos suelen presentarse en situaciones como un espectro en lugar de ser simplemente algo blanco o negro. Ni la seguridad ni la descentralización se activan o desactivan, ni sólo existen como absolutos. El consenso por otra parte es más binario en su interpretación, pero para nada sencillo de medir su resultado.

Cuando se debate sobre Bitcoin de manera integral u holística es fácil caer en la utilización de estos términos para luego perderse en el objeto de análisis que aporta valor a la discusión en curso. Por este motivo creo que lo importante cuando hablamos sobre estos puntos es no perder de vista el foco y saber qué es lo que nos importa en ese momento. Es decir, ¿la seguridad puntualmente de qué estoy debatiendo? ¿la descentralización sobre qué aspecto quiero proteger y para qué? ¿el consenso sobre qué punto estoy debatiendo?

Entonces, cuando menciones esos términos pregúntate: ¿de qué hablas cuando hablas de seguridad, consenso, o descentralización?


Artículo escrito por Diego H. Gurpegui

Apasionado por la tecnología y la evolución humana. Fascinado con Bitcoin como tecnología y como dinero.
Co-fundador y Responsable de Operaciones y Tecnología en Improve-in – Ingeniero en Sistemas de Información – Desarrollador de Software – Voluntario en la ONG Bitcoin Argentina – A veces orador y a veces profesor.

Paynyms (Samourai Wallet)

PM8TJRGGUudN15qFJ5CuK2Re9DzhnLH8o9yGb1dQXQNQobW6mB5ZEEzqSpzD95nsVTPUGbHf3QPgA3NyFMDvufNz47DHaNFrQH1YE4XU8Xb3djisK3DB
+darkheart7a7