crypt and decoding ...