Datei mit Mcrypt verschlüsseln / entschlüsseln

Versucht, zu schreiben ein paar Funktionen, die verschlüsseln oder entschlüsseln einer Datei und bin mit der Klasse gefunden hier, um zu versuchen und erreichen das:

http://www.itnewb.com/v/PHP-Encryption-Decryption-Using-the-MCrypt-Library-libmcrypt

Die Verschlüsselungs-Funktion unter zu funktionieren scheint, dass es scheint, verschlüsseln Sie die Datei und legen Sie es in das vorgesehene Verzeichnis. Ich versuche die Datei zu entschlüsseln jetzt, und es stirbt mit der Meldung "konnte nicht abgeschlossen Entschlüsselung" (kodiert es...) Es gibt nichts in die php error logs, also ich bin mir nicht sicher, warum es ist, zu scheitern, aber wie mcrypt ist völlig neu für mich, ich bin mehr als geneigt zu glauben, dass ich was falsch mache hier...

Hier sind die Funktionen:

//ENCRYPT FILE
    function encryptFile() {
        global $cryptastic;
        $pass = PGPPASS;
        $salt = PGPSALT;
        $key = $cryptastic->pbkdf2($pass, $salt, 1000, 32) or die("Failed to generate secret key.");

        if ($handle = opendir(PATH.'/ftpd')) {
            while (false !== ($file = readdir($handle))) {
                if ($file != "." && $file != "..") {
                    $newfile = PATH.'/encrypted/'.$file.'.txt';
                    $msg = file_get_contents(PATH.'/ftpd/'.$file);
                    $encrypted = $cryptastic->encrypt($msg, $key) or die("Failed to complete encryption.");
                    $nfile = fopen($newfile, 'w');
                    fwrite($nfile, $encrypted);
                    fclose($nfile);
                    unlink(PATH.'/ftpd/'.$file);

                }
            }
            closedir($handle);
        }       


//DECRYPT FILE
    function inFTP() {
        global $cryptastic;
        $pass = PGPPASS;
        $salt = PGPSALT;
        $key = $cryptastic->pbkdf2($pass, $salt, 1000, 32) or die("Failed to generate secret key.");

        if ($handle = opendir(PATH.'/encrypted')) {
            while (false !== ($file = readdir($handle))) {
                if ($file != "." && $file != "..") {
                    $newfile = PATH.'/decrypted/'.$file;
                    $msg = PATH.'/encrypted/'.$file;
                    $decrypted = $cryptastic->decrypt($msg, $key) or die("Failed to complete decryption.");
                    $nfile = fopen($newfile, 'w');
                    fwrite($nfile, $decrypted);
                    fclose($nfile);
                    //unlink(PATH.'/encrypted/'.$file);

                }
            }
            closedir($handle);
        }       
        //$crypt->decrypt($file);
    }

InformationsquelleAutor der Frage whitman6732 | 2010-03-15

Schreibe einen Kommentar