cómo identificar texto sin formato desde cifrado [cerrado]

-3

Estoy tratando de encontrar qué algoritmo de cifrado se ha utilizado en este código

original text: 11011698
encrypted text/cipher:  uIC4hZFECIAYMi%20FWxamjQ==

original text:11008569
encrypted text/cipher:  ct2bHNmgahZYKTbh/8LQRw==

¿Alguien puede ayudar?

    
pregunta toukir 20.04.2013 - 22:15
fuente

2 respuestas

4

La codificación del texto cifrado parece ser base64 . La codificación Base64 a menudo termina con un doble signo igual para el relleno y utiliza caracteres de [A-Za-z0-9], así como dos caracteres adicionales, normalmente + y /, aunque existen variantes . Ambos parecen ser de 16 bytes (desde el relleno); pero parece que hay un problema con el primero; ya que tiene un carácter% que no se usa comúnmente en base64. Posiblemente sea un espacio codificado como URL ya que %20 es un espacio. Supongo que el símbolo número 62 (comúnmente a +) puede haberse convertido a% 20. Entonces sería base-decodificar a los bytes: b8 80 b8 85 91 44 08 80 18 32 2f 85 5b 16 a6 8d

La segunda base64 se decodifica a 16 bytes (128 bits):

72 dd 9b 1c d9 a0 6a 16 58 29 36 e1 ff c2 d0 47

Hay muy poca información adicional a la que ir, sin conocer la clave secreta; pero es probable que sea un cifrado de 128 bits como AES-128.

Una función criptográfica segura debe ser indistinguible para cualquier atacante en tiempo polinomial de una función puramente aleatoria desde la perspectiva de alguien que no tiene la clave. Conocer el texto en claro y el texto cifrado para un puñado de valores no proporciona información sobre el cifrado utilizado (aparte de la longitud del texto cifrado) o la clave, a menos que el cifrado subyacente sea muy defectuoso.

Además, si se equivoca, es posible que hayan utilizado una función hash de 128 bits en lugar de cifrado; por ejemplo, md5. Sin embargo, este no parece ser el caso. (Por ejemplo, 72dd9b1cd9a06a16582936e1ffc2d047 no parece estar en ninguna búsqueda inversa de md5 y algunas pruebas futuras de su cadena tampoco parecen funcionar.

    
respondido por el dr jimbob 20.04.2013 - 22:26
fuente
0

El primer carácter codificado uIC4hZFECIAYMi% 20FWxamjQ == es la concatenación de dos palabras separadas por un espacio. El espacio está indicado por% 20 en el texto codificado en base64. El hexadecimal de la primera palabra es: b8 80 b8 85 91 44 08 80 18 32 (en texto plano son dos caracteres no ASCII seguidos de D2). La segunda parte del texto codificado FWxamjQ == es la codificación base64 de la palabra ASCII lZ4.

    
respondido por el void_in 20.04.2013 - 23:01
fuente

Lea otras preguntas en las etiquetas