Le enviamos por correo electrónico la revista del programa
DOBLE TITULACIÓN EN BLOCKCHAIN MANAGEMENT Y BLOCKCHAIN ENGINEERING

Dedicación: 755 horas (240 horas lectivas)

Idioma: español

Requisitos: Conocimientos de programación en JavaScript y HTML. No se requiere titulaciones previas.

Modalidad: se puede elegir entre dos modalidades distintas
Modalidad Live Streaming
Información: Alumno y profesor interactúan en directo a través de una plataforma de videoconferencia. Posteriormente, las grabaciones de las clases se publican en el campus virtual junto al resto de recursos.
Fecha de inicio y fin: 18 de Octubre del 2022 – 15 de Diciembre del 2023 (El mes de Agosto no es lectivo)
Horarios disponibles: martes y jueves de 18:30h a 21:00h (zona horaria UCT+1, Madrid)
Modalidad Online
Información: Los alumnos tienen acceso a las grabaciones de las clases y a los recursos. Participan periódicamente en tutorías por videoconferencia y pueden resolver dudas en cualquier momento vía email, llamada o videollamada.
Fecha de inicio: Inicio flexible
Duración: 1 año
Horarios: Flexibles (dedicación de entre 7 y 10 horas semanales)

Ayudas económicas:
Bonifique a través de FUNDAE (debe ser coordinado desde su empresa) o solicite información sobre nuestro programa de becas

¿A quién va dirigido?:
Perfiles técnicos con formación relacionada con la informática o las telecomunicaciones. Profesionales que aspiren a liderar y/o ejecutar todas las fases de un proyecto blockchain.

