LinuxParty

NUESTRO SITIO necesita la publicidad para costear hosting y el dominio. Por favor considera deshabilitar tu AdBlock en nuestro sitio. También puedes hacernos una donación entrando en linuxparty.es, en la columna de la derecha.
Inicio desactivadoInicio desactivadoInicio desactivadoInicio desactivadoInicio desactivado
 

Parece casi imposible en estos días abrir una fuente de noticias que discuta cualquier tema relacionado con la tecnología o las finanzas y no ver uno o dos titulares que cubran bitcoin y su marco subyacente, blockchain. ¿Pero por qué? ¿Qué hace que bitcoin y blockchain sean tan emocionantes? ¿Qué aportan? ¿Por qué todos hablan de esto? ¿Y qué nos depara el futuro?

En esta serie de dos partes, presento esta tecnología de tendencia actual, describo cómo funciona y proporciono instrucciones para implementar su propia red privada de blockchain. Bitcoin y criptomonedas

El concepto de criptomoneda no es nada nuevo, aunque con la prevalencia de los titulares aludidos anteriormente, se podría pensar lo contrario. Inventado y lanzado en 2009 por una parte desconocida con el nombre de Satoshi Nakamoto, bitcoin es uno de esos tipos de criptomonedas, ya que proporciona un método descentralizado para realizar transacciones digitales. También es una tecnología global, que es una forma elegante de decir que es un sistema de pago mundial. Con la tecnología descentralizada, no se considera que una sola entidad tenga la propiedad o la capacidad de imponer regulaciones sobre la tecnología.

Pero, ¿qué significa eso realmente? Las transacciones son seguras. Esto los hace más difíciles de rastrear y, por lo tanto, difíciles de gravar. Esto se debe a que estas transacciones son estrictamente de igual a igual, sin un intermediario en el medio. Suena demasiado bueno para ser verdad, ¿verdad? Bueno, es tan bueno.

Aunque las transacciones se limitan a las dos partes involucradas, sin embargo, deben validarse a través de una red de nodos que funcionan de forma independiente, llamada blockchain. Mediante criptografía y un libro mayor público distribuido, se verifican las transacciones.

Ahora, además de realizar transacciones seguras y más difíciles de rastrear, ¿cuál es el verdadero atractivo de estas plataformas de criptomonedas? En el caso de bitcoin, se genera un "bitcoin" como recompensa a través del proceso de "minería". Y si avanza rápidamente hasta el presente, bitcoin ha ganado valor monetario ya que puede usarse para comprar bienes y servicios en todo el mundo. Recuerde, esta es una moneda digital, lo que significa que no existen "monedas" físicas. Debe conservar y mantener su propia billetera de criptomonedas y gastar el dinero acumulado con los minoristas y proveedores de servicios que aceptan bitcoin (o cualquier otro tipo de criptomoneda) como método de pago.

Dejando a un lado todas las exageraciones, predecir el precio de la criptomoneda es una tontería, y no hay una sola variable que impulse su valor. Sin embargo, una cosa a tener en cuenta es que la criptomoneda no es de ninguna manera una inversión monetaria en una moneda real. En cambio, comprar criptomonedas es una inversión en un posible futuro en el que se puede intercambiar por bienes y servicios, y ese futuro puede llegar antes de lo esperado.

Ahora bien, esto no significa que la criptomoneda no tenga valor en efectivo. Una cosa que influye en el valor de un bitcoin es la tasa de adopción. Más personas que usan la tecnología dan como resultado más transacciones verificadas por los nodos propiedad de las personas que forman la cadena de bloques subyacente. A su vez, los propietarios de los sistemas de verificación obtienen sus recompensas, aumentando así el valor de la tecnología. Es simple: verifique más transacciones y gane más dinero. Claro, hay un poco más, pero esa es la idea general.

Los propietarios de los sistemas de verificación se denominan "mineros". Los mineros brindan un servicio de mantenimiento de registros. Tal servicio requiere una buena cantidad de potencia de procesamiento para manejar los cálculos criptográficos. El propósito del minero es mantener la cadena de bloques subyacente consistente, completa e inalterada. Un minero verifica y recopila repetidamente las transacciones transmitidas en grupos de transacciones denominadas bloques. Usando un algoritmo SHA-256 (Secure Hash Algorithm 256-bit hash), cada nuevo bloque contiene un hash criptográfico del bloque anterior, estableciendo un enlace para formar la cadena de bloques, de ahí el nombre, blockchain.

