public class PasswordHash { static FrontController fc = FrontController.getInstance(); public static String hash(String passwordToHash) { String generatedPassword = null; try { // Create MessageDigest instance for MD5 MessageDigest md = MessageDigest.getInstance("MD5"); // Add password bytes to digest md.update(passwordToHash.getBytes()); // Get the hash's bytes byte[] bytes = md.digest(); // This bytes[] has bytes in decimal format; // Convert it to hexadecimal format StringBuilder sb = new StringBuilder(); for (int i = 0; i < bytes.length; i++) { sb.append(Integer.toString((bytes[i] & 0xff) + 0x100, 16).substring(1)); } // Get complete hashed password in hex format generatedPassword = sb.toString(); } catch (NoSuchAlgorithmException e) { fc.processRequest("Avviso", AlertList.ERROREGENERICO); } return generatedPassword; } }
@FXML public void login(ActionEvent e) throws SQLException { if (cl.checkCredenzialiClienti(user.getText(), pass.getText())) { username = user .getText(); // salva l'informazione dell'username da passare all'interfaccia cliente o // operatore // setta le informazioni nelle finestre username e operatore nome = cl.read(user.getText()).getNome(); cognome = cl.read(user.getText()).getCognomeCliente(); FrontController.getIstance().setAutenticato(); FrontController.getIstance().dispatchRequest("FinestraClienti"); } else if (ag.checkcredenziali(user.getText(), pass.getText())) { FrontController.getIstance().setAutenticato(); try { setDataAgente(); // Caricamento nuova finestra e chiusura finestra login FrontController.getIstance().dispatchRequest("FinestraOperatore"); Stage stage = (Stage) exit_btn.getScene().getWindow(); stage.close(); } catch (Exception e1) { e1.printStackTrace(); } } else if (user.getText().equals("capone") && pass.getText().equalsIgnoreCase("capone")) { FrontController.getIstance().setAutenticato(); try { FrontController.getIstance().dispatchRequest("FinestraAmministrazione"); Stage stage = (Stage) exit_btn.getScene().getWindow(); stage.close(); } catch (Exception e1) { e1.printStackTrace(); } } else { Popup.Errore("Credenziali errate", "Hai inserito credenziali sbagliate."); } }
@FXML public void register(ActionEvent e) { FrontController.getIstance().register(); }