Es posible que haya escuchado los términos "cadena de bloques" y "contrato inteligente" flotando alrededor, pero ¿qué significan realmente? En este tutorial, desmitificaremos la jerga, le mostraremos soluciones prácticas de blockchain y le daremos instrucciones sobre cómo crear una aplicación que aproveche el blockchain.
1. Bienvenido al curso Ethereum en español
Si quieres aprender sobre Ethereum y la blockchain te invito a que te suscriba en mi canal.
Donde estaré entregando información en español sobre ethereum y solidity.
Únete a nuestro canal de telegram y grupo donde puede preguntar todas tu
inquietudes que con gusto te contestare.
3. Primera Clase Teórica
Fundamentos Blockchain
• ¿Por qué usar un blockchain?
• ¿Qué es un blockchain?
• Cómo funciona un blockchain
Cubriremos Los Siguientes Temas Teóricos
La clase será Evaluada En ClassRoom de Google.
Siéntete libre de entrar cuando quiera.
La información la dejare en Classroom y blogger.
Estará este archivo en pdf, siéntase libre de usarlo.
Para mas información puede escribirme en telegram.
https://t.me/joinchat/HbGr51ENdv8_v-BVLaROYA
4. Porque Usar Una blockchain o cadena de bloque
Las cadenas de bloques se utilizan cuando varias partes,
quizás ubicadas en todo el mundo, necesitan compartir
datos y transferir valor sin confiarse mutuamente.
El mundo financiero describe esta confianza como el riesgo de contraparte: el riesgo
de que la otra parte no retenga su parte del trato. Blockchain elimina completamente el
riesgo de contraparte a través de un revolucionario sistema de matemáticas,
criptografía y redes de igual a igual.
Antes de entrar en esos detalles, primero veamos un poco
de historia y cómo surgió la necesidad de blockchains.
La clase será Evaluada En ClassRoom de Google.
Siéntete libre de entrar cuando quiera.
La información la dejare en Classroom y blogger.
Estará este archivo en pdf, siéntase libre de usarlo.
Para mas información puede escribirme en telegram.
https://t.me/joinchat/HbGr51ENdv8_v-BVLaROYA
5. Las primeras bases de datos
En la década de 1960 surgieron las primeras bases de datos
computarizadas. Con el hardware ocupando varias salas e Internet a décadas
de distancia, los datos naturalmente existían en ubicaciones centrales y
físicas. Este es un enfoque centralizado , lo que significa que la ubicación y el
acceso a los datos están controlados por una autoridad central.
6. Los sistemas centralizados pueden ser manipulados, desde adentro o desde
afuera, por lo que debemos confiar en que los propietarios de estos sistemas
tengan la voluntad y los recursos suficientes para mantener sus datos seguros
y con integridad. Las bases de datos centralizadas siguen siendo las más
comunes en la actualidad, ya que alimentan la mayoría de nuestras
aplicaciones en línea y fuera de línea.
Un blog auto alojado es un ejemplo común de una
base de datos centralizada. El propietario podría
potencialmente editar publicaciones en
retrospectiva o censurar a los usuarios sin
recurso. Alternativamente, un pirata informático
podría infiltrarse en el servidor y cometer actos
maliciosos. Si no hay una copia de seguridad de la
base de datos, revertir el daño podría ser imposible.
7. Representada gráficamente, cada flecha que cruza un límite del
cuadro del servidor principal es una conexión que requiere
confianza
8. La necesidad de compartir datos.
Compartir grandes cantidades de datos puede ser costoso y engorroso. Podemos
aliviar esta carga distribuyendo datos entre varias partes. La lectura y la escritura
están controladas por una o más partes dentro del grupo y, por lo tanto, están
sujetas a corrupciones similares como las bases de datos centralizadas.
Las modernas bases de datos compartidas utilizan técnicas para minimizar esta
corrupción. Algunos de estos se superponen con blockchain. Dependiendo del
sistema de base de datos compartido, puede presentar:
Inmutabilidad : en lugar de sobrescribir datos antiguos, se crea una nueva copia con los
datos antiguos conservados como un registro histórico. Se puede acceder a este registro
para probar que una parte de los datos existió en un momento determinado.
Consenso : Para que una base de datos sea compartida, todas las partes deben
ponerse de acuerdo sobre su contenido. Existen varios métodos para llegar a un
consenso, uno de los cuales (prueba de trabajo) se analizará a continuación.
Las blockchains las usan y las llevan un paso más allá, resolviendo el problema de
la confianza.
9. ¿Qué es un blockchain?
Fundamentalmente, una cadena de bloques es una base de datos compartida , que consiste en un libro
mayor de transacciones. Al igual que un banco, los libros de contabilidad de bloques simples mantienen un
registro de la propiedad de la moneda (en este caso, la criptomoneda). A diferencia de un banco
centralizado, todos tienen una copia del libro de contabilidad y pueden verificar las cuentas de los
demás. Cada dispositivo conectado con una copia del libro mayor se denomina "nodo".
Blockchains elimina el problema de la confianza que afecta a otras bases de datos de las siguientes
maneras:
10. Descentralización total : la lectura /
escritura en la base de datos es
completamente descentralizada y
segura. Ninguna persona o grupo
controla un blockchain.
Tolerancia extrema a fallos :
la tolerancia a fallos es la capacidad de
un sistema para manejar datos
corruptos. Si bien la tolerancia a fallos no
es exclusiva de las cadenas de bloques,
lleva el concepto a su extremo lógico al
hacer que cada cuenta que comparte
la base de datos valide sus cambios.
Verificación independiente : las
transacciones pueden ser verificadas
por cualquier persona, sin un
tercero. Esto se conoce a veces como
"desintermediación".
11. Cómo funciona un blockchain
Ahora que tenemos una idea de por qué las cadenas de bloques son útiles, profundicemos más en
cómo funcionan.
Las interacciones entre cuentas en una red de blockchain se denominan "transacciones". Pueden ser
transacciones monetarias, como el envío de ether, la criptomoneda utilizada en Ethereum . También
podrían ser transmisiones de datos, como un comentario o un nombre de usuario. Un paquete de
transacciones se llama un "bloque".
Cada cuenta en la cadena de bloques tiene una firma única, que permite a todos saber qué cuenta
inició la transacción. En una cadena de bloques pública, cualquiera puede leer o escribir datos. La
lectura de datos es gratuita, pero escribir en la cadena de bloques pública no lo es. Este costo,
conocido como "gas" y con un precio en éter, ayuda a desalentar el spam y paga para proteger la
red.
12. Minería
Cualquier nodo en la red puede participar en la protección de la red a través de un proceso
llamado "minería". Los nodos que han optado por ser mineros compiten para resolver problemas
matemáticos que aseguran los contenidos de un bloque.
Dado que la minería requiere potencia de computación (sin mencionar el costo de la electricidad),
los mineros pueden ser compensados por su servicio. El ganador de la competencia recibe alguna
criptomoneda como recompensa. Esto incentiva a los nodos a trabajar para asegurar la red,
evitando que demasiada energía esté en manos de un solo minero.
13. Hash
Una vez que se extrae un nuevo bloque, se notifica a los otros mineros y comienzan a verificar y agregar este
nuevo bloque a sus copias de la cadena. Esto se hace a través de hashing criptográfico (o simplemente,
"hashing"). El hash es un proceso unidireccional que toma datos y devuelve una cadena de longitud fija que
representa esos datos.
Si bien los datos originales no se pueden reproducir desde su hash, los mismos datos siempre producirán el
mismo hash. Por lo tanto, los datos no verificados pueden ser procesados con la misma función y comparados
con los originales. Si son idénticos, los datos son validados.
Una vez que más de la mitad de los mineros han validado el nuevo bloque, la red ha "alcanzado el consenso"
y el bloque se convierte en parte de la historia permanente de blockchain. Ahora estos datos pueden ser
descargados por todos los nodos, con su validez asegurada.
14. Aquí está todo el proceso visualmente:
1. Bob intenta enviar a Alice 1 ETH
15. Aquí está todo el proceso visualmente:
2. La transacción de Bob y Alice se
combina con otras transacciones que
han ocurrido desde el último bloque
16. Aquí está todo el proceso visualmente:
Los mineros compiten para
validar el bloque con el
nuevo conjunto de
transacciones.
17. Aquí está todo el proceso visualmente:
4. El minero victorioso crea un nuevo
bloque y recibe una recompensa.
18. Aquí está todo el proceso visualmente:
5. Con la transacción validada, Alice
recibe 1 ETH.
19. Próxima Clase
Cubriremos los siguientes Temas Teoricos
La cadena de bloques de
Ethereum
¿Qué es Ethereum?
¿Qué es un contrato
inteligente?
Redes etéreas
Aplicaciones distribuidas
(dapps)