PHP+cryptage de texte

Neliel Messages postés 7012 Statut Contributeur -  
Neliel Messages postés 7012 Statut Contributeur -
Bonjour,

J'ai vu qu'il est possible de crypter un mot de passe dans une base de donnée.

Je me demandais s'il existe un fonction de cryptage / décryptage de texte en php...



--
"Trotti Trotta, Monsieur P, il y a des anges qui veulent un bisou..."
"Même les joujou de Monsieur P ont besoin de joujou"

4 réponses

  1. Neliel Messages postés 7012 Statut Contributeur 1 702
     
    J'ai crée ce script, mais lorsque je lui demande d'afficher le résultat du cryptage, ici $texte_trait... il m'affiche Array... Mais je ne trouve pas la connerie que j'ai faite.

    <p align="center">
    <form action="index.php" method="post">
    Crypter <input type="radio" name="mode" value="C" checked />
    Décrypter <input type="radio" name="mode" value="D" /><br />
    <input type="text" name="texte" /><br />
    <input type="submit" value="OK" />
    </form>
    </p>
    
    <?php
    if(isset($_POST['mode']))
    {
    	if($_POST['mode']=='C')
    		$inc = 20;
    	else
    		$inc = -20;
    	$texte_av_trait = $_POST['texte'];
    	
    	$texte_trait[] = array();
    	
    	for($p=0;$p<strlen($texte_av_trait);$p++)
    	{
    		$asc = ord($texte_av_trait[$p]);
    		$asc2 = $asc + $inc;
    		
    		if($asc2<0)
    			$asc2 = 256+$asc2;
    		else if($asc2>255)
    			$asc2 = $asc2-256;
    		$texte_trait[]=chr($asc2);
    	}
    	for($p=0;$p<strlen($texte_av_trait);$p++)
    	{
    		echo $texte_av_trait[$p]." - ".$texte_trait[$p]."<br />";
    	}
    
    	?>
    	<p align="center"><?php echo "<br />".$texte_av_trait." -> ".$texte_trait;?></p>
    
    	<?php
    }
    ?>
    


    Pourtant quand je veux l'afficher, caractères après caractères, cela fonctionne... une idée ?
    1
  2. gaerebut Messages postés 1060 Statut Membre 171
     
    Bonjour,

    tu as la fonction crypt($text) qui crypte $text, cependant il n'existe pas de fonction de décryptage.
    De même pour les hachages avec les fonctions suivantes md5($text) et sha1($text)

    Après, tu peux créer ta propre fonction de cryptage/décryptage :-)

    Va faire un tour sur php.net ;-)

    A+
    Gaerebut
    0
  3. Neliel Messages postés 7012 Statut Contributeur 1 702
     
    Je pense que je vais en créer une... je l'avais déjà fais mais elle était trop lourde est sujette aux erreurs.
    J'avais, à l'époque, utilisé une liste de caractère et j'incrémentais ou décrémentais la position dans cette liste pour réaliser un semblant de cryptage...

    Je pense maintenant à utiliser l'ASCII.
    Cependant, connaissant le C, j'ai essayé de faire du transtypage... mais le PHP ne semble pas gérer ça.

    J'ai essayé:

    
    $car='A';
    echo (int)$car;
    
    


    Comme je l'aurais fais en C pour avoir le code ASCII du caractère, cependant, j'obtiens 0...
    0
  4. gaerebut Messages postés 1060 Statut Membre 171
     
    Re,

    tu peux tout à fait faire du transtypage comme ceci:

    <?php
    $chaine = "2000"; // Ici, $chaine vaut 2000 mais en tant que String
    $entier = (int) $chaine; // entier vaudra $chaine mais casté en tant que Integer
    // Autres possibles: (String) (Bool) (Int) (Float) etc ...
    ?>

    De plus, tu peux utiliser les 2 fonctions suivantes pour ton algorithme (renseigne toi sur php.net après):

    chr() et ord()

    A+
    Gaerebut
    0