Improved password storage security (thanks SirCmpwn for ideas) and decryption failure handling.