Figura 1. Un ejemplo de cómo los bloques de datos se "encadenan" entre sí

Una "crisis" global

Con el aumento de la criptomoneda y el aumento de los mineros que compiten para ganar su parte justa de la moneda digital, ahora nos enfrentamos a un dilema: una escasez global de adaptadores gráficos para PC de alta gama. Incluso los adaptadores usados ​​anteriormente se revenden a un precio mucho más alto que las versiones recién empaquetadas. ¿Pero por qué es eso? El uso de tarjetas de alta gama con suficiente memoria integrada y capacidades de procesamiento dedicadas fácilmente puede generar varios dólares en criptomonedas por día. Recuerde, la minería requiere el procesamiento de algoritmos que consumen mucha memoria. Y a medida que los precios de las criptomonedas continúan aumentando, aunque a un ritmo rápido, el valor de la moneda digital otorgada a los mineros también aumenta. Esta escasez de adaptadores gráficos se ha convertido en un cuello de botella cada vez mayor para los mineros existentes que buscan expandir sus operaciones o para que nuevos mineros se involucren en la acción. Ojalá,Los proveedores de tarjetas gráficas abordarán esta escasez más temprano que tarde.

Comparación de tecnologías Blockchain

Existen múltiples plataformas para el comercio de cifrado. Puede encontrar artículos que discutan sobre bitcoin y comparen esa moneda con otras como ethereum o litecoin. Inicialmente, esos artículos pueden generar confusión entre los dos tipos diferentes de monedas digitales: 1) criptomonedas y 2) tokens. Las cosas clave para recordar son las siguientes:

  • Un bitcoin o litecoin o cualquier otra forma de criptomoneda compite activamente contra el dinero y el oro existentes con la esperanza de reemplazarlos como una forma aceptada de moneda global. Como se mencionó anteriormente, la tecnología promete una moneda no regulada y accesible a nivel mundial, una que contiene el mismo valor estable independientemente de la ubicación. Este concepto definitivamente podría atraer a quienes viven en países inestables con monedas inestables.
  • ¿Y ethereum? Bueno, se trata de tokens. Funciona sobre la idea de contratos. Ethereum es una plataforma que permite a sus usuarios escribir "contratos inteligentes" digitales condicionales, mostrando prueba de una transacción que nunca puede ser eliminada.
  • En el mundo moderno, un contrato escrito tradicionalmente describirá los términos de una relación, generalmente exigibles por ley. Un contrato inteligente hará cumplir una relación mediante código criptográfico, es decir, mediante la ejecución de las condiciones definidas por sus creadores mediante un programa. Lo que hace que ethereum sea más interesante es que, a diferencia de bitcoin (o litecoin para el caso), la plataforma no se limita al caso de uso de la moneda.

Al igual que Bitcoin, cuando se realiza una transacción utilizando uno o más de estos contratos, se cobran tarifas de transacción para obtener la potencia de cálculo requerida. Cuanta más potencia computacional se necesite, mayor será la tarifa.

¿Qué es Blockchain?

Para comprender este fenómeno de la criptomoneda y su explosivo crecimiento en popularidad, debe comprender la tecnología que lo respalda: la cadena de bloques. Como se mencionó anteriormente, una cadena de bloques consiste en una lista en continuo crecimiento de registros capturados en forma de bloques. Mediante la criptografía, cada nuevo bloque está vinculado y asegurado a una cadena de bloques existente.

Cada bloque contendrá un puntero hash al bloque anterior dentro de la cadena, una marca de tiempo y datos transaccionales. Por diseño, la cadena de bloques es resistente a cualquier tipo de modificación de datos. Esto se debe a que una cadena de bloques proporciona un libro mayor abierto y distribuido para registrar transacciones entre dos partes interesadas de manera eficiente, confiable y permanente.

Una vez que se han registrado los datos, los datos de un bloque determinado no se pueden modificar sin alterar todos los bloques posteriores.

