Contactos

Criptomonedas con el algoritmo sha 256 SHA256 es un algoritmo hash. Descifrado de hash. Vídeo sobre funciones y algoritmos criptográficos.

SHA 256 es un conjunto criptográfico de instrucciones para extraer criptomonedas. En otras palabras, protege de forma fiable todas las transacciones en la red y complica la extracción de monedas electrónicas. Esta abreviatura significa Secure Hashing Algorithm, que significa un método de hash muy popular y eficaz.

La esencia de SHA 256 es convertir información en valores, números. Esta cadena tiene una longitud fija. Esto significa que cualquier información que transmita dentro de la red se cifrará con valores especiales: identificadores (ID).

Al realizar transacciones, el algoritmo SHA 256 compara la identificación con los datos originales, que no se pueden recuperar, y luego proporciona acceso a la transacción. Este protocolo se utiliza ahora en la minería de criptomonedas como BTC y BCH.

Historia de la apariencia

¿Cómo sucedió que Bitcoin comenzó a usar SHA 256? Todo comenzó cuando el algoritmo se convirtió en miembro de la familia SHA-2, que tiene un tamaño de cadena hash de 224-512 bits.

Ellos, a su vez, fueron creados sobre la base de su bisabuelo, SHA-1, cuyo hash tenía una longitud de 160 bits. La tecnología apareció en 1995 y estaba destinada a fines civiles, es decir, cifrado de información ordinaria y no importante para el estado.

La familia SHA-2, a la que pertenece SHA 256, fue desarrollada por la Agencia de Seguridad Nacional hace 16 años, en la primavera de 2002. En base a esto, podemos decir que el algoritmo está moralmente desactualizado. Sin embargo, sigue siendo uno de los algoritmos más potentes para cifrar transacciones en la red.

Parámetros técnicos de SHA 256

El algoritmo está diseñado para datos divididos en partes iguales de 64 bytes. SHA 256 garantiza que se recopilen y combinen en una única cadena de 256 bits. El método principal de este método es la operación de cifrado, que se realiza en un bucle 64 veces.

Breves características de las instrucciones algorítmicas SHA 256:

  • Bloques de 64 bits: funciona más rápidamente con bloques de 32 bits;
  • la longitud máxima de la cadena de información cifrada es de 33 bytes;
  • volumen de resumen de mensajes: 32 bytes;
  • el tamaño estandarizado de una palabra es de 4 bytes;
  • el ciclo de cifrado en una ronda de operación es de 64 bytes;
  • la velocidad a la que opera el algoritmo es de 140 Mbit/s.

Vale la pena señalar que este miembro de la familia SHA-2 se basa en el marco descrito por Merkle-Damgaard. Esto quiere decir que antes de dividir la información en palabras, los datos se dividen en bloques. El proceso fortalece el cifrado al mezclar los datos.

La recopilación de información en sí se realiza en el rango de 64 a 80 repeticiones. Cada bucle posterior convierte los bloques creados en palabras. El resultado final, es decir, el hash, se crea sumando todos los valores iniciales.

Criptomonedas con algoritmo SHA 256

Como se mencionó anteriormente, no solo Bitcoin tiene dicho conjunto de instrucciones, sino también:

  • peercoin, cuya peculiaridad es que el código se crea en base a la bola blanca, pero PoS se utiliza para proteger toda la red y PoW es responsable de la distribución de monedas;
  • namecoin es una moneda digital que actúa como medio de protección, confidencialidad y descentralización; unobtanium: tiene una inflación extremadamente baja; se necesitarán al menos 300 años para extraer todas las monedas;
  • deutsche eMark es una microred alemana que se utiliza para intercambiar activos y dinero. El proceso en sí se desarrolla sin intermediarios; betaCoin: funciona según el mismo principio que el mundialmente famoso BitCoin;
  • jouleCoin: también basado en el abuelo Bitcoin, pero proporciona una confirmación más rápida de las transacciones;
  • Steemit ni siquiera es una cripta separada, sino una plataforma completa en blockchain. Su principal tarea es premiar publicaciones interesantes.

Litecoin también utiliza el algoritmo SHA 256, pero no en todo el sistema, sino en una subrutina. Para la minería de Litecoin, se utiliza el protocolo de seguridad Scrypt, que aumenta la complejidad de la minería y reduce la recuperación de la inversión de los ASIC.

Minería de criptomonedas basada en el algoritmo SHA 256

Para extraer monedas electrónicas basadas en la familia SHA-2, no es necesario utilizar herramientas especializadas: ASIC. Tanto las granjas basadas en CPU como en GPU funcionan bien en la minería. Este último es claramente superior en velocidad al primero.

Y, sin embargo, ASIC es la mejor solución para extraer criptomonedas. Sus ventajas se ven hasta cierto punto compensadas por su importante precio: unos 100.000 rublos, los modelos más potentes incluso superan los 500.000. A medida que aumenta la complejidad, la recuperación de la inversión disminuye. Por lo tanto, el equipo no siempre se justifica, aunque proporciona una velocidad de minería mucho mayor que las granjas en tarjetas de video y, especialmente, en una CPU.

La minería GPU se considera más o menos rentable. En general, toda la granja costará aproximadamente entre 1.000 y 2.000 dólares, más el equipo adicional, en particular, los sistemas de refrigeración para tarjetas de vídeo. También vale la pena tener en cuenta el alquiler del local, los pagos de luz y los sueldos del personal de servicio.

Entre las tarjetas de video, la GTX 1080 Ti de Nvidia se desempeña bien. Produce una velocidad de 1400 operaciones exitosas por segundo. AMD está ligeramente por detrás con sus tarjetas de línea Vega: 1200 MH/s. También hay opciones más económicas como la Radeon 7970, pero su velocidad no supera los 800 MH/s.

El algoritmo SHA 256, aunque antiguo, todavía se utiliza en Bitcoin, la criptomoneda número uno del mundo. El protocolo también se utiliza en otras altcoins prometedoras. SHA256 está siendo reemplazado gradualmente por Scrypt, pero Bitcoin no tiene planes de cambiar a él. En cuanto a la minería, todo es simple: si tiene dinero, tome ASIC con una alta tasa de hash. ¿Quieres una solución más económica? Luego, construya una granja con tarjetas de video AMD o Nvidia.

  • Traducción

En un momento quise descubrir qué tan rápido era posible extraer Bitcoins manualmente. Resultó que el hashing SHA-256 se utiliza para la minería, es bastante simple y se puede calcular incluso sin una computadora. Por supuesto, el proceso es muy lento y completamente impráctico. Pero después de seguir todos los pasos en papel, podrá comprender bien los detalles de cómo funciona el algoritmo.

Una ronda criptográfica

Minería

Una parte clave de todo el sistema de seguridad de Bitcoin es la minería. La idea básica es que los mineros agrupen las transacciones de Bitcoin en un bloque, del que luego procesan un número incalculable para encontrar un valor hash muy raro que se ajuste a condiciones especiales. Cuando se encuentra dicho valor, el bloque se considera minado y ingresa a la cadena de bloques. El hash en sí no tiene otro propósito útil que aumentar la dificultad de encontrar el bloque correcto. Por lo tanto, esta es una de las garantías de que nadie, por sí solo y con un conjunto de recursos existente, podrá tomar el control de todo el sistema. Puedes leer más sobre minería en mi último artículo.

La función hash criptográfica recibe un bloque de datos como entrada y produce una salida pequeña pero impredecible. Está diseñado para que no exista una forma rápida de obtener el resultado que desea y tenga que seguir buscando hasta encontrar el valor correcto. Bitcoin utiliza SHA-256 como tal función. Además, para mejorar la resistencia, se aplica SHA-256 al bloque dos veces y se denomina SHA-256 doble.

En Bitcoin, el criterio para que un hash sea válido es tener una cantidad suficiente de ceros a la izquierda. Encontrar un hash de este tipo es tan difícil como, por ejemplo, encontrar un coche o un número de teléfono que termine en varios ceros. Pero, por supuesto, para un hash es exponencialmente más difícil. Actualmente, un hash válido debe contener aproximadamente 17 ceros a la izquierda, lo cual solo se satisface con 1 en 1,4x10 20. Si hacemos una analogía, entonces encontrar ese valor es más difícil que encontrar una partícula específica entre toda la arena de la Tierra.

El azul bloquea bits que se mezclan de forma no lineal para dificultar el análisis criptográfico. Además, para una confiabilidad aún mayor, se utilizan diferentes funciones de mezcla (si puede encontrar una laguna matemática para generar rápidamente hashes válidos, tomará el control de todo el proceso de minería de Bitcoin).

La función mayoritaria (bloque Ma) opera bit a bit en las palabras A, B y C. Para cada posición de bit, devuelve 0 si la mayoría de los bits de entrada en esa posición son ceros; de lo contrario, devuelve 1.

El bloque Σ0 rota A en 2 bits, luego la palabra original A se rota en 13 bits y de manera similar en 22 bits. Las tres versiones desplazadas resultantes de A se agregan bit a bit módulo 2 ( normal xor, (A ror 2) xor (A ror 13) xor (A ror 22)).

Ch implementa la función de selección. En cada posición de bit, se verifica un bit de E, si es igual a uno, entonces se emite el bit de F de esta posición, de lo contrario, un bit de G. Por lo tanto, los bits de F y G se mezclan según el valor de e.

Σ1 es similar en estructura a Σ0, pero funciona con la palabra E, y las constantes de desplazamiento correspondientes son 6, 11 y 25.

Los bloques rojos realizan una suma de 32 bits, generando nuevos valores para las palabras de salida A y E. El valor W t se genera en función de los datos de entrada (esto sucede en la parte del algoritmo que recibe y procesa los datos hash . Está fuera de nuestro alcance). K t es su propia constante para cada ronda.

En el diagrama anterior, se observa que solo A y E cambian en una ronda criptográfica. Las palabras restantes no cambian, pero se desplazan en la salida: la antigua A se convierte en la salida B, la antigua B en la nueva C, y así sucesivamente. Aunque una sola ronda del algoritmo no cambia mucho los datos, después de 64 rondas, la información ingresada estará completamente cifrada.

Minamos manualmente

En el vídeo muestro cómo puedes seguir todos los pasos descritos con lápiz y papel. Realicé la primera ronda de hash para extraer el bloque. Me tomó 16 minutos, 45 segundos.


Déjame explicarte un poco lo que está pasando: escribí las palabras de la A a la H en forma hexadecimal, y debajo de cada una hice una traducción a forma binaria. El resultado del bloque Ma está debajo de la palabra C, y los valores de A después de los desplazamientos y la propia salida Σ0 aparecen encima de la línea con A. La función de selección aparece debajo de G, y finalmente las versiones desplazadas correspondientes de E y la El valor después del bloque Σ1 va por encima de la línea con E. En la esquina inferior derecha se realiza una suma, cuyo resultado está involucrado en el cálculo tanto de la nueva A como de la nueva E (los primeros tres bloques de suma rojos). En la parte superior derecha calculé el nuevo valor de A, y en el medio está el cálculo del nuevo valor de E. Todos estos pasos se analizaron anteriormente y se pueden seguir fácilmente en el diagrama.

Además de la ronda que se muestra en el video, realicé una más: la última ronda de hash número 64 para un bloque de Bitcoin específico. En la foto, el valor hash está resaltado en amarillo. La cantidad de ceros confirma que es un hash de Bitcoin válido. Tenga en cuenta que los ceros se encuentran al final del hash y no al principio, como escribí anteriormente. La razón es que Bitcoin simplemente invierte los bytes recibidos por SHA-256.


La última ronda de SHA-256, como resultado de la cual se ve un bloque de Bitcoin minado con éxito

¿Qué significa todo esto para el diseño de mineros de hardware?

Cada paso en SHA-256 parece muy simple en lógica digital: operaciones de bits simples y sumas de 32 bits (si alguna vez ha estudiado diseño de circuitos, probablemente ya haya imaginado cómo se vería esto en hardware). Por lo tanto, los ASIC implementan SHA-256 de manera muy eficiente, colocando cientos de unidades de ejecución de rondas SHA-256 en paralelo. La foto de abajo muestra un chip de minería que puede calcular entre 2 y 3 mil millones de hashes por segundo. Puedes ver más fotos en Zeptobars.


Una toma de silicio del chip Bitfury ASIC, que puede extraer Bitcoin a 2-3 gigahashes por segundo. Imagen de Zeptobars. (CC POR 3.0)

A diferencia de Bitcoin, Litecoin, Dogecoin y otros sistemas de monedas alternativos similares utilizan el algoritmo hash scrypt, que es intrínsecamente difícil de implementar en hardware. Este algoritmo almacena 1024 valores hash diferentes en la memoria durante la ejecución y los combina en la salida para obtener el resultado final. Por lo tanto, se requiere mucha más memoria y circuitos para calcular hashes scrypt en comparación con hashes SHA-256. El impacto de cambiar el algoritmo hash es claramente visible al comparar el hardware de minería correspondiente: las versiones para scrypt (Litecoin y otras) son miles de veces más lentas que las versiones para SHA-256 (Bitcoin).

Conclusión

De repente, SHA-256 era tan simple que incluso podía calcularse a mano (el algoritmo de curva elíptica utilizado para firmar una transacción de Bitcoin sería mucho más complicado, ya que implica un montón de multiplicaciones de números de 32 bytes). Calcular una ronda de SHA-256 me llevó 16 minutos y 45 segundos. Con este rendimiento, hacer hash de un bloque completo de Bitcoin (128 rondas) tomará 1,49 días, es decir, obtenemos una tasa de hash de 0,67 hashes por día (de hecho, por supuesto, el proceso se aceleraría con la práctica). En comparación, la generación actual de mineros de Bitcoin produce varios terahashes por segundo, lo que es aproximadamente un trillón de veces más rápido que yo. Creo que está claro que la minería manual de Bitcoin no es muy práctica.

Un lector de Reddit preguntó sobre mi gasto de energía. Dado que no hago ningún esfuerzo físico importante, podemos suponer que la tasa metabólica será de 1500 kilocalorías por día, luego encontramos que el hashing manual requiere casi 10 megajulios por hachís. para un minero de hierro es 1000 magehash por julio. Por lo tanto, soy menos eficiente energéticamente que una pieza de hierro especializada en 10 ^ 16 veces (10 cuatrillones). 15 centavos por kilovatio-hora, que es 6,7 veces más barato que los donuts. Como resultado, el costo de la energía en términos de hash para mí, como minero humano, es 67 mil billones de veces mayor. Buena suerte con la minería manual de Bitcoin, y eso es. ¡Sin tener en cuenta el coste del papel y los bolígrafos!

¿Por qué se creó SHA - 256?

SHA 256 (abreviatura de Secure Hashing Algorithm) es un popular criptográfico Algoritmo de hash desarrollado por la Agencia de Seguridad Nacional, la Agencia de Seguridad Nacional de EE. UU. La tarea de SHA - 256 es crear ciertos valores con una longitud fija a partir de un conjunto aleatorio de datos que servirán identificador estos datos.

El valor resultante se compara con duplicados de los datos originales, que no se pueden extraer. El principal ámbito de aplicación del algoritmo es el uso en diversas aplicaciones o servicios relacionados con la seguridad de la información, donde la función se ha generalizado. extensión. También se utiliza como tecnología para minar criptomonedas.

Este algoritmo pertenece al grupo de algoritmos de cifrado SHA - 2, que a su vez se desarrollan sobre la base del algoritmo SHA - 1, creado por primera vez en 1995 para uso con fines civiles. El propio SHA-2 fue desarrollado por la Agencia de Seguridad Nacional de Estados Unidos en la primavera de 2002. Al cabo de tres años, la NSA estadounidense emitió una patente para el uso de la tecnología SHA en proyectos civiles.

En 2012, el Instituto Nacional de Estándares y Tecnología creó una versión actualizada del algoritmo: SHA - 3. Con el tiempo, el nuevo algoritmo desplazará tanto al algoritmo principal actual SHA - 2 como al ya obsoleto, pero aún en uso, SHA - 1.

