Steemit Cryto Academy Season 3 Week 4: Tarea para el profesor @pelon53 - ROOT HASH Y ÁRBOL MERKLE. By @daniromero.

in SteemitCryptoAcademy2 months ago


Reciban un saludo cordial mis queridos amigos de Steemit, en especial quienes hacen vida en la comunidad Steemit Crypto Academy


imagen.png
Imagen diseñada en CANVA para mi tarea.

Hoy tenemos una nueva oportunidad de ampliar nuestro conocimiento en el maravilloso mundo de las criptomonedas, esta vez de la mano de nuestro profesor @pelon53 quien nos presenta una gran conferencia basada en el ROOT HASH Y ÁRBOL MERKLE, una clase interesante en la que adquirí nuevos conocimientos y en la que pude realizar los ejercicios para llegar al Root Hash o Hash raíz, me gusto mucho esta clase, fue fácil de entender por lo bien explicada que esta, sin mas que decir aquí les presento mi tarea.

imagen.png

1.- Explique en detalle el hash rate.


La minería de criptomonedas es un negocio muy lucrativo, pero que demanda la obtención de potentes ordenadores que tengan la capacidad de realizar la mayor cantidad de operaciones posibles lo que hace la diferencia en cuanto a quien o quienes obtienen la recompensa por el minado de los nuevos bloques, este indicador es conocido como Hash Rate, pero que realmente es el Hash Rate?

“indica la cantidad de operaciones computacionales que un minero o la red de mineros en todo su conjunto es capaz de realizar”

Enlace Aquí

Partiendo de esto es fácil entender lo que es, pero su significado no se limita solo a esto, a continuación detallare un poco mas lo que este indicador representa dentro de una blockchain.

Antes de continuar, es preciso mencionar que no todas las criptomonedas tienen el mismo nivel de dificultad para su minado, para precisar un poco mas la información nos referiremos al padre de las criptomonedas, el Bitcóin, anteriormente para el minado de bloques de bitcóin no eran necesarias potentes maquinas, al principio una computadora normal era capaz de resolver los Hash SHA-256 con rapidez, este tipo de Hash SHA-256 es la función que utiliza el protocolo PoW o prueba de trabajo, del que resultan los algoritmos y acertijos matemáticos que los mineros deben resolver para el minado de los nuevos bloques de Bitcóin, actualmente es necesario potentes equipos electrónicos que poseen hardwares especializados con la capacidad realizar el complejo proceso de minado.

Entonces tenemos que el Hash rate en términos individuales de minería, representan la capacidad o potencia que posee un minero para resolver los algoritmos y acertijos que resultan de la prueba de trabajo, para así poder obtener la recompensa por el minado del nuevo bloque, en términos globales, nos referiremos al Has Rate de una blockchain, a la capacidad y potencia que tienen en conjunto, todos los mineros y ordenadores de la red blockchain, para poder resolver dichos problemas matemáticos, resultantes de la prueba de trabajo, lo que se suma para reflejar la efectividad global y seguridad general de la blockchain.

La red Bitcóin es la que en la actualidad posee el porcentaje mas alto de Hash Rate de 104.626m TH/s, esto esta ligado a que esta efectividad hace posible que el minado de cada nuevo bloque sea posible cada 10 minutos en promedio, la dificultad de minado aumenta cuando un nuevo minero se conecta y disminuye cuando uno se desconecta, esta se ajusta automáticamente cada 2016 bloques minados, o lo que es igual, cada 2 semanas aproximadamente, esto significa que es la Blockchain mas segura y efectiva en cuanto a su Hash Rate global, esto brinda a los inversores seguridad y confianza en cuanto a sus inversiones, la red Ethereun también tiene un alto porcentaje de Hash rate, con todo esto podemos decir que mientras mas alta efectividad y Has Rate tenga una blockchain, mas segura sera, es de suma importancia por que forma parte de las funciones que se utilizan para validar nuevos bloques.

Existe un ataque conocido como Ataque del 51%, esto sucede cuando la mayoría de los nodos se ponen de acuerdo para validar una operación fraudulenta de ataque a la red, es aquí cuando es de vital importancia el hash rate, debido al alto porcentaje de Hash rate de Bitcóin, resulta prácticamente imposible que la mayoría de los nodos se pongan de acuerdo para ejecutar el ataque, lo que la hace fuerte en este sentido, entonces podemos decir, que mientras mas alto sea el Has Rate de una moneda, mayor resistencia al ataque del 51% tendrá.

La tasa de Hash Rate tiene sus medidores, que indican la capacidad de Hash procesados por segundo (H/S), estas unidades de medida son, **Kilo Hash: 1.000 (H/S) ; Mega Hash: 1.000.000 (H/S); Giga Hash: 1.000.000.000 (H/S), Tera Hash: 1.000.000.000.000 (H/S); Peta Hash: 1.000.000.000.000.000 (H/S); Exa Hash: 1.000.000.000.000.000.000 (H/S).

