Split update into update/update_all
Handle padding correctly in decryption