Hash-sum no es una tecnología de cifrado de datos en el sentido clásico; esto hace imposible descifrar datos en la dirección opuesta. Este es un cifrado unidireccional para cualquier cantidad de datos. Todos los algoritmos SHA se basan en el método Merkle-Damgaard: los datos se dividen en grupos uniformes, cada uno de los cuales pasa por una función de compresión unidireccional. Como resultado, se reduce la longitud de los datos.

Este método tiene dos ventajas importantes:

  • velocidad de cifrado rápida y descifrado casi imposible sin claves;
  • riesgo mínimo de colisiones (imágenes idénticas).

¿Dónde más se usa?

Cada día, todo internauta, lo sepa o no, utiliza SHA-256: el certificado de seguridad SSL que protege cada sitio web incluye el algoritmo SHA-256. Esto es necesario para establecer y autenticar una conexión segura al sitio.

Ventajas de SHA - 256

SHA - 256 - el más común algoritmo de minería entre todos los demás. Ha demostrado ser resistente a los ataques (con raras excepciones) y un algoritmo eficiente tanto para la minería como para otros fines.

Contras SHA - 256

La principal desventaja de SHA-256 es su controlabilidad mineros: aquellos con mayor potencia informática reciben la mayor parte de la criptomoneda, lo que elimina uno de los fundamental principios de las criptomonedas - descentralización.

Después de que los grandes inversores comenzaron a invertir en potencia informática para la minería industrial de Bitcoin, la dificultad de la minería aumentó exponencialmente y comenzó a requerir una potencia informática excepcional. Este inconveniente se ha corregido en otros protocolos, más modernos y “adaptados” para su uso en minería de criptomonedas, como Scrypt. A pesar de que hoy SHA-256 ocupa gran parte del mercado de las criptomonedas, debilitará su influencia en favor de protocolos más seguros y avanzados.

Al poco tiempo Los algoritmos SHA-1 ya no proporcionan el nivel requerido de confiabilidad debido a la probabilidad de que se produzcan colisiones. SHA-256, al igual que SHA-512, están más protegidos contra esta falla, pero la probabilidad de que ocurra aún está presente.

Uso en criptomonedas

Minería en SHA - 256

Minar con SHA-256, como con cualquier otro algoritmo, es el proceso de resolver algunos problemas complejos criptográfico una tarea que es generada por un programa de minería basado en datos de bloques anteriores.

Hay tres formas de minar usando la función SHA-256:

  • CPU (unidad central de procesamiento);
  • GPU (unidad de procesamiento de gráficos);
  • especializado Procesador: ASIC.

En minería, la cantidad de hash se utiliza como identificador de bloques existentes y la creación de nuevos basados ​​en los anteriores. El proceso de minería se muestra en la interfaz como "aceptado f33ae3bc9...". Donde f33ae3bc9 es un hash: la suma, parte de los datos, destinado para descifrar. El bloque principal consta de una gran cantidad de sumas hash similares.

Es decir, minar con el algoritmo SHA-256 es sin escalas selección del valor hash correcto, enumeración de números para crear un nuevo bloque. Cuanto mayor sea su potencia informática, mayores serán las posibilidades de obtener el bloque correcto: la velocidad de búsqueda entre diferentes sumas hash depende de la potencia.

Debido al hecho de que Bitcoin se basa en el algoritmo SHA-256, por ejemplo competitivo Minar en él requiere una potencia informática extremadamente grande. Esto se debe al hecho de que para la minería de Bitcoin, la producción de "ASIC", es decir, circuitos integrados de aplicaciones específicas, se ha establecido desde hace mucho tiempo. mi. Circuito integrado de propósito especial. Los ASIC te permiten minar Bitcoins y otras criptomonedas utilizando el algoritmo SHA-256 de forma mucho más rápida, eficiente y económica.

¿Qué criptomonedas utilizan el algoritmo SHA-256?

SHA - 256 es un algoritmo clásico para criptomonedas: sobre él se basa la principal criptomoneda, Bitcoin. En consecuencia, este algoritmo se utiliza en las bifurcaciones de Bitcoin: Bitcoin Cash, Gold, Diamond.

Además de ellos, SHA - 256 también se utiliza en:

  • Steem;
  • DigiByte;
  • PeerCoin;
  • NombreCoin;
  • TeckCoin;
  • Ocoin;
  • Zetacoin;
  • Moneda Emer.

Además, el algoritmo SHA-256 se utiliza como subrutina en la criptomoneda Litecoin, y el algoritmo principal para minar allí es Scrypt.

La función hash SHA 256 formó la base de la primera criptomoneda del mundo: Bitcoin y muchas altcoins. ¿Sabías que se creó mucho antes de la aparición de las criptomonedas y estaba destinada a fines completamente diferentes? Hoy veremos la historia del algoritmo, el principio de su funcionamiento, los problemas actuales y qué criptomonedas utilizan SHA256.

Historia

El nombre del algoritmo SHA 256 es un acrónimo de Secure Hashing Algorithm. Así lo llamó el desarrollador: la Agencia de Seguridad Nacional de Estados Unidos. El algoritmo es una función hash. Esto significa que su entrada es un volumen de datos de longitud arbitraria y la salida es un conjunto de caracteres de longitud fija, llamado hash.