Para culminar, tenemos claro todo lo que abarca y representa el Hash rate, debido a que mientras mas alto sea mejor efectividad tendrá el minero y la red en general, existe una competencia fuerte para obtener las tan deseadas recompensas de minería, para ser competitivos, son necesarios equipos mas avanzados, potentes que puedan aumentar el Has Rate, estos equipos mientras mas avanzados sean mas daño causan al medio ambiente, su consumo de energía es sumamente elevado, producen un alto ruido que refleja contaminación sonora y al mismo tiempo desprenden una gran cantidad de calor, quise mencionar esto por que es uno de los puntos negativos que causa el lograr tener un alto Hash rate, es por eso que se precisa que la tecnología realice avances en este sentido para minimizar el impacto que esto trae al medio ambiente y para acabar con la controversia mediática que esto representa.

imagen.png

2.- Realice el siguiente Árbol Merkle:


Transacción (hojas del árbol): Steem1; Steem2; Steem3; Steem4; Steem5; Steem6; Steem7; Steem8.


Para realizar el siguiente Árbol de Merkle, tomaremos como base las hojas proporcionadas por nuestro profesor, para generar los códigos Hash para la conformación de nuestro árbol.


Hojas del Árbol


Steem1

7760E25BCB80ADF1DD92DB339BF5790A59E90CD54EFA072F1250DCE13FA97045


imagen.png
Enlace Aquí


Steem2

FE00506E91CF52BC4B35321E6B978D1A7349397B19C6C1C01E095971FDEC9741


imagen.png
Enlace Aquí


Steem3

A9418332E0C351D6A50C835AA9E57D514F0573C231D491E97726DB8A5844F2DC


imagen.png
Enlace Aquí


Steem4

22F4EC8E20C9CCAF2C313B23F18981B1C73BF39081BCD739E5D998A95A46AB30


imagen.png
Enlace Aquí


Steem5

2A3C87336683AB0DDFA56AFEFC740E6C13A02FEA0A43D6797343B26D7AF0C57B


imagen.png
Enlace Aquí


Steem6

A7BAA6DE0C0658E9E3681966E542BACD116529F5AE9A2D9126CDB1C1D5BC1278


imagen.png
Enlace Aquí


Steem7

D441688DDA7F9285E8811728DD9A3955CF74F0A3C7600C1589D0F1D3B48FFAC7


imagen.png
Enlace Aquí


Steem8

F2E38ED4FF662087B6E9BEAFA4158EBC488B995732057BDA019A6A77FFB5F9F5


imagen.png
Enlace Aquí

imagen.png

Ramas que conforman el primer nivel


Con la obtención de las hojas, procedemos a realizar las combinaciones que nos darán como resultado las primeras ramas o ramas del primer nivel.


Steem1Steem2

A5568957014F6AC3866923C7DE20D375E706B8D8C9F453636E90B9965ABEC62B


imagen.png
Enlace Aquí


Steem3Steem4

18D25196DB699F6AB9222B7302EB8A6F6EBFADEC703C07DD5DB8D9455913A499


imagen.png
Enlace Aquí


Steem5Steem6

D118E137F92A0DBEA138B6BF70C7714153A7BC393CD0272A44BD94864645224B


imagen.png
Enlace Aquí


Steem7Steem8

A81D57BA11AEDFA9EFBBA42F6523D75D1EFA50B22C5E3557A21CEFFE87DDFC4A


imagen.png
Enlace Aquí


imagen.png

Ramas que conforman el segundo nivel


El siguiente paso es realizar la nueva combinación que nos dará como resultado la formación de las ramas del segundo nivel.


Steem1Steem2Steem3Steem4

8A248C05E69C4F1AA403AD18A7F445FF500C42483DA425CE0C980CDB2FD1AD9B


imagen.png
Enlace Aquí


Steem5SteemSteem7Steem8

8B0935AEAB3F51BFA2B0750703EE2387E2B20EB19B0D24227E180C03A851AF17


imagen.png
Enlace Aquí

imagen.png

Raiz del Arbol de Merkle (Root Hash)


En este paso final procederemos a realizar la combinación que nos dará la raíz del Árbol de Merkle.


Steem1Steem2Steem3Steem4Steem5Steem6Steem7Steem8

9C2FC83F36D59B8ED5033D2BCC417728583C8DAA0AA9868FD374BE3619D6E4F9


imagen.png
Enlace Aquí


Árbol de Merkle completo hasta la raíz (Root Hash)


