Mot de passe doit être égalé par Password Hash qui a été initialement créé sur une plate-forme .NET et stocké sur MSSQL (donc le cryptage est probablement SHA1).Comment répliquer le mot de passe pour le mot de passe fourni et le mot de passe (PHP/MySQL)
Voici comment table MySQL ressemble:
CREATE TABLE IF NOT EXISTS `test` (
`id` int(10) NOT NULL AUTO_INCREMENT,
`UserName` varchar(100) COLLATE latin1_general_ci DEFAULT NULL,
`PasswordHash` varchar(100) CHARACTER SET utf8 DEFAULT NULL,
`PasswordSalt` int(10) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=12535 ;
--
-- Dumping data for table `test`
--
INSERT INTO `test` (`id`, `UserName`, `PasswordHash`, `PasswordSalt`) VALUES(9836, 'demoadmin', '?z1??9t|????e&??9aK', -1190254076);
INSERT INTO `test` (`id`, `UserName`, `PasswordHash`, `PasswordSalt`) VALUES(12534, 'sunny', '??o\\(R?8~??6>?t????o', 549612932);
J'ai trouvé deux exemples très proche de ce que je dois faire, mais j'étais permettre de le faire fonctionner.
Exemple 1: http://gilbert.pellegrom.me/replicating-net-password-hashing-in-php/
Exemple 2: http://www.kevinbruce.com/Blog?area_id=6&blog_id=3&ba_id=27
Les noms d'utilisateur et mots de passe sont:
utilisateur Première: demoadmin/demotest utilisateur Second: ensoleillé/eclyptix
S'il vous plaît aider!
Merci pour votre réponse Mark, je suis d'accord avec vous. Cependant, j'ai besoin de faire ce travail en tant que possible car nous avons une base de données avec de nombreux utilisateurs. Voici comment ils sont initialement stockés dans la base de données SQL Server 2008 (je dirais qu'ils sont stockés dans un format binaire) et nous devons les copier dans la base de données MySQL et le faire fonctionner avec PHP. A partir de là, nous pouvons les encoder en chaînes HEX et améliorer les choses. – crazyhorse
@crazyhorse: Si vous avez de la chance, les données ont été stockées correctement dans SQL Server, et vous venez d'exporter/importer incorrectement. –
Malheureusement, c'est exactement la même situation sur un serveur de production SQL Server. – crazyhorse