Una de las características clave de las funciones hash hash es la irreversibilidad. Podemos obtener el hash pasando los datos originales a través de la función, pero conociendo el hash, no podremos obtener los datos originales. Gracias a esta propiedad, la función se ha generalizado en diversos servicios y aplicaciones donde se requiere protección de datos. Todos los días utilizamos el algoritmo SHA 256 cuando visitamos sitios en Internet. Incluye un certificado de seguridad SSL, que se requiere para establecer una conexión segura al sitio.


El algoritmo forma parte de la familia SHA-2, desarrollado sobre la base del SHA-1, que apareció en 1995. Desde sus inicios, la resistencia de sha256 ha sido probada exhaustivamente mediante criptoanálisis. El criptoanálisis prueba la resistencia de las funciones hash a dos tipos principales de ataques:
  • Encontrar colisiones: detectar hashes idénticos con diferentes parámetros de entrada. La tasa de éxito de este ataque compromete la seguridad de la firma digital utilizando el algoritmo actual.
  • Encontrar una preimagen es la capacidad de descifrar el mensaje original usando su hash. Este ataque compromete la seguridad del almacenamiento de hashes de contraseñas de autenticación.

El análisis se probó por primera vez en 2003, pero entonces no se encontraron vulnerabilidades. Con el paso del tiempo, se desarrolló la potencia informática. En 2008, se encontraron colisiones para las iteraciones SHA-512 y SHA-256. En septiembre del mismo año, se desarrolló un método para crear colisiones para 31 iteraciones de SHA256 y 27 iteraciones de SHA-512.

Evidentemente, ha llegado el momento de desarrollar una nueva función criptorresistente. En 2012, la NSA inventó el SHA-3. Poco a poco, el algoritmo actualizado desplazará a sus predecesores menos resistentes a las criptomonedas.

Minería en SHA 256

La ley estadounidense permite el uso de SHA y funciones hash similares como parte de otros protocolos y algoritmos en determinadas aplicaciones de seguridad de la información federales no secretas. SHA-2 puede ser utilizado por organizaciones privadas y comerciales.

No sorprende que se haya utilizado en criptomonedas. Los mineros recopilan todas las transacciones en un bloque y luego comienzan a procesarlo. Cuando se encuentra un valor hash que coincide con las reglas del sistema, el bloque se considera listo para adjuntarse al final de la cadena de bloques. El nuevo bloque lo encontrará alguien que pueda calcular valores hash muy rápidamente. La velocidad de los cálculos depende de la potencia del equipo. Se pueden utilizar tres tipos de equipos para extraer Bitcoin:

  • CPU (unidad central de procesamiento);
  • GPU (tarjetas de video);
  • ASIC (Dispositivo de aplicación específica).

La red Bitcoin está diseñada de tal manera que cada nuevo bloque debe encontrarse una vez cada 10 minutos. El número de participantes de la red cambia constantemente, pero el tiempo debe permanecer constante. Para garantizar tiempos de residencia iguales, el sistema ajusta la dificultad computacional en función del número de mineros. Las criptomonedas han ganado popularidad recientemente y la cantidad de mineros ha aumentado considerablemente. Para evitar que los bloques se encontraran demasiado rápido, también aumentó la complejidad de los cálculos.


Bitcoin comenzó a extraerse en procesadores. Luego, cuando su potencia se volvió insuficiente, cambiaron a tarjetas de video. Pronto las tarjetas de video ya no dieron abasto. Luego se inventaron los ASIC: dispositivos especiales diseñados para cálculos utilizando el algoritmo sha 256. Un ASIC es mucho más potente y energéticamente eficiente que varias tarjetas de video.

Los mineros emprendedores están creando enormes granjas a partir de ASIC. Además del elevado coste del propio equipamiento, una granja de este tipo recibe facturas de electricidad de varias decenas de miles de dólares cada mes. Ahora la minería de Bitcoin sólo tiene sentido en estas granjas industriales; una computadora doméstica o incluso una granja con varias tarjetas de video no podrá competir con ellas, ni siquiera recuperar la electricidad.

Sin embargo, esto es fácil de calcular. Existen calculadoras para calcular la rentabilidad de la minería en sha256. Por ejemplo, https://www.coinwarz.com/miningprofitability/sha-256. Ingrese el hashrate de su equipo (potencia de computación), el consumo de energía y su costo en el formulario, el servicio calculará su ganancia.

Altcoins SHA-256

Veamos la lista y la lista de criptomonedas que funcionan en sha 256.

Efectivo de Bitcoin (BCH)

Separado del mismo el 1 de agosto de 2017. El tamaño del bloque en Bitcoin clásico es de 1 MB. La red ha crecido tanto que ya no caben todas las transacciones en un bloque. Esto provocó la formación de colas de transacciones y un aumento de las tarifas por realizar pagos. La comunidad decidió introducir un nuevo protocolo, según el cual el bloque aumentó a 2 MB, parte de la información comenzó a almacenarse fuera de la cadena de bloques y el tiempo para volver a calcular la complejidad se redujo de dos semanas a un día.

Nombrecoin (NMC)

Es un sistema para almacenar y transmitir combinaciones de nombre-valor basado en la tecnología Bitcoin. Su aplicación más famosa fue el sistema de distribución de nombres de dominio, que es independiente de la ICANN y, por lo tanto, imposibilita la recuperación del dominio. Namecoin se lanzó en 2011 y se ejecuta en un software de minería de Bitcoin reenviado al servidor donde se ejecuta Namecoin.

DigiByte (DGB)

