Nem egészen értjük egymást, az urlencode egy byte*->byte* típusű függvény, a jelen problémából minden további nélkül ki lehetne hagyni.
Általános esetben az alábbi módszert lehet használni, ha adott valamilyen 'X' objektum, és 'f' szerializátor (még ha nem egyértelmű is):
X' := f(X)
Üzenet := userid + X' + HASH(X' + jelszó)
Fogadó oldalon először a hash validságát kell ellenőrizni, utána kiszámolni az f inverzét X'-re.