¿La minería de bitcoin en sí misma está comprometiendo la seguridad de SHA256?

Siguiendo una buena práctica científica, propongo una teoría/hipótesis y ahora les pido que la prueben.

Inicialmente, este es un experimento "pensado", pero puede progresar a una prueba real dependiendo de sus pensamientos. Volviendo a la pregunta inicial primero; Mi pregunta: ¿La minería de bitcoin en sí misma compromete la seguridad de SHA256?

Respuestas posibles:

  1. Sí (tal vez calificado por "de alguna manera", etc.).
  2. No (en absoluto porque... xxx, no a menos que... YYY).
  3. Quizás (??).

La hipótesis es esta:

SHA256 se usa ampliamente en muchas aplicaciones (incluido Bitcoin). Sería una gran ventaja para muchas personas, organizaciones y (sobre todo) gobiernos/militares/NSA (etc.) poder "descifrarlo".

Hasta ahora, los expertos en criptografía no han logrado descifrar SHA256 y solo se han declarado una pequeña cantidad de defectos (posibles escenarios de colisión) que, aunque reducen la seguridad teórica (de un ataque de fuerza bruta), no comprometen SHA256 en el uso práctico.

Las tablas de búsqueda SHA256 existen, por ejemplo, para ataques de diccionario y son muy rápidas de usar, especialmente para contraseñas más cortas (<8 caracteres). Para ampliar la posibilidad de usar tablas de búsqueda para entradas más largas, se necesita una gran cantidad de potencia informática para ejecutar muchas entradas de Terra a través de SHA256.

Este poder no es práctico para configurar y ejecutar (costo de hardware, mano de obra, etc.) y si fuera configurado, por ejemplo, por la NSA usando una supercomputadora, su existencia sería evidente y, por lo tanto, el uso de SHA256 disminuiría, ya que se supondría que no harían eso a menos que pensaran que obtendrían un resultado para que los usuarios de SHA256 migraran a un sistema más seguro (por ejemplo, la serie SHA3). Por lo tanto, lo que la NSA (o quien sea) necesita es una forma "encubierta" de "probar/ejecutar" SHA256 y recopilar los resultados.

¿La minería de bitcoin con su potencia diaria de más de 4000 TH/s, financiada y gestionada en su totalidad por usuarios del hardware que esperan ganar Bitcoins (y esperan que valgan algo de dinero real) realmente presta un servicio para la NSA (o alguien) y de manera efectiva? "ocultos a plena vista"?

Se invita a los métodos para probar esta hipótesis.

Pregunta relacionada: ¿Ha creado la minería suficiente tecnología para resolver SHA256, como los ASIC, que SHA256 es más débil para otros fines de lo que sería de otra manera? En otras palabras, ¿pueden ahora la NSA, sus contrapartes extranjeras y otros piratas informáticos descifrar algo más fácilmente que antes de la llegada de los ASIC SHA256?
Esto tal vez debería publicarse como una pregunta separada y vincularse.
Gracias Random Walker por darle un giro diferente a mi pregunta. Ciertamente, ahora hay una gran cantidad de hardware específico de SHA256 en manos de los mineros de bitcoin y se ha mejorado el desarrollo de ASIC para SHA256. ¿Quién sabe cuántos chips ASIC se han vendido "en otros lugares" (aparte de la fabricación de plataformas mineras)? Ciertamente ayuda a compensar el costo de desarrollo si tenemos una base de clientes del mundo real (mineros), así como una empresa de descifrado de códigos XXX.

Respuestas (4)

Con una tabla de búsqueda puede evitar calcular el hash de una entrada dada dos veces. De hecho, la cadena de bloques se puede considerar como una tabla de consulta gigante, pero con formas de entrada muy especiales: vincula bloques y transacciones a sus hashes.

Sin embargo, ¿por qué alguien debería elegir una transacción o un bloqueo como su contraseña? Además, ¿por qué un atacante intentaría siquiera buscar un hash de una contraseña en la cadena de bloques? Tendría que asumir de antemano que la contraseña es una transacción o un bloque (no olvide que incluso buscar algo consume algunos recursos).