Supongo que puede pensar en esto como una "base de datos" distribuida donde su contenido se duplica cientos, si no miles, de veces en una red de computadoras. Este método de replicación enfatiza el aspecto descentralizado de la tecnología. Sin una versión centralizada o una única copia "maestra", esta base de datos es pública y, por lo tanto, se puede verificar fácilmente sin riesgo ni temor de piratería o corrupción. Alojado simultáneamente por millones de nodos informáticos, el contenido de esta base de datos es accesible para cualquier persona en Internet. Como beneficio adicional, el modelo distribuido y descentralizado asegura a sus usuarios que no existe un solo punto de falla. Imagine que uno o más de estos nodos informáticos son inaccesibles o experimentan algún tipo de fallas internas o incluso están produciendo datos corruptos.La cadena de bloques es resistente en el sentido de que continuará poniendo a disposición los contenidos de datos solicitados y en su formato adecuado (es decir, sin corrupción). Esto se debe a una técnica comúnmente conocida como método de tolerancia a fallas bizantino.

Tolerancia a fallas bizantinas

Los sistemas fallan y pueden fallar por múltiples razones (como hardware, software, energía, conectividad de red y otras). Esto es un hecho. Además, no todas las fallas son fácilmente detectables (incluso a través de los mecanismos tradicionales de tolerancia a fallas) ni siempre aparecerán igual para el resto de los sistemas en el clúster en red. Nuevamente, imagine una gran red que consta de cientos, si no miles, de nodos. Para manejar condiciones tan impredecibles, se debe emplear un sistema de votación para asegurarse de que el grupo tolerará la falla o la mala conducta.

Una falla bizantina se define por cualquier falla que muestre diferentes tipos de síntomas a diferentes observadores (es decir, sistemas informáticos distribuidos). Una falla bizantina es la pérdida de un servicio del sistema debido a una falla bizantina en un entorno donde se debe llegar a un consenso para poder realizar ese servicio u operación.

El propósito de Byzantine Fault Tolerance (BFT) es defender la plataforma distribuida contra tales fallas bizantinas. Los componentes defectuosos del sistema no impedirán que los componentes restantes lleguen a un acuerdo entre ellos, cuando se requiera dicho acuerdo para realizar una operación. Los componentes que funcionan correctamente de un sistema BFT continuarán brindando un servicio ininterrumpido, asumiendo que no existen demasiadas fallas.

El nombre de este mecanismo se deriva del Problema de los generales bizantinos (BGP). El BGP destaca un problema de acuerdo, donde hay un desacuerdo con todos los miembros participantes. Imagine un escenario en el que varias divisiones del ejército bizantino acampan fuera de una ciudad fortificada. Cada división tiene su propio general, y la única forma en que los generales pueden comunicarse entre sí es mediante el uso de mensajeros. Los generales deben decidir sobre un plan de acción común. El problema es que algunos de los generales pueden y muy bien podrían ser traidores. Con un traidor entre ellos, ¿pueden los no traidores decidir un plan común?

En un entorno de BFT, la respuesta a esta pregunta es sí. En un grupo de tres, un traidor hace que sea imposible no llegar a un consenso mayoritario. Por ejemplo, si un general dice "ataque" mientras que los otros dos dicen "retirarse", es fácil determinar quién es el traidor del grupo. También es posible llegar a algún tipo de acuerdo entre los no traidores. Ahora, aplique este concepto a una red distribuida de nodos informáticos. Por ejemplo, cuando un número f de nodos se vuelve bizantino, los nodos 2f + 1 no tolerarán el mal comportamiento. Todo lo que necesita es un nodo que funcione correctamente más que los nodos potencialmente defectuosos.

Figura 2. El problema de los generales bizantinos ilustrado

Ahora, ¿por qué estoy hablando de esto? El BFT es el núcleo de la resistencia de una cadena de bloques. Si no se puede llegar a un consenso para manejar una transacción, la cadena de bloques en sí no es buena.

La red

Una red que consta de nodos informáticos es lo que forma la cadena de bloques. Un nodo obtiene una copia idéntica de la cadena de bloques tan pronto como se une a la red. Se considera que cada nodo es un administrador de la cadena de bloques y no tiene más control sobre los otros nodos dentro del clúster, nuevamente, el resultado de estar descentralizado.

Figura 3. Un ejemplo de una red blockchain descentralizada

Este método de computación es lo que le da robustez a la cadena de bloques. Además de actualizar la cadena de bloques, cada nodo puede actuar y actuará independientemente del otro, independientemente de cómo se haya accedido. Y cuando necesite agregar un nuevo bloque a la cadena, transmitirá la actualización al resto de los nodos (actualizando el libro mayor público).

