Steemit Crypto Academy, Season 3: Week 4 || ROOT HASH Y ÁRBOL MERKLE. PARA @PELON53 DE @ANROSMARTH

in SteemitCryptoAcademy3 years ago (edited)
Hola a todos mis queridos amigos de la criptoacademia, saludos al profesor @pelon53 ,esta semana luego de darle lectura a la explicación del profesor me dedico a responder las preguntas asignadas sobre un tema tan curioso como lo es el ROOT HASH y ÁRBOL MERKLE.

1.- Explique en detalle el hash rate.


Cuando hablamos al hash rate nos referimos al poder computacional utilizado bien sea para el proceso minado o para la realización de transacciones de forma rápida en la blockchain, y funciona a través del algoritmo de consenso prueba de trabajo.

Tenemos además que el hash es el código que representa en forma segura la salida de datos o mensajes con cualquier longitud de entrada y 64 caracteres de salida alfanumérica .


Source

Las personas que tengan bajo su poder equipos informáticos con gran potencia tendrán por supuesto mayor velocidad en los procesos generadores de hash, muchas veces podemos llegar a pensar que el ejecutar una acción de forma rápida puede generar algún margen de error sin embargo cuando se habla de este sistema, genera confianza, rapidez en sus procesos y al mismo tiempo seguridad.

Es de gran importancia saber que el alcance computacional que genere la mayor rapidez en estos procesos es costoso por lo que tendrán mas oportunidades de minar o generar el bloque aquellos que realicen una gran inversión en estos equipos computarizados.

Un aspecto de gran importancia a mencionar en este tema es el ataque 51% que se trata de que si por alguna razón mas del 50% de los nodos generados son manejados por atacantes informáticos, el resultado arrojado podría ser erróneo, sin embargo existen unos aspectos a favor de evitar esto y es que el alquiler de estos equipos computacionales son sumamente elevados y pocos pueden adquirirlos a tal magnitud, otro de los aspectos a resaltar es la llamada tolerancia a las fallas bizantinas que es implementada en el algoritmo de consenso prueba de trabajo y esta genera mayores niveles de seguridad, a la hora de presentarse cualquier falla bizantina.

2.- Realice el siguiente Árbol Merkle

Transacción (hojas del árbol): Steem1; Steem2; Steem3; Steem4; Steem5; Steem6; Steem7; Steem8. Llegué hasta el Root Hash. Y coloque cada hash generado usando SHA-256, muestre captures de pantalla.


* Para realizar el árbol Merkle iniciaremos con las hojas, produciendo cada código hash que se necesita

Hash de Steem1 :

7760E25BCB80ADF1DD92DB339BF5790A59E90CD54EFA072F1250DCE13FA97045


Hash de Steem2 :

FE00506E91CF52BC4B35321E6B978D1A7349397B19C6C1C01E095971FDEC9741


Hash de Steem3 :

A9418332E0C351D6A50C835AA9E57D514F0573C231D491E97726DB8A5844F2DC


Hash de Steem4 :

22F4EC8E20C9CCAF2C313B23F18981B1C73BF39081BCD739E5D998A95A46AB30


Hash de Steem5 :

2A3C87336683AB0DDFA56AFEFC740E6C13A02FEA0A43D6797343B26D7AF0C57B


Hash de Steem6 :

A7BAA6DE0C0658E9E3681966E542BACD116529F5AE9A2D9126CDB1C1D5BC1278


Hash de Steem7 :

D441688DDA7F9285E8811728DD9A3955CF74F0A3C7600C1589D0F1D3B48FFAC7




Hash de Steem8 :

F2E38ED4FF662087B6E9BEAFA4158EBC488B995732057BDA019A6A77FFB5F9F5




Hash de Steem1Steem2 :

A5568957014F6AC3866923C7DE20D375E706B8D8C9F453636E90B9965ABEC62B




Hash de Steem3Steem4 :

18D25196DB699F6AB9222B7302EB8A6F6EBFADEC703C07DD5DB8D9455913A499




Hash de Steem5Steem6 :

D118E137F92A0DBEA138B6BF70C7714153A7BC393CD0272A44BD94864645224B


Hash de Steem7Steem8 :

A81D57BA11AEDFA9EFBBA42F6523D75D1EFA50B22C5E3557A21CEFFE87DDFC4A





Hash de Steem1Steem2Steem3Steem4 :

8A248C05E69C4F1AA403AD18A7F445FF500C42483DA425CE0C980CDB2FD1AD9B




Hash de Steem5Steem6Steem7Steem8 :

8B0935AEAB3F51BFA2B0750703EE2387E2B20EB19B0D24227E180C03A851AF17




Hash de Steem1Steem2Steem3Steem4Steem5Steem6Steem7Steem8 :

9C2FC83F36D59B8ED5033D2BCC417728583C8DAA0AA9868FD374BE3619D6E4F9



Aquí podemos apreciar el árbol de Merkle que fue estructurado con los hash generados desde las hojas, pasando por las ramas, hasta llegar a la raíz y se observa de este modo.


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


A la hora de verificar si algún hash esta incluido o no en el árbol Markle, como en este caso que se quiere verificar el Steem6 hay que tener en cuenta se debe iniciar un proceso de verificación que incluya cada uno de los hash generados desde las hojas entonces se debe comenzar por verificar el Steem1, luego el Steem2, pasaremos a verificar el Steem3 y seguidamente el Steem4, una vez que estos 4 hash estén verificados, procedemos a dirigirnos al otro extremo del árbol y en este caso comenzaremos por el hash de Steem5 y continuamos al Steem6 aquí nos detenemos para explicar algo sumamente importante y es que si el Hash de Steem6 estuviera incorrecto, partiendo de esta hoja, el resto de los hash generados hasta llegar a la raíz sera totalmente diferente, aun cuando generara un hash, sera totalmente diferente al que se presenta , y si observamos el árbol y observamos el hash generado de la raíz podemos notar que si concuerdan por lo que el bloque fue ejecutado correctamente y en efecto el Steem6 se encuentra verificado dentro de este árbol


3.- Usando el SHA-256; debes colocar cada hash completo en el Árbol Merkle.

Transacción (hojas del árbol): SCA1; SCA2; SCA3; SCA4; SCA5; SCA6; SCA7; SCA8. Explique cada paso, muestre captures de pantalla.


Hash de SCA1 :

13E0A04BB0E669E1C638DBE3A704743F99F162B25245E4D8C064D35BA38FA8C8


IMG-20210722-WA0079.jpg


Hash de SCA2 :

27849353A9C8CC4E948EB6E5748EDD79CB83513D8C0ADAF3E8C83D3792C9149B


Hash de SCA3 :

67E872F952C105C35E0BCE130536D061F4999DCA5593754BA9BA7BE59B8E7C0D


Hash de SCA4 :

491928A32BAE70A12FA251412BBFD7C9999F317BA6BF577C283C724225270A43


IMG-20210722-WA0058.jpg


Hash de SCA5 :

99C078C39CDE7F47799E0E8691460A9F3E83E78D498EA989308FCFCC58907B19


IMG-20210722-WA0063.jpg


Hash de CSA6 :

7A648D887B124DB14E96E23BA92783E7F26D00957C19B9B8229632C2C1873729


IMG-20210722-WA0081.jpg


Hash de SCA7 :

7E0BBD6BA4BA9896F9911AF46B06DD2C47535F9C80B29D693FDF6B9319D0D68E


IMG-20210722-WA0066.jpg


Hash de SCA8 :

562ABCEEB497E1FE7AE275A883FD5EF9D92A05F5C19D82ABAA0DC1571B7DF3AD


IMG-20210722-WA0068.jpg


Hash de SCA1SCA2 :

91B09BBA815748166FB36413342C7E4E7E809F4BAC538C0418841A4476B527EF


Hash de SCA3SCA4 :

B49B48697A3ACBC5E3D2E36B6EE49C44020D88E664C5C1AA7A7CF34058177379


IMG-20210722-WA0067.jpg


Hash de CSA5SCA6

F026924CD1285FF92C2A2DE9B9313027EB67273A82375C939348C887F6B52F77


IMG-20210722-WA0069.jpg


Hash de SCA7SCA8

AA55EC5A6B11393B289C4B2B6916172ACC2941C5C978FB1D7BF02696BAB323A4


IMG-20210722-WA0078.jpg


Hash de SCA1SCA2SCA3SCA4

F50DC120CBF6C46923037F6D7F41D4153ECC9AB7430DDA662C142DB1FFE483F7


Hash de SCA5SCA6SCA7SCA8

A3D8CA8494CC426ABD5E1FC5FA0FEAE4F2B2ECE4C4CECDCA05E19EB66542533F


IMG-20210722-WA0073.jpg


Hash de SCA1SCA2SCA3SCA4SCA5SCA6SCA7SCA8

CB40CA6DB72DD507CF9118963F94B7740822258E74AFB0FD45D89DB35D24B386


IMG-20210722-WA0083.jpg


Una vez generados todos los Hash se procede a crear el árbol Merkle y queda estructurado de la siguiente manera.


logo7_23_8560.png

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


Si el número de hojas es impar como en el caso que se presenta en la imagen de abajo, se deberá duplicar la última hoja del árbol en este caso sera CSA7 , y al pasar al siguiente nivel que serian las ramas, la fusión de pares se desarrolla SCA1SCA2 , SCA3SCA4 , SCA5SCA6 , SCA7SCA7 y de esta manera se continuara hasta llegar a la raíz del árbol.

Conclusión


El hash representa en nuestro sistemas mucha seguridad para los procesos informáticos, el árbol Markle es una excelente alternativa para sintetizar información o datos, imagino cuan importante y efectivo es este árbol en grandes sistemas informáticos donde se maneja cualquier cantidad de información, esta actividad de hoy me gusto bastante ya que en practica siempre se aprende mas que en pura teoría es mi pensar. Gracias al profesor @pelon53 por su catedra , espero continuar participando en sus asignaciones tan dinámicas.

cc:
@pelon53

Sort:  
Loading...

Coin Marketplace

STEEM 0.18
TRX 0.15
JST 0.029
BTC 61952.36
ETH 2417.96
USDT 1.00
SBD 2.64