1. Ce site utilise des "témoins de connexion" (cookies) conformes aux textes de l'Union Européenne. Continuer à naviguer sur nos pages vaut acceptation de notre règlement en la matière. En savoir plus.
  2. Invité, serez-vous intéressé de lier un partenariat avec notre future entreprise et votre projet ? Si oui, merci d'ouvrir un ticket au support.
    Rejeter la notification
  3. Invité, le grade modérateur est disponible sur notre forum. Demandez et essayez dès maintenant en postant votre candidature dans la rubrique "Communauté" tout en bas de l'accueil du forum.
    Rejeter la notification

Tutoriels Crypter / Décripter en PHP

Discussion dans 'Cours' démarrée par TheEnde, 31 Décembre 2017.

  1. TheEnde

    TheEnde Membre Membre

    Trouvé sur OpenClassroom

    PHP:
    function encrypt($data) {
        
    $key "secret";  // Clé de 8 caractères max
        
    $data serialize($data);
        
    $td mcrypt_module_open(MCRYPT_DES,"",MCRYPT_MODE_ECB,"");
        
    $iv mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_RAND);
        
    mcrypt_generic_init($td,$key,$iv);
        
    $data base64_encode(mcrypt_generic($td'!'.$data));
        
    mcrypt_generic_deinit($td);
        return 
    $data;
    }
     
    function 
    decrypt($data) {
        
    $key "secret";
        
    $td mcrypt_module_open(MCRYPT_DES,"",MCRYPT_MODE_ECB,"");
        
    $iv mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_RAND);
        
    mcrypt_generic_init($td,$key,$iv);
        
    $data mdecrypt_generic($tdbase64_decode($data));
        
    mcrypt_generic_deinit($td);
     
        if (
    substr($data,0,1) != '!')
            return 
    false;
     
        
    $data substr($data,1,strlen($data)-1);
        return 
    unserialize($data);
    }
    Exemple de code :
    PHP:
    $mot 'test';
    encrypt($mot);
    decrypt($mot);

    PAR 3060matt:

    PHP:
    function encrypt($data$key) {
        
    $data serialize($data);
        
    $td mcrypt_module_open(MCRYPT_DES,"",MCRYPT_MODE_ECB,"");
        
    $iv mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_RAND);
        
    mcrypt_generic_init($td,$key,$iv);
        
    $data base64_encode(mcrypt_generic($td'!'.$data));
        
    mcrypt_generic_deinit($td);
        return 
    $data;
    }

    function 
    decrypt($data$key) {
        
    $td mcrypt_module_open(MCRYPT_DES,"",MCRYPT_MODE_ECB,"");
        
    $iv mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_RAND);
        
    mcrypt_generic_init($td,$key,$iv);
        
    $data mdecrypt_generic($tdbase64_decode($data));
        
    mcrypt_generic_deinit($td);

        if (
    substr($data,0,1) != '!')
            return 
    false;

        
    $data substr($data,1,strlen($data)-1);
        return 
    unserialize($data);
    Exemple de code :


    PHP:
    $mot 'test';
    encrypt($mot"clef123");
    decrypt($mot"clef123"); 
     
    Dernière édition: 31 Décembre 2017
  2. 360matt

    360matt Fondateur de CommunUsers Membre de l'équipe Fondateur Développeur WEB

    Super bon script :)
    Sinon on peut créer un deuxième argument pour mettre la clé de crypt.
     
    • Je suis d'accord Je suis d'accord x 1
    • List
  3. TheEnde

    TheEnde Membre Membre

    A vous de changer en fonction de vos besoins
     
  4. 360matt

    360matt Fondateur de CommunUsers Membre de l'équipe Fondateur Développeur WEB

    Donc pour le deuxième argument je propose ce code :)

    PHP:
    function encrypt($data$key) {
        
    $data serialize($data);
        
    $td mcrypt_module_open(MCRYPT_DES,"",MCRYPT_MODE_ECB,"");
        
    $iv mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_RAND);
        
    mcrypt_generic_init($td,$key,$iv);
        
    $data base64_encode(mcrypt_generic($td'!'.$data));
        
    mcrypt_generic_deinit($td);
        return 
    $data;
    }

    function 
    decrypt($data$key) {
        
    $td mcrypt_module_open(MCRYPT_DES,"",MCRYPT_MODE_ECB,"");
        
    $iv mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_RAND);
        
    mcrypt_generic_init($td,$key,$iv);
        
    $data mdecrypt_generic($tdbase64_decode($data));
        
    mcrypt_generic_deinit($td);

        if (
    substr($data,0,1) != '!')
            return 
    false;

        
    $data substr($data,1,strlen($data)-1);
        return 
    unserialize($data);
    }
    Exemple de code :
    PHP:
    $mot 'test';
    encrypt($mot"clef123");
    decrypt($mot"clef123");
     
  5. TheEnde

    TheEnde Membre Membre

    Ok je le rajoute en dessous du miens
     

Partager cette page