J'ai une appli c# qui échange des données cryptées 3des avec du code
php. Les résultats du chiffrement en c# et php que j'obtiens sont
différents. J'ai du faire une erreur quelque part !
y a t-il quelqu'un qui a une solution qui fonctionne ?
ci-dessous mon code c#
-------------------------------------------------
string skey = "VnmqrY47Vmdpnbi+mxY9SxFaKRoXLvjm";
string siv = "rjAVHTGeTs4=";
string data = "le texte que je veux chiffrer";
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Christophe HENRY
Le Thu, 14 Dec 2006 12:04:15 +0100, wmn a écrit:
J'ai une appli c# qui échange des données cryptées 3des avec du code php. Les résultats du chiffrement en c# et php que j'obtiens sont différents. J'ai du faire une erreur quelque part !
y a t-il quelqu'un qui a une solution qui fonctionne ?
Un début de piste : utilise une troisième façon de chiffrer en 3des afin de voir si les programmes sont justes.
Gnupg le fait. Exemple : $ cd /tmp $ echo "test" >fichier $ gpg --symmetric --cipher-algo 3DES --output fichier.3DES fichier [Il demande une phrase de passe] $ gpg --decrypt fichier.3DES [Il demande une phrase de passe] gpg: 3DES encrypted data gpg: encrypted with 1 passphrase test gpg: WARNING: message was not integrity protected
Évidemment, tu es sous MsWindows alors il faudra que tu adaptes un peu.
-- Christophe HENRY http://www.sbgodin.fr - Site perso
Le Thu, 14 Dec 2006 12:04:15 +0100, wmn a écrit:
J'ai une appli c# qui échange des données cryptées 3des avec du code
php. Les résultats du chiffrement en c# et php que j'obtiens sont
différents. J'ai du faire une erreur quelque part !
y a t-il quelqu'un qui a une solution qui fonctionne ?
Un début de piste : utilise une troisième façon de chiffrer en 3des afin
de voir si les programmes sont justes.
Gnupg le fait. Exemple :
$ cd /tmp
$ echo "test" >fichier
$ gpg --symmetric --cipher-algo 3DES --output fichier.3DES fichier
[Il demande une phrase de passe]
$ gpg --decrypt fichier.3DES
[Il demande une phrase de passe]
gpg: 3DES encrypted data
gpg: encrypted with 1 passphrase
test
gpg: WARNING: message was not integrity protected
Évidemment, tu es sous MsWindows alors il faudra que tu adaptes un peu.
--
Christophe HENRY
http://www.sbgodin.fr - Site perso
J'ai une appli c# qui échange des données cryptées 3des avec du code php. Les résultats du chiffrement en c# et php que j'obtiens sont différents. J'ai du faire une erreur quelque part !
y a t-il quelqu'un qui a une solution qui fonctionne ?
Un début de piste : utilise une troisième façon de chiffrer en 3des afin de voir si les programmes sont justes.
Gnupg le fait. Exemple : $ cd /tmp $ echo "test" >fichier $ gpg --symmetric --cipher-algo 3DES --output fichier.3DES fichier [Il demande une phrase de passe] $ gpg --decrypt fichier.3DES [Il demande une phrase de passe] gpg: 3DES encrypted data gpg: encrypted with 1 passphrase test gpg: WARNING: message was not integrity protected
Évidemment, tu es sous MsWindows alors il faudra que tu adaptes un peu.
-- Christophe HENRY http://www.sbgodin.fr - Site perso
Sylvain
wmn wrote on 14/12/2006 12:04:
bonjour,
J'ai une appli c# qui échange des données cryptées 3des avec du code php. Les résultats du chiffrement en c# et php que j'obtiens sont différents. J'ai du faire une erreur quelque part !
la dernière remarque est surement la seule/la plus pertinente.
y a t-il quelqu'un qui a une solution qui fonctionne ?
"une" solution qui fait du 3DES, je pense que plein de personnes ont cela.
ci-dessous mon code c# ------------------------------------------------- string skey = "VnmqrY47Vmdpnbi+mxY9SxFaKRoXLvjm"; string siv = "rjAVHTGeTs4="; string data = "le texte que je veux chiffrer";
SymmetricAlgorithm tDes = new TripleDESCryptoServiceProvider(); enchanté
tDes.Key = Convert.FromBase64String(skey); la sortie, bcp plus que le nom de la méthode, aurait été utile pour
vérifier que ce n'est pas là l'erreur.
tDes.IV = Convert.FromBase64String(siv); la sortie, bcp plus que le nom de la méthode, aurait été utile pour
ci-dessous mon code php ------------------------------------------------- $skey = "VnmqrY47Vmdpnbi+mxY9SxFaKRoXLvjm"; la sortie, bcp plus que le nom de la méthode, aurait été utile pour
vérifier que ce n'est pas là l'erreur.
$siv = "rjAVHTGeTs4="; la sortie, bcp plus que le nom de la méthode, aurait été utile pour
vérifier que ce n'est pas là l'erreur.
$data = "le texte que je veux chiffrer";
$key = base64_decode($skey); $iv = base64_decode($siv); dito
echo base64_encode(mcrypt_cbc(MCRYPT_3DES, $key, $data, MCRYPT_ENCRYPT, $iv)); dito
Sylvain.
wmn wrote on 14/12/2006 12:04:
bonjour,
J'ai une appli c# qui échange des données cryptées 3des avec du code
php. Les résultats du chiffrement en c# et php que j'obtiens sont
différents. J'ai du faire une erreur quelque part !
la dernière remarque est surement la seule/la plus pertinente.
y a t-il quelqu'un qui a une solution qui fonctionne ?
"une" solution qui fait du 3DES, je pense que plein de personnes ont cela.
ci-dessous mon code c#
-------------------------------------------------
string skey = "VnmqrY47Vmdpnbi+mxY9SxFaKRoXLvjm";
string siv = "rjAVHTGeTs4=";
string data = "le texte que je veux chiffrer";
SymmetricAlgorithm tDes = new TripleDESCryptoServiceProvider();
enchanté
tDes.Key = Convert.FromBase64String(skey);
la sortie, bcp plus que le nom de la méthode, aurait été utile pour
vérifier que ce n'est pas là l'erreur.
tDes.IV = Convert.FromBase64String(siv);
la sortie, bcp plus que le nom de la méthode, aurait été utile pour
ci-dessous mon code php
-------------------------------------------------
$skey = "VnmqrY47Vmdpnbi+mxY9SxFaKRoXLvjm";
la sortie, bcp plus que le nom de la méthode, aurait été utile pour
vérifier que ce n'est pas là l'erreur.
$siv = "rjAVHTGeTs4=";
la sortie, bcp plus que le nom de la méthode, aurait été utile pour
vérifier que ce n'est pas là l'erreur.
$data = "le texte que je veux chiffrer";
$key = base64_decode($skey);
$iv = base64_decode($siv);
dito
echo base64_encode(mcrypt_cbc(MCRYPT_3DES, $key, $data, MCRYPT_ENCRYPT,
$iv));
dito
J'ai une appli c# qui échange des données cryptées 3des avec du code php. Les résultats du chiffrement en c# et php que j'obtiens sont différents. J'ai du faire une erreur quelque part !
la dernière remarque est surement la seule/la plus pertinente.
y a t-il quelqu'un qui a une solution qui fonctionne ?
"une" solution qui fait du 3DES, je pense que plein de personnes ont cela.
ci-dessous mon code c# ------------------------------------------------- string skey = "VnmqrY47Vmdpnbi+mxY9SxFaKRoXLvjm"; string siv = "rjAVHTGeTs4="; string data = "le texte que je veux chiffrer";
SymmetricAlgorithm tDes = new TripleDESCryptoServiceProvider(); enchanté
tDes.Key = Convert.FromBase64String(skey); la sortie, bcp plus que le nom de la méthode, aurait été utile pour
vérifier que ce n'est pas là l'erreur.
tDes.IV = Convert.FromBase64String(siv); la sortie, bcp plus que le nom de la méthode, aurait été utile pour
ci-dessous mon code php ------------------------------------------------- $skey = "VnmqrY47Vmdpnbi+mxY9SxFaKRoXLvjm"; la sortie, bcp plus que le nom de la méthode, aurait été utile pour
vérifier que ce n'est pas là l'erreur.
$siv = "rjAVHTGeTs4="; la sortie, bcp plus que le nom de la méthode, aurait été utile pour
vérifier que ce n'est pas là l'erreur.
$data = "le texte que je veux chiffrer";
$key = base64_decode($skey); $iv = base64_decode($siv); dito
echo base64_encode(mcrypt_cbc(MCRYPT_3DES, $key, $data, MCRYPT_ENCRYPT, $iv)); dito