Problema!
Sto cercando di comprimere con mcrypt un documento xml, successivamente voglio inserire il documento xml appena criptato dentro ad un altro documento xml.. qualcosa del tipo
//xml di partenza
<?xml version="1.0" encoding="iso-8859-1"?>
<root>
<anagrafica>
<ID_Anagrafica><![CDATA[10156]]></ID_Anagrafica>
<Indirizzo><![CDATA[Via Guidone, 25/a]]></Indirizzo>
</anagrafica>
</root>
xml -> [crypt] -> xmlcriptato
e con i metodi DOM cerco di creare un documento come il seguente
<?xml version="1.0" encoding="iso-8859-1"?>
<data>
<![CDATA[xmlcriptato]]>
</data>
Quando chiamo la funzione saveXML() dell'oggetto DOM ottengo questo warning
Warning: DOMDocument::saveXML() [function.DOMDocument-saveXML]: output conversion failed due to conv error, bytes 0xCD 0x09 0xA9 0x6D in C:\....php on line 116
Per cryptare uso questa funzione:
function crypt($plain_text, $key)
{
$encrypted_data = null;
$td = mcrypt_module_open('tripledes', '', 'ecb', '');
$key = substr($key, 0, mcrypt_enc_get_key_size($td));
$iv_size = mcrypt_enc_get_iv_size($td);
$iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);
/* Initialize encryption handle */
if (mcrypt_generic_init($td, $key, $iv) != -1)
{
/* Encrypt data */
$encrypted_data = mcrypt_generic($td, $plain_text);
mcrypt_generic_deinit($td);
/* Clean up */
//mcrypt_generic_deinit($td);
mcrypt_module_close($td);
}
return $encrypted_data;
} //END FUNCTION
HELP!