Aller au contenu

Sujets conseillés

Posté

Deux problèmes, donc.

Tout d'abord, je tente depuis quelques temps de communiquer à travers un socket avec un démon Perl distant, en cryptant les communications en Bowlfish. Le système de socket marche, le décryptage égalemement, mais le cryptage persiste à donner des résultats différents de ceux du démon.

Voici les fonctions utilisées.

function encoder($texte) {
$texte = stripslashes($texte);
$cle = 'KpdFvmwCX4axXNXZ';
$iv = '$KJh#(}q';

$td = mcrypt_module_open(MCRYPT_BLOWFISH, "", MCRYPT_MODE_CBC, "");
mcrypt_generic_init($td, $cle, $iv);
$dechifr = mcrypt_generic($td, $texte);
mcrypt_generic_deinit($td);
mcrypt_module_close($td);
return($dechifr);
}

function decoder($texte) {
$cle = 'KpdFvmwCX4axXNXZ';
$iv = '$KJh#(}q';

$td = mcrypt_module_open(MCRYPT_BLOWFISH, "", MCRYPT_MODE_CBC, "");
mcrypt_generic_init($td, $cle, $iv);
$temp = trim(mdecrypt_generic($td, trim($temp, "\x00..\x1F")), "\x00..\x1F");
mcrypt_generic_deinit($td);
mcrypt_module_close($td);
return($temp);
}

Le deuxième problème touche à la géneration d'espaces de nommage avec DOM. J'ai probablement mal compris, là aussi :P

A la base, je crée les attributs en DOM de cette façon :

$root = $tree->createElement('feed');
$root->setAttribute('version', '0.3');

Je pensais donc utiliser un comportement similaire pour les xmlns :

//Essai 1
//$xmlns = $tree->createAttributeNS('http://purl.org/atom/ns#', 'xmlns:atom');
//$root->setAttributeNodeNS($xmlns);

//Essai 2
//$root->setAttributeNS('http://purl.org/atom/ns#', 'atom', 'xmlns');
//$root->setAttributeNS('fr', 'lang', 'xml');

Seulement, aucune des deux methodes ne marche. J'ai trituré les arguments dans tous les sens au cas où, aucun changement. L'exception DOM est NAMESPACE_ERR

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...