Jag har stött på ett underligt problem...
När jag använder mig av mcrypt_ecb för att kryptera en sträng och sedan krypterar upp(vad heter decrypt på svenska???) den, så kan jag inte lägga till någon text i slutet på strängen som returneras av mcrypt_ecb. Strängen blir typ låst... Ska det vara så här?
Har inte PHP kompilerad med stöd för dessa funktioner så jag kan inte prova, men det låter ju mycket underligt. Du menar att du lägger resultatet i en variabel, och sedan är denna variabel låst???
Hmm, efter att ha kollat i bugdatabasen har jag hittat något som kan förklara ditt problem. Verkar som om mcrypt-funktionerna lägger till ett varierande antal \0 (NULL-tecken) på slutet av strängen för att textmassan skall passa in i krypteringsalgoritmen.
I C betyder \0 att strängen är slut. Vet inte hur det är med PHP, men det är ju troligen skrivet i C så jag misstänker att det är detta som ställer till det för dig. Även om du lägger till tecken på slutet så verkar det som om PHP anser strängen slut när det första NULL-tecknet träffas på. Så även om det finns fler tecken i slutet så kommer dessa inte att skrivas ut t.ex.
Prova med följande och se om inte det "låser upp" variabeln.
$skum = str_replace("\0", "", $skum);
(\0 skall vara "slash + noll". Det är inte bokstaven O alltså.)