Curso Intensivo Programación para Blockchain
Alquimia – Consultoría y Formación Avanzada presenta el curso intensivo de “Programación para Blockchain” donde aprenderemos a diseñar toda la arquitectura básica para una cadena de bloques o Blockchain, desde un conjunto de reglas de transición de estado a un método para crear bloques, hasta mecanismos para verificar la validez de las transacciones, los bloques y la cadena completa. Podemos derivar el estado del sistema de una copia descargada de la Blockchain, validar nuevos bloques que recibimos de la red y crear nuestros propios bloques.
Inscríbete en este enlace
PROGRAMA INTENSIVO
-
Módulo 1
ENTENDIENDO QUÉ ES BLOCKCHAIN
1.1. Descentralización y distribución
1.2. Características de Blockchain
1.2.1. Inmutabilidad
1.2.2. Invulnerabilidad
1.2.3. Persistencia
1.2.4. Consenso -
Módulo 2
ESTRUCTURA Y JERARQUÍA DE BLOCKCHAIN
2.1. Cadena de “bloques”. Unidad de almacenamiento.
2.1.1. Cabecera.
2.1.2. Contenido.
2.1.3. Bloque 0. Bloque génesis.
2.2. Hashing. Haciendo los bloques inmutables.
2.2.1. Funciones Hash.
2.3. “Cadena” de bloques. Encadenando los bloques.
2.4. Algoritmo de consenso.
2.5. Los nodos. -
Módulo 3
TRANSACCIONES
3.1 Árbol hash binario. Árboles de Merkle
-
Módulo 4
BLOCKCHAINS PÚBLICAS
4.1 Bitcoin
4.1.2 Ethereum
4.1.3 Litecoin -
Módulo 5
TIPOLOGÍAS ESTRUCTURALES
5.1 Blockchains Públicas, privadas y federadas
5.2 Blockchains Públicas más utilizadas
5.3 Blockchain Propia vs Fork
-
Módulo 6
HERRAMIENTAS, ENTORNO, LENGUAJES Y FRAMEWORKS
6.1. Lenguajes de programación para el desarrollo de una Blockchain
6.1.1. Go, C++, Java, Python
6.2. Frameworks y herramientas
6.3. Entorno de desarrollo -
Módulo 7
PLANIFICACIÓN ESTRUCTURAL Y CONCEPTUAL DE NUESTRA BLOCKCHAIN
7.1. Estructuras de datos. JSON.
7.2. Premisas. Bloque génesis.
7.3. Definiendo conceptualmente, y estructuralmente, las transacciones.
7.4. Definiendo los bloques de la cadena.
7.5. Inmutabilidad mediante hashing.
7.6. Elección del algoritmo de consenso. -
Módulo 8
DESARROLLO Y PROGRAMACIÓN
8.1 Construyendo las clases base
8.1.1. La clase “Bloque”.
8.1.2. La clase “BlockChain”.
8.2. Definiendo los algoritmos básicos de comportamiento.
8.2.1. Creación de un nuevo bloque.
8.2.1.1 Bloque génesis.
8.2.2. Creación de una nueva transacción.
8.2.3. Minado. Generando la prueba de trabajo, o no.
8.2.4. Lectura de la cadena de bloques.
8.3. Registro de un nodo.
8.4. Comprobación de consenso y registro del bloque/transacción. -
Módulo 9
CONSUMO DE RECURSOS
9.1. Creación de una REST-API como interface funcional.
-
Módulo 10
INTERACTUANDO CON TU BLOCKCHAIN
En este módulo finalizaremos con una prueba de interacción con la cadena de bloques creada en un Framework público utilizando Python.