encode_file()

encode_file(<nombre de archivo>, <clave>)

Descripción:

Encripta uno o varios archivos del disco con una clave determinada. Los parámetros necesarios son los siguientes:

<nombre de archivo> - Descripción del archivo que debe encriptarse, un literal (texto entre comillas) con el nombre del mismo. Pueden utilizarse los carácteres comodín "?" y "*" para especificar varios archivos (por ejemplo, "*.BAK" para encriptar todos los archivos con extensión BAK).

<clave> - Otro literal con la clave de encriptación del archivo o archivos.

El algoritmo de encriptación es muy complejo, por lo que cualquier archivo encriptado con una clave únicamente se podrá recuperar aplicándole la misma mediante la función decode_file(). De no realizarse dicha operación, el archivo resultante será totalmente inútil, siendo imposible recuperar los datos contenidos en él.

No podrán encriptarse por segunda vez los archivos que ya están encriptados.

Programa ejemplo:
PROGRAM ejemplo_encode_file;

CONST
    clave="miclave";

GLOBAL
    mitabla[]=0,1,2,3,4,5,6,7,8,9,10,11,12,13,14;

BEGIN
    save("help\help.enc",OFFSET mitabla,sizeof(mitabla));

    encode_file("help\help.enc",clave); // Encripta el archivo
END


Este pequeño programa utiliza la función save() para crear un archivo llamado help.enc con los datos contenidos en mitabla, y entonces lo encripta con la función encode_file().

Puede observarse como el contenido del archivo creado (dentro del directorio help\) no guarda ninguna relación con los datos originales (sea cual sea la clave de encriptación).


Existe otra función denominada encode() que permite encriptar y desencriptar datos en memoria, en este caso la operación es reversible, por lo que se utiliza la misma función para ambas operaciones.


Nota: Las funciones compress_file() y uncompress_file() permiten comprimir y descomprimir archivos del disco. Los archivos encriptados no podrán comprimirse con dichas funciones (debido a que su contenido es completamente aleatorio).


Ver: encode() - decode_file() - compress_file() - uncompress_file()