Una criptomoneda lanzada en 2013 con el objetivo de mejorar el rendimiento de Bitcoin y Litecoin. Diferencias de DigiBytes:

  • La baja volatilidad se logra gracias a la gran cantidad de monedas emitidas (hasta 21 mil millones), lo que garantiza su bajo costo y facilidad de uso en los cálculos;
  • Transacciones rápidas al duplicar el tamaño del bloque cada dos años;
  • Comisiones bajas o ninguna comisión;
  • El proceso de minería se divide en cinco algoritmos que le permiten extraer monedas de forma independiente. Puede utilizar ASIC para SHA-256 y Scrypt, tarjetas de video para Groestl y Skein y un procesador para Qubit.

El algoritmo SHA 256 es el más común entre las criptomonedas. Esto se debió a la popularidad y el éxito de Bitcoin y al deseo de los desarrolladores de altcoins de crear monedas similares. El aumento de la complejidad computacional impulsó a los mineros a buscar formas de minar de manera más eficiente, lo que resultó en la aparición de los ASIC.


El cifrado de Bitcoin se basa en SHA-256, un algoritmo especial que forma parte del código del programa. Su tarea es convertir los datos de entrada en un conjunto específico de caracteres (en representación alfabética y numérica) y proteger la información. Estas acciones se denominan hash. ¿Cuáles son las sutilezas de este algoritmo? ¿Por qué es necesario y cómo funciona? ¿Cuáles son las ventajas y desventajas? Consideraremos estos y otros puntos en detalle.

¿Qué algoritmo de cifrado tiene Bitcoin y dónde se utiliza?

Cuando se habla de criptomonedas, las características de su funcionamiento y su extracción, los participantes en la red criptográfica inevitablemente se topan con una definición tan extendida como la del algoritmo de cifrado de Bitcoin. Desde el día en que se desarrolló BTC hasta hoy (13 de agosto de 2018), se ha utilizado SHA-256, el cual es necesario para resolver los siguientes problemas en la red Bitcoin:

  1. Formación de direcciones BTC (utilizadas para transacciones).
  2. Minería (prueba de trabajo).
  3. Logrando el grado requerido de seguridad y anonimato.
  4. Para firma digital y su reconocimiento.
El algoritmo SHA-256 es relevante no sólo para Bitcoin, sino también para otras monedas, como Bitcoin Cash, Mazacoin, Peercoin, Namecoin y otras criptomonedas. Además, SHA-2 (la base de SHA-256) se utiliza para crear muchos protocolos diseñados para proteger datos en Internet, a saber, SSL, TSL y otros.

El algoritmo hash de Bitcoin es necesario para controlar la información mediante su análisis y la identificación oportuna de imprecisiones. Una vez que los datos han sido procesados ​​y convertidos en un hash, es imposible recuperar la información. Si toma un archivo BTC ya cifrado, vuelve a hacer los cálculos y asegúrese de que los parámetros hash sean idénticos, puede estar seguro de que no habrá cambios en la información original. Si los datos difieren, esto indica un hack del sistema.

Algoritmo de cifrado de Bitcoin: cómo funciona en palabras simples


SHA-2 se basa en el marco creado por Merkle y Damgaard. La peculiaridad de la función hash utilizada en criptografía es el enfoque no estándar para su formación. Los datos entrantes se dividen en bloques del mismo tamaño, después de lo cual los elementos creados se convierten a números hexadecimales. Es con ellos que posteriormente se realizan los cálculos. Se aplica una función hash al valor resultante y el resultado del procesamiento es la suma hash que aparece en la salida. Es un conjunto de caracteres presentados en visualización alfabética y numérica. Básicamente, esto es un hash.

El siguiente bloque se construye según el principio descrito anteriormente. En este caso se lanza un nuevo proceso tras la creación del elemento anterior. Si se realizan cambios en los datos originales, el hash cambia. En el caso de que de repente aparezcan parámetros idénticos de la función hash en diferentes bloques, se produce una situación de conflicto en el funcionamiento del algoritmo. Cuando se produce tal discrepancia, se pone en duda toda la cadena blockchain.

Por tanto, se utiliza una función hash para crear una firma digital. Si se produce la situación comentada anteriormente, existe una alta probabilidad de falsificación de firma. Para calcular tales fallas (colisiones), se utiliza una técnica especial que implica buscar entre los datos, lo que aumenta la fuerza de la función hash.

La exactitud del cifrado de Bitcoin está controlada por cuatro requisitos:

  1. Cuando realiza cambios en los datos entrantes, la cantidad de hash sigue siendo la misma.
  2. Durante el hash, se obtiene una suma hash individual (el conjunto de caracteres debe ser único).
  3. La creación de claves mediante hash es extremadamente complicada.
  4. Los hashes son irreversibles. Esto significa que se permite trabajar con datos de entrada sin posibilidad de realizar la acción inversa.

¿Cómo se aplica esto en Bitcoin?

La tarea de los nodos de la red de criptomonedas es encontrar entre numerosas transacciones una que se adapte a sus necesidades en todos los aspectos. Al evaluar opciones, la atención inicial se presta al tamaño de la comisión (por cierto, por esta razón, las transacciones con una comisión mayor se completan más rápido). A continuación se comprueba el funcionamiento, se estudian los datos de entrada y salida y se aclara la originalidad de la firma digital.

