IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MySQL Discussion :

DES_ENCRYPT, DES_DECRYPT dans BD MYSQL [MySQL-5.5]


Sujet :

MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2009
    Messages : 33
    Par défaut DES_ENCRYPT, DES_DECRYPT dans BD MYSQL
    Bonjour,
    Je ne comprend pas pourquoi après avoir encrypté les données que j'insère dans une table "(insert into matable (colonne1,colonne2) values (DES_ENCRYPT('1234','macle'), now())", lorsque je cherche à décrypter "(select * from matable (DES_DECRYPT('colonne1', 'macle')), j'obtiens le résultat suivant : 31323334. les caractères sont séparés par des "3". Est ce que vous pouvez s'il vous plait me dire pourquoi ou m'indiquer comment remédier.
    Cordialement.

  2. #2
    Membre extrêmement actif Avatar de ddoumeche
    Homme Profil pro
    Ingénieur recherche et développement
    Inscrit en
    Octobre 2007
    Messages
    1 711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Singapour

    Informations professionnelles :
    Activité : Ingénieur recherche et développement

    Informations forums :
    Inscription : Octobre 2007
    Messages : 1 711
    Par défaut
    On ne connait pas la structure de ta table,
    Fais nous un SHOW CREATE TABLE

    DES_ENCRYPT/DES_DECRYPT utilisent le format binaire par défaut.
    Donc 31323334 doit être la valeur hexadécimale de ta valeur cryptée

    La 2eme requête ne ressemble à rien, et d'ailleurs n'est pas reconnue par mon analyseur de syntaxe Mysql
    Ceci nous retourne la valeur décryptée de ta valeur d'origine
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    select CAST(des_decrypt(colonne1,'macle') AS CHAR(10000)) from matable

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2009
    Messages : 33
    Par défaut DES_ENCRYPT, DES_DECRYPT dans BD MYSQL
    Merci encore @ddoumeche,
    Vous avez apporté la solution à mon problème. Effectivement le CAST a résolu le décryptage.
    Cordialement.

  4. #4
    Membre prolifique Avatar de Artemus24
    Homme Profil pro
    Agent secret au service du président Ulysses S. Grant !
    Inscrit en
    Février 2011
    Messages
    6 883
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Agent secret au service du président Ulysses S. Grant !
    Secteur : Finance

    Informations forums :
    Inscription : Février 2011
    Messages : 6 883
    Par défaut
    Salut macjs.

    Voici un exemple d'utilisation de l'encryptage sous MySql :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    --------------
    SET AUTOCOMMIT = 0
    --------------
     
    --------------
    START TRANSACTION
    --------------
     
    --------------
    DROP DATABASE IF EXISTS `base`
    --------------
     
    --------------
    CREATE DATABASE `base`
            DEFAULT CHARACTER SET `latin1`
            DEFAULT COLLATE       `latin1_general_ci`
    --------------
     
    --------------
    DROP TABLE IF EXISTS `test`
    --------------
     
    --------------
    CREATE TABLE `test`
    (
      `id`     int unsigned    NOT NULL AUTO_INCREMENT PRIMARY KEY,
      `name`   varbinary(255)  NOT NULL
    ) ENGINE=InnoDB
      DEFAULT CHARSET=`latin1` COLLATE=`latin1_general_ci`
      ROW_FORMAT=COMPRESSED
    --------------
     
    --------------
    INSERT into `test` (`name`) VALUES
    (AES_ENCRYPT('Albert',   'clefsecrete')),
    (AES_ENCRYPT('Einstein', 'clefsecrete'))
    --------------
     
    --------------
    select * from test
    --------------
     
    +----+------------------+
    | id | name             |
    +----+------------------+
    |  1 | —bŽcp—»[ïEÇÇe™/ |
    |  2 | Ù«¬ý£Þ;·PCïJK* |
    +----+------------------+
    --------------
    select id, AES_DECRYPT(name, 'clefsecrete') AS `name` from test
    --------------
     
    +----+----------+
    | id | name     |
    +----+----------+
    |  1 | Albert   |
    |  2 | Einstein |
    +----+----------+
    --------------
    COMMIT
    --------------
     
    --------------
    SET AUTOCOMMIT = 1
    --------------
     
     
    Appuyez sur une touche pour continuer...
    @+

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. comment formater un champs dans table mysql
    Par rollly dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 24/04/2006, 14h31
  2. recuperer des mails stocker dans base MySQL avec Outlook
    Par freddy92110 dans le forum Outlook
    Réponses: 1
    Dernier message: 06/11/2005, 19h26
  3. variables tableau dans requettes mysql ... et affichage
    Par mulbek dans le forum Requêtes
    Réponses: 3
    Dernier message: 26/10/2005, 16h29
  4. concatenation dans requette mysql
    Par mulbek dans le forum Requêtes
    Réponses: 30
    Dernier message: 24/10/2005, 08h56
  5. importer données fichier excel dans bd mysql
    Par Hydre dans le forum Administration
    Réponses: 1
    Dernier message: 05/10/2005, 19h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo