Steemit Crypto Academy, Season 3: Week 4 || ROOT HASH Y ÁRBOL MERKLE

Hola a todos los estudiantes y miembros de la Steemit CrytoAcademy especialmente a nuestro profesor @pelon53 esta semana estudiamos lo referente al Root Hash y el Árbol Merkle a continuación mi tarea.

portadacritoacademia.jpg
Fuente: pixabay.com Modificada por @emimoron

Lo que nos corresponde en primer lugar es definir el término Hash Rate

HASHRATE1.jpg
Fuente: pixabay.com Modificada por @emimoron

Este es un término muy importante en el mundo de las criptomonedas, no sólo se define como un valor numérico o computacional que se deriva del trabajo de minería y que tiene que ver con la cantidad de transacciones u operaciones que pueden hacerse en la blockchain con respecto a una moneda, sino que además tiene que ver directamente con la seguridad en el mercado de las criptomonedas, la descentralización y sostenibilidad de las plataformas de intercambio. De acuerdo con ello el término Has Rate o tasa rash hace referencia al valor numérico en el interior de cada criptomoneda que usa la prueba de trabajo (PoW).

El Hash Rate es un indicativo de la cantidad de operaciones en el sistema es capaz de hacer con la finalidad de descifrar las rutas criptográficas derivadas de la función que use una criptomoneda. La definición de Hash Rate tiene su origen a la par de la primera criptomoneda el Bitcoin y a partir de ese momento su importancia se ve ligada estrechamente con la potencia de la red y la evolución del valor de las criptomonedas. De acuerdo con lo expuesto, la importancia del Hash Rate se puede analizar desde diferentes puntos de vista:

1.- El Hash Rate es una muestra de la seguridad de la red: En este contexto, se expone que mientras más alto es el hash rate más segura es la red. Es así como se debe prestar atención al hash rate global de una criptomoneda para saber si es segura.

2.- La dificultad de la minería: El hash rate está relacionado con la dificultad de la minería de los datos debido a que, este se ajusta en la medida en la que se conectan nuevos mineros a la red, cuando se inicia un proceso nuevo de minería al conectarse un minero el hash rate global aumenta y se acorta el tiempo que la red tarda en generar un nuevo bloque, en este sentido, el algoritmo que controla de la minería se ajusta para incrementar o disminuir la dificultad de la minería.

3.- El hash red sirve al monitoreo de la red: Este cómputo es usado para la validación de los bloques en la red y como un valor vital en el monitoreo de la red al poder dar cuenta del estado de la red (si es confiable o no) y la cantidad de mineros que la conforman.

4.- El consumo de energía y el hash rate: Este es un punto muy importante en la blockchain recordando que una las críticas más duras que se le hace al blockchain está relacionado con el uso excesivo de la energía no sólo para la minería sino para todas las operaciones que se realizan en los millones de cadenas de bloques, de allí que se necesiten cada vez, estrategias para optimizar el tiempo y consumo de energía invertido, con el hash rate se logra un pequeño ajuste en el consumo de energía, en este caso el proceso de minería del bitcoin a través del hash rate ha permitido sea menor que en otros campos.

BANER.jpg

Vamos a generar un Árbol Merkle a partir de la transacción dada por el profesor @pelon53

ARBOLMERKLE.jpg
Fuente: pixabay.com Modificadapor @emimoron

Lo inicial es abri la página de la aplicación para generar nuestro árbol. Para ello usamos SHA-256 passwordsgenerator.net

Diapositiva1.JPG

Paso 1. Vamos a introducir el primer valor de la transacción Steem1

Diapositiva2.JPG

Hash obtenido para Steem1: 7760E25BCB80ADF1DD92DB339BF5790A59E90CD54EFA072F1250DCE13FA97045

Así vamos a ir introduciendo cada uno de los valores para generar los hash de las hojas de nuestro Árbol Merkle.

Diapositiva3.JPG

Hash generado para Steem2: FE00506E91CF52BC4B35321E6B978D1A7349397B19C6C1C01E095971FDEC9741

Diapositiva4.JPG

Hash generado para Steem3: A9418332E0C351D6A50C835AA9E57D514F0573C231D491E97726DB8A5844F2DC

Diapositiva5.JPG

Hash generado para Steem4: 22F4EC8E20C9CCAF2C313B23F18981B1C73BF39081BCD739E5D998A95A46AB30

