The world’s Largest Sharp Brain Virtual Experts Marketplace Just a click Away
Levels Tought:
Elementary,Middle School,High School,College,University,PHD
| Teaching Since: | Jul 2017 |
| Last Sign in: | 313 Weeks Ago, 6 Days Ago |
| Questions Answered: | 15833 |
| Tutorials Posted: | 15827 |
MBA,PHD, Juris Doctor
Strayer,Devery,Harvard University
Mar-1995 - Mar-2002
Manager Planning
WalMart
Mar-2001 - Feb-2009
I cannot get this to run in net beans. It will not recognize class or anything and has issues with the userRoles part. Please help me here this final project is due today. I really need your help here.
Â
Â
package work;
import java.io.FileInputStream;
import java.security.MessageDigest;
import java.util.Scanner;
import javax.swing.JOptionPane;
public class AuthenticationSystem {
    public static void main(String[] args) throws Exception {
       Scanner scnr = new Scanner(System.in);
       FileInputStream admin = null; //file input streams
       FileInputStream zookeeper = null;
       FileInputStream veterinarian = null;
       //create array based on credentials.txt
       final int NUM_ELEMENTS = 6;
       String[] storedUsername = new String[NUM_ELEMENTS];
       String[] role = new String[NUM_ELEMENTS];
       String[] hashPassword = new String[NUM_ELEMENTS];
       String username = "";
       String password = "";
       String hash = "";
       userRoles userInput = new userRoles();
       String userRole = "";
       int i = 0; //loop variable
       int j = 0; //loop variable
       int user = 0;
       boolean verified = false;
       //populate username/password array
       storedUsername[i] = "griffin.keyes";      hashPassword[i] = "108de81c31bf9c622f76876b74e9285f"; ++i;
       storedUsername[i] = "rosario.dawson";      hashPassword[i] = "3e34baa4ee2ff767af8c120a496742b5"; ++i;
       storedUsername[i] = "bernie.gorilla";      hashPassword[i] = "a584efafa8f9ea7fe5cf18442f32b07b"; ++i;
       storedUsername[i] = "donald.monkey";      hashPassword[i] = "17b1b7d8a706696ed220bc414f729ad3"; ++i;
       storedUsername[i] = "jerome.grizzlybear";  hashPassword[i] = "3adea92111e6307f8f2aae4721e77900"; ++i;
       storedUsername[i] = "bruce.grizzlybear"; hashPassword[i] = "0d107d09f5bbe40cade3de5c71e9e9b7"; ++i;
       //display usage information for user
       JOptionPane.showMessageDialog(null, "All entries are case sensitive.n" +
               "Enter "quit" at any time to exit.", "Authentication System", JOptionPane.PLAIN_MESSAGE);
           //prompt user for credentials
           username = (String)JOptionPane.showInputDialog(null, "Enter username: ", "Authentication System", JOptionPane.PLAIN_MESSAGE);
               if (username.equals("quit")){
                   JOptionPane.showMessageDialog(null, "You have chosen to exit. Goodbye.", "Authentication System", JOptionPane.WARNING_MESSAGE);
                   return;
               }
           password = (String)JOptionPane.showInputDialog(null, "Enter password: ", "Authentication System", JOptionPane.PLAIN_MESSAGE);
               if (password.equals("quit")){
                   JOptionPane.showMessageDialog(null, "You have chosen to exit. Goodbye.", "Authentication System", JOptionPane.WARNING_MESSAGE);
                   return;
               }
           //check the validation of the user no more then 3 times.
           for (i = 0; i < 3; ++i){
               //compare user credentials to storedUsername and convert password
               for (j = 0; j < NUM_ELEMENTS; ++j) {      Â
                   if (username.equals(storedUsername[j])){
                       String original = password; //provided MD5Digest code
                       MessageDigest md = MessageDigest.getInstance("MD5");
                       md.update(original.getBytes());
                       byte[] digest = md.digest();
                       StringBuffer sb = new StringBuffer();
                       for (byte b : digest) {
                           sb.append(String.format("%02x", b & 0xff));
                       }
                       verified = true;
                       user = j;
                       hash = sb.toString();
                   }
               }
                       //if there are invalid credentials prompt for re-entry
                       if (!hash.equals(hashPassword[user])) {
                           verified = false;
                           if (i<2) {
                               JOptionPane.showMessageDialog(null, "Invalid user credentials. " + (2-i)
                                       + " attempt(s) remaining.", "Authentication System", JOptionPane.PLAIN_MESSAGE);
                               username = (String)JOptionPane.showInputDialog(null, "Enter username: ", "Authentication System",
                                       JOptionPane.PLAIN_MESSAGE);
                                   if (username.equals("quit")){
                                       JOptionPane.showMessageDialog(null, "You have chosen to exit. Goodbye.", "Authentication System",
                                               JOptionPane.WARNING_MESSAGE);
                                       break;
                                   }
                               password = (String)JOptionPane.showInputDialog(null, "Enter password: ", "Authentication System",
                                       JOptionPane.PLAIN_MESSAGE);
                                   if (password.equals("quit")){
                                       JOptionPane.showMessageDialog(null, "You have chosen to exit. Goodbye.", "Authentication System",
                                               JOptionPane.WARNING_MESSAGE);
                                       break;
                                   }
                           }
                           //give error message if incorrect password on final attempt
                           if((!verified) && (i==2)) {
                               JOptionPane.showMessageDialog(null, "Could not verify credentials. Goodbye.", "Authentication System",
                                       JOptionPane.ERROR_MESSAGE);
                               break;
                           }
                       }
                       //user credentials verified
                       else {
                           userInput.setUser(username); //set username
                           userRole = userInput.getRole(); //find corresponding role for user
                           userInput.printWelcome(); //display welcome message to user
                           return;
                       }
           }
    }
}
----------- Â ----------- H-----------ell-----------o S-----------ir/-----------Mad-----------am ----------- Th-----------ank----------- yo-----------u f-----------or -----------you-----------r i-----------nte-----------res-----------t a-----------nd -----------buy-----------ing----------- my----------- po-----------ste-----------d s-----------olu-----------tio-----------n. -----------Ple-----------ase----------- pi-----------ng -----------me -----------on -----------cha-----------t I----------- am----------- on-----------lin-----------e o-----------r i-----------nbo-----------x m-----------e a----------- me-----------ssa-----------ge -----------I w-----------ill----------- be----------- qu-----------ick-----------ly