Convertir le cryptage de MDP d'une BDD à une autre [Résolu/Fermé]

Signaler
Messages postés
260
Date d'inscription
jeudi 22 novembre 2007
Statut
Membre
Dernière intervention
20 août 2016
-
Messages postés
260
Date d'inscription
jeudi 22 novembre 2007
Statut
Membre
Dernière intervention
20 août 2016
-
Bonjour,

Je souhaiterai transférer les membres de mon site actuel vers un nouveau site (sur un nouveau CMS qui n'utilise pas le même cryptage des mots de passe dans la base SQL)

Je voudrai donc savoir s'il est possible de convertir un mot de passe crypté d'une façon vers un autre cryptage ?
Je pense que le plus simple serai de décrypter les mots de passe actuel, pour ensuite les recrypter dans le cryptage utilisé par le nouveau site.

Pour plus de détails, voici à quoi ressemble un mot de passe crypté sur mon site actuel :
25f9e794323b453885f5181f1b624d0b

Et à quoi il ressemble sur le nouveau site :
6da3aaa06cdb4d027c845c6795b8f5c43dcb30ec24c50333939d4fde1d39cd17

Je cherche donc un moyen de trouver le 2éme mot de passe à partir du 1er, via des fonctions PHP .

J'espère que mon message reste suffisamment claire et compréhensible.
Et je remercie d'avance toutes les personnes qui ont pris la peine de lire ma demande voir d'y répondre.

4 réponses

Messages postés
4761
Date d'inscription
dimanche 12 juin 2011
Statut
Contributeur
Dernière intervention
23 octobre 2020
1 248
Salut, ce que tu demandes n'est pas possible:
tu cherches ici à passer d'un hashage MD5 à SHA256.
Le but des hash est de pouvoir faire une vérification dans un seul sens, ne pas pouvoir retrouver le mot de passe à partir du hash.
Pour re-hasher avec un autre algorithme, il faut avoir les données originales, or tu ne peux pas les retrouver... tu te retrouves donc coincé. Et redemander le mot de passe à tous les utilisateurs est une manipulation plutôt... douteuse?

Après si tu peux changer le code du login, tu peut faire un SHA256 du MD5. Foireux mais ça marche, mais pas plus sécurisé du point de vue des collisions de hash MD5.
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Messages postés
260
Date d'inscription
jeudi 22 novembre 2007
Statut
Membre
Dernière intervention
20 août 2016
11
Salut, gravgun !
Et merci beaucoup pour ta réponse.

récupérer les MDP des membres, c'est impossible, il y en a 3800 !
Alors la seule solution que je vois, ça serai de générer un nouveau mot de passe en SHA256 pour chaque membres, et de leurs communiquer par email.
(un genre d'algorithme entre son pseudo et ça date d'inscription par exemple)
Et aprés il faut que je crypte la valeur de l'algorithme en SHA256 pour l'entrer dans la nouvelle BDD.
Seulement je ne sais pas comment crypter un MDP brut en SHA256 ?
Tu pourrais m'aider sur ça ?
Messages postés
260
Date d'inscription
jeudi 22 novembre 2007
Statut
Membre
Dernière intervention
20 août 2016
11
Je crois que j'ai trouvé au faite.
Si je fait ça :

$pass1 = substr($pseudo, 0, 4);
$pass2 = substr($timeinscrit, 0, 4);
$pass = "$pass1$pass2";

$newpass = hash('sha256', '$pass');


normalement j'aurai "pass" égale au nouveau MDP généré et "newpass" égale au nouveau MDP crypté en SHA256 ?

Ensuite, j'aurai plus que a mettre "newpass" dans la nouvelle BDD et envoyer "pass" par mail au membre concerné.
Messages postés
4761
Date d'inscription
dimanche 12 juin 2011
Statut
Contributeur
Dernière intervention
23 octobre 2020
1 248
Oui comme ça c'est faisable. Mais ici ce n'est pas très sécurisé: suffit que l'info de la date d'enregistrement soit accessible au public pour pirater un compte, vu que le mdp est juste le nom + la date. Ajoute des chiffres/caractères au hasard, par exemple avec cette fonction pour compliquer la tâche d'éventuelles personnes mal intenentionnées.
Messages postés
260
Date d'inscription
jeudi 22 novembre 2007
Statut
Membre
Dernière intervention
20 août 2016
11
Merci, je viens de tester, mais ça ne fonctionne pas !
En faite, j'ai vérifier, et le hachage SHA256 ne me donne pas le même réusltat que celui généré par mon nouveau site pour le même mot de passe.
j'ai donc essayé avec tout ça :

md4
md5
crc32b
crc32
sha1
tiger128,3
haval192,3
haval224,3
tiger160,3
haval160,3
haval256,3
tiger192,3
haval128,3
tiger192,4
tiger128,4
tiger160,4
haval160,4
haval192,4
haval256,4
adler32
haval128,4
haval224,4
ripemd256
haval160,5
haval128,5
haval224,5
haval192,5
haval256,5
sha256
ripemd128
ripemd160
ripemd320
sha384
sha512
gost
whirlpool
snefru
md2

Et aucun ne me donne le même résultat que sur mon nouveau site.
Peut être que il y a un 2éme cryptage derrière le hachage ?
Si c'est ça, je suis pas sortie de l'auberge !
Messages postés
260
Date d'inscription
jeudi 22 novembre 2007
Statut
Membre
Dernière intervention
20 août 2016
11
J'ai demandé à l'éditeur du CMS,
et il m'a répondu que il ajouté un prefix aux mots de passe (calculé aléatoirement lors de l'installation)
Ce prefix était dans le config.php

Mais comme il m'a donné aussi l'emplacement exact où se trouve le cryptage du mot de passe, je vais tout simplement remplacer le "SHA256" par "MD5" comme ça je n'aurai pas besoin de changer les mots de passe.

1000 merci à toi gravgun, car sans ton aide, je n'y serai jamais arrivé.