Cierto, pero el objetivo tiene un formato muy específico que comienza con muchos 0000, por lo que también está probando entradas hash para crear un subconjunto específico de posibles salidas. No estoy sugiriendo que los resultados de los hashes de minería de bitcoin sean los datos sin procesar para la tabla de búsqueda, pero son útiles para crear una tabla de búsqueda más grande. Las contraseñas que se usan generalmente tienen menos de 12 caracteres, por lo que el hash SHA256 de 2 contraseñas cortas diferentes tiene una gran cantidad de la misma entrada (caracteres en blanco) cf target 000000s.
Para una contraseña de 12 caracteres, incluso suponiendo que cada carácter use 8 bits completos, puede probar exhaustivamente cada hash más rápido (evaluando 2^96 hashes) que encontrar una única colisión aleatoria en el hash completo (que, en promedio, requeriría evaluar 2 ^ 128 hashes). Los otros mineros le brindan menos ventaja de la que obtendría al usar sus máquinas para intentar registrar cada hash que hacen, e incluso entonces esta potencia informática sería demasiado lenta para ayudar.
Reduciría la cantidad de trabajo que necesitaría para hacer una tabla completa si eso es lo que está tratando de hacer. Cuán útil es esta parte en sí misma es una buena pregunta.
Echa un vistazo a crackstation.net. Tienen una tabla de búsqueda parcial para SHA256 para contraseñas cortas, funciona y es rápida.

Difícilmente. Si bien tiene razón en que lo que la gente está haciendo es una búsqueda masivamente paralela de colisiones de hash SHA256 dobles para hacer hash de salidas cercanas a cero, solo puede aprovechar el resultado si realmente encuentra una colisión.

Entonces, ¿con qué frecuencia podemos tener una colisión? Si no fuera por Bitcoin, con 2 ^ 256 entradas posibles y se cree que el hash no tiene ninguna debilidad, estadísticamente esperaría que tenga que probar 2 ^ 128 o alrededor de 10 ^ 38 hashes para encontrar una sola colisión en lo que se llama un ataque de cumpleaños. Sin esperanza hoy y mañana.

