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

in hive-108451 •  3 years ago 
Saludos a todos en esta gran comunidad #SteemitCryptoAcademy nos encontramos en la 4 semana de la tercera temporada de la academia, el día de hoy asistimos a la conferencia de profesor @pelon53 quién nos habla del Root Hash y el Arbor Merkle.


IMG_20210723_155444_276.jpg


1.- Explique en detalle el hash rate.

El nacimiento del hash rate viene desde la creación del Bitcoin, no es solo combinaciones numéricas sino un concepto crítico para la tecnología del Bitcoin y sus derivados. El concepto Hash rate es de gran relevancia en el mundo de los criptoactivos y su impacto va desde la seguridad de la blockchain, descentralizacion y lo sustentable que puede ser la red con el correr del tiempo.

Cuando hablamos de minería de Criptomonedas es imposible no hablar de Hash rate y es que este indica la cuantía de operaciones computacionales que un minero o la red de mineros en conjuntos pueden realizar, dicho de otra manera es la capacidad computacional que tienen los mineros para agregar bloques a la cadena y de esta manera minar criptomonedas que usen la Prueba de Trabajo (PoW).

El Hash rate nos habla de la capacidad que tiene uno o un conjunto de mineros de procesar hashes por segundo, al comienzo del Bitcoin se podía minar de una computadora normal, hoy en dia esto se volvió más complejo y dinámico ya que son altamente complejos los cálculos computacionales que se deben hacer para encontrar el Hash correcto, para ellos es necesario equipos especializados.

image.png

Fuente

Importancia del Hash Rate

El Hash Rate es un buen indicador de medida con el que podemos evaluar la solidez de una red blockchain, mientras mayor sea la cantidad de mineros que trabajen honestamente, el Hash Rate será mayo lo que imposibilitará aún más que grupos maliciosos puedan perturbar la red.

El Hash Rate le ofrece seguridad a la red ya que mientras mayor sea el Hash Rate mayor es la capacidad computacional que requieren los piratas informáticos para realizar un ataque del 51%. El ataque del 51% sucede cuando un individuo o un grupo de individuos, se apodera ya sea por la compra o alquiler de equipos de minería para controlar más del 50% del Haste Rate de una blockchain específica, esto les permitiria bloquear o reorganizar operaciones así como tambien revertir sus propios pagos lo que crearía un problema de doble gasto lo que debilitaría o destruiría la integridad de esa blockchain.

Como se calcula el Hash Rate

No hay manera alguna para conocer el Hash Rate exacto de una blockchain, pero la misma se estima basándose en datos públicos dónde se incluye la medida de dificultad que tiene la blockchain para su minado.

Se dice que este método para estimar el Hash Rate es aceptable, pero ha Sido fuertemente criticado y señalado porque se considera no es preciso. Últimamente el exchange Kraken propuso un método para la estimación del Haste Rate con una precisión de hasta el 95%.

Hash Rate y su impacto

Cuando hablamos del hash rate no todo es color de rosas y es que si últimamente las criptomonedas que se basan en la prueba de trabajo (proof of work) están siendo señaladas por la cantidad de fluido electrónico que estás necesitan para realizar el minado que a su ves confirmaría y validaria los bloques.

La moneda principal de este mundo de Criptomonedas, el Bitcoin tiene una lucha constante últimamente y es que está trabaja con prueba de trabajo y debido a su Hash Rate tan elevado se necesita una capacidad computacional bien extensa que permita resolver los algoritmos de la función, creando así un gran gasto energético dándole así un impacto negativo a lo que es el medio ambiente.

Minimal-Negro.png


2) El árbol de Merkle

El árbol de Merkle es una organización de datos creada con el fin volver más sencillo la verificación de grandes cantidades de datos que se relacionan entre si Por diversas técnicas criptográfica.

A continuación realizaremos nuestro árbol Merkle con los datos suministrados por el profesor. Hojas del árbol Steem1; Steem2; Steem3; Steem4; Steem5; Steem6; Steem7; Steem8.

Hojas del Árbol

IMG_20210723_134158.jpg

Steem1


7760E25BCB80ADF1DD92DB339BF5790A59E90CD54EFA072F1250DCE13FA97045

IMG_20210723_134233.jpg

Steem2


FE00506E91CF52BC4B35321E6B978D1A7349397B19C6C1C01E095971FDEC9741

IMG_20210723_134308.jpg

Steem3


A9418332E0C351D6A50C835AA9E57D514F0573C231D491E97726DB8A5844F2DC

IMG_20210723_134334.jpg

Steem4


22F4EC8E20C9CCAF2C313B23F18981B1C73BF39081BCD739E5D998A95A46AB30

IMG_20210723_134402.jpg

Steem5


2A3C87336683AB0DDFA56AFEFC740E6C13A02FEA0A43D6797343B26D7AF0C57B

IMG_20210723_134432.jpg

Steem6