Tan pronto como se completa el trabajo considerado, se crea el siguiente elemento de la cadena Bitcoin (bloque) con un tamaño determinado (para la criptomoneda en cuestión, 1 megabyte). Los nodos resultantes constan de la versión, el tiempo de formación, dos hashes (bloque pasado y transacciones entrantes), así como parámetros adicionales que garantizan la unicidad (bits y nonce). En el complejo, el bloque creado se procesa muchas veces, lo que da como resultado la formación de un hash principal, que actúa como salida para el elemento "antiguo" de la cadena y como entrada para el nuevo.

Digamos que el conjunto hash contiene un número específico "0" (por ejemplo, el nonce es 17). Es extremadamente difícil seleccionar dicho valor utilizando únicamente la enumeración de valores. Es este aspecto el que garantiza la confiabilidad de la información en la red blockchain y su protección contra la piratería. Para crear un hash se necesita una potencia enorme, sin la cual es imposible encontrar el conjunto de caracteres necesario. Una vez completado este trabajo y encontrado el parámetro, se envía a los elementos de la red criptográfica con el bloque recién creado y el hash encontrado con 17 “0s”. A continuación, todos los participantes de la red Bitcoin verifican el hash, combinando el conjunto de caracteres con información del bloque. Si no hay colisión, aparece un nuevo elemento en la cadena blockchain.

¿Cuándo apareció el algoritmo de cifrado de Bitcoin? Una breve historia.


El término "SHA" es una abreviatura de tres palabras: "Algoritmo Hashing Seguro". Bitcoin usa SHA-256, y la "base" de la función hash mencionada es SHA-2, que incluye muchos algoritmos criptográficos (incluido el 256).

Los creadores de SHA-2 son la NSA de Estados Unidos, una agencia especial que se ocupa de las cuestiones de seguridad nacional del país. Después de desarrollar y probar el algoritmo, se lanzó al público en 2002. El nuevo SHA-2 también incluía la primera función hash SHA-1 (creada 7 años antes, en 1995). Desde la introducción de SHA-2, se han lanzado muchas variantes del algoritmo, una de las cuales fue utilizada por Satoshi Nakamoto al crear Bitcoin en 2009.

El objetivo de los desarrolladores era lanzar un algoritmo que asegurara la formación de un valor específico de cierta longitud a partir de un conjunto aleatorio de caracteres. Ellos lo hicieron. En el futuro, el parámetro resultante se utilizará para identificar (verificar) información. El propósito original de SHA-2 es proteger los datos de diversos servicios y hoy (en 2018) SHA-256 se conoce principalmente como un algoritmo utilizado en la minería de monedas.

En 2012, se mejoró el sistema y apareció una versión actualizada de la función hash: SHA-3. Se cree que con el tiempo el nuevo desarrollo desplazará a los algoritmos anteriores, lo que mejorará el ya alto grado de seguridad.

Características del algoritmo de cifrado de Bitcoin


La esencia de SHA-256 es simple. El mensaje inicial tras realizar la suma se divide en bloques, y cada uno de ellos tiene 16 palabras. Los elementos resultantes pasan por ciclos especiales que implican 64 u 80 etapas. En cada uno de ellos se convierten dos palabras y la opción de transformación se forma con las palabras restantes. Los parámetros resultantes se suman para formar un hash.

Durante el funcionamiento del algoritmo se utilizan 6 comandos:

  • "xor" - elimina "O".
  • “shr”: desplaza el indicador la cantidad requerida de bits hacia la derecha con una frecuencia específica.
  • “rots”: desplaza el indicador el número requerido de bits hacia la derecha (sin utilizar un ciclo específico).
  • “II” - una conexión de elementos de naturaleza lineal.
  • "y y".
  • “+” - seguimiento.
Características del protocolo:
  1. El límite superior de duración del mensaje es 33 B.
  2. El parámetro de velocidad máxima es 139 MiB/s.
  3. Tamaño de palabra: 4 B.
  4. El número de repeticiones en un ciclo es 64.
  5. El tamaño del elemento de bloque es 64 B.
  6. El código hash total es 32 B.

Algoritmo de cifrado de Bitcoin en minería


Al realizar cálculos en la minería, la exactitud del código hash resultante está determinada por la cantidad de ceros al comienzo de la línea. Por ejemplo, si este parámetro es 17, la probabilidad de encontrar ese número es extremadamente baja y ronda 1:1,4*10 elevado a la vigésima potencia. No es de extrañar que la minería de Bitcoin requiera el uso de equipos potentes y elevados costes energéticos. Al mismo tiempo, optimizar la búsqueda del hash requerido es imposible, porque después de recibir un bloque de información, aparece un número aleatorio en la salida.

La dificultad de extraer una moneda virtual es encontrar el hash requerido y formar el siguiente bloque. Para lograr este objetivo se utiliza la enumeración estándar de valores, lo que requiere equipos de alto rendimiento. Como se mencionó, la búsqueda no es de un simple hash, sino de un valor con una gran cantidad de "0" delante.

La minería de criptomonedas utilizando SHA-256 es un conjunto de medidas destinadas a resolver un problema criptográfico específico. En el caso de Bitcoin, para la minería se utilizan los siguientes equipos:

  1. Desde la aparición de BTC en 2009 y hasta mediados de 2010, el uso de una unidad central de procesamiento (CPU) fue relevante.
  2. Hasta mediados de 2011, los mineros utilizaban computadoras con tarjetas de video (GPU).
  3. Hasta principios de 2013, las FGPA eran populares, al igual que las granjas de GPU.
  4. En 2014 aparecieron los ASIC. Eclipsaron al equipo existente en rendimiento. A pesar de esto, hasta principios de 2017, los mineros usaban granjas de GPU y trabajaban en grupos, pero a finales de 2017 y hasta el día de hoy, solo los mineros son relevantes. El uso de otros equipos no es rentable.