Diapositiva6.JPG

Hash generado para Steem5: 2A3C87336683AB0DDFA56AFEFC740E6C13A02FEA0A43D6797343B26D7AF0C57B

Diapositiva7.JPG

Hash generado para Steem6: A7BAA6DE0C0658E9E3681966E542BACD116529F5AE9A2D9126CDB1C1D5BC1278

Diapositiva8.JPG

Hash generado para Steem7: D441688DDA7F9285E8811728DD9A3955CF74F0A3C7600C1589D0F1D3B48FFAC7

Diapositiva9.JPG

Hash generado para Steem8: F2E38ED4FF662087B6E9BEAFA4158EBC488B995732057BDA019A6A77FFB5F9F5

Paso 2: Una vez que tenemos ya los hash de las hojas de nuestro Árbol Merkle vamos a proceder a generar las ramas de nuestro árbol en este caso vamos ir uniendo de dos en dos las transacciones de las hojas.

Diapositiva10.JPG

Hash generado para Steem1Steem2: A5568957014F6AC3866923C7DE20D375E706B8D8C9F453636E90B9965ABEC62B

Diapositiva11.JPG

Hash gerado para Steem3Steem4: 18D25196DB699F6AB9222B7302EB8A6F6EBFADEC703C07DD5DB8D9455913A499

Diapositiva12.JPG

Hash generado para Steem5Steem6: D118E137F92A0DBEA138B6BF70C7714153A7BC393CD0272A44BD94864645224B

Diapositiva13.JPG

Hash generado para Steem7Steem8: A81D57BA11AEDFA9EFBBA42F6523D75D1EFA50B22C5E3557A21CEFFE87DDFC4A

Paso 3: Ya obtuvimos nuestras ramas de primera segunda línea, es hora de seguir avanzando en la combinación de las ramas hasta lograr conseguir la raíz del hash.

Diapositiva14.JPG

Hash generado para Steem1Steem2Steem3Steem4: 8A248C05E69C4F1AA403AD18A7F445FF500C42483DA425CE0C980CDB2FD1AD9B

Diapositiva15.JPG

Hash generado para Steem5Steem6Steem7Steem8: 8B0935AEAB3F51BFA2B0750703EE2387E2B20EB19B0D24227E180C03A851AF17

Paso 4: En este paso vamos a generar nuestro hash raíz uniendo todos los valores en una sola transacción en la aplicación generadora:

Diapositiva16.JPG

Hash raíz generado para Steem1Steem2Steem3Steem4Steem5Steem6Steem7Steem8: 9C2FC83F36D59B8ED5033D2BCC417728583C8DAA0AA9868FD374BE3619D6E4F9

Ahora sí tenemos nuestro Árbol Merkle con todas sus hojas, ramas y hash raíz vamos a verlo:

Diapositiva17.JPG
Fuente: pixabay.com Modificado con los datos y diagramación de @emimoron

Si deseamos verificar si Steem6 está incluido en el árbol para ello tomaremos su referente anterior Steem5 considerando que todos los hash en el árbol se constituyen a partir de la información contenida en el que les precede y son parte de la unión de los generados a posterior:

Paso 1: buscamos en nuestro árbol a Steem5.

Paso 2: seguimos la ruta Steem5Steem6.

Paso 3: subimos en las ramas del árbol Steem5Steem6Steem7Steem8.

Paso 4: En el has raíz verificamos su ubicación. En este caso cada hash se combina para ir construyendo las ramas del árbol merkle eso significa que la huella criptográfica del hash Steem6 estará contenida no sólo en Steem5Steem6 sino también en la siguiente cadena de bloques Steem5Steem6Steem7Steem8 y en el hash raíz Steem1Steem2Steem3Steem4Steem5Steem6Steem7Steem8

Diapositiva18.JPG
Fuente: pixabay.com Modificada con datos y diagramación de @emimoron

construyendoarbol.jpg
Fuente: pixabay.com Modificado por @emimoron

Paso 1: Nos dirigimos a la aplicación para la generación de los hash e introducimos nuestros valores uno por uno para ir generando los hash hojas.

Diapositiva1.JPG

Hash generado para SCA1: 13E0A04BB0E669E1C638DBE3A704743F99F162B25245E4D8C064D35BA38FA8C8

