[INVESTIGACIÓN] PS3 EPIC FAIL ¿Como lo pondrías en práctica?

Ya se ha mencionado que el team overflow centrara la practica del método expuesto en el AbestOS. Si es posible que ya existan otros equipos trabajando en dicho método para firmar los ejecutables. Pueden pasar días o meses antes de que veamos un software que permita calcular las Keys necesarias para firmar nuestros ejecutables.

Pero... a ver. mientras existe la espera ¿Por que no adelantamos un poquito?. A modo de reto, experimento o simplemente ociosidad?

En este foro no solo existen usuarios, también hay programadores en los cuales me incluyo. Por lo que este mensaje va directamente a ellos. Si sale antes buenisimo! pero mientras... Intentemos lo! (en la medida de lo que sea posible).

Por eso la siguiente pregunta:

Tu programador, habiendo visto la conferencia ¿Que métodos se te vienen a la mente para conseguir la clave de encriptación?

Utilicemos este hilo para exponer nuestras propias ideas! ;)

********** Links de interes ********

-Para los que nunca han tocado el tema:
Url: http://williamstallings.com/Crypt-Tut/Crypto%20Tutorial%20-%20JERIC.html
Contenido: Muestra un ejemplo bastante básico de como funciona la encriptación por claves.

-Librerias Crypto++
URL:http://www.cryptopp.com/wiki/Diffie-Hellman
Referencias API: http://www.cryptopp.com/docs/ref/
Contenido: Una libreria muy interesante que encontré que permite la encriptación por varios métodos incluyendo el ECDSA

******************************
PD: Aun me encuentro empapandome en el tema de la encriptación algo que me parece realmente muy interesante y nada del otro mundo aunque mucha matemática lleve eso si, apenas tenga algo sólido con que trabajar aportare mis ideas.
FACTORIZACION..............curvas elipticas.

Factorización: RSA, Rabin
•RSA (Rivest-Shamir-Adleman) es el algoritmo de llave pública mas utilizado generalmente. Puede ser utilizado para la encriptación como para las firmas digitales. La seguridad del RSA el generalmente considerada equivalente a la factorización, aunque esto no se ha comprobado.

Los cálculos del RSA se realizan con el módulo entero n=p*q, para dos primos grandes y secretos p y q.

Mas detalles estan disponibles en muchos recursos, tal como en el Manual de criptografía aplicada.

El tamaño de la llave (el tamaño del módulo) debería ser mas grande que 1024 bits (esto es, debe ser de la magnitud de 10^300) para un márgen razonable de seguridad. Llaves de tamaño, sopongamos, de 2048 bits deberían brindar seguridad por décadas.

Grandes avances en la factorización de enteros largos podrían hacer vulnerable al RSA, pero se conocen también otros ataques contra variantes específicas. Buenas implementaciones utilizan redundancia para evitar ataques utilizando la estructura multiplicativa del texto cifrado. RSA es vulnerable a los ataques de texto plano seleccionado y ataques de hardware y de fallas . También existen ataques contra muchos pequeños exponentes, así como también contra factorizaciones parciales reveladas del módulo.

Las implementaciones apropiadas del algoritmo RSA con redundancia es bien explicada en el estandar PKCS (ver la definición en el laboratorio RSA).

El algoritmo plano RSA no debería ser aplicado en ninguna aplicación. Se recomienda que las implementaciones sigan el estandar pues tiene también la ventaja adicional de la inter-operabilidad con la mayoría de los protocolos más importantes.

El RSA es el algoritmo de llave pública más importante. Fue patentado en los Estados Unidos (la patente expiró en el año 2000).

•El criptosistema Rabin debe ser visto como un "pariente" del RSA, aunque tenga un proceso de decodificación muy distinto. Lo que lo hace interesante es que romper Rabin es probablemente equivalente a factorearlo.

Rabin utiliza el exponente 2 (o aún cualquier entero) en lugar de un entero peculiar como el RSA. Esto tiene dos consecuencias. Primero, se puede probar que el criptosistema Rabin es equivalente al factoreo; segundo, la desencriptación se hace mas difícil, al menos en algunos aspectos. Como es equivalente a factorear el módulo, el tamaño del módule es el parámetro de seguridad más importante. Módulos de mas de 1024 bits se asumen como seguros.

No hay actualmente un estandar para el algoritmo Rabin pero es explicado en varios libros. El proyecto IEEE P1363 podría proponer un estandar y de esta manera hacerlo ampliamente utilizado.

Equivalente a factorear significa solo que ser capaz de desencriptar cualquier mensaje encriptado por el criptosistema Rabin permite factorear el módulo. De esa manera no hay garantías de seguridad en un sentido fuerte.


pd: a modo de ejemplo si cada usuario factorizara una porcion de llamalo x.......cuanto tiempo se tardaria? usando pcs? usando las propias ps3?
Los cálculos del RSA se realizan con el módulo entero n=p*q, para dos primos grandes y secretos p y q.


Hasta donde entiendo con "p" y "q" obtienes "n" que es el número aleatorio al cual se refieren que es una constante (corrijan me si me equivoco).

Creo que podríamos empezar analizando las fórmulas que se utilizaron en la conferencia.
No te mates necesitas las claves parametros publicos, que no se ha mencionado como se obtienen, y luego saber matematicas suficientes para inferir la clave privada a partir de dos archivos cifrados con la misma clave. Marcan dijo que sacaria las tools en un mes. Si te ves capaz de ponerte al dia en criptografia en un mes o eres un genio o te vas a comer los mocos. Ser programador puede serlo todo el mundo. Ser hacker es solo para unos pocos.
Vrsquid escribió:No te mates necesitas las claves parametros publicos, que no se ha mencionado como se obtienen, y luego saber matematicas suficientes para inferir la clave privada a partir de dos archivos cifrados con la misma clave. Marcan dijo que sacaria las tools en un mes. Si te ves capaz de ponerte al dia en criptografia en un mes o eres un genio o te vas a comer los mocos. Ser programador puede serlo todo el mundo. Ser hacker es solo para unos pocos.


Si bueno tienes razón. Lo que sucede es que este tipo de retos te animan a aprender campos nuevos. Soy del que se alegra al ver que algo funciona pero más al saber como funciona. No se, es una especie de piquiña de programador, y mas cuando puedes aportar algo útil.

Podrías explicar un poco sobre las claves de parámetros públicos?. Por lo menos para que el hilo se convierta en un lugar informativo para cualquier cosa relacionada con el tema el cual es a mi parecer muy interesante.
4 respuestas