Objetivos:
Consolidar las capacidades necesarias para liderar y ejecutar las diferentes fases de un proyecto basado en blockchain. Preparar a los alumnos para que puedan diseñar, planificar y desarrollar soluciones innovadoras que respondan a las necesidades reales de distintas organizaciones.
Contenido del programa
Módulo 1 – Blockchain Management
El primer bloque contextualiza los orígenes del blockchain, las necesidades que pretendía cubrir y la evolución de la tecnología hasta la actualidad. También pretende explicar la propuesta de valor que plantea la tecnología blockchain, y sus principales aplicaciones.
- Origen,evolución y actualidad
- Propuestas de valor
- Funcionamiento básico
- Comparación con sistemas tradicionales
- Smart Contracts, Dapps y DAOs
- Aplicaciones e impacto en distintas industrias y web descentralizada
Se explica en profundidad el funcionamiento de la tecnología, incluyendo conceptos estadísticos, de encriptación, sistemas informáticos, bases de datos, etc. El alumno aprenderá los conceptos técnicos necesarios, para comprender las posibilidades y limitaciones de la tecnología, llegando a conocer la arquitectura de las aplicaciones blockchain. Queda fuera del alcance del curso los lenguajes de programación y el desarrollo de software.
- Criptografía básica del blockchain
- Estructura de la tecnología
- Firmas digitales y validaciones
- Minería e incentivos
- Protocolo Proof of Work
- Protocolo Proof of Stake
- Otros protocolos de consenso
- Introducción a las bases de datos
- Estructura de un programa (software)
- Hardfork y Softfork
- Sidechains
- Smart Contracts (II)
- Dapps y DAOs (II)
- Simulación de una red blockchain
Hay dos tipos de blockchain muy distintas entre ellas. En esta sección se explican en detalle las características de las blockchain públicas y se entra en detalle con la red Bitcoin y Ethereum. También se usarán en directo varias aplicaciones basadas en Ethereum para comprender su funcionamiento más práctico.
- Características
- Propuesta de valor y aplicaciones
- Protocolos
- Incentivos/tokens
- Gobernanza
- La blockchain Bitcoin
- La blockchain Ethereum
- Limitaciones, Lightning Network y RSK
- Metamask y Testnets
- Prácticas con Smart Contract y Dapps
Actualmente las blockchain privadas o de consorcio están despertando el interés de muchas empresas que se quieren iniciar en esta tecnología. Sus características son muy distintas a las públicas, y por lo tanto también lo son sus aplicaciones. En esta sección mostraremos sus características, utilidades y profundizaremos en las ventajas y desventajas de este tipo de infraestructura blockchain.
- Similitudes y diferencias
- Propuesta de valor y aplicaciones
- Protocolos, incentivos y gobernanza
- Limitaciones y privacidad
- Hyperledger y Hyperledger Fabric
- Cómo construir una blockchain permisionada
- Blockchains híbridas
- Análisis de proyectos reales de IBM
La tecnología blockchain ha permitido crear un dinero electrónico descentralizado que por primera vez en la historia no depende de bancos ni gobiernos para que funcione correctamente. En esta sección explicaremos en detalle el valor que puede aportar a la sociedad y su funcionamiento. Presentaremos los distintos tipos de activo tokenizado que existe y el uso que se le puede dar a cada uno. También hablaremos sobre las nuevas alternativas de financiación como las Initial Coin Offerings (ICOs), cómo funcionan y cómo llevarlas a la práctica.
- Contexto y orígenes del Bitcoin
- Introducción a las criptomonedas
- Criptomonedas vs dinero fíat
- ICO y DAICO
- Tokenización de activos
- Creación de una criptomoneda
- Comprar, guardar y vender criptomonedas
Una vez entendido el funcionamiento de la tecnología es el momento de profundizar en sus posibles aplicaciones y en cómo podría configurarse la tecnología en función del caso de uso. Al finalizar esta sección los alumnos serán capaces de identificar oportunidades de mejora basadas en blockchain y conceptualizar soluciones que encajen con unas necesidades concretas. También se mostrarán las limitaciones de la tecnología, cuando es necesario usarla, cuando no y descubriremos los retos que plantea de cara el futuro. Finalmente se entrará en detalle sobre las aplicaciones existentes para las diferentes industrias.
- Innovación en la gestión de información
- Disrupción en la transferencia de valor
- Creación y gestión de la identidad digital
- Nuevos modelos de negocio y jerarquización
- Modelo para identificar oportunidades de mejora basadas en blockchain
- Industria 4.0
- Aplicaciones específicas en los principales sectores: supply chain, finanzas, seguros, abogacía, ciberseuridad, sanidad, energía, telecomunicaciones y muchos más.
- Internet of Things
- Limitaciones y retos
- Perspectivas de futuras de la tecnología blockchain
Se explica si los Smart Contract (contratos inteligentes) tienen garantías jurídicas y hablaremos sobre las regulaciones y normativas que se deben tener en cuenta para afrontar un proyecto basado en blockchain. También veremos la regulación mundial de los criptoactivos e introduciremos sus requisitos fiscales.
Una buena manera de afrontar este reto tecnológico es colaborando con varias empresas del mismo sector. De este modo, éstas pueden compartir objetivos y costes. En este tema, explicaremos también qué tipos de consorcio existen, qué nos pueden aportar y cómo poder formar parte de uno.
- Nivel de validez jurídica de los Smart Contract
- Regulaciones y normas
- Retos regulatorios
- Normativa GDPR y similares
- Contratos entre máquinas
- Consorcios
Se analizarán los recursos necesarios para llevar a cabo un proyecto basado en tecnología blockchain y cómo gestionarlos. Se darán las herramientas apropiadas para poder diseñar y presupuestar una aplicación descentralizada.
También se enseñará a desarrollar la documentación requerida para que el equipo técnico pueda programar e implementar la solución de la manera más eficiente. Y además, analizaremos proyectos reales para conocer las mejores prácticas de planificación y ejecución de proyectos.
- Diseño funcional de una aplicación blockchain
- Arquitectura de las aplicaciones
- Selección de la tecnología y requisitos
- Firma de transacciones y llamadas de escritura
- Creación de una Interfaz de usuario con Angular
- Contract ABI Especification
Módulo 2 – Desarrollo sobre blockchain pública (Ethereum)
Se estudia el funcionamiento global de una blockchain pública. Concretamente se profundidad en la principal infraestructura pública para el desarrollo de DApps, Ethereum. Se ofrece una introducción y posteriormente se analizan los los distintos elementos que intervienen para asegurar el correcto funcionamiento de la tecnología y la generación de transacciones.
- Origen de Ethereum
- Clientes Ethereum, Parity y Geth
- Configuración de clientes para desarrollo de DApps
- Exploradores de bloques
- Ethereum Virtual Machine y opcodes
- Gas, transacciones y cálculo de costes
- Consulta de información de bloques y transacciones
- Serialización de mensajes
- Suscripción a eventos
- Instalación y uso en una Testnet propia
- Gestión de las claves
- Ethereum networkss (Mainnet, Ropsten, Rinkeby)
Instalación y configuración de nodos en una red pública y administración de un sistema de minado.
- Introducción a la minería
- Hardware e infraestructura
- Instalación del nodo y minado
- Análisis de rentabilidad
- Conexión a Pool
Estudio del lenguaje de programación Solidity para el desarrollo de Smart Contracts en la blockchain de Ethereum.
- Environment setup (Nodo + Web3 + Compilador + IDE)
- Estructura de un Smart Contract
- Tipos de almacenamiento
- Tipos de datos
- Operadores
- Funciones
- Gestión de la visibilidad
- Eventos y logging
- Herencia y polimorfismo
- Excepciones
- Seguridad
- Mnemonic phrases
- Manejo de errores
Se profundiza sobre funciones avanzadas de desarrollo de Smart Contracts, patrones de diseño y estándares de su programación.
- Interface Pattern y llamadas entre contratos
- Funciones especiales
- Conversiones y Time Units
- Strings y su manipulación
- Solidity v.0.5 breaking changes
- Patrones de diseño (withdrawl pattern, contract factory pattern, oraculos, etc.)
- ERC-20 token standard
- ERC-721 non-fungible tokens
Se trabaja con las principales herramientas para el desarrollo, publicación y testing de Smart Contracts. Se implementan varios Smart Contract sencillos en la blockchain de desarrollo local y en una Testnet pública de Ethereum. Se desarrolla la primera aplicación y se interactúa con ella y además se realizarán prácticas de implementación y automatización de tests unitarios.
- Web3 Object y promises
- Remix
- Solidity compiler
- Truffle
- Node.js
- Metamask
- Mocha testing
- Ganache
- Infura y publicación en Testnet
Se estudia el desarrollo de DApps y su arquitectura. Se crean aplicaciones reales que permiten a los alumnos interactuar con los Smart Contracts implementados sobre la blockchain.
- Arquitectura de una DApp
- Ejemplos de arquitecturas y soluciones con casos reales
- Componentes
- Almacenamiento
- Experiencia de usuario y sincronización
- Gestión de wallets
Se estudia en detalle la librería Web3, componente principal para la comunicación de las DApp con la blockchain de Ethereum.
- Web3
- Ethereum JS Utils
- Connexión con un nodo
- Llamadas de consulta a un nodo
- Firma de transacciones y llamadas de escritura
- Creación de una Interfaz de usuario con Angular
- Contract ABI Especification
En este tema se estudian dos tecnologías distintas para desarrollar DApps que sean compatibles con Android e IOs. La primera es el SDK Ionic que permite el desarrollo de DApps híbridas y multiplataforma. Se desarrollan y compilan tanto para Android como para IOS. También se muestran distintas formas de gestionar las wallets y se utiliza firebase para el almacenamiento de los seeds de la DApp desarrollada.
Posteriormente se trabaja con el entorno de desarrollo ágil Embark. Se muestran las ventajas y funcionalidades mientras se construye una DApp. También se dan a conocer las posibilidades de integración con servicios off-chain como IPFS o Swarm. Estos servicios son útiles cuando se requiere almacenar grandes cantidades de información.
- Creación proyecto Ionic
- Creación DApp híbrida
- js/Ethereumjs
- Compilación DApp Android
- Compilación DApp IOS
- Firebase y gestión de seeds
- Embark, Ionic y Smart Contracts
- Creación proyecto Embark
- Whisper
- Integración con IPFS
- Desarrollo casos prácticos
Este tema es uno de los más importantes del curso. Se dan las pautas para evitar errores que podrían poner en jaque al sistema y se enseña a aumentar la seguridad del mismo. Estas pautas son útiles para cualquier desarrollo basado en blockchain independientemente de si es sobre Ethereum o cualquier otra tecnología.
La programación de Smart Contracts requiere una mentalidad ingenieril distinta a la que estamos acostumbrados. El coste de un fallo puede ser muy elevado y cualquier cambio trivial puede resultar fatal para el proyecto. Consecuentemente, no es suficiente con defenderse contra vulnerabilidades conocidas, es necesario un cambio de filosofía y seguir las buenas practicas y recomendaciones de seguridad mostradas en este capítulo.
- Detectar vulnerabilidades de código
- Actualización de contratos
- Reentrancy Attacks
- Overlow y underflow
- Exception disorder
- Generación de números aleatorios
- Herramientas de seguridad
Módulo 3 – Desarrollo de blockchains permisionada (Hyperledger)
Se analiza el concepto de blockchain permisionada y la tecnología iniciada por la Fundación Linux que está siendo usada como marco principal en la mayoría de proyectos permisionados. Se instala Hyperledger Fabric en los servidores, el conjunto de herramientas y archivos que conforman el entorno de trabajo. Finalmente se explica los recursos y herramientas necesarios para poder llevar a cabo un proyecto basado en Hyperledger Fabric, como planificar su implementación y como gestionar la ejecución.
- Introducción y funcionamiento
- Cuándo y cómo aplicarlo
- Aplicaciones y proyectos reales
- Framework y sus características funcionales: Iroha, Sawtooth, Fabric, Indy, Burrow, Besu, Grid
- Instalación de Hyperledger Fabric, herramientas y archivos
- Actualizaciones del entorno de trabajo
- Planificación de proyectos basados en Hyperledger
- Gestión y ejecución de proyectos
En este tema se aprende a diseñar e instalar la infraestructura necesaria para la implementación de una blockchain privada en un entorno de pruebas . El objetivo es organizar una red que cumpla con las necesidades de la cadena de valor del cliente.
- Estructura de redes Hyperledger
- Tipos de nodos y ordering service
- Dimensionamiento de infraestructura
- Diseño de red
- Creación máquina virtual
- Instalación sistema operativo Ubuntu
- Microsoft Visual Studio Code
- Configuración VirtualBox
- Creación y configuración de red
- Configuración del conjunto de nodos
- Principales plataformas cloud (AWS, IBM y Azure)
- Producto mínimo viable
Se explica la estructura de la tecnología y la arquitectura de las soluciones basadas en Hyperledger Fabric. Se muestran esquemas optimizados para mejorar el funcionamiento global de las aplicaciones y se analizan las diferentes soluciones de infraestructura para el despliegue de una red de negocio con Hyperledger Fabric.
- Arquitectura global
- Composer Modeling Language
- APIs
- Tecnología REST
- Modelado de clases
- Consenso
- Gestión de contenedores Docker
- Configurar los canales
- Docker Swarm
Se estudian las herramientas y lenguajes necesarios para programar soluciones en una red de negocio descentralizada con Hyperledger. Se entra en detalle en el desarrollo de los Chain Codes (Smart Contracts para entornos privados) y en la construcción del conjunto de la DApp.
- Hyperledger Composer Playground
- Hyperledger Composer REST
- Modelado de lógica de negocio
- Generación de certificados y transacciones
- Queries
- Desarrollo e instalación de Chaincode
- Desarrollo de DApps para entonro permisionado
- Transaction Processor Functions
- Creación de esqueleto web en Angular
En este tema se estudia en profundidad la herramienta Hyperledger Explorer, el explorador de bloques oficial de Hyperledger.
- Introducción y propuesta de valor
- Funcionamiento
- Instalación y puesta en marcha
- Comunicación Hyperledger Fabric con Hyperledger Explorer
Se plantean diferentes retos al alumno relacionados con la programación de aplicaciones descentralizadas. Este tema es totalmente práctico y tiene como objetivo consolidar la experiencia necesaria para programar de manera eficaz soluciones con Hyperledger Fabric. Se comparten mejores prácticas para optimizar el código y evitar errores.
- Transaction Processor Functions
- Programación con el SDK de Fabric (Go)
- Blockchain as a service
- Apificiación de servicios
- Desarrollo de Chaincode (avanzado)
- Desarrollo de DApps (avanzado)
- Ejercicios prácticos con Hyperledger
Se enseña a instalar y configurar la tecnología Hyperledger en un conjunto de servidores privados . El objetivo es construir y poner en marcha una infraestructura de blockchain permisionada en un entorno real con todas sus prestaciones. Se utilizan servidores independientes para conseguir replicar un escenario típico en el que diferentes empresas participan en la red, cada una con un nodo. Además se instala la DApp desarrollada por el alumno sobre esta misma blockchain y se ejecuta.
- Diseño de red (avanzado)
- Instalación y configuración de herramientas y archivos
- Configuración de servidores y despliegue de nodos
- Comunicación y consenso
- Gestión avanzada de sistemas
- Instalación y ejecución de Chaincodes en la red creada previamente
Casos prácticos
Una parte importante del curso son las sesiones prácticas de implementación. Hay dos tipos de casos prácticos: Casos prácticos de negocio (módulo 1) y casos prácticos de desarrollo (módulo 2 y 3). En los primeros el profesor presenta una organización y sus necesidades. Posteriormente los alumnos proponen posibles soluciones basadas en blockchain, las analizan, valoran su implementabilidad e impacto y finalmente diseñan el proyecto con más potencial. Los casos prácticos del módulo 2 y 3 en cambio consisten en desarrollar integral de soluciones. Por lo tanto, además de programar los Smart Contracts y las aplicaciones descentralizadas, también se crea la infraestructura necesaria para poder poner en marcha la solución.
Proyecto
El objetivo del proyecto es que los alumnos pongan en práctica lo aprendido a lo largo del curso y adquieran suficiente experiencia como para para poder empezar a trabajar profesionalmente con estas tecnologías en todas sus fases de implementación.
Los alumnos estarán acompañados por un docente a lo largo de todo el desarrollo, con quien podrán resolver dudas, corregir código y compartir mejores prácticas.
Consigue unos resultados únicos
La mayoría de recién titulados en algún programa de blockchain entienden la teoría y las principales aplicaciones, pero no se ven capaces de diseñar una solución que haga frente a las exigencias de un caso de uso real. Sin embargo, esta habilidad es indispensable para dedicarse profesionalmente a este sector.
Con el fin de cubrir esta deficiencia, ofrecemos un programa que incluye casos prácticos de negocio (formato MBA). De este modo, conseguimos que los estudiantes sean capaces de encajar las propuestas de valor que ofrece la tecnología con cualquier marco de necesidades, y además aprendan a diseñar los diferentes módulos del proyecto y los requisitos funcionales de cada uno.
Docentes
Solicite información o su admisión
¿Qué trámite desea realizar?
Para iniciar los tramites de matriculación