Los dispositivos mencionados se utilizan para seleccionar la función hash de interés y generar una nueva. Cuanto mayor sea el hashrate (potencia de cálculo) del dispositivo, más rápido se ordenarán los datos y menos tiempo llevará encontrar una solución.

Con el aumento de la competencia y la liberación de mineros más productivos, también aumentan los parámetros cuyo parámetro cambia cada 2 semanas.

Debilidades y fortalezas del algoritmo hash de Bitcoin


Arriba vimos qué es el algoritmo hash de Bitcoin y cuáles son sus características. Este es SHA-256, que se considera el algoritmo más común con un alto nivel de confiabilidad y un principio operativo relativamente simple. Es muy resistente a la piratería y permite extraer monedas en cualquier equipo (según los parámetros de dificultad).

A pesar de una serie de cualidades positivas, el algoritmo hash de Bitcoin tiene una serie de debilidades:

  1. Control por parte de los participantes de la minería BTC. Aquí se aplica el mismo principio que en las sociedades anónimas (JSC), cuando los participantes de la empresa tienen un determinado número de acciones. Cuanto más poder se concentra en manos de los mineros de las redes criptográficas, mayor será su impacto en el sistema en general. Además, debido a la creciente complejidad de la minería en 2018, existe una notable tendencia a que la minería pase de manos de mineros privados al control de grandes organizaciones involucradas en la creación de equipos para extraer monedas virtuales. Para recibir Bitcoins, un minero privado debe gastar grandes sumas de dinero en la compra de ASIC, conectarse a uno de los pools y pagar la electricidad. Si se escatima en equipos, la producción pierde rentabilidad.
  2. Una consecuencia de la situación comentada anteriormente es el hecho de que la mayor parte de Bitcoins se concentra en manos de los propietarios de las grandes empresas mineras. Si tenemos en cuenta que no todos los Bitcoin recibidos salen a la venta, estas organizaciones se convierten en inversores y custodios de monedas. Como resultado, el número de monedas en circulación disminuye. Además, la acumulación de criptomonedas permite influir en la descentralización, así como en el tipo de cambio de BTC durante el proceso de negociación.
  3. Debido a las deficiencias existentes, el algoritmo SHA-256 se está convirtiendo gradualmente en una cosa del pasado y proyectos más avanzados están ocupando su lugar. Por ejemplo, Scrypt, Ethash, Blake-256, Equihash y otros están ganando popularidad. Los nuevos algoritmos tienen mejores niveles de protección y seguridad, lo que obligó a los creadores de muchas criptomonedas a abandonar el obsoleto SHA-256 en favor de tecnologías más avanzadas.
  4. A pesar de corregir los principales errores identificados por los desarrolladores, algunas vulnerabilidades no pudieron eliminarse (en 2008, se encontraron colisiones en 22 iteraciones). Es por eso que el desarrollo de SHA continuó y la segunda versión fue reemplazada por SHA-3.
En 2009, me vi obligado a utilizar SHA-256, porque durante la creación de la criptomoneda, los gobiernos estatales adoptaron este protocolo. En ese momento, se utilizaba activamente para la protección de datos en algunos programas gubernamentales y también en el sector comercial. Resultó que el protocolo fue creado para resolver ciertos problemas, pero en realidad tiene una demanda completamente diferente.

Para mayor claridad, tabulemos las características positivas y negativas del algoritmo de cifrado de Bitcoin.

VentajasDefectos
Generalizado (incluso en el sector de las criptomonedas). El protocolo SHA se utiliza activamente en la vida cotidiana para proteger la información.Pérdida de la descentralización. El poder está concentrado en manos de las empresas mineras.
Protección fiable contra robos.La iteración SHA tiene una estructura simple, lo que ha llevado a un aumento en la complejidad de la minería con el tiempo. A partir de agosto de 2018, solo se pueden utilizar ASIC de alto rendimiento para extraer Bitcoins.
Comodidad en materia de extracción de monedas, versatilidad en la elección de equipos para minería.Aparecen nuevos algoritmos que tienen una estructura más avanzada.
En la segunda versión (SHA-2), los creadores lograron eliminar una serie de deficiencias que afectaban negativamente la confiabilidad del sistema.A pesar del trabajo activo para solucionar los errores, muchas deficiencias no se eliminaron. No es de extrañar que los desarrolladores crearan una nueva versión de SHA-3.
El protocolo ha sido adoptado a nivel legislativo en los Estados Unidos.

Hoy en día casi no se utiliza en el desarrollo de nuevas criptomonedas. El ejemplo más sorprendente de una moneda que todavía usa SHA-256 es Bitcoin Cash, una bifurcación de Bitcoin que apareció en agosto de 2017. Pero en la situación de esta moneda, el uso de SHA es más una necesidad que una elección de los creadores. En cuanto al propio Bitcoin, el uso de este protocolo en serie se debe a la falta de alternativas por parte de Satoshi Nakamoto.

Hoy en día, en 2018, se habla mucho de mejorar este algoritmo y realizar cambios en la red de criptomonedas, pero hasta ahora tales intenciones no han encontrado una implementación física y se quedan solo en forma de propuestas.

Vídeo sobre funciones y algoritmos criptográficos:



¿Te gustó el artículo? Compártelo