A7BAA6DE0C0658E9E3681966E542BACD116529F5AE9A2D9126CDB1C1D5BC1278

IMG_20210723_134717.jpg

Steem7


D441688DDA7F9285E8811728DD9A3955CF74F0A3C7600C1589D0F1D3B48FFAC7

IMG_20210723_134752.jpg

Steem8


F2E38ED4FF662087B6E9BEAFA4158EBC488B995732057BDA019A6A77FFB5F9F5

Minimal-Negro.png


Ramas de Primer Nivel

Luego de concluir con todas las hojas el paso siguiente es realizar las combinaciones para las ramas de primer nivel.

IMG_20210723_134829.jpg

Steem1Steem2


A5568957014F6AC3866923C7DE20D375E706B8D8C9F453636E90B9965ABEC62B

IMG_20210723_134927.jpg

Steem3Steem4


18D25196DB699F6AB9222B7302EB8A6F6EBFADEC703C07DD5DB8D9455913A499

IMG_20210723_135102.jpg

Steem5Steem6


D118E137F92A0DBEA138B6BF70C7714153A7BC393CD0272A44BD94864645224B

IMG_20210723_135224.jpg

Steem7Steem8


A81D57BA11AEDFA9EFBBA42F6523D75D1EFA50B22C5E3557A21CEFFE87DDFC4A

Minimal-Negro.png


Ramas de Segundo Nivel

Luego que se concluye con las ramas de primero nivel procedemos hacer las combinaciones para las ramas de segundo nivel, lo que nos aproxima cada ves más a la raíz del árbol.

IMG_20210723_142233.jpg

Steem1Steem2Steem3Steem4


8A248C05E69C4F1AA403AD18A7F445FF500C42483DA425CE0C980CDB2FD1AD9B

IMG_20210723_142302.jpg

Steem5Steem6Steem7Steem8


8B0935AEAB3F51BFA2B0750703EE2387E2B20EB19B0D24227E180C03A851AF17

Minimal-Negro.png


Raíz del Arbol


Llegamos a la raíz del árbol este debe contener todos los códigos anteriores sino el Hash que tengamos como resultado será erróneo.

IMG_20210723_152906.jpg

Steem1Steem2Steem3Steem4Steem5Steem6Steem7Steem8


9C2FC83F36D59B8ED5033D2BCC417728583C8DAA0AA9868FD374BE3619D6E4F9

De esta manera podemos observar el árbol completo cada código con su Hash, quedando de esta manera:

IMG_20210723_180949.jpg

Minimal-Negro.png

Cómo verificar si Steem6 está incluido en el Árbol Markle.

Cómo sabemos los Hash de cada nodos son únicos y alterar la mínima cosa en el código hará que nuestro Hash sea totalmente diferente modificandose así hasta la raíz ya que todos los nodos estar interconectados y al cambiar cualquiera de ellos se modificaría todos hasta la raíz.

Para poder verificar el nodo Steem6 es preciso verificar todas las ramas del árbol hasta llegar a la raiz. Steem5 por ser su pareja en el árbol se verifica primeramente.

IMG_20210723_183305.jpg

Lo siguiente que debemos hacer es verificar la rama superior a estos nodos como el Hash Steem7Steem8

IMG_20210723_184430.jpg

Luego pasamos a la siguiente rama pero del otro lado del Arbor para verificar Steem1Steem2Steem3Steem4

IMG_20210723_184755.jpg

Por último llegamos a la raíz donde podemos verificar que exactamente Steem6 se encuentra dentro del árbol así como también en la raíz.

IMG_20210723_185506.jpg

Minimal-Negro.png

3) Árbol Merkle con distintas hojas.


Hojas del Árbol

IMG_20210723_192656.jpg

SCA1


13E0A04BB0E669E1C638DBE3A704743F99F162B25245E4D8C064D35BA38FA8C8

IMG_20210723_192809.jpg

SCA2


27849353A9C8CC4E948EB6E5748EDD79CB83513D8C0ADAF3E8C83D3792C9149B

IMG_20210723_193227.jpg

SCA3


67E872F952C105C35E0BCE130536D061F4999DCA5593754BA9BA7BE59B8E7C0D

IMG_20210723_193315.jpg

SCA4


491928A32BAE70A12FA251412BBFD7C9999F317BA6BF577C283C724225270A43

IMG_20210723_193345.jpg

SCA5


99C078C39CDE7F47799E0E8691460A9F3E83E78D498EA989308FCFCC58907B19

IMG_20210723_193736.jpg

SCA6


7A648D887B124DB14E96E23BA92783E7F26D00957C19B9B8229632C2C1873729

IMG_20210723_193849.jpg

SCA7


7E0BBD6BA4BA9896F9911AF46B06DD2C47535F9C80B29D693FDF6B9319D0D68E

IMG_20210723_193926.jpg

SCA8


562ABCEEB497E1FE7AE275A883FD5EF9D92A05F5C19D82ABAA0DC1571B7DF3AD

