Connexion
S'inscrire
Actualités
Quoi de neuf
Activités générales
Auteurs
Forums
Nouveaux messages
Rechercher un forum
Quoi de neuf
Nouveaux messages
Nouveaux messages de profil
Activités générales
Membres
Membres inscrits
Visiteurs actuels
Nouveaux messages de profil
Rechercher dans les messages des profils
Teams
Créé ton équipe
Quoi de neuf ?
Nouveaux messages
Rechercher un forum
Menu
Connexion
S'inscrire
Install the app
Install
Forums
Forums généraux
Informatique
Crypter le mot de passe de sa base de donnée en PHP
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
Vous utilisez un navigateur non à jour ou ancien. Il ne peut pas afficher ce site ou d'autres sites correctement.
Vous devez le mettre à jour ou utiliser un
navigateur alternatif
.
Répondre à la discussion
Message
<blockquote data-quote="Paul GTP" data-source="post: 6926411" data-attributes="member: 315249"><p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"><img src="http://image.prntscr.com/image/466fff010c72413890872e1200dfb349.png" alt="" class="fr-fic fr-dii fr-draggable " style="" /></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Salut à tous <img src="/data/assets/smilies/joueur.gif" class="smilie" loading="lazy" alt=":p" title="Joueur :p" data-shortname=":p" /></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Je vais vous montrer aujourd'hui <strong><span style="color: #ff8000">une petite astuce</span></strong> pour pouvoir <strong><span style="color: #ff8000">crypter votre mot de passe</span></strong>.</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Ne quittez pas la page tout de suite, <u>il ne s'agit pas d'un tutoriel basique sur du sha1 ou du md5</u> !</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Ici, le but va être de crypter le mot de passe sur <strong><span style="color: #ff8000">une page de connexion à la bdd</span></strong>.</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Par exemple, dans mon cas, voici le contenu de ma page <strong><span style="color: #ff8000">bdd.php</span></strong></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"><img src="http://image.prntscr.com/image/10aca1238ed44704a1aebd7c27603e7e.png" alt="" class="fr-fic fr-dii fr-draggable " style="" /></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Bon, vous pouvez ici observer <strong><span style="color: #ff8000">deux choses</span></strong>:</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">On peut voir dans un premier temps que j'inclus un fichier <strong><span style="color: #ff8000">cryptage.php</span></strong>.</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Puis dans un deuxième temps, on peut observer que le mot de passe se sert de <strong><span style="color: #ff8000">Cryptage()</span></strong>.</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Pourquoi faire tout ce charabia pour des informations que personne n'ira consulté ?</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Et bien il peut vous arriver d'avoir <strong><span style="color: #ff8000">à modifier/rajouter</span></strong> du contenu sur cette page, non ?</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Ou alors il peut arriver de devoir travailler dessus <strong><span style="color: #ff8000">dans un lieu publique</span></strong> (cyber café, cdi, etc).</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Avec cette petite sécurité en plus, personne n'ira retenir votre mot de passe, <strong><span style="color: #ff8000">il est invisible</span></strong> !</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Et pourquoi ne pas simplement stocker <strong><span style="color: #ff8000">la variable mot de passe</span></strong> dans une autre page ?</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Car si la personne ouvre l'autre page, il lui faudra <strong><span style="color: #ff8000">moins d'une seconde</span></strong> pour récupérer votre mot de passe !</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Bon, je vous l'accorde, cette méthode n'est pas la plus nécessaire du monde, mais elle m'a bien dépanné.</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Je vous la partage donc aujourd'hui même si elle vous servira très peu !</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"><img src="http://image.prntscr.com/image/4fc4e31d4b3445ac98bd1006d069fd97.png" alt="" class="fr-fic fr-dii fr-draggable " style="" /></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'MyriadPro'"><span style="font-size: 26px"><span style="color: #ff8000">[FA]fa-code[/FA] La fonction Cryptage()</span></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Cette fonction a été proposée dans un tutoriel sur le célèbre <strong><span style="color: #ff8000">OpenClassrooms</span></strong>.</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">L'auteur de ce tutoriel est <strong><span style="color: #ff8000">The maaaaan</span></strong>, vous irez donc le remercier personellement <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="smilie smilie--sprite smilie--sprite375" alt=":trollface:" title="Trollface :trollface:" loading="lazy" data-shortname=":trollface:" /></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Vous allez devoir créer un fichier où stocker le script de cryptage.</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Voici le code dont vous aurez besoin dans ce fichier que j'appelle <strong><span style="color: #ff8000">cryptage.php</span></strong>:</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center">[CODE]</p> <p style="text-align: center"><?php</p> <p style="text-align: center">// Script par The maaaaan du SDZ</p> <p style="text-align: center">$Clef = "VOTRE CLEF";</p> <p style="text-align: center">$MDP = "VOTRE MDP";</p> <p style="text-align: center">function Cryptage($MDP, $Clef) {</p> <p style="text-align: center"> $LClef = strlen($Clef);</p> <p style="text-align: center"> $LMDP = strlen($MDP);</p> <p style="text-align: center"></p> <p style="text-align: center"> if ($LClef < $LMDP) {</p> <p style="text-align: center"> $Clef = str_pad($Clef, $LMDP, $Clef, STR_PAD_RIGHT);</p> <p style="text-align: center"> } elseif ($LClef > $LMDP) {</p> <p style="text-align: center"> $diff = $LClef - $LMDP;</p> <p style="text-align: center"> $_Clef = sub str($Clef, 0, -$diff);</p> <p style="text-align: center"> }</p> <p style="text-align: center"></p> <p style="text-align: center"> return $MDP ^ $Clef;</p> <p style="text-align: center">}</p> <p style="text-align: center"></p> <p style="text-align: center">echo $Crypt;</p> <p style="text-align: center">?></p> <p style="text-align: center">[/CODE]</p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 10px"><em>(vous pouvez retirer le copyright, c'est moi qui l'ai rajouté car je suis gentil <img src="/images/smiley-pack/blush.gif" class="smilie" loading="lazy" alt=":blush:" title="Gêné :blush:" data-shortname=":blush:" />)</em></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"><strong><span style="color: rgb(255, 0, 0)">[FA]fa-warning[/FA] ATTENTION: Vous devez retirer l'espace entre sub et str dans <u>sub str($Clef, 0, -$diff);</u></span></strong></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"><strong><span style="color: rgb(255, 0, 0)">Je ne peux pas le faire à cause d'un bug sur le forum mais vous DEVEZ le faire!</span></strong></span></span></p><p></p><p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Ce code fonctionne sur le principe de la méthode <strong><span style="color: #ff8000">Vernam</span></strong>.</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Pour en savoir plus sur cette méthode <strong><span style="color: #ff8000">Vernam</span></strong>, vous pouvez en savoir plus ici:</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"><span style="color: #ff8000">[FA]fa-link[/FA]</span> <a href="http://www.bibmath.net/crypto/index.php?action=affiche&quoi=moderne/vernam" target="_blank"><span style="color: #ff8000">http://www.bibmath.net/vernam</span></a></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"><img src="http://image.prntscr.com/image/4fc4e31d4b3445ac98bd1006d069fd97.png" alt="" class="fr-fic fr-dii fr-draggable " style="" /></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'MyriadPro'"><span style="font-size: 26px"><span style="color: #ff8000">[FA]fa-cogs[/FA] Mode de fonctionnement</span></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Voici un cas de fonctionnement du code:</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center">[CODE]</p> <p style="text-align: center">$MDP = "Site du Zero";</p> <p style="text-align: center">$Clef = "Mateo";</p> <p style="text-align: center">$Crypt = Cryptage($MDP, $Clef);</p> <p style="text-align: center">$Decrypt = Cryptage($Crypt, $Clef);</p> <p style="text-align: center">[/CODE]</p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"><strong><span style="color: #ff8000">$Crypt</span></strong> sert à crypter <strong>Site du Zero</strong> avec la clef <strong>Mateo</strong></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"><strong>Site du Zero</strong> crypté, par exemple, renvoie cette valeur:</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"><img src="http://image.prntscr.com/image/4b7cd01eb2be4c9d987433cee9b0daa4.png" alt="" class="fr-fic fr-dii fr-draggable " style="" /></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"><strong><span style="color: #ff8000">$Decrypt</span></strong> contient le mot de passe précédent décrypté (<strong>Site du Zero</strong>).</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Vous devez donc définir <strong><span style="color: #ff8000">une clef</span></strong> et <strong><span style="color: #ff8000">un mot de passe</span></strong> pour pouvoir utiliser cette méthode.</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"><strong><span style="color: #ff8000">Le mot de passe</span></strong> est celui que vous insérerez dans votre base de donnée.</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"><strong><span style="color: #ff8000">La clef</span></strong>, vous devez la définir. Cela peut-être tout ce que vous voulez.</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Exemple de clefs: <strong><span style="color: #ff8000">ff8oaai8U3</span></strong> ; <strong><span style="color: #ff8000">kangourou</span></strong> ; <strong><span style="color: #ff8000">twuxytupu</span></strong>, etc</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"><img src="http://image.prntscr.com/image/4fc4e31d4b3445ac98bd1006d069fd97.png" alt="" class="fr-fic fr-dii fr-draggable " style="" /></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'MyriadPro'"><span style="font-size: 26px"><span style="color: #ff8000">[FA]fa-download[/FA] Mise en place</span></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Voici le contenu de votre fichier de connexion que j'appelle <strong><span style="color: #ff8000">bdd.php</span></strong>:</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center">[CODE]</p> <p style="text-align: center">include('cryptage.php');</p> <p style="text-align: center"></p> <p style="text-align: center"> $host = "sql31.free-h.org";</p> <p style="text-align: center"> $database = "pauldb";</p> <p style="text-align: center"> $user = "paulsinnah";</p> <p style="text-align: center"> $password = Cryptage($Crypt, $clef);</p> <p style="text-align: center"></p> <p style="text-align: center"> try {</p> <p style="text-align: center"> $bdd = new PDO('mysql:host='.$host.';dbname='.$database.';charset=utf8', ''.$user.'', ''.$password.'');</p> <p style="text-align: center"> }</p> <p style="text-align: center"></p> <p style="text-align: center"> catch (Exception $e) {</p> <p style="text-align: center"> die('Erreur : ' . $e->getMessage());</p> <p style="text-align: center"> }</p> <p style="text-align: center">[/CODE]</p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Il vous suffit de ce simple code pour faire fonctionner le script ! <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="smilie smilie--sprite smilie--sprite351" alt=";)" title="Clin d'oeil ;)" loading="lazy" data-shortname=";)" /></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Pour <strong><span style="color: #ff8000">une sécurité supplémentaire</span></strong>, je vous conseille une petite astuce:</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"><strong><span style="color: #ff8000">Cryptez votre mot de passe</span></strong>, <strong><span style="color: #ff8000">récupérez la valeur</span></strong> avec un echo, et <strong><span style="color: #ff8000">copiez/collez la version cryptée</span></strong> directement.</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Quoi ? Vous n'avez rien compris ? <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="smilie smilie--sprite smilie--sprite353" alt="D:" title="Sad D:" loading="lazy" data-shortname="D:" /></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Bon, voici un code qui va vous permettre de faire ça <img src="/data/assets/smilies/joueur.gif" class="smilie" loading="lazy" alt=":p" title="Joueur :p" data-shortname=":p" /></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center">[CODE]</p> <p style="text-align: center"><?php</p> <p style="text-align: center">$Clef = "VOTRE CLEF";</p> <p style="text-align: center">$MDP = "VOTRE MDP";</p> <p style="text-align: center">function Cryptage($MDP, $Clef) {</p> <p style="text-align: center"> $LClef = strlen($Clef);</p> <p style="text-align: center"> $LMDP = strlen($MDP);</p> <p style="text-align: center"></p> <p style="text-align: center"> if ($LClef < $LMDP) {</p> <p style="text-align: center"> $Clef = str_pad($Clef, $LMDP, $Clef, STR_PAD_RIGHT);</p> <p style="text-align: center"> } elseif ($LClef > $LMDP) {</p> <p style="text-align: center"> $diff = $LClef - $LMDP;</p> <p style="text-align: center"> $_Clef = sub str($Clef, 0, -$diff);</p> <p style="text-align: center"> }</p> <p style="text-align: center"></p> <p style="text-align: center"> return $MDP ^ $Clef;</p> <p style="text-align: center">}</p> <p style="text-align: center"></p> <p style="text-align: center">echo $Crypt;</p> <p style="text-align: center">?></p> <p style="text-align: center">[/CODE]</p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"><strong><span style="color: #ff0000">[FA]fa-warning[/FA] ATTENTION: Vous devez retirer l'espace entre sub et str dans <u>sub str($Clef, 0, -$diff);</u></span></strong></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"><strong><span style="color: #ff0000">Je ne peux pas le faire à cause d'un bug sur le forum mais vous DEVEZ le faire!</span></strong></span></span></p><p></p><p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Lancez la page, faites <strong><span style="color: #ff8000">un copier/coller</span></strong> du contenu.</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Recopiez votre mot de passe dans ce code à la place de <strong><span style="color: #ff8000">MOT DE PASSE</span></strong> dans le code:</span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center">[CODE]</p> <p style="text-align: center"><?php</p> <p style="text-align: center"> include('cryptage.php');</p> <p style="text-align: center"></p> <p style="text-align: center"> $host = "sql31.free-h.org";</p> <p style="text-align: center"> $database = "pauldb";</p> <p style="text-align: center"> $user = "paulsinnah";</p> <p style="text-align: center"> $password = Cryptage('MOT DE PASSE', $clef);</p> <p style="text-align: center"></p> <p style="text-align: center"> try {</p> <p style="text-align: center"> $bdd = new PDO('mysql:host='.$host.';dbname='.$database.';charset=utf8', ''.$user.'', ''.$password.'');</p> <p style="text-align: center"> }</p> <p style="text-align: center"></p> <p style="text-align: center"> catch (Exception $e) {</p> <p style="text-align: center"> die('Erreur : ' . $e->getMessage());</p> <p style="text-align: center"> }</p> <p style="text-align: center">?></p> <p style="text-align: center">[/CODE]</p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"><img src="http://image.prntscr.com/image/4fc4e31d4b3445ac98bd1006d069fd97.png" alt="" class="fr-fic fr-dii fr-draggable " style="" /></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px"></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Voilà ! Ce petit tutoriel touche à sa fin <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="smilie smilie--sprite smilie--sprite351" alt=";)" title="Clin d'oeil ;)" loading="lazy" data-shortname=";)" /></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">Si vous avez des problèmes/questions, n'hésitez pas à poster un commentaire <img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" class="smilie smilie--sprite smilie--sprite351" alt=";)" title="Clin d'oeil ;)" loading="lazy" data-shortname=";)" /></span></span></p> <p style="text-align: center"><span style="font-family: 'Convergence'"><span style="font-size: 12px">À bientôt <img src="/data/assets/smilies/bye.gif" class="smilie" loading="lazy" alt=":bye:" title="Bye :bye:" data-shortname=":bye:" /></span></span></p></blockquote><p></p>
[QUOTE="Paul GTP, post: 6926411, member: 315249"] [CENTER][FONT=Convergence][SIZE=3][IMG]http://image.prntscr.com/image/466fff010c72413890872e1200dfb349.png[/IMG] Salut à tous :p Je vais vous montrer aujourd'hui [B][COLOR=#ff8000]une petite astuce[/COLOR][/B] pour pouvoir [B][COLOR=#ff8000]crypter votre mot de passe[/COLOR][/B]. Ne quittez pas la page tout de suite, [U]il ne s'agit pas d'un tutoriel basique sur du sha1 ou du md5[/U] ! Ici, le but va être de crypter le mot de passe sur [B][COLOR=#ff8000]une page de connexion à la bdd[/COLOR][/B]. Par exemple, dans mon cas, voici le contenu de ma page [B][COLOR=#ff8000]bdd.php[/COLOR][/B] [IMG]http://image.prntscr.com/image/10aca1238ed44704a1aebd7c27603e7e.png[/IMG] Bon, vous pouvez ici observer [B][COLOR=#ff8000]deux choses[/COLOR][/B]: On peut voir dans un premier temps que j'inclus un fichier [B][COLOR=#ff8000]cryptage.php[/COLOR][/B]. Puis dans un deuxième temps, on peut observer que le mot de passe se sert de [B][COLOR=#ff8000]Cryptage()[/COLOR][/B]. Pourquoi faire tout ce charabia pour des informations que personne n'ira consulté ? Et bien il peut vous arriver d'avoir [B][COLOR=#ff8000]à modifier/rajouter[/COLOR][/B] du contenu sur cette page, non ? Ou alors il peut arriver de devoir travailler dessus [B][COLOR=#ff8000]dans un lieu publique[/COLOR][/B] (cyber café, cdi, etc). Avec cette petite sécurité en plus, personne n'ira retenir votre mot de passe, [B][COLOR=#ff8000]il est invisible[/COLOR][/B] ! Et pourquoi ne pas simplement stocker [B][COLOR=#ff8000]la variable mot de passe[/COLOR][/B] dans une autre page ? Car si la personne ouvre l'autre page, il lui faudra [B][COLOR=#ff8000]moins d'une seconde[/COLOR][/B] pour récupérer votre mot de passe ! Bon, je vous l'accorde, cette méthode n'est pas la plus nécessaire du monde, mais elle m'a bien dépanné. Je vous la partage donc aujourd'hui même si elle vous servira très peu ! [IMG]http://image.prntscr.com/image/4fc4e31d4b3445ac98bd1006d069fd97.png[/IMG] [/SIZE][/FONT] [FONT=MyriadPro][SIZE=7][COLOR=#ff8000][FA]fa-code[/FA] La fonction Cryptage()[/COLOR][/SIZE][/FONT] [FONT=Convergence][SIZE=3] Cette fonction a été proposée dans un tutoriel sur le célèbre [B][COLOR=#ff8000]OpenClassrooms[/COLOR][/B]. L'auteur de ce tutoriel est [B][COLOR=#ff8000]The maaaaan[/COLOR][/B], vous irez donc le remercier personellement :troll: Vous allez devoir créer un fichier où stocker le script de cryptage. Voici le code dont vous aurez besoin dans ce fichier que j'appelle [B][COLOR=#ff8000]cryptage.php[/COLOR][/B]: [/SIZE][/FONT] [CODE] <?php // Script par The maaaaan du SDZ $Clef = "VOTRE CLEF"; $MDP = "VOTRE MDP"; function Cryptage($MDP, $Clef) { $LClef = strlen($Clef); $LMDP = strlen($MDP); if ($LClef < $LMDP) { $Clef = str_pad($Clef, $LMDP, $Clef, STR_PAD_RIGHT); } elseif ($LClef > $LMDP) { $diff = $LClef - $LMDP; $_Clef = sub str($Clef, 0, -$diff); } return $MDP ^ $Clef; } echo $Crypt; ?> [/CODE] [FONT=Convergence][SIZE=2][I](vous pouvez retirer le copyright, c'est moi qui l'ai rajouté car je suis gentil :blush:)[/I][/SIZE] [SIZE=3] [B][COLOR=rgb(255, 0, 0)][FA]fa-warning[/FA] ATTENTION: Vous devez retirer l'espace entre sub et str dans [U]sub str($Clef, 0, -$diff);[/U][/COLOR][/B] [B][COLOR=rgb(255, 0, 0)]Je ne peux pas le faire à cause d'un bug sur le forum mais vous DEVEZ le faire![/COLOR][/B][/SIZE][/FONT][/CENTER] [CENTER][FONT=Convergence][SIZE=3] Ce code fonctionne sur le principe de la méthode [B][COLOR=#ff8000]Vernam[/COLOR][/B]. Pour en savoir plus sur cette méthode [B][COLOR=#ff8000]Vernam[/COLOR][/B], vous pouvez en savoir plus ici: [COLOR=#ff8000][FA]fa-link[/FA][/COLOR] [URL='http://www.bibmath.net/crypto/index.php?action=affiche&quoi=moderne/vernam'][COLOR=#ff8000]http://www.bibmath.net/vernam[/COLOR][/URL] [IMG]http://image.prntscr.com/image/4fc4e31d4b3445ac98bd1006d069fd97.png[/IMG] [/SIZE][/FONT] [FONT=MyriadPro][SIZE=7][COLOR=#ff8000][FA]fa-cogs[/FA] Mode de fonctionnement[/COLOR][/SIZE][/FONT] [FONT=Convergence][SIZE=3] Voici un cas de fonctionnement du code: [/SIZE][/FONT] [CODE] $MDP = "Site du Zero"; $Clef = "Mateo"; $Crypt = Cryptage($MDP, $Clef); $Decrypt = Cryptage($Crypt, $Clef); [/CODE] [FONT=Convergence][SIZE=3] [B][COLOR=#ff8000]$Crypt[/COLOR][/B] sert à crypter [B]Site du Zero[/B] avec la clef [B]Mateo[/B] [B]Site du Zero[/B] crypté, par exemple, renvoie cette valeur: [IMG]http://image.prntscr.com/image/4b7cd01eb2be4c9d987433cee9b0daa4.png[/IMG] [B][COLOR=#ff8000]$Decrypt[/COLOR][/B] contient le mot de passe précédent décrypté ([B]Site du Zero[/B]). Vous devez donc définir [B][COLOR=#ff8000]une clef[/COLOR][/B] et [B][COLOR=#ff8000]un mot de passe[/COLOR][/B] pour pouvoir utiliser cette méthode. [B][COLOR=#ff8000]Le mot de passe[/COLOR][/B] est celui que vous insérerez dans votre base de donnée. [B][COLOR=#ff8000]La clef[/COLOR][/B], vous devez la définir. Cela peut-être tout ce que vous voulez. Exemple de clefs: [B][COLOR=#ff8000]ff8oaai8U3[/COLOR][/B] ; [B][COLOR=#ff8000]kangourou[/COLOR][/B] ; [B][COLOR=#ff8000]twuxytupu[/COLOR][/B], etc [IMG]http://image.prntscr.com/image/4fc4e31d4b3445ac98bd1006d069fd97.png[/IMG] [/SIZE][/FONT] [FONT=MyriadPro][SIZE=7][COLOR=#ff8000][FA]fa-download[/FA] Mise en place[/COLOR][/SIZE][/FONT] [FONT=Convergence][SIZE=3] Voici le contenu de votre fichier de connexion que j'appelle [B][COLOR=#ff8000]bdd.php[/COLOR][/B]: [/SIZE][/FONT] [CODE] include('cryptage.php'); $host = "sql31.free-h.org"; $database = "pauldb"; $user = "paulsinnah"; $password = Cryptage($Crypt, $clef); try { $bdd = new PDO('mysql:host='.$host.';dbname='.$database.';charset=utf8', ''.$user.'', ''.$password.''); } catch (Exception $e) { die('Erreur : ' . $e->getMessage()); } [/CODE] [FONT=Convergence][SIZE=3] Il vous suffit de ce simple code pour faire fonctionner le script ! ;) Pour [B][COLOR=#ff8000]une sécurité supplémentaire[/COLOR][/B], je vous conseille une petite astuce: [B][COLOR=#ff8000]Cryptez votre mot de passe[/COLOR][/B], [B][COLOR=#ff8000]récupérez la valeur[/COLOR][/B] avec un echo, et [B][COLOR=#ff8000]copiez/collez la version cryptée[/COLOR][/B] directement. Quoi ? Vous n'avez rien compris ? D: Bon, voici un code qui va vous permettre de faire ça :p [/SIZE][/FONT] [CODE] <?php $Clef = "VOTRE CLEF"; $MDP = "VOTRE MDP"; function Cryptage($MDP, $Clef) { $LClef = strlen($Clef); $LMDP = strlen($MDP); if ($LClef < $LMDP) { $Clef = str_pad($Clef, $LMDP, $Clef, STR_PAD_RIGHT); } elseif ($LClef > $LMDP) { $diff = $LClef - $LMDP; $_Clef = sub str($Clef, 0, -$diff); } return $MDP ^ $Clef; } echo $Crypt; ?> [/CODE] [FONT=Convergence][SIZE=3] [B][COLOR=#ff0000][FA]fa-warning[/FA] ATTENTION: Vous devez retirer l'espace entre sub et str dans [U]sub str($Clef, 0, -$diff);[/U][/COLOR][/B] [B][COLOR=#ff0000]Je ne peux pas le faire à cause d'un bug sur le forum mais vous DEVEZ le faire![/COLOR][/B][/SIZE][/FONT][/CENTER] [CENTER][FONT=Convergence][SIZE=3]Lancez la page, faites [B][COLOR=#ff8000]un copier/coller[/COLOR][/B] du contenu. Recopiez votre mot de passe dans ce code à la place de [B][COLOR=#ff8000]MOT DE PASSE[/COLOR][/B] dans le code: [/SIZE][/FONT] [CODE] <?php include('cryptage.php'); $host = "sql31.free-h.org"; $database = "pauldb"; $user = "paulsinnah"; $password = Cryptage('MOT DE PASSE', $clef); try { $bdd = new PDO('mysql:host='.$host.';dbname='.$database.';charset=utf8', ''.$user.'', ''.$password.''); } catch (Exception $e) { die('Erreur : ' . $e->getMessage()); } ?> [/CODE] [FONT=Convergence][SIZE=3] [IMG]http://image.prntscr.com/image/4fc4e31d4b3445ac98bd1006d069fd97.png[/IMG] Voilà ! Ce petit tutoriel touche à sa fin ;) Si vous avez des problèmes/questions, n'hésitez pas à poster un commentaire ;) À bientôt :bye:[/SIZE][/FONT][/CENTER] [/QUOTE]
Insérer les citations…
Vérification
Publier la réponse
Forums
Forums généraux
Informatique
Crypter le mot de passe de sa base de donnée en PHP
Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies.
Acceptez
En savoir plus.…
Haut