Saltar al contenido

C贸mo crear tu propia red de Blockchain

El Blockchain va a transformar la forma de hacer muchas cosas, sobre todo, el sector financiero en combinación con otras tecnologías exponenciales: machine learning, APIs, chatbots y biometría. Pero va mucho más allá del sector financiero.

Para arrojar luz a este tema, sobre todo a nivel techie, hoy tengo como invitada a Ester Ribas Arbós, Periodista especializada en Marketing y Escritora que te/nos va a contar ¿Cómo crear tu propia red de Blockchain? Te dejo con ella. 

___________________________________________________________________

"Cómo crear tu propia red blockchain"

La tecnología Blockchain, también conocida como cadena de bloques, es una tendencia, cada vez más consolidada en nuestro día a día. Esta, lleva ya unos cuantos años entre nosotros, pero no fue hasta 2008, con la aparición de la criptomoneda Bitcoin, que empezó a establecerse, y convertirse, diez años después, en un sistema capaz de ser utilizado en cualquier sector de mercado.

¿Somos conscientes del potencial que tiene esta tecnología?

La respuesta es no. Esta innovación, de momento, solo nos ha mostrado una pequeña parte de lo que es capaz, y todavía quedan muchas incógnitas sobre su uso o programación.

Por esto, en este post, quiero hacer un resumen de qué es el Blockchain y cómo podemos crear nuestra propia cadena de bloques privada, para que te hagas una idea de porque hablamos del Blockchain como una tendencia de la revolución industrial 4.0.

¿Estás preparado?

¡Vamos allá!

¿Qué es la cadena de bloques o Blockchain?

El Blockchain o la cadena de bloques es una tecnología que permite la realización de cualquier tipo de transacción de manera totalmente segura gracias a su sistema de encriptación o codificación. ¿Cómo lo hace?

Imaginemos que tenemos distintos bloques (nodos) uno puesto tras otro y queremos realizar una transacción, como por ejemplo, enviar dinero a otra persona. Cuando damos la orden, los mineros, que son los encargados de realizar dichas órdenes, empiezan a trabajar para que la transacción llegue a la otra persona.

Para que una transacción se realice, esta tendrá que haber sido validada por los mineros y llevada a 5 bloques en total.

Debemos tener en cuenta, que hablamos de un sistema totalmente seguro y codificado, porque una vez completados los 5 bloques es imposible anular o modificar dicha transacción. Además, solo las personas implicadas poseerán la información, por tanto, no hacen falta intermediarios, pero sí un código de descodificación que solo tendrán las personas que han participado en la transacción. Cada transacción queda registrada en nodos distintos.

Desde su aparición el Blockchain se ha vinculado con las criptomonedas, concretamente como el Bitcoin, provocando confusiones en su definición, puesto que muchos la entendían como una tecnología únicamente para la creación e intercambio de criptodivisas, o la inversión de estas.

No obstante, como he mencionado anteriormente, la cadena de bloques está irrumpiendo en distintos sectores de mercado como por ejemplo, el legal con la generación de Smart Contracts, el ámbito de las energías, hacer concursos, votar, envío de certificados o títulos, entre otros.

¿Ya te ha quedado un poco más claro que es el Blockchain o la cadena de bloques? Pues vamos a complicarlo un poco más, a continuación te enseño cómo crear tu propia cadena de bloques privada.

¿Cómo crear nuestra cadena de bloques privada?

Para crear una cadena de bloques privada, la tecnología Blockchain más utilizada es Ethereum, puesto que se trata de un software libre. Además, esta funciona gracias a la interconexión entre ordenadores (nodos). Una ventaja de esta tecnología pública es que permite la creación de Blockchains privadas de forma gratuita y mediante sencillos pasos, sin necesidad de programar código. ¿Por dónde empezamos?

"Machine Learning"

Instalación del software

Lo primero que debes hacer es descargar el software para que sincronice tu ordenador con la red. Ten en cuenta pero, que la información publicada en Ethereum es siempre pública, por tanto, puede ser consultada por cualquier usuario. Una vez instalado el software, vamos con el siguiente paso.

Instalar GETH

Geth es un programa que sirve para interactuar con las redes que Ethereum te provee como Main Net, Ropsten, Rinkeby o Konvan, y lo necesitarás para poder crear tu cadena de bloques privada. Puedes descargarlo en el siguiente enlace.

Indicadores a tener en cuenta

Gracias a Geth, te podrás conectar con la red Main Net o red real, por esto, es importante indicarle algunos parámetros para así, privatizar tu Blockchain, de esta manera, solo podrán participar en la red aquellos a quiénes les hayas dado permiso. Es importante tener en cuenta que el orden de los parámetros no altera el funcionamiento del Blockchain. Estos son algunos de los indicadores que podemos usar:

  • datadir: se trata del directorio donde se almacena toda la información.
  • networkid: número que identificará la red que estás creando.
  • port: es el número del puerto que abrirá tu ordenador para recibir a los participantes de la cadena de bloques.
  • init: ruta al archivo BloqueGenesis.json
  • maxpeers: Número máximo de participantes en la red.
  • nodiscover: este nos servirá para aislar de la red real aquellos usuarios que tengan el mismo bloque génesis que tú.
  • rpc: habilita las “llamadas de procedimiento remoto” para poder ejecutar comandos de manera remota en la cadena.
  • rpccorsdomain: permite filtrar qué dominios pueden o no acceder a las llamadas remotas.
  • rpcport: puerto a través del cual se podrán conectar las llamadas remotas.

