Resultados 1 al 6 de 6

Sacar el algoritmo del generador de claves de un programa

  1. #1 Sacar el algoritmo del generador de claves de un programa 
    Iniciado
    Fecha de ingreso
    Aug 2009
    Mensajes
    1
    Descargas
    0
    Uploads
    0
    Me gustaría saber si es factible sacar o deducir el algoritmo que usa el generador de claves o key generator de un programa, a través de un cierto número de claves válidas, comparando las claves entre sí buscando factores en común y de ahí sacar el algoritmo que usa el generador de claves para generar todas las claves válidas del programa.


    Para que se entienda, pongo un ejemplo muy simple:

    Para registrar un programa hay que introducir una clave que es un número del 0 al 9.

    Se dispone de 3 claves que se ha comprobado que son válidas que son: 2, 6 y 8.

    Comparando las claves válidas de las que disponemos se puede ver que todas las claves válidas son múltiplos del número 2, por lo que se puede deducir que el algoritmo del programa genera claves que son múltiplos del número 2, por lo que también serían claves válidas el 0 y el 4, se comprueba y así es.

    Una vez se tiene el algoritmo se puede programar un generador de claves que genera de forma aleatoria claves válidas del 0 al 8 con las que poder registrar el programa.



    Lo que me gustaría saber es si es factible llegar a los algoritmos complejos de los generadores de claves de los programas que generan claves del tipo "C6H28 R7F4C RQDV2 D8MCV TJKTW" de la misma forma, sin tener acceso a los archivos del programa, sólo comparando N claves válidas de las que disponemos.

    Por factible entiendo que el cálculo de las comparaciones tarde horas o días, no meses ni años.
    Citar  
     

  2. #2  
    Moderador HH
    Fecha de ingreso
    Feb 2002
    Ubicación
    México
    Mensajes
    1.156
    Descargas
    4
    Uploads
    0
    Sacar algún algoritmo sólo conociendo su output requiere un gran ingenio e intuición. No conozco ningún "método" para hacerlo.

    Un algoritmo Tn recibe un input 'm' para obtener un output 'p', es decir

    Tn(m) = p (Definición clásica de una máquina de Turing)

    Ahora bien, conociendo Tn y m es bien facil obtener p, incluso conociendo p y m en algunos casos es posible obtener Tn mediante procedimientos matemáticos. Pero si sólo conoces 'p' entonces la tienes difícil, dos máquinas de Turing diferentes pueden arrojar los mismos resultados durante una grande secuencia y no se sabrá que son distintas viendolas "desde fuera" hasta que se llegue a un resultado que lo demuestre.

    Si lo logras entonces no olvides compartirnos tu hazaña. Saludos.
    Mientras el mundo permanezca no acabarán la fama y la gloria de México-Tenochtitlan
    Citar  
     

  3. #3  
    Iniciado
    Fecha de ingreso
    Jun 2008
    Mensajes
    12
    Descargas
    0
    Uploads
    0
    Eso!! Si lo logras, avisa por aqui.

    A ver si puedo sacarle el jugo generando números para las tarjetas telefónicas !!

    Je,je,je,je (era un chiste)

    Es como dice Giskard, es ALTAMENTE improbable que puedas lograr obtener el algoritmo (aunque no imposible

    Saludos!
    -----------------
    MCKSys Argentina
    Citar  
     

  4. #4  
    Avanzado
    Fecha de ingreso
    Jun 2006
    Ubicación
    Valhala
    Mensajes
    1.167
    Descargas
    4
    Uploads
    0
    El tipo de clave complejas, es bastante dificil de intuir, ya que normalmente, realizan diversas operaciones sobre la misma clave, por ejemplo, crear de los primeros 4 digitos aleatoriamente, luego realizar un hash de 8 digitos a partir de esos 4, y después realizan un xor entre los primeros digitos y su hash, para obtener los últimos 8. Es un ejemplo de lo complicado que podría ser la pass, a veces incluso depender de cosas como el número de serie del programa o los datos de la máquina en la que está instalada.
    Por ello, la mejor opción, aparte de intentar adivinarlo por intuición, que es bastante complicado, yo me inclinaría por decompilar el programa, y hacer un debug para ver que ocurre con los datos paso a paso, de esa forma es relativamente más facil, encontrar el algoritmo de codificación para la clave.
    http://www.project-longinus.es
    Citar  
     

  5. #5  
    Moderador HH
    Fecha de ingreso
    Feb 2002
    Ubicación
    México
    Mensajes
    1.156
    Descargas
    4
    Uploads
    0
    Completamente de acuerdo, es relativamente más fácil hacerle ingeniería inversa al ejecutable que deducir el algoritmo viendo sólamente el output.

    Saludos.
    Mientras el mundo permanezca no acabarán la fama y la gloria de México-Tenochtitlan
    Citar  
     

  6. #6 Ayudaaa 
    Iniciado
    Fecha de ingreso
    Nov 2009
    Mensajes
    2
    Descargas
    0
    Uploads
    0
    Hola soy nuevo y comienzo en esto se lo basico y kisiera alguien k me ayude en este camino y bueno les dejo mi msn para k me agreguen y poder preguntarle y me ayuden gracias a toos los interesados y saludos a toosss
    Citar  
     

Temas similares

  1. Respuestas: 6
    Último mensaje: 31-03-2011, 17:51
  2. Generador claves wpa/wep para Android
    Por caiman500 en el foro REDES Y TECNOLOGIAS WIRELESS
    Respuestas: 3
    Último mensaje: 12-03-2011, 23:08
  3. Sacar un algoritmo conociendo ejemplos input y output
    Por conradodav en el foro INGENIERIA INVERSA
    Respuestas: 2
    Último mensaje: 27-05-2010, 20:13
  4. sacar las claves de encriptacion de un zip
    Por jocanor en el foro INGENIERIA INVERSA
    Respuestas: 2
    Último mensaje: 27-09-2002, 22:14
  5. Respuestas: 3
    Último mensaje: 09-04-2002, 15:49

Marcadores

Marcadores