Kommentare
parent
e5e8735425
commit
bac9def176
|
|
@ -1,44 +1,87 @@
|
|||
|
||||
import java.util.Scanner;
|
||||
|
||||
public class Passwort_Check {
|
||||
/**
|
||||
* Dieses Programm prüft anhand von fünf Bedingungen, ob ein Passwort sicher
|
||||
* ist:
|
||||
* - Mindestens 20 Zeichen lang
|
||||
* - Enthält mindestens drei Kleinbuchstaben
|
||||
* - Enthält mindestens drei Großbuchstaben
|
||||
* - Enthält mindestens drei Ziffern
|
||||
* - Enthält mindestens drei Sonderzeichen
|
||||
*/
|
||||
|
||||
public class Passwort_Check {
|
||||
/**
|
||||
* Prüft, ob das Passwort mindestens 20 Zeichen lang ist.
|
||||
*
|
||||
* @param password Das zu prüfende Kennwort.
|
||||
* @return True, wenn das Kennwort mindestens 20 Zeichen lang ist, sonst false.
|
||||
*/
|
||||
public static boolean checkLaenge(String passwort) {
|
||||
if (passwort == null) {
|
||||
return false;
|
||||
}
|
||||
// Abfrage mind. Anzahl
|
||||
|
||||
return passwort.length() >= 20;
|
||||
}
|
||||
|
||||
/**
|
||||
* Prüft, ob das Passwort mindestens drei Kleinbuchstaben enthält.
|
||||
*
|
||||
* @param password Das zu prüfende Kennwort.
|
||||
* @return True, wenn das Kennwort mindestens drei Kleinbuchstaben enthält,
|
||||
* sonst false.
|
||||
*/
|
||||
public static boolean checkKleinBuchstaben(String passwort) {
|
||||
if (passwort == null) {
|
||||
return false;
|
||||
} // Abfrage der Kleinbuchstaben
|
||||
}
|
||||
return passwort.matches(".*[a-z].*[a-z].*[a-z].*");
|
||||
}
|
||||
|
||||
/**
|
||||
* Prüft, ob das Passwort mindestens drei Großbuchstaben enthält.
|
||||
*
|
||||
* @param password Das zu prüfende Kennwort.
|
||||
* @return True, wenn das Kennwort mindestens drei Großbuchstaben enthält, sonst
|
||||
* false.
|
||||
*/
|
||||
public static boolean checkGrossBuchstaben(String passwort) {
|
||||
if (passwort == null) {
|
||||
return false;
|
||||
} // Abfrage der Grossbuchstaben
|
||||
return passwort.matches(".*[A-Z].*[A-Z].*[A-Z].*"); //
|
||||
}
|
||||
return passwort.matches(".*[A-Z].*[A-Z].*[A-Z].*");
|
||||
}
|
||||
|
||||
/**
|
||||
* Prüft, ob das Passwort mindestens drei Ziffern enthält.
|
||||
*
|
||||
* @param password Das zu prüfende Kennwort.
|
||||
* @return True, wenn das Kennwort mindestens dreistellig ist, sonst false.
|
||||
*/
|
||||
public static boolean checkZiffer(String passwort) {
|
||||
if (passwort == null) {
|
||||
return false;
|
||||
} // Abfrage der Ziffern
|
||||
}
|
||||
|
||||
return passwort.matches(".*[0-9].*[0-9].*[0-9].*");
|
||||
}
|
||||
|
||||
/**
|
||||
* Prüft, ob das Passwort mindestens drei Sonderzeichen enthält.
|
||||
*
|
||||
* @param password Das zu prüfende Kennwort.
|
||||
* @return True, wenn das Kennwort mindestens drei Sonderzeichen enthält, sonst
|
||||
* false.
|
||||
*/
|
||||
public static boolean checkSonderZeichen(String passwort) {
|
||||
if (passwort == null) {
|
||||
return false;
|
||||
}
|
||||
// Überprüfung mit Regex durch Ausschluss
|
||||
// [^A-Za-z0-9] Schließt alle ziffern und Buchstaben aus
|
||||
// Ausschlus der Steuerzeichen:
|
||||
// Ausschlus der Steuerzeichen:
|
||||
// [^/t] schließt Tab aus
|
||||
// [^/r] schließt Carriage Return aus
|
||||
// [^/n] schließt Line Feed aus
|
||||
|
|
@ -50,7 +93,11 @@ public class Passwort_Check {
|
|||
// return
|
||||
// passwort.matches(".*[^A-Za-z0-9\\x00-\\x1F\\x7F].*[^A-Za-z0-9\\x00-\\x1F\\x7F].*[^A-Za-z0-9\\x00-\\x1F\\x7F].*");
|
||||
}
|
||||
|
||||
/**
|
||||
* Hauptmethode, die den Benutzer zur Eingabe eines Passworts auffordert und dessen Sicherheit anhand der definierten Bedingungen überprüft.
|
||||
*
|
||||
* @param args Kommandozeilenargumente (werden in diesem Programm nicht verwendet).
|
||||
*/
|
||||
public static void main(String[] args) {
|
||||
String passwort = null;
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue