Working version of encryption and decryption: still needs to be robust