Steemit Crypto Academy, Season 3: Week 2 || Tarea para el Profesor @pelon: Hash y Criptografía por @janettyanez
Esta es mi Tarea correspondiente a la Seguda semana de la Tercera Temporada de Steemit Cripto Academia, del Profesor @pelon, el tema de esta semana es Hashes y Criptografia.
Agradecida con el profesor por la excelente explicación del tema que me ayudó a la compresión del mismo.
Agradecida con el profesor por la excelente explicación del tema que me ayudó a la compresión del mismo.
Adaptación con Canva. Fuentes de: Imagenes 1Imagen 2
La fusión hash también conocida como función resumen revisten una gran importancia en la criptografía por su aplicación en la seguridad e integridad de los datos, la autentificación de los mensajes asi como las huellas digitales.
Asi mismo, en relación al minado del Bitcoin las funciones hash juegan un papel protagónico, asi como en lo relacionado con la creación de las claves y las direcciones.
Una de las series de las funciones hash mas utilizadas es la SHA, cuyo significado por su acrónico en inglés es “Secure Hash Algorithms", donde se incluyen: SHA-0 y SHA-1, SHA-2 y SHA-3, SHA-256 que forma parte del grupo SHA-2 y el SHA-512.
Entre las características mas resaltantes de la función hash se encuentran su facilidad para el cálculo de los algoritmos, irreversibilidad, seguridad y la resistencia a las colisiones (pre-imagen y segunda pre-imagen), entre otras.
Las características antes señaladas demuestra el alto grado de seguridad que proporcionan las funciones hash criptográficas, lo que se ha demostrado que para su lograr la vulnerabilidad de una función hash se requiere de un gran número de intentos para tratar de revertirla, lo que hace muy poco probable lograr adivinar el input y producir el output respectivo.
Sin embargo, en el caso de vulnerar una función hash se lograría lo que se denomina una colisión, a continuación en la primera interrogante planteada por el profesor @pelon, desarrollo este punto relacionado con la resistencia a la colisión, resistencia a la pre-imagen y resistencia a la segunda pre-imagen.
Asi mismo, en relación al minado del Bitcoin las funciones hash juegan un papel protagónico, asi como en lo relacionado con la creación de las claves y las direcciones.
Una de las series de las funciones hash mas utilizadas es la SHA, cuyo significado por su acrónico en inglés es “Secure Hash Algorithms", donde se incluyen: SHA-0 y SHA-1, SHA-2 y SHA-3, SHA-256 que forma parte del grupo SHA-2 y el SHA-512.
Entre las características mas resaltantes de la función hash se encuentran su facilidad para el cálculo de los algoritmos, irreversibilidad, seguridad y la resistencia a las colisiones (pre-imagen y segunda pre-imagen), entre otras.
Las características antes señaladas demuestra el alto grado de seguridad que proporcionan las funciones hash criptográficas, lo que se ha demostrado que para su lograr la vulnerabilidad de una función hash se requiere de un gran número de intentos para tratar de revertirla, lo que hace muy poco probable lograr adivinar el input y producir el output respectivo.
Sin embargo, en el caso de vulnerar una función hash se lograría lo que se denomina una colisión, a continuación en la primera interrogante planteada por el profesor @pelon, desarrollo este punto relacionado con la resistencia a la colisión, resistencia a la pre-imagen y resistencia a la segunda pre-imagen.
Dentro de las características de las funciones hash se encuentran la resistencia a la colisión, resistencia a la pre-imagen y resistencia a la segunda pre-imagen, todas relacionadas con la potencial posibilidad de lograr vulnerarla, a continuación presento un breve análisis de cada uno de ellas.
La función hash, como ya lo mencioné anteriormente, se caracteriza por su resistencia a la colisión, considerando una "colisión", aquella que se da lugar, cuando diferentes entradas (input) generan el mismo hash.
Sin embargo, esta posibilidad esta latente, debido a que las entradas son infinitas y la generación de las salidas (output) son finitas, a pesar de que tecnicamente es poco probable que dos mensajes diferentes arrojen la misma salida, mas no es imposible, entre las mas resistentes se encuentra el SHA-256.
La resistencia a la preimagen esta directamente relacionada con la unidireccionalidad de la función hash.
Esto puede ocurrir cuando se logra determinar la entrada de una salida especifica, algo que según la bibliografia consultada resulta poco probable, debido a que se tendría que hacer por descarte realizando innumerable combinaciones, lo que hoy en día a pesar de los avances tecnológicos resultaría un trabajo excesivamente largo .
Esto ocurre cuando se consigue una colisión y se busca una entrada en vez de dos o mas (como fue el primer caso ), que puedan generar un mismo hash o salida, es decir se buscaría el hash de una entrada determinada, es como la combinación de los dos casos anteriores.
Sin embargo, los expertos afirman que:
1.- Una función hash que es resistente a la colisión es en consecuencia resistente a los ataques de segunda pre-imagen.
2.-Por el contrario, una función hash resistente a la colisión puede ser atacada de pre-imagen, debido a que se buscaría un solo input desde un solo output.
Como se puede visualizar en la bibliografia consultada, los tres puntos antes señalados estan intimamente relacionados y su ocurrencia no esta totalmente descartada según las propias evidencias obtenidas por los expertos del tema.
Resistencia a la colisión:
La función hash, como ya lo mencioné anteriormente, se caracteriza por su resistencia a la colisión, considerando una "colisión", aquella que se da lugar, cuando diferentes entradas (input) generan el mismo hash.
Sin embargo, esta posibilidad esta latente, debido a que las entradas son infinitas y la generación de las salidas (output) son finitas, a pesar de que tecnicamente es poco probable que dos mensajes diferentes arrojen la misma salida, mas no es imposible, entre las mas resistentes se encuentra el SHA-256.
Resistencia a la preimagen
La resistencia a la preimagen esta directamente relacionada con la unidireccionalidad de la función hash.
Esto puede ocurrir cuando se logra determinar la entrada de una salida especifica, algo que según la bibliografia consultada resulta poco probable, debido a que se tendría que hacer por descarte realizando innumerable combinaciones, lo que hoy en día a pesar de los avances tecnológicos resultaría un trabajo excesivamente largo .
Resistencia a segunda pre-imagen
Esto ocurre cuando se consigue una colisión y se busca una entrada en vez de dos o mas (como fue el primer caso ), que puedan generar un mismo hash o salida, es decir se buscaría el hash de una entrada determinada, es como la combinación de los dos casos anteriores.
Sin embargo, los expertos afirman que:
1.- Una función hash que es resistente a la colisión es en consecuencia resistente a los ataques de segunda pre-imagen.
2.-Por el contrario, una función hash resistente a la colisión puede ser atacada de pre-imagen, debido a que se buscaría un solo input desde un solo output.
Como se puede visualizar en la bibliografia consultada, los tres puntos antes señalados estan intimamente relacionados y su ocurrencia no esta totalmente descartada según las propias evidencias obtenidas por los expertos del tema.
Tronscan
Para la verificación del hash del último bloque para el momento de realizar esta publicación, asi como de la última transacción.
Para ello utilizando Tronscan.org, en su página principal, en la parte inferior aparece la opción de "Bloques" y "Ver mas", como se señala en la imagen 1, la presioné "ver mas" para que me mostrara los detalles del último bloque, que cambian de forma muy rápida, por la cantidad de operaciones que se realizan.
Imagen 1: Página principal de Tronscan
Una vez en esta pantalla se puede identificar el último bloque, para el momento de realizar esta publicación estaba el bloque 31662443 , como se muestra en la imagen 2, claramente identificado en un recuadro rojo.
Para que muestre los detalles se presiona sobre el número del bloque, asi se muestran el resto de la información del bloque señalado.
Para que muestre los detalles se presiona sobre el número del bloque, asi se muestran el resto de la información del bloque señalado.
Imagen 2: Bloques
Para verificar el hash de la última transacción, volví a la pagina principal y en la opción de transacción que se encuentra al lado de la de bloque, presionando se pueden ver la información de la última transacción de ese momento( Imagen 3).
Imagen 3
Para el momento de abrir la opción de transacciones la última estaba identificada con el hash: 7984e19513f8c8ed3c4dcecb22e09353ecd4c6d75544f903a1b7f8fea7f07393, como se muestra en la imagen 4 a continuación.
Imagen 4: Hash de la última transacción
Etherscan.io
Para verificar el hash con Etherscan, utilicé en siguiente link: https://etherscan.io/
En inicio se puede identificar los Bloques y las Transacciones, presionando en el último que se muestra en pantalla, puede visualizarse los detalles del seleccionado (Imagen 5)
Imagen 5: Inicio de Etherscan
Para el momento de la publicación el último Bloque estaba identificado con el número: 12765498, como se muestra en la imagen 6 a continuación.
Imagen 6
Para verificar el hash del último bloque, se debe mover la pantalla hacia abajo, donde se muestra:0x0d97c27a087431b1ede002248cb1a8a2c6dfeaba103962fec3906b37cc697d6d, como se visualiza en la Imagen 7.
Imagen 7
Luego presionando en la última transacción, se muestran los detalles de esta (Imagen 8).
El hash de la última transacción: 0x151239eb846c90fc54faef46f53ac85a492b30090d0d3b10152b6e9255118304.
El hash de la última transacción: 0x151239eb846c90fc54faef46f53ac85a492b30090d0d3b10152b6e9255118304.
Imagen 8: Capture de pantalla del hash de la última transacción.
Para generar el hash de la palabra CryptoAcademy y cryptoacademy, usando SHA-256, utilicé el siguiente enlace https://passwordsgenerator.net/sha256-hash-generator/
Simplemente se coloca la palabra en el recuadro y de inmediato se genera el hash, para la primera palabra el hash generado fue: D03CA34B258E6E0FD06B2070DDE61B50BD4EEF6161A8EDAA4A420C9AE1BEB7F9
Simplemente se coloca la palabra en el recuadro y de inmediato se genera el hash, para la primera palabra el hash generado fue: D03CA34B258E6E0FD06B2070DDE61B50BD4EEF6161A8EDAA4A420C9AE1BEB7F9
Imagen 9
Para la segunda palabra, se procede a cambiarla en el recuadro y de igual forma se general el hash:
0592F5DD27DC72E675B2AB9C77487A69FAAF84196597FA052EC099C18EE7C4C5
Imagen 10
En la prueba realizada se demuestra que los hash generados son totalmente diferentes debido a que las input de cada caso son distintos, existen diferencias en cada entrada, a pesar de ser la misma palabra estan escritas diferentes, la primera con Mayúscula la primera letra "C"de Crypto y la "A" de Academia.
Para la segunda palabra todas las letras estan en minúscula, esta simple diferencia demuestra la característica de único e irrepetiblede la función hash, al generar códigos diferentes para entradas diferentes.
Para la segunda palabra todas las letras estan en minúscula, esta simple diferencia demuestra la característica de único e irrepetiblede la función hash, al generar códigos diferentes para entradas diferentes.
Existen diferencias muy importante entre la Criptografia y la función hash, pero para efecto de esta publicación seran resumidas en dos bloques:
1.-La criptografia es una ciencia que tiene como objetivo la preservación de los datos y la información basados en patrones de seguridad, y el Hash es una función criptografica que genera códigos únicos e irrepetibles, siendo esta una de las principales característica de esta función.
2.-Los hash son utilizados en la Blockchain, es decir es una excelente herramienta que le proporcionandole seguridad, privacidad y anonimato, los principales fundamentos de la descentralización de esta plataforma; por su parte la criptografia es el pilar fundamental de la blockchain para su funcionamiento, se puede considerar el eje principal del ecosistema.
1.-La criptografia es una ciencia que tiene como objetivo la preservación de los datos y la información basados en patrones de seguridad, y el Hash es una función criptografica que genera códigos únicos e irrepetibles, siendo esta una de las principales característica de esta función.
2.-Los hash son utilizados en la Blockchain, es decir es una excelente herramienta que le proporcionandole seguridad, privacidad y anonimato, los principales fundamentos de la descentralización de esta plataforma; por su parte la criptografia es el pilar fundamental de la blockchain para su funcionamiento, se puede considerar el eje principal del ecosistema.
La importancia del hash y la criptografia en el mundo de la Blockchain y la criptomonedas ha sido muy significativo y los aportes brindados a estos han sido fundamentales para su funcionamiento, proporcionandole la seguridad, privacidad y anonimato que identifican a la blockchain.
Los hash han brindado muchos beneficios a la cadena de bloques que cada dia se consolidan en pro de mejorar este ecosistema y afianzarse entre los usuarios.
Los hash han brindado muchos beneficios a la cadena de bloques que cada dia se consolidan en pro de mejorar este ecosistema y afianzarse entre los usuarios.
Gracias por participar en Steemit Crypto Academy Season 3:
Espero seguir leyendo tus publicaciones.
Muy buen trabajo, felicitaciones. Sólo te falto completar la diferencia entre el hash y la criptografía. Entre otras, el hash tiene una cantidad de caracteres fijas, mientras que el algoritmo criptográfico puede almacenar un archivo o mensaje grande.
Puedes seguir mejorando, saludos.
Calificación: 9.0
Hola Profesor @pelon53
Muchas gracias, seguiré trabajando en ello, hasta la próxima clase.
Saludos