elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


 


Tema destacado: Deseas probar algunas mejoras a la interfaz del foro? Prueba cake! acerca de


+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Seguridad
| | |-+  Criptografía (Moderador: kub0x)
| | | |-+  Preguntas sobre RSA - Matemáticas
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Preguntas sobre RSA - Matemáticas  (Leído 4,020 veces)
nhaalclkiemr


Desconectado Desconectado

Mensajes: 1.677


Máximo exponente 9DB9F1AEED2FADBDE 997BBE20FEDA92


Ver Perfil WWW
Preguntas sobre RSA - Matemáticas
« en: 6 Octubre 2007, 02:24 »

Bueno, pues he estado mirando el algorítmo RSA que me pareció muy interesante, sencillo de entender y fuerte (uno de los más hoy en día)

Pues bien, tengo varias dudas con respecto a este algoritmo:



Primero, mi pregunta es posible saber d (clave privada o exponente privado) si sabes también el contenido original (m)?, por ejemplo, en este esquema:

p = 3                             (1º numero primo, privado)
q = 11                           (2º numero primo, privado)
n = pq = 33                    (producto de los dos número primos, público)
φ(n) = (p - 1)(q -1) = 20  (privado)
φ(n) + 1 = 21                 (privado)
m = 5                            (mensaje a cifrar)
e = 3                             (exponente de cifrado, público)
d = 7                             (exponente de descifrado, privado)


Los valores que puse son un ejemplo, esta es la leyenda que voy a usar todo el tiempo...

La formula para cifrar es:

r = me mod n

Para descifrar r:

m = rd mod n

Pues imaginaros que tenemos también m, que es el mensaje original y a partil de el queremos obtener d, lo que quiero saber es si está bien como hago yo...

Pues entonces despejamos rd y después d

rd=m+kn

d=logr(m+kn)

Es así ya que segun sabreis cuando haciais las divisiones en primaria la prueva de la división era dividendo=cociente*divisor+resto, el dividendo es rd, el resto es m, el divisor es n pero no tenemos el cociente y no lo podemos calcular pork depende de rd y no tenemos d, entonces k puede ser cualquier número, ya que 14 mod 5 = 2 y 7 mod 5 = 2, por eso pongo una constante k que es como mínimo 1 y como máximo el infinito (ya que no sabemos d), o eso pienso...

Weno me gustaría saber si esa teoría está bien, está claro que no sirve de mucho ya que no tenemos el valor de la constante...alguien sabe como se podría continuar para facilitar el encuentro de la constante k o alguna manera de teniendo el mensaje original (m) poder obtener d ????????



Ahora otra cosa aparte...hay una cosa que no entiendo...segun mi idea cifrar archivos con RSA es inseguro pork es muy vulnerable a fuerza bruta (cosa de la que estoy equivocado), pero entonces no me cuadra una cosa:

El rango que puede tener m a la hora de cifrar archivos es de 0-255 ya que son las posibilidades de un byte, pero entonces si tenemos n y e que son publicos y r que es el resultado final (que tambien lo tenemos) con hacer esto:


La formula para cifrar es esta:

r = me mod e

Pues con darle a m valores entre 0 y 255 y calcular r', si r'=r entonces m'=m y ya tenemos m

mi idea es esta:

Código
  1. Function CalcularM (ByVal n, ByVal e, ByVal r)
  2. For m = 0 to 255
  3. t = m^e mod n
  4. If t = r Then
  5. CalcularM = t
  6. Exit For
  7. End If
  8. Next m
  9. Exit Function

entendisteis no?, si m está en el rango 0-255 con crackear por fuerza bruta m solo son 256 posibilidades para cada byte y muy facil de calcular, sin tener que factorizar n y sería muy rápido averiguar la m original independiente de que p y q séan muy grandes y sin tener que averigual d. Pero entonces segun esto RSA sería muy pero que muy inseguro, en que me equivoco??



Weno pues estas son mis dudas, espero que alguien me ayude, saludos ;)


En línea

StasFodidoCrypter 1.0 - 100% (old)
StasFodidoCrypter 2.0 - 85% (deserted)
Fire AV/FW-Killer - 97% (deserted)
R-WlanXDecrypter 1.0- 100%
nhaalclkiemr


Desconectado Desconectado

Mensajes: 1.677


Máximo exponente 9DB9F1AEED2FADBDE 997BBE20FEDA92


Ver Perfil WWW
Re: Preguntas sobre RSA - Matemáticas
« Respuesta #1 en: 18 Octubre 2007, 00:23 »

A ver nadie me puede contestar...he oído hablar algo del padding de relleno de RSA, que es eso?? en la wikipedia viene poca información de como se hace

saludos ;)


En línea

StasFodidoCrypter 1.0 - 100% (old)
StasFodidoCrypter 2.0 - 85% (deserted)
Fire AV/FW-Killer - 97% (deserted)
R-WlanXDecrypter 1.0- 100%
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Foros sobre fisica, quimica o matematicas?
Foro Libre
$Edu$ 1 520 Último mensaje 18 Diciembre 2012, 18:20
por traviatØ
Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines