implement EncryptMessage/DecryptMessage