Para finalizar realizare el Árbol de Merkle en power point, aquí veremos la conformación del Árbol.


  • Sus hojas en el color verde (Steem1; Steem2 , Steem3; Steem4; Steem5; Steem; Steem7; Steem8).
  • Ramas inferiores marrón claro ( Steem1Steem2; Steem3Steem4; Steem5Steem6; Steem7Steem8).
  • Ramas superiores en marrón oscuro (Steem1Steem2Steem3Steem4; Steem5Steem6Steem7Steem8).
  • Raíz (Steem1Steem2Steem3Steem4Steem5Steem6Steem7Steem8) en color azul.


imagen.png
Imagen diseñada por mi en Power Point para mi tarea.

imagen.png

2 B.-Diga los pasos a seguir para verificar si Steem6 está incluido en el Árbol Markle.


Para verificar si un nodo esta incluido en el Árbol de Merkle, en este caso el nodo Steem6 debemos seguir los siguientes pasos.

  • Paso 1: Lo primero que debemos hacer es verificar Steem5 quien es el nodo compañero del que queremos verificar.


imagen.png
Imagen diseñada por mi en Power Point para mi tarea.

  • Paso 2: Luego debemos verificar la rama superior Steem7Steem8 como vemos a continuación.


imagen.png
Imagen diseñada por mi en Power Point para mi tarea.

  • Paso3 Aquí pasamos al otro lado del Árbol para verificar Steem1Steem2Steem3Steem4.


imagen.png
Imagen diseñada por mi en Power Point para mi tarea.

  • Paso 4: Por ultimo llegamos a la raíz o Root Hash para comprobar que efectivamente el nodo Steem6 esta incluido en el Árbol.


imagen.png
Imagen diseñada por mi en power point para mi tarea.

imagen.png

3.- Formación del Árbol de Merkle a partir de sus hojas


Transacción (hojas del árbol): SCA1; SCA2; SCA3; SCA4; SCA5; SCA6; SCA7; SCA8.

Hojas del Árbol


Aquí comenzamos por generar las hojas a partir de los datos obtenidos.


SCA1

13E0A04BB0E669E1C638DBE3A704743F99F162B25245E4D8C064D35BA38FA8C8


imagen.png
Enlace Aquí


SCA2

27849353A9C8CC4E948EB6E5748EDD79CB83513D8C0ADAF3E8C83D3792C9149B


imagen.png
Enlace Aquí


SCA3

67E872F952C105C35E0BCE130536D061F4999DCA5593754BA9BA7BE59B8E7C0D


imagen.png
Enlace Aquí


SCA4

491928A32BAE70A12FA251412BBFD7C9999F317BA6BF577C283C724225270A43


imagen.png
Enlace Aquí


SCA5

99C078C39CDE7F47799E0E8691460A9F3E83E78D498EA989308FCFCC58907B19


imagen.png
Enlace Aquí


SCA6

7A648D887B124DB14E96E23BA92783E7F26D00957C19B9B8229632C2C1873729


imagen.png
Enlace Aquí


SCA7

7E0BBD6BA4BA9896F9911AF46B06DD2C47535F9C80B29D693FDF6B9319D0D68E


imagen.png
Enlace Aquí


SCA8

562ABCEEB497E1FE7AE275A883FD5EF9D92A05F5C19D82ABAA0DC1571B7DF3AD


imagen.png
Enlace Aquí


imagen.png
Imagen diseñada por mi en power point para mi tarea.

imagen.png

Formación de las ramas primer nivel


En este punto haremos las combinaciones que formaran las ramas del primer nivel o ramas inferiores.


SCA1SCA2

91B09BBA815748166FB36413342C7E4E7E809F4BAC538C0418841A4476B527EF


imagen.png
Enlace Aquí


SCA3SCA4

B49B48697A3ACBC5E3D2E36B6EE49C44020D88E664C5C1AA7A7CF34058177379


imagen.png
Enlace Aquí


SCA5SCA6

F026924CD1285FF92C2A2DE9B9313027EB67273A82375C939348C887F6B52F77


imagen.png
Enlace Aquí


SCA7SCA8

AA55EC5A6B11393B289C4B2B6916172ACC2941C5C978FB1D7BF02696BAB323A4


imagen.png
Enlace Aquí


imagen.png
Imagen diseñada por mi en Power Point para mi tarea.

imagen.png

Formación de las ramas del segundo nivel


Aquí formaremos el siguiente nivel de ramas superiores.


SCA1SCA2SCA3SCA4

F50DC120CBF6C46923037F6D7F41D4153ECC9AB7430DDA662C142DB1FFE483F7


imagen.png
Enlace Aquí


SCA5SCA6SCA7SCA8

A3D8CA8494CC426ABD5E1FC5FA0FEAE4F2B2ECE4C4CECDCA05E19EB66542533F


imagen.png
Enlace Aquí


imagen.png
Imagen diseñada por mi en Power Point para mi tarea.

imagen.png