Con Bitcoin, puede esperar aprovechar los hashes que los mineros encontraron y publicaron en la cadena de bloques. Hay dos problemas: en primer lugar, solo ve estos bloques publicados, por lo que la ventaja consiste en tener ayudantes para reducir las 2^256 posibilidades, no la raíz cuadrada del número resultante (la cantidad esperada de hashes conocidos que necesita para un ataque de cumpleaños). Pero por el bien del argumento, digamos que ustedes son los mineros y registren cada hash que prueben. Entonces, todo lo que Bitcoin le brinda es una recompensa por hacer funcionar su máquina, actualmente con alrededor de 6000 Tera hashes por segundo. Con tal computación, aún necesitará, estadísticamente,> 10 ^ 15 años para obtener una sola colisión de hash. Diría que no hay peligro de doble-SHA256 a partir de esto (y, por el mismo argumento,

Considero que una colisión es solo una posible debilidad de cualquier SHA. Todos los SHA deben, por definición, tener posibles colisiones donde la salida es más corta que la entrada. Descubrir uno o más será una debilidad que se puede explotar, pero la probabilidad de colisiones ya es inferior a 2 ^ 128, creo que vi una referencia a 2 ^ 50 en alguna parte. Claramente sigue siendo un número masivo para un ataque de fuerza bruta, incluso teniendo en cuenta la probabilidad de cumpleaños. Sin embargo, puede haber otras debilidades en SHA256 (aún no lo sabemos) y el uso de la potencia informática masiva como la minería bien puede revelar algo más.
¿Puedes elaborar? O, mejor aún, ¿referencia? Que yo sepa, ni siquiera la obsoleta familia SHA-1 está tan rota, solo SHA-0.
A ver si lo vuelvo a encontrar, lo vi hace un par de días.
Según mi comprensión limitada, la presunción del OP tiene la posibilidad de convertirse en un riesgo (en el sentido mencionado por el OP) SI hay "otras debilidades en SHA256". Por supuesto, agregar un "que aún no se ha hecho público" a la frase original cambia la perspectiva de esta idea. ¿Por qué le importaría a la NSA usar la red para sus servicios cuando todo lo que se necesita para evadir esto sería encriptar lo que debe encriptarse usando SHA3 (ejemplo mencionado) y dejar la minería de bitcoin en SHA-256?
El usuario A requiere un código secreto para enviar mensajes a sus aliados A',A", etc. Enemigo B ídem B',B". A quiere descifrar B y viceversa. A también desea promover otro código que, según afirma, es secreto para su propia gente, comercio, etc., pero que en realidad no lo es (conocido como puerta trasera o crack). Ídem B.
Cuando haya averiguado quién es A, etc., B, etc. donde encajan SHA256 y SHA3, etc. tendremos una mejor comprensión. La criptografía es solo el 40% de esto, al menos el 40% es Psicología y el resto es una especie de Juego de múltiples capas. Intente retroceder y mirar las cosas desde una perspectiva diferente a la que está acostumbrado, tenga la mente abierta y vea lo que parece interesante/extraño/diferente.
"Solo puedes aprovechar el resultado si realmente encuentras una colisión". Actualmente, esto sería pura suerte. Si esto sucediera, no estaríamos más lejos de saber cómo generarlos. Supongo que un frenesí masivo comenzaría a tratar de averiguarlo, pero eso sería todo. Todavía puede ser que el universo nos esté gastando una broma al hacer que suceda algo extremadamente improbable.

Respuesta teórica: sí y no.

Respuesta práctica: en absoluto.


SHA-2, o específicamente SHA-256, es un buen algoritmo hash hasta donde sabemos. Tiene todas las propiedades deseadas y no hay ataques reales contra él. Ya se ha probado mucho en batalla en los últimos años. El hecho de que Bitcoin use SHA-256 lo convierte en un algoritmo aún más interesante para intentar descifrar (ahora hay 'dinero' detrás), y con todos los productores de ASIC apareciendo, se vuelve menos trabajo crear también ASIC que intenten descifrar contraseñas cifradas. con este.

Entonces, con toda la atención adicional que recibe SHA-256, ahora es más probable que se encuentren fallas más temprano que tarde. Sin embargo, SHA-2 es un algoritmo muy utilizado, independientemente de su uso en Bitcoin. Si hubiera fallas grandes y obvias, ya se habrían encontrado.

Se puede comparar con RSA, que ahora impulsa muchas de las transacciones financieras y conexiones cifradas actuales. Eso también llama mucho la atención, pero los buenos algoritmos no se vuelven malos solo porque están en la imagen.

Entonces, si bien toda la producción adicional de ASIC para la minería de Bitcoin también puede proporcionar mejores herramientas para descifrar contraseñas y atraer a más personas a mirar el algoritmo, esto no es un problema práctico. Además, no debe usar SHA-2 directamente como mecanismo de hash de contraseña de todos modos. Para eso, vea esta pregunta: https://security.stackexchange.com/q/211/10863

Editar: lea su pregunta más a fondo ahora en lugar de responder al título.

¿La minería de bitcoin con su potencia diaria de más de 4000 TH/s, financiada y gestionada en su totalidad por usuarios del hardware que esperan ganar Bitcoins (y esperan que valgan algo de dinero real) realmente presta un servicio para la NSA (o alguien) y de manera efectiva? "ocultos a plena vista"?

No. Eso es solo un engaño de papel de aluminio y ni siquiera vale la pena el "experimento mental" (buen intento, teórico de la conspiración) ya que puede ser refutado fácilmente. Vea otras respuestas sobre lo que estamos codificando (pista: no estamos encontrando hashes para contraseñas reales u otros propósitos).

Independientemente de cualquier teoría de la conspiración. El hecho de que las máquinas ASIC ahora estén disponibles comercialmente (tanto hardware como sistemas completos) facilita que cualquier agencia las compre y las use. En mi opinión, esto compromete a SHA-256.

Sí, hace que un sha256 sea más fácil de adivinar, comprando ASICS dedicados. Scrypt es un mejor hash porque puede modificar el requisito de RAM hasta el punto en que los ASIC no son prácticos.