En este trabajo primero definimos formalmente qué es la criptografía y sus principales metas.
Se implementa el esquema de clave simétrica por sustitución polialfabética; nuestra tarea es la de interpretar los archivos como sucesiones finitas de números del conjunto {0,...,255}, representar en archivos las permutaciones de ese conjunto y proceder con estas estructuras a la encriptación y desencriptación.
Seguidamente con modelos matemáticos más firmes definimos esquemas de clave pública; aquí se necesita una implementación de una aritmética de números grandes, definir algoritmos sobre estas estructuras de datos, principalmente para probar la primalidad de grandes números impares. Así con una interpretación de archivos de cualquier tipo en sucesiones finitas de números grandes, podemos aplicar el esquema RSA, encriptando y desencriptando.
Siguiendo el mismo patrón, firmamos cualquier tipo de archivos, resumiéndolos mediante una función hash, y recién aplicamos el DSA. Se implementan los algoritmos de firmado y verificación.
Con todo esto tenemos asegurados los cuatro postulados de la seguridad de la información que se buscan con la criptografía: confidencialidad, integridad de los datos, autentificación del ente y del origen de datos, y desconocimiento o no repudio.