If you are developing an application with a user interface, consider the following issues:
Other applications may have access to the information that the user inputs.
A hostile application may lure the user to enter information that belongs to another application.
Password dialogs in particular should be designed so that the user easily recognizes the currently running application.
It is possible for the user to unintentionally enter incorrect data that can interfere with the normal operation of the application. All input should be checked and validated before processing. A one-time check may not be enough because the content of data can change during processing, so it is therefore advisable to quickly check the data every time it is used.
The following figure shows an example of input processing phases.