Inscripción online Solicitud de información Reuniones informativas Consulta por equivalencias
Programa de

Desarrollo con Blockchains

Desarrollo de aplicaciones descentralizadas (Ðapps) en Solidity.

En conjunto con
Inicio
23
Agosto
Inicio: 23 de agosto del 2018.
Duración: 16 semanas.
Días de cursado: Jueves.
Horario: 19 a 22 hs. Inscripción online

Revolución tecnológica

Las tecnologías de blockchains están revolucionando la formas de transaccionar en la economía moderna. Esto parece exagerado pero no lo es. Las blockchains permiten distribuir la confianza entre una gran cantidad de pares, haciendo extremadamente difícil el fraude y la alteración de los registros de transacción, y haciendo innecesaria la mediación de entidades o autoridades de provisión de confianza.

Esto está alterando de manera tan profunda las bases sobre las que se construyen los sistemas y emprendimientos en Internet, que hace muy difícil pronosticar quiénes serán los futuros líderes de la economía digital. Sin embargo está claro que las tecnologías de blockchains serán el ingrediente principal de las soluciones y protagonistas que triunfen en esta evolución.

La cantidad de áreas de la economía que ya están siendo afectadas por estas tecnologías es muy grande. Algunos ejemplos son: alimentos y agricultura, energía, salud, elecciones y e-democarcia, publicidad en Internet, sistemas de gestión y redes sociales.

La comprensión y las habilidades de los conceptos y herramientas de desarrollo asociadas a los blockchains son la llave para asomarse a la gran cantidad de oportunidades profesionales y de emprendimiento que existen y que se generarán en el futuro inmediato.

El Programa en Desarrollo con Blockchains de la Facultad de Ingeniería de la UP es una introducción a los conceptos, lenguajes y herramientas de desarrollo de Blockchains, basadas en la plataforma más prometedora de estas tecnologías, Ethereum, para trabajar con transacciones, criptomonedas, contratos inteligentes, emisión de valores y otras aplicaciones.

En este programa aprenderás a desarrollar aplicaciones descentralizadas en Solidity, estándar para aplicaciones de Smart Contracts, tanto en redes públicas como privadas. Se dará gran importancia a los aspectos de seguridad y optimización. Se incluye una introducción a los protocolos más importantes de seguridad y transacción digital, su evolución hasta las blockchains, las plataformas y emprendimientos que se perfilan como referentes en esta, transformación. El programa apunta a formar desarrolladores e innovadores de sistemas basados en blockchains, tiene un gran componente práctico, e incluye el desarrollo de un proyecto final.

Plan de estudios

Módulo 1: Introducción a Blockchain
Perspectiva histórica. P2P. Problema de doble gasto. Problema de los generales bizantinos. Criptografía. Diversos métodos de consenso. Merkle tree. Dapp. Blockchain. Bitcoin. Ethereum. Monero. Zcash. Ripple. Wallets. Exchanges. Oráculos. Tokens. ICOs. Gobernabilidad. Aspectos legales y regulatorios.

Módulo 2: Ethereum y Smart Contracts en Solidity
EVM. Environment setup (Nodo + Web3 + Compilador + IDE), Data types, Operators, Functions, Visibility, ERC20 token standard interface, Events and logging, inheritance and polymorphism, Exceptions, Security concerns, Deployment on Ethereum blockchain, Wei vs Ether, Mnemonic Phrases, Ropsten. MetaMask.

Módulo 3: Limitaciones y Eficiencia
Costos de transacción o Gas, ejecución y almacenamiento. Cálculo del tiempo. Pseudo-Random numbers. Opcodes de la EVM. Uso de gas. Estructuras de datos más eficientes. Optimizaciones. Consecuencias no deseadas. No-String variables. Bounded loops. Quitar peso de calculo.

Módulo 4: Seguridad
conflicto de the Dao, Detectar vulnerabilidades de código, honeypot. Reentrancy Attacks. Call of the unknown. Exception disorder. Gasless Send / Transfer. Type Casts. Cast unknown. Keeping secrets. Inmutable Bugs. Ether lost in transfer. Stack size limit. Unpredictable state. Generating randomness. Mapping collisions.

Módulo 5: Futuro
Innovaciones. RSK. Cardano. Algorand. Spectre, Avalanche, DFINITY. Exchanges descentralizados. marketplaces. Securitización de activos.

Ingreso

Se recomienda poseer conocimientos básicos sobre programación en alguno de los lenguajes modernos (Javascript, Java, o Python, o similar).
Cada alumno debe traer su laptop para realizar las prácticas de desarrollo.

Solicitud de Información

Para solicitar información, por favor complete el formulario indicando su carrera o programa de interés. Le enviaremos información general, el plan de estudios y los aranceles.
Los campos * se deben completar obligatoriamente para poder procesar la solicitud de información.
Tel.: