Bueno, este no es demasiado complejo, pero divertido, no obstante.
Creé un programa que crea cifrados, usando claves aleatorias, que se generan cada vez que se ejecuta el programa. El texto plano se cifra, y luego la clave se almacena en el mismo archivo, que nuevamente se cifra utilizando un algoritmo diferente. Para decodificar el texto cifrado, el usuario debe ejecutarlo a través del mismo programa en modo de descifrado, que primero decodifica la clave y luego la usa para descifrar el resto del texto.
Lo bueno de esto es que la clave se encripta usando diferentes algoritmos (seleccionados al azar de un grupo de aproximadamente 100 métodos de cifrado) cada vez, y el método utilizado se refleja en el cifrado, por un solo número, que no es posible para un humano localizar, a menos que él sepa la lógica. El cifrado generalmente contiene muchos números, por lo que no es fácil de adivinar. Además, el programa permite diferentes longitudes de clave.
- ¿Por qué ocurre el peor de los casos en Max-Heapify cuando la fila final del árbol está medio llena?
- ¿Cómo se usa el algoritmo babilónico?
- Como principiante, ¿debería leer el libro CLRS antes de comenzar con Interviewbit?
- ¿Hay alguna diferencia en la asignación de memoria entre la estructura y la matriz multidimensional?
- ¿Un ingeniero de Google sacrificaría la legibilidad del código por el rendimiento?