Diapositiva2.JPG

Hash generado para SCA2: 27849353A9C8CC4E948EB6E5748EDD79CB83513D8C0ADAF3E8C83D3792C9149B

Diapositiva3.JPG

Hash generado para SCA3: 67E872F952C105C35E0BCE130536D061F4999DCA5593754BA9BA7BE59B8E7C0D

Diapositiva4.JPG

Hash generado parar SCA4: 491928A32BAE70A12FA251412BBFD7C9999F317BA6BF577C283C724225270A43

Diapositiva5.JPG

Hash generado para SCA5: 99C078C39CDE7F47799E0E8691460A9F3E83E78D498EA989308FCFCC58907B19

Diapositiva6.JPG

Hash generado para SCA6: 7A648D887B124DB14E96E23BA92783E7F26D00957C19B9B8229632C2C1873729

Diapositiva7.JPG

Hash generado para SCA7: 7E0BBD6BA4BA9896F9911AF46B06DD2C47535F9C80B29D693FDF6B9319D0D68E

Diapositiva8.JPG

Hash generado para SCA8: 562ABCEEB497E1FE7AE275A883FD5EF9D92A05F5C19D82ABAA0DC1571B7DF3AD

Paso 2: Una vez que hemos obtenido nuestros hash para las hojas avanzamos con las primeras líneas de ramas.

Diapositiva9.JPG

Hash generado para SCA1SCA2: 91B09BBA815748166FB36413342C7E4E7E809F4BAC538C0418841A4476B527EF

Diapositiva10.JPG

Hash generado para SCA3SCA4: B49B48697A3ACBC5E3D2E36B6EE49C44020D88E664C5C1AA7A7CF34058177379

Diapositiva11.JPG

Hash generado para SCA5SCA6: F026924CD1285FF92C2A2DE9B9313027EB67273A82375C939348C887F6B52F77

Diapositiva12.JPG

Hash generado para SCA7SCA8: AA55EC5A6B11393B289C4B2B6916172ACC2941C5C978FB1D7BF02696BAB323A4

Paso 3: Procedemos una vez creada nuestra segunda línea de ramas en orden ascendente al siguiente nivel donde se combinan 4 hash u hojas para obtener una nueva capa de nuestro árbol. SCA1SCA2SCA3SCA4

Diapositiva13.JPG

Hash generado para SCA1SCA2SCA3SCA4: F50DC120CBF6C46923037F6D7F41D4153ECC9AB7430DDA662C142DB1FFE483F7

Diapositiva14.JPG

Hash generado para SCA5SCA6SCA7SCA8: A3D8CA8494CC426ABD5E1FC5FA0FEAE4F2B2ECE4C4CECDCA05E19EB66542533F

Paso 4: Ya en este paso buscamos el hash raíz con la unión de todas las hojas y ramas. SCA1SCA2SCA3SCA4SCA5SCA6SCA7SCA8

Diapositiva15.JPG

Aquí tenemos el Árbol Merkle generado para este ejercicio:

Diapositiva16.JPG
Fuente: pixabay.com Modificada con los datos y diagramación de @emimoron

Tal y como se observa logramos la construcción de nuestro árbol a partir de los valores criptográficos que fuimos introduciendo en el generador de hash estos nos permite crear una ruta segura para ir siguiendo el camino de la construcción de los bloques en el mercado de las criptomonedas y en este caso para el trabajo de minería al ir descubriendo paso a paso cada uno de los valores numéricos de la construcción de los árboles.

En este contexto, qué pasa si uno de nuestros arboles cuenta con un número de datos (hojas) que lo convierte en impar.
En este caso se debe duplicar el último valor o última hoja del árbol y se combina consigo mismo esto nos dará la cantidad par que necesitamos para la construcción de nuestro árbol Merkle con valores numéricos exactos.

Ejemplo:

Diapositiva17.JPG
Fuente: pixabay.com Modificada con los datos y diagramación de @emimoron

BANER.jpg

Muchas gracias a todos los que hacen posible nuestra participación en esta comunidad de crecimiento nuevamente al profesor @pelon53 a @steemitblog @steemcurator01 @steemcurator02

Sort:  
Loading...

Coin Marketplace

STEEM 0.19
TRX 0.15
JST 0.029
BTC 63313.88
ETH 2629.50
USDT 1.00
SBD 2.76