Ouvrir fichier crypté

Fermé
Utilisateur anonyme - 25 janv. 2013 à 00:54
gardiendelanuit Messages postés 1769 Date d'inscription jeudi 20 décembre 2007 Statut Membre Dernière intervention 19 novembre 2016 - 12 mars 2013 à 16:27
Bonjour ou plutôt bonsoir,

J'aimerais ouvrir un fichier à la base fichier texte, qui est crypté donc impossible à ouvrir avec un éditeur de texte et si j'en demande pas trop, possible de l'ouvrir avec un éditeur de code (sublime text 2). Le problème c'est que je voit pas comment faire, je voulais faire un sha1 de tout le contenu du fichier, mais c'est pas possible, si ?

Merci


A voir également:

1 réponse

gardiendelanuit Messages postés 1769 Date d'inscription jeudi 20 décembre 2007 Statut Membre Dernière intervention 19 novembre 2016 264
Modifié par gardiendelanuit le 12/03/2013 à 16:28
Bonjour,

L'algorithme SHA1 est en faite un hachage (totalement différent du cryptage!).
Une chaîne de caractère hachée en SHA1 ne peut-être récupérée par la suite.
Cette méthode permet de stocker des noms de fichier mais surtout des mots de passe dans les bases de données. En effet une même chaîne donne toujours le même résultat en SHA1 d'où la possibilité de comparer les résultats et non directement les mots de passe.

Donc pour ce que tu veux faire, je te conseil de faire ta propre fonction de cryptage et celle de décryptage comme pour exemple de ce que je connais:

<?php  
// -----------------------------------------  
// crypte une chaine (via une clé de cryptage)  
// -----------------------------------------  
function crypter($maCleDeCryptage="", $maChaineACrypter){  
if($maCleDeCryptage==""){  
$maCleDeCryptage=$GLOBALS['PHPSESSID'];  
}  
$maCleDeCryptage = md5($maCleDeCryptage);  
$letter = -1;  
$newstr = '';  
$strlen = strlen($maChaineACrypter);  
for($i = 0; $i < $strlen; $i++ ){  
$letter++;  
if ( $letter > 31 ){  
$letter = 0;  
}  
$neword = ord($maChaineACrypter{$i}) + ord($maCleDeCryptage{$letter});  
if ( $neword > 255 ){  
$neword -= 256;  
}  
$newstr .= chr($neword);  
}  
return base64_encode($newstr);  
}  
?>


<?php
// -----------------------------------------  
// décrypte une chaine (avec la même clé de cryptage)  
// -----------------------------------------  
function decrypter($maCleDeCryptage="", $maChaineCrypter){  
if($maCleDeCryptage==""){  
$maCleDeCryptage=$GLOBALS['PHPSESSID'];  
}  
$maCleDeCryptage = md5($maCleDeCryptage);  
$letter = -1;  
$newstr = '';  
$maChaineCrypter = base64_decode($maChaineCrypter);  
$strlen = strlen($maChaineCrypter);  
for ( $i = 0; $i < $strlen; $i++ ){  
$letter++;  
if ( $letter > 31 ){  
$letter = 0;  
}  
$neword = ord($maChaineCrypter{$i}) - ord($maCleDeCryptage{$letter});  
if ( $neword < 1 ){  
$neword += 256;  
}  
$newstr .= chr($neword);  
}  
return $newstr;  
}  
?>  
--

Merci de mettre "Résolu" quand le problème est réglé!
La connaissance c'est comme la confiture: moins on en a et plus on l'étale.
0