Aprendiendo Ethereum/RSK (3)

Published on Author lopez

Anterior Post

En mis anteriores posts, comenté sobre dos libros/recursos dedicados a Bitcoin. Hay varios otros, pero ya es tiempo de entrar en el tema de estudiar Ethereum, la base del proyecto RSK.

La primera referencia es el sitio del proyecto:

http://ethereum.org/

Pueden leer el “white paper”:

https://github.com/ethereum/wiki/wiki/White-Paper

El principal autor es Vitalik Buterin, prácticamente el creador del proyecto, junto con otros co-fundadores. Ver:

https://en.wikipedia.org/wiki/Vitalik_Buterin
https://twitter.com/VitalikButerin
https://medium.com/@VitalikButerin

En el “white paper”, Buterin describe el protocolo Bitcoin y sus limitaciones. Etheereum es también una blockchain, pero diferente de Bitcoin en muchos aspectos. En Bitcoin, tenemos UTXOs (Unspent Transaction Outputs). En Ethereum, hay una máquina virtual que puede ejecutar “smart contracts” escritos en diferentes lenguajes de programación especializados (aunque el más popular es de lejos Solidity). Y en Ethereum tenemos un “trie” y un “hash root” de un estado del mundo. Cada contrato tiene su propio estado, almacenado en otro “trie”. Estos agregados a Ethereum lo hace un proyecto muy distinto, y muy interesante.

Una buena revisión del “white paper” en:

Cracking the Ethereum White Paper

Ahí leo:

So what is Ethereum really? In my previous article, I explained that Bitcoin acts as a trusted store of and means of transmitting value. I like to think of Ethereum as a means of transmitting value but also a trusted store for complex and shared interactive information and software. Understanding it is tough, but the reward might just be worth your time.

La próxima lectura a encarar es el “yellow paper”:

https://github.com/ethereum/yellowpaper
http://yellowpaper.io/

Escrito por otro co-fundador del proyecto Ethereum, Gavin Wood. Tiene una detallada descripción de los estados cuenta, bloques, bloques “uncles”, RLP (“Run Length Prefix”), la forma de codificar un arreglo de bytes, usado tanto en la transmisión como en el cálculo de hashes. Contiene un apéndices con la descripción de los opcodes de la Virtual Machine, y su operación.

En los próximos posts, describiré las diferencias entre las transacciones Bitcoin y Ethereum, el almacenamiento del estado del mundo, y el almacenamiento de los estados de contratos. Y algo de primeros pasos para usar Solidity..

Nos leemos!

Angel “Java” Lopez
http://www.ajlopez.com
http://twitter.com/ajlopez