On Jul 5, 12:14 pm, Alan M Dunsmuir <a...@moonrake.demon.co.ukwrote:
I'm writing a Web application using PHP5 connecting to a MySQL database.
I've told the client's application administrator to look after back-ups
of the database by using the "Export" option in phpMyAdmin to
automatically copy the database contents (recorded as SQL statements) to
his desktop.
Is there some way I can include encryption in this download process?
(And equivalently, decryption should he need to restore the database
from a backed up copy?) He is running a Windows machine, so for him to
do this locally, as a separate step, would require the use of some
Windows encryption code, and would risk his leaving a open text version
of the database on his desktop for anybody to see.
Here is my simple mcrypt training script works on Linux PHP-5.2.6-26
a konsole program by the way.. You need libmcrypt-2.5.8 and PHP-5.2.6
compiled with mcrypt support.
<?php
// Boris The Scripter =) 2008 Licence:GPL-2
// usage: php fubar.php <key[-e/-d] <filename>
if($argc <= 4 && is_file($argv[3]))
{
$input_file_addr = $argv[3];
$input = file_get_contents($input_file_addr);
$key = $argv[1];
if($argv[2] == "-e")
{
$encrypted_data = @mcrypt_ecb(MCRYPT_RIJNDAEL_256, $key, $input,
MCRYPT_ENCRYPT);
//echo $encrypted_data . "\n";
$fp = fopen($input_file_addr,"w");
fwrite($fp,$encrypted_data);
fclose($fp);
}
else if($argv[2] == "-d")
{
$encrypted_data = @mcrypt_ecb(MCRYPT_RIJNDAEL_256, $key, $input,
MCRYPT_DECRYPT);
//echo $encrypted_data . "\n";
$fp = fopen($input_file_addr,"w");
fwrite($fp,$encrypted_data);
fclose($fp);
}
}
else echo "Program made a boo boo!\n";
?>