Hallo,
ich wollte ein Programm zum verwalten von Passwörtern mit einer grafischen Oberfläche machen. Dafür verwende ich ein Cardlayout mit 3 Panels:
1. Panel : Man legt einmalig ein Masterpasswort fest, was verschlüsselt in eine Datei geschrieben wird um es dann immer wieder zu laden.
2. Panel: Man meldet sich mit seinem Masterpasswort an, wenn es richtig ist kommt man zum dritten Panel.
3. Panel: JTable mit allen Passwörtern werden angezeigt und es können neue Passwörter angelegt werden und gelöscht werden.Die Passwörter werden zum Laden auch verschlüsselt in einer Datei gespeichert.
So sieht das dann aus:
Ort: Mein PC Passwort: Geheim
...
Aber wenn ich auf den Button zum Bestätigen des Masterpasswortes drücke, wird kein Passwort gesetzt und mit
bekomme ich einen leeren String zurück. Wieso ist der String dann leer, obwohl ich was eingegeben habe?
Wäre das so eine gute Vorgehensweise und wenigstens einigermaßen sicher?
Schonmal danke im Vorraus.
ich wollte ein Programm zum verwalten von Passwörtern mit einer grafischen Oberfläche machen. Dafür verwende ich ein Cardlayout mit 3 Panels:
1. Panel : Man legt einmalig ein Masterpasswort fest, was verschlüsselt in eine Datei geschrieben wird um es dann immer wieder zu laden.
2. Panel: Man meldet sich mit seinem Masterpasswort an, wenn es richtig ist kommt man zum dritten Panel.
3. Panel: JTable mit allen Passwörtern werden angezeigt und es können neue Passwörter angelegt werden und gelöscht werden.Die Passwörter werden zum Laden auch verschlüsselt in einer Datei gespeichert.
So sieht das dann aus:
Ort: Mein PC Passwort: Geheim
...
Java:
Masterpasswort m= new Masterpasswort("");
class MasterpasswortPanel extends JPanel { // Masterpasswort festlegen
MasterpasswortPanel() {
JButton button = new JButton("Bestätigen");
setPreferredSize(new Dimension(300,300));
setBackground(Color.BLUE);
JTextArea textfeld = new JTextArea(1, 20);
textfeld.setText("Gebe hier dein MasterPasswort ein:");
textfeld.setEditable(false);
textfeld.setLineWrap(true);
textfeld.setWrapStyleWord(true);
JScrollPane scrollpane = new JScrollPane(textfeld);
add(scrollpane);
add(pwRegestrierung); // PaswortFeld zum Eingeben
button.addActionListener(new ActionListener() { // Button zum Bestätigen
public void actionPerformed(ActionEvent e) { // des Passwortes
char[] zeichen = pwFeld.getPassword();
String passwort = new String(zeichen);
System.out.println("Passwort gesetzt");
m.setMasterpasswort(passwort); // Masterpasswort setzen
System.out.println(m.getMasterpasswort());
cl.next(CardPanel); // View mit Passwörtern wid gezeigt
}
});
add(button);
}
}
public class Masterpasswort {
String Masterpasswort;
Masterpasswort(String Masterpasswort) {
this.Masterpasswort=Masterpasswort;
}
public String getMasterpasswort() {
return Masterpasswort;
}
public void setMasterpasswort(String Masterpasswort) {
this.Masterpasswort=Masterpasswort;
}
}
Aber wenn ich auf den Button zum Bestätigen des Masterpasswortes drücke, wird kein Passwort gesetzt und mit
Code:
System.out.println(m.getMasterpasswort());
Wäre das so eine gute Vorgehensweise und wenigstens einigermaßen sicher?
Schonmal danke im Vorraus.