Crear cuenta etherbase

Debes crear una cuenta etherbase por defecto, para que así, se depositen los ethers minados. Estos son los pasos a realizar para crear dicha cuenta.

  1. Abrir el terminal del sistema operativo.
  2. Dentro del directorio instala Geth mediante el comando cd, y quedaría así: cd C:\Geth2
  3. Una vez dentro de este directorio donde se encuentra la instalación de Geth, debes crear un directorio (carpeta) donde se almacenará la información de la blockchain privada, mkdir BlockchainETHCL
  4. Una vez creada la carpeta que contendrá la información de la blockchain, ya podrás crear la cuenta Ethereum con el comando geth account new --datadir BlockchainETHCL. Una vez hecho este paso, te pedirá que ingreses una contraseña para la cuenta, le das a ENTER y te general a dirección, que son una serie de números.

Creación del Bloque Génesis

El bloque génesis es el primer bloque emitido por la blockchain, por tanto, este, a diferencia de los demás bloques, no apunta a ninguno anterior. Este bloque, lo que nos permite es personalizar nuestra blockchain, es decir, podemos iniciar nuestras cuentas con saldo a favor, modificar dificultades, entre otras acciones.

Finalmente, completados los pasos anteriores, podrás crear el archivo “BloqueGenesis.json” en la carpeta de la instalación de Geth.

{

   "config": {

       "chainId": 1337,

       "homesteadBlock": 0,

       "eip155Block": 0,

       "eip158Block": 0

   },

   "difficulty": "200000000",

   "gasLimit": "2100000",

   "alloc": {

       "0xf8d7a085fd67fa9e6766a8d836473691901b8728": { "balance": "500000000000000000000000" }

   }

}

Dentro de este código que puedes copiar tal cual, lo único que deberás cambiar es este número 0xf8d7a085fd67fa9e6766a8d836473691901b8728 por el que has obtenido en el paso anterior. Esta configuración lo que te permitirá será iniciar la blockchain privada con un saldo de 500.000 ether.

Cómo iniciar el bloque génesis y manipular la cadena privada

"Cómo iniciar tu red blockchain"

Una vez tienes ya el BloqueGenesis.json en la carpeta de geth (C:/Geth2), puedes empezar a iniciar la cadena de bloques con el siguiente comando geth init BloqueGenesis.json --datadir BlockchainETHCL

Realizados todos estos pasos, ya puedes ejecutar tu Blockchain privada con algunos de los parámetros comentados al principio. Por ejemplo, puedes iniciar una Blockchain en la que solo se puedan conectar máximo 3 nodos. Para ello, deberás utilizar el siguiente código (--maxpeers 3) geth --datadir BlockchainETHCL --networkid 1337 --maxpeers 3 --nodiscover --mine

Para poder manipular la cadena de bloques privada, debes abrir una “nueva consola de comandos” y entrar en la carpeta del “Geth” y escribir el siguiente código geth attach

Al abrir esta consola, ya podremos realizar transacciones, crear, bloquear o desbloquear cuentas, crear contratos, entre muchas otras acciones.

También tienes la oportunidad de añadir nodos a la cadena de bloques, para ello, debes utilizar la misma configuración que en el bloque génesis. Luego, tienes que abrir la consola de Geth con geth attach” y añadir tu enode, que se trata de una url especial que identifica tu propia Blockchain. El código para añadir este enode es el siguiente:

admin.addPeer("enode://8927a1dd9ae869f991928173e61cf0c63dbb2215b8770466399885e0a8884abdb3646187debff0f9be405f8020eb18f69dc055801b7ecee0e1da7de66531eafc@[::]:30303");

Este símbolo del código [::] es donde debes poner tu IP.

Y ya estará, con estos pasos ya habrás creado tu propia cadena de bloques.

Ester Ribas Arbós | @eribas_arbos

Periodista especializada en Marketing y Escritora

__________________________________________________________________

Comentarios, Opiniones y Valoración

WOW, me ha parecido impresionante. No soy muy techie, pero me entran ganas de probar a crear mi propia red blockchain. 

Me gustaría saber qué te ha parecido, si te vas a animar o  no a ponerlo en práctica y saber lo que tienes que decir en redes sociales: 

Twitter (este tuit)

Linkedin (este post)

Con todo este lío de la RGPD y la Protección de Datos he decidido inhabilitar los comentarios en el blog, pero puedes dejarme tus comentarios, ideas y aportaciones en los dos enlaces anteriores, dependiendo la red social que más te guste.