Ciao badaze, grazie per aver risposto..
non riesco però ad afferrare bene il concetto, che cosa intendi dire quando scrivi che $iv non ha lo stesso valore?
La parte che riguarda l'impostazione delle variabili, variabile $iv compresa, è perfettamente identica sia in fase di crittazione che decrittazione.
L'unica cosa che cambia è che per crittare uso mcrypt_encrypt(); e poi codifico in base 64, mentre per decrittare prima decodifico in base 64
e poi utilizzo mcrypt_decrypt.