Encontrar algoritmo: De 9 cifras a 8 cifras

Iniciado por dualbit_2, 18 Noviembre 2010, 07:58 AM

0 Miembros y 1 Visitante están viendo este tema.

dualbit_2

Hola a todos, espero que por ser newbie, ya lei las normas y espero que este post tenga algo de calidad como indican.

Intento descifrar un algoritmo que convierte una numero de 9 digitos en 8, realmente parece sencillo pero aun no consigo deducirlo.

Tengo varios ejemplos, este seria un caso de criptoanalisis de tipo Ataque con texto plano conocido, segun wikipedia.

Pongo estos:


CIFRADOTEXTO_PLANO
91675841200924996
91675842200924997
91666003200915677
91666008200915681

Algunos datos extras son:
- Todos comienzan con 2000, es decir las primeras 4 cifras indican el año, los años seguros son 2008, 2009 y 2010.
- Note que todos los cifrados tienen en comun el 916 como principio.

La verdad que parece muy facil, pero aun no hallo el truco.

PD:Tengo otra pista, sucede que esto va en una url que se obtiene por get y la variable es PIDM
este numero de 9 digitos es una matricula por eso comienza por el año.

Seria ?PIDM=91675841

y devuelve el texto plano


MOD: No hagas double posting por favor.

APOKLIPTICO

Bueno, bienvenido, y enhorabuena por ser uno de los pocos nuevos del foro que leyó las reglas, pero se te salteó una, el double posting, si necesitas agregar algo, hacelo con un PD y una modificación del post.

Estuve viendo lo que pusiste, todavía me quedan hacer algunas pruebas, pero por ahora ya vi que no hay correlación lineal (osea plaintext + c <> ciphertext), tampoco es un xor, lo seguiré analizando por partes.
Lo que podría ayudar es lo siguiente: De que programa se trata?

Abrazo
APOKLIPTICO
AMD Phenom II 1075T X6 @ 290 Mhz x 11 (HT 2036 Mhz NB Link 2616 Mhz) 1.23 Vcore
ASUS M4A89GTD-PRO/USB3
2x2gb G-Skill RipjawsX DDR3 1600 Mhz CL7 (7-8-7-24-25-1T)
Seagate 500 Gb
XFX HD4850 512Mb GDDR3. 650 Mhz/995 Mhz 1.1 Tflops.

dualbit_2

Es un ejercicio, viene de una página web en la que la variable se introduce por URL (o sea por el método GET) por medio de php descifra el código y devuelve la matricula original.

Lo curioso es que en algunos casos probando datos al azar, en ocasiones al cambiar de 91675841 a 91575841 devuelve la matricula como 2089. No se si esto aporte algo.

Gracias por responder.