ts/projects for junior and senior level computer scle... 178 Programming project Access Control Project Introduction Access control is a critical component of any network and computer security mechanism. An effective access control mechanism ensures that only users with valid log in credentials can access a computer network or resources on a network. A common form of login access control is the username and password authentication mechanism. The mechanism could be a single stage or multi-stage authentication process. In a single stage authentication mechanism a valid password is sufficient to grant access to a system. A multi-stage authentication mechanism requires further information beyond valid username and password to authenticate a user. For example, a user might need to enter a valid security code after the system verifies the user's password Project Descrintion In this project, you will develop a Java computer program to simulate access control to a system network. The username and password authentication mechanism is used as an access control mechanism in this project. The program needs to authenticate the user with their username and hashed password stored in Access Manager User (AMU) file. To create an Access Manager User file, you need to develop a java program that takes username and password as input and then generates a file containing the username, hashed password, and plaintext password. In real world, the plaintext are not saved in the AMU file. However, you need the username and corresponding plaintext password for testing of your main program. The structure of the AMU file is shown in the appendix. Note that this should be done as a separate program. The main program operates in the following manner. It first prompts the user to enter username and password. After the user enters both usemame and password, it hashes the