cifrado de 2 vías de una cadena en una cadena numérica usando un número aleatorio

-1

Tengo un número aleatorio como 0.323978544752212 . Quiero cifrar una cadena usando este número aleatorio en una cadena numérica, es decir, la cadena final es como 020006122188063255154070154055012148007180040020199052197129206154016135 . Quiero crear una aplicación CGI y quiero usar este diseño de encriptación. ¿Cómo puedo lograr este tipo de cifrado.
Debería poder descifrar lo mismo usando el número aleatorio original. ¿También hay algún método predefinido / estándar disponible para el mismo?

    
pregunta Dheerendra 21.10.2014 - 09:11
fuente

2 respuestas

3

No tengo conocimiento de ningún sistema de cifrado específico y popularmente revisado. Si bien es posible que pueda rodar algo más específico, recomiendo usar cifrados comunes para satisfacer sus necesidades:

  1. Use una función de derivación de clave basada en contraseña (por ejemplo, Scrypt) para derivar una clave de un número aleatorio.

  2. Use un cifrado de cifrado común como AES, Blowfish, etc. para cifrar la cadena con la clave derivada.

  3. Convierta el resultado en formato base 10, que sería una 'cadena numérica'.

respondido por el Subrosa.io 21.10.2014 - 10:13
fuente
1

El pad de una sola vez suena casi exactamente lo que estás haciendo. Se vería algo como esto:

Genera una cadena de números aleatorios (base-10 o hex) lo suficientemente grande como para cifrar todo tu texto plano.

Convierta todo su texto plano en base-10 o hex.

Puede realizar una simple resta de dígitos a dígitos (sin acarreo) para cifrar el texto simple. Para revertirlo, simplemente agregaría los números (sin acarreo) de su libreta.

El ejemplo sería:

P-Text: 3487621899
Pad:(-) 1245631862
C-Text: 2242090037
Pad:(+) 1245631862
P-Text: 3487621899

Si no va a usar el número generado aleatoriamente para cifrar múltiples flujos de información, este es un método muy simple y muy seguro para cifrar la información. Cada vez que lo haga, querrá generar un nuevo conjunto de datos para cifrar la información.

Si planeas usar un cifrado actualmente existente para codificar múltiples piezas de información diferentes mientras usas un número generado aleatoriamente como un tipo de método de elección clave, solo generaría un número aleatorio como lo hiciste, multiplícalo por un llena valor hexadecimal ffffffffffffffff (para claves de 64 bits) FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF de claves de 128 bits, etc (cada carácter hexadecimal es 4 bits), y utilizar el valor hexadecimal resultante para ser una clave para cualquier cripto-esquema que desea utilizar. Entonces puedes base-10 y poof, hecho.

no hay necesidad de ser complicado;)

    
respondido por el Desthro 21.10.2014 - 20:20
fuente

Lea otras preguntas en las etiquetas