Added: encryption and decryption