Cualquiera que sea el evento impulsado por el usuario, se considera que es una función de la red en su conjunto. Es la red global que administra la aplicación y operará de usuario a usuario o de igual a igual. Cada nodo, cuando se accede de forma independiente, tiene la tarea de confirmar la transacción solicitada (como la minería). Ya aludido anteriormente, es este concepto central el que hace que la cadena de bloques sea mucho más segura. La tecnología blockchain elimina los riesgos (y vulnerabilidades) introducidos con los datos que se mantienen (o administran) de forma centralizada y no se replican en la red. Otra forma de pensar es la siguiente: en lugar de que una sola entidad valide la transacción, ahora tiene varias entidades que validan la transacción después de llegar a un consenso. Actúan como testigos y ninguna entidad tiene más autoridad sobre la otra.Esto no deja lugar a la ambigüedad, y si uno o más nodos tergiversa los datos originales, el modelo BFT abordará eso.

Casi todos los que leen esto están familiarizados con los constantes problemas de seguridad que corren desenfrenados en Internet. Personalmente, intentamos proteger tanto nuestra identidad como nuestros activos en línea confiando en los sistemas tradicionales de "nombre de usuario" y "contraseña". Blockchain lleva esto un paso más allá y se diferencia en que su seguridad se deriva del uso de tecnologías de cifrado. El "problema" de autenticación se resuelve con la generación de "claves". Un usuario creará una clave pública (una cadena numérica larga y generada aleatoriamente) y una clave privada (que actúa como una contraseña). La clave pública sirve como la dirección del usuario dentro de la cadena de bloques, y cualquier transacción que involucre esa dirección se registrará como perteneciente a esahabla a. La clave privada le da a su propietario acceso a sus activos digitales. La combinación de claves públicas y privadas proporciona una firma digital. La única preocupación aquí es tomar las medidas adecuadas para proteger las claves privadas. Poniendo las piezas juntas

A estas alturas, debería tener una imagen más completa de cómo se unen todos estos componentes.

Figura 4. Manejo general de una transacción a través de una red Blockchain

Por ejemplo, digamos que hay una transacción de bitcoin (o podría ser algo completamente diferente), pero imagina que alguien en la red está solicitando la transacción. Esta transacción solicitada se transmite luego a través de una red de nodos informáticos de igual a igual. Mediante algoritmos criptográficos, la red de nodos valida el estado del usuario y la transacción. Una vez verificada, la transacción se combina con otras transacciones, creando un nuevo bloque de datos para el libro mayor público. El nuevo bloque de datos se agrega luego a la cadena de bloques existente y se hace de una manera que lo hace permanente e inalterable. Entonces la transacción está completa. Usando esquemas de marca de tiempo, todas las transacciones se serializan.

¿Qué hace que Blockchain sea importante?

Al igual que TCP / IP, la cadena de bloques es una tecnología fundamental. Como TCP / IP habilitó Internet en la década de 1990, puede esperar maravillosos nuevos comienzos con blockchain. Todavía es demasiado pronto para ver cómo evolucionará. Esta tecnología revolucionaria ha permitido a las organizaciones explorar lo que puede significar y lo que significará para sus negocios. Muchas de estas mismas organizaciones ya han comenzado la exploración, aunque se ha centrado principalmente en los servicios financieros. Las posibilidades son enormes y parece que cualquier industria que se ocupe de cualquier tipo de modelo basado en transacciones se verá interrumpida por la tecnología.

Resumen

Este artículo cubre el aumento y el interés en las criptomonedas y comienza a sumergirse en la tecnología blockchain subyacente que lo habilita. En la siguiente parte de esta serie, utilizando herramientas de código abierto, comienzo a describir cómo construir su propia red privada de blockchain. Esta implementación privada le permitirá profundizar en los detalles resaltados aquí. La tecnología puede centrarse hoy en día en torno a la criptomoneda, pero también observo varias industrias que la cadena de bloques puede ayudar a redefinir y el potencial para un futuro prometedor aprovechando la tecnología.

 

Otros artículos sobre BlockChain:

Pin It

Escribir un comentario


Código de seguridad
Refescar



Redes:



 

Suscribete / Newsletter

Suscribete a nuestras Newsletter y periódicamente recibirás un resumen de las noticias publicadas.

Donar a LinuxParty

Probablemente te niegues, pero.. ¿Podrías ayudarnos con una donación?


Tutorial de Linux

Filtro por Categorías