Raíz del Árbol (Root Hash)


Para completar nuestro Árbol en este paso obtendremos la raíz.

SCA1SCA2SCA3SCA4SCA5SCA6SCA7SCA8

CB40CA6DB72DD507CF9118963F94B7740822258E74AFB0FD45D89DB35D24B386


imagen.png
Enlace Aquí


Árbol de Merkle completo


A continuación les presento nuestro Árbol de merkle completo, desde sus hojas y ramas hasta llegar a la raíz.


imagen.png
Imagen diseñada por mi en Power Point para mi tarea.

imagen.png

3 B.-Si el número de las hojas del árbol es impar, ¿Qué debes hacer? Explique.

Para que el Árbol de Merkle se conforme correctamente los nodos deben ser pares para conectarse entre si, de presentarse el caso de que las hojas para conformar el Árbol sean impares, es decir, SCA1; SCA2; SCA3; SCA4; SCA5; SCA6; SCA7, la información sera distorsionada y el resultado sera invalido, se vería así.


imagen.png
Imagen diseñada por mi en Power Point para mi tarea.

En este caso lo que debemos hacer es duplicar el ultimo nodo que en este caso es SCA7 para conformar el ultimo par de las hojas, su combinación nos dará como resultado la rama SCA7SCA7, esta se combina con el Hash obtenido de SCA5SCA6 lo que nos da el Hash SCA5SCA6SCA7SCA7, el cual combinaremos con la otra rama SCA1SCA2SCA3SCA4 lo que nos dará el Root Hash o Hash Raíz de nuestro Árbol de Merkle, procedemos a verificar.

SCA7SCA7

71AF5095F10844EDA37CFCF8EE7712ADD5940F4ADAE1946CE66793270438C39B


imagen.png
Enlace Aquí


SCA5SCASCA7SCA7

2DAE9A09ABB66E133AEBD3F875490C194CD75E035B3AC6D1479379E89CFB2E67


imagen.png
Enlace Aquí


SCA1SCA2SCA3SCA4SCA5SCA6SCA7SCA7

79A243A66E564ABAFEADAAA763B0D5BA7CFFD5462ADDC77D88CA683210AA2784


imagen.png
Enlace Aquí

Ya habiendo duplicado el SCA7 para que fuera par y generar el resto de transacciones, el resultado es el siguiente


imagen.png
Imagen diseñada por mi para mi tarea.

imagen.png

Conclusiones

  • El Root Hash o Hash raíz representa una gran importancia a la hora de validar un bloque, la inclusión del Árbol de Merkle en el funcionamiento de Bitcóin representa un gran acierto por parte de Nakamoto, en esta clase pude realizar El proceso de conformación del Árbol de Merkle, logre entender su funcionamiento y lo que este representa, el aprender que no se puede alterar ningún nodo, y también investigue bastante acerca del Hash Rate, un valor importante que representa la capacidad de un minero y la capacidad de una red, lo cual se traduce en eficiencia y seguridad.

  • En lo personal agradezco a nuestro profesor @pelon53, por la manera tan clara y sencilla en la que presento su clase, es un aporte mas a nuestro aprendizaje en este mundo criptografico, el cual debemos asimilar y entender para que en un futuro nos sea útil en cualquier momento requerido.

  • En general fue una clase maravillosa, el tema fue concreto y especifico ademas de contar con la dinámica de los ejercicios de realizar el Arbol de Merkle, asi como de sortear y responder una situacion que se puede presentar y como verificar si un nodo esta presente en el Root Hash, espero que la Steemit Crypto Academy pueda continuar brindandonos la oportunidad de seguir aprendiendo, y que se extienda por muchas temporadas mas.

Sort:  
 2 months ago (edited)

Gracias por participar en Steemit Crypto Academy Season 3:

Espero seguir leyendo tus publicaciones.

NoPreguntas.Puntaje.
1Explique en detalle el hash rate.1.2
2Realice el Árbol Merkle. Pregunta 2. Diga los pasos a seguir para verificar si Steem6 está incluido en el Árbol Markle.3.5
3Realice el Árbol Merkle. Pregunta 3. Si el número de las hojas del árbol es impar, ¿Qué debes hacer? Explique.3.5
4Presentación y originalidad1.5
  • Pregunta 1, bien contestadas. Pero no coloques lo que dice una página de internet.

  • Pregunta 2, Todos los hash coinciden y muy bien tu respuesta.

  • Pregunta 3, todos los hash coinciden y lo explicas mu bien.

  • Excelente tarea, felicitaciones.

Recomendaciones:

  • Evitar colocar conceptos y textos de internet, aunque tengan las fuentes. La idea es saber que entiende ustedes y como lo explican.

Calificación: 9.7

 2 months ago 

Gracias por la corrección profesor, no volverá a pasar.