Htaccess php crypt(): bijection?
Résolu/Fermé
ataos
Messages postés
72
Date d'inscription
vendredi 11 avril 2008
Statut
Membre
Dernière intervention
6 août 2012
-
13 oct. 2009 à 17:38
kincus Messages postés 8 Date d'inscription jeudi 14 mars 2013 Statut Membre Dernière intervention 14 mars 2013 - 14 mars 2013 à 19:53
kincus Messages postés 8 Date d'inscription jeudi 14 mars 2013 Statut Membre Dernière intervention 14 mars 2013 - 14 mars 2013 à 19:53
A voir également:
- Htaccess php crypt(): bijection?
- Easy php - Télécharger - Divers Web & Internet
- True crypt - Télécharger - Chiffrement
- \R php ✓ - Forum PHP
- You don't have permission to access this resource.server unable to read htaccess file, denying access to be safe ✓ - Forum Debian
- Ouvrir fichier crypt 14 - Forum récupération de données
7 réponses
kincus
Messages postés
8
Date d'inscription
jeudi 14 mars 2013
Statut
Membre
Dernière intervention
14 mars 2013
59
14 mars 2013 à 19:53
14 mars 2013 à 19:53
Pour crypter en PHP il vaut mieux utiliser mcrypt, voici un petit tutoriel :
http://www.finalclap.com/tuto/php-cryptage-aes-chiffrement-85/
http://www.finalclap.com/tuto/php-cryptage-aes-chiffrement-85/
giheller
Messages postés
1875
Date d'inscription
dimanche 14 juin 2009
Statut
Membre
Dernière intervention
3 février 2024
142
13 oct. 2009 à 17:45
13 oct. 2009 à 17:45
bonsoir,
htpassword n'accepte pas les mots de passe codé en local. (idem avec easy Php)
quand au cryptage cela dépend de la clé (monsite dans l'exemple ci dessous
$pass =crypt('root','monsite');
htpassword n'accepte pas les mots de passe codé en local. (idem avec easy Php)
quand au cryptage cela dépend de la clé (monsite dans l'exemple ci dessous
$pass =crypt('root','monsite');
ataos
Messages postés
72
Date d'inscription
vendredi 11 avril 2008
Statut
Membre
Dernière intervention
6 août 2012
13 oct. 2009 à 18:04
13 oct. 2009 à 18:04
Merci, mais pour l'instant j'en suis au même point.
Une question me taraude: Comment le serveur peut-il savoir quelle clé j'ai utilisée?
J'ai codé ta solution comme ceci: $pass_crypte = crypt('root','$_POST["pass"]');
Surtout! Pourquoi même lorsque mon mdp est en clair dans le htpasswd cela ne marche-t-il toujours pas?
Je vais cherché du codé de l'encodage de mon fichier crypte.php. Peut être que le post est faussé.
A tout de suite.
Une question me taraude: Comment le serveur peut-il savoir quelle clé j'ai utilisée?
J'ai codé ta solution comme ceci: $pass_crypte = crypt('root','$_POST["pass"]');
Surtout! Pourquoi même lorsque mon mdp est en clair dans le htpasswd cela ne marche-t-il toujours pas?
Je vais cherché du codé de l'encodage de mon fichier crypte.php. Peut être que le post est faussé.
A tout de suite.
giheller
Messages postés
1875
Date d'inscription
dimanche 14 juin 2009
Statut
Membre
Dernière intervention
3 février 2024
142
13 oct. 2009 à 18:20
13 oct. 2009 à 18:20
non c'est pas ça
mais c'est ma faute l'exemple n'est pas bien choisi.
$pass_crypte = crypt('$_POST["pass"], 'clé de cryptage');;
ci joint un code qui fonctionne
<html>
<head>
<link rel="stylesheet" type="text/css" href="../css/sage.css" media="all">
<title>Administration</title>
</head>
<?php
if (isset($_POST['login']) AND isset($_POST['pass']))
{
if ($_POST['login']=='' or $_POST['pass']=='') {
echo "Login ou mot de passe non renseigné";
}
else {
$login = $_POST['login'];
$pass_crypte = crypt($_POST['pass']); // On crypte le mot de passe
// vérifier si le login n'existe pas en table
$existe= false;
if (!$fp = fopen(".htpasswd","r")) {
echo "Echec de l'ouverture du fichier";
exit;
}
else {
$i=0;
while(!feof($fp)) {
// On récupère une ligne
$ligne = fgets($fp,255);
$zone = explode(':',$ligne);
if ($login == $zone['0']) $existe=true;
}
fclose($fp); // On ferme le fichier
}
if (!$existe) {
$fp = fopen(".htpasswd","a"); // ouverture du fichier en écriture
$ligne = $login . ':' . $pass_crypte;
fputs($fp, $ligne);
fputs($fp,"\n");
fclose($fp);
echo "<table width='33%'><tr><td><fieldset> <legend>Ajout d'un membre</legend>";
echo "<br>L'utilisateur : ".$login." a été ajouté";
echo "</td></fieldset></tr></table>";
}
else {
echo "<table width='33%'><tr><td><fieldset> <legend>Ajout d'un membre</legend>";
echo "<br>L'utilisateur : ".$login." <font color='red'>existe déjà</font> comme membre";
echo "</td></fieldset></tr></table>";
}
}
?>
<form action='menu.php' name='retour' ><input type=submit value='retour'></form>
<?php
}
?>
</html>
mais c'est ma faute l'exemple n'est pas bien choisi.
$pass_crypte = crypt('$_POST["pass"], 'clé de cryptage');;
ci joint un code qui fonctionne
<html>
<head>
<link rel="stylesheet" type="text/css" href="../css/sage.css" media="all">
<title>Administration</title>
</head>
<?php
if (isset($_POST['login']) AND isset($_POST['pass']))
{
if ($_POST['login']=='' or $_POST['pass']=='') {
echo "Login ou mot de passe non renseigné";
}
else {
$login = $_POST['login'];
$pass_crypte = crypt($_POST['pass']); // On crypte le mot de passe
// vérifier si le login n'existe pas en table
$existe= false;
if (!$fp = fopen(".htpasswd","r")) {
echo "Echec de l'ouverture du fichier";
exit;
}
else {
$i=0;
while(!feof($fp)) {
// On récupère une ligne
$ligne = fgets($fp,255);
$zone = explode(':',$ligne);
if ($login == $zone['0']) $existe=true;
}
fclose($fp); // On ferme le fichier
}
if (!$existe) {
$fp = fopen(".htpasswd","a"); // ouverture du fichier en écriture
$ligne = $login . ':' . $pass_crypte;
fputs($fp, $ligne);
fputs($fp,"\n");
fclose($fp);
echo "<table width='33%'><tr><td><fieldset> <legend>Ajout d'un membre</legend>";
echo "<br>L'utilisateur : ".$login." a été ajouté";
echo "</td></fieldset></tr></table>";
}
else {
echo "<table width='33%'><tr><td><fieldset> <legend>Ajout d'un membre</legend>";
echo "<br>L'utilisateur : ".$login." <font color='red'>existe déjà</font> comme membre";
echo "</td></fieldset></tr></table>";
}
}
?>
<form action='menu.php' name='retour' ><input type=submit value='retour'></form>
<?php
}
?>
</html>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ataos
Messages postés
72
Date d'inscription
vendredi 11 avril 2008
Statut
Membre
Dernière intervention
6 août 2012
13 oct. 2009 à 18:27
13 oct. 2009 à 18:27
Je continue de chercher. Je peux mettre n'importe quoi dans la clé de cryptage?
giheller
Messages postés
1875
Date d'inscription
dimanche 14 juin 2009
Statut
Membre
Dernière intervention
3 février 2024
142
13 oct. 2009 à 18:34
13 oct. 2009 à 18:34
il faut mettre la même pour la vérification sinon mot de passe + clé ne donne pas la même chose.
ataos
Messages postés
72
Date d'inscription
vendredi 11 avril 2008
Statut
Membre
Dernière intervention
6 août 2012
13 oct. 2009 à 18:48
13 oct. 2009 à 18:48
Ha oue c fou. j'avais juste la première partie du code. J'ai du zapper une page dans le tuto. Quelle honte. Je teste et je te dis ça.
Mort de rire, je passe de 4 ligne à tout un script. Mais du coup, en le lisant, tout me semble plus 'compréhensible'.
EDIT: Bon en fait, je ne sais pas si je vais utiliser ton code. Enfin, peut être quant je serais devenu grand. Mais pour l'instant j'aimerai juste utiliser le code de "base". (à moins que j'ai définitivement raté une étape).
Donc voici pour mon htaccess:
AuthName "Page d'administration protégée"
AuthType Basic
AuthUserFile "/home/mon_nom_de_clien/public_html/config_php/.htpasswd"
Require valid-user
Pour mon htpasswd:
ataos:yoDfFJ4ACOjEw
high:yoDfFJ4ACOjEw
(Nottons que je suis au moins content qu'un même mot donne le même code crypté. Tu auras au moins levé ce mystère là. :D)
Mort de rire, je passe de 4 ligne à tout un script. Mais du coup, en le lisant, tout me semble plus 'compréhensible'.
EDIT: Bon en fait, je ne sais pas si je vais utiliser ton code. Enfin, peut être quant je serais devenu grand. Mais pour l'instant j'aimerai juste utiliser le code de "base". (à moins que j'ai définitivement raté une étape).
Donc voici pour mon htaccess:
AuthName "Page d'administration protégée"
AuthType Basic
AuthUserFile "/home/mon_nom_de_clien/public_html/config_php/.htpasswd"
Require valid-user
Pour mon htpasswd:
ataos:yoDfFJ4ACOjEw
high:yoDfFJ4ACOjEw
(Nottons que je suis au moins content qu'un même mot donne le même code crypté. Tu auras au moins levé ce mystère là. :D)
ataos
Messages postés
72
Date d'inscription
vendredi 11 avril 2008
Statut
Membre
Dernière intervention
6 août 2012
13 oct. 2009 à 20:19
13 oct. 2009 à 20:19
Bon, voici comment j'ai réussi (même si je ne suis pas sur d'avoir compris la différence avec ce que j'ai pu faire avant).
1-Vérifier que le transfert de filezilla est en 'type de transfert ASCII'
2-Aller générer une clé avec 'salage' ici (https://www.webmaster-hub.com/publications/le-fichier-htaccess/
3-Uploader le tout.
1-Vérifier que le transfert de filezilla est en 'type de transfert ASCII'
2-Aller générer une clé avec 'salage' ici (https://www.webmaster-hub.com/publications/le-fichier-htaccess/
3-Uploader le tout.