Minimal-Negro.png

Ramas de Primer Nivel

IMG_20210723_215853.jpg

SCA1SCA2


91B09BBA815748166FB36413342C7E4E7E809F4BAC538C0418841A4476B527EF

IMG_20210723_215935.jpg

SCA3SCA4


B49B48697A3ACBC5E3D2E36B6EE49C44020D88E664C5C1AA7A7CF34058177379

IMG_20210723_220041.jpg

SCA5SCA6


F026924CD1285FF92C2A2DE9B9313027EB67273A82375C939348C887F6B52F77

IMG_20210723_220110.jpg

SCA7SCA8


AA55EC5A6B11393B289C4B2B6916172ACC2941C5C978FB1D7BF02696BAB323A4

Minimal-Negro.png

Ramas de Segundo Nivel

IMG_20210723_222352.jpg

SCA1SCA2SCA3SCA4


F50DC120CBF6C46923037F6D7F41D4153ECC9AB7430DDA662C142DB1FFE483F7

IMG_20210723_222447.jpg

SCA5SCA6SCA7SCA8


A3D8CA8494CC426ABD5E1FC5FA0FEAE4F2B2ECE4C4CECDCA05E19EB66542533F

Minimal-Negro.png

Raíz del Árbol

IMG_20210723_223827.jpg

SCA1SCA2SCA3SCA4SCA5SCA6SCA7SCA8


CB40CA6DB72DD507CF9118963F94B7740822258E74AFB0FD45D89DB35D24B386

De esta manera podemos observar el árbol con todos los códigos y sus hashes, desde las hojas hasta la raíz del árbol incluyendo sus diferencias ramas.

IMG_20210723_234515.jpg

Minimal-Negro.png

¿Qué pasa si el número de hojas de un árbol Markle es impar?

El Arbor de Merkle agrupar los nodos por pares, es decir cada nodo tiene una pareja. Si un nodo no tiene una pareja no sería posible completar la secuencia del árbol de Merkle hasta llegar la raíz, por ende a falta de un nodo o dicho de otra manera una cantidad impar de nodos se duplica el nodo que se encuentra de manera individual para así completar la secuencia y completar todos los Hash hasta la raíz.

Veámoslo ahora do forma más práctica en la siguiente imagen se puede observar la problemática que existe al tener un número impar de nodos, cómo podemos ver sin 7 nodos por lo cual el último nodo el 7 no tiene pareja.

IMG_20210724_073419.jpg

Por lo que debemos proceder a duplicar SCA7 para si se pueda completar las secuencias que conforman el árbol de Merkle.

IMG_20210724_073924.jpg

Lo que haremos ahora es generar los nodos faltantes hasta llegar a la raíz de esta manera terminaremos nuestro árboles de Merkle.

IMG_20210724_075028.jpg

SCA7SCA7


71AF5095F10844EDA37CFCF8EE7712ADD5940F4ADAE1946CE66793270438C39B

IMG_20210724_075102.jpg

SCA5SCA6SCA7SCA7


71AF5095F10844EDA37CFCF8EE7712ADD5940F4ADAE1946CE66793270438C39B

Raíz del Árbol

IMG_20210724_075139.jpg

SCA1SCA2SCA3SCA4SCA5SCA6SCA7SCA7


79A243A66E564ABAFEADAAA763B0D5BA7CFFD5462ADDC77D88CA683210AA2784


De esta manera podemos observar nuestro Arbor de Merkle completado, con el nodo duplicado.

IMG_20210724_080304.jpg

Minimal-Negro.png

Conclusión

El Árbol de Merkle es de alta relevancia dentro de la blockchain está ayuda para el procesamiento de datos y validación sean mucho más rápidos y eficientes lo que vendría ofreciendo mayor Escalabilidad a la blockchain y debido a su agrupamiento o estructura es más sencillo detectar alguna modificación de los mismos.

El Hash Rate da seguridad a la blockchain ya que mientras mayor sea este mayor será los equipos y cálculos computacionales que se deben hacer para poder intentar un ataque hacia la blockchain.

Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

Gracias por participar en Steemit Crypto Academy Season 3:

Espero seguir leyendo tus publicaciones.

NoPreguntas.Puntaje.
1Explique en detalle el hash rate.1.1
2Realice el Árbol Merkle. Pregunta 2. Diga los pasos a seguir para verificar si Steem6 está incluido en el Árbol Markle.3.3
3Realice el Árbol Merkle. Pregunta 3. Si el número de las hojas del árbol es impar, ¿Qué debes hacer? Explique.3.3
4Presentación y originalidad0.8
  • Pregunta 1, buena investgación, per se puede mejorar.

  • Pregunta 2, todos los ahsh coinciden.

  • Pregunta 3, todos los hash coinciden.

Recomendaciones:

  • Investigar con mayor profundidad.

  • Los gráficos no se ven algunos datos, puede mejorar.

Calificación: 8.5