Start with procedure after declarations
Extract and call the cleanup function at the end
Trap termination with the cleanup function
Retype phrase for extra security
Fix empty phrase wording
Cleanup after encryption error
Fix typo