Kommentare

main
Andreas Wurst 2025-06-03 13:50:32 +02:00
parent e5e8735425
commit bac9def176
1 changed files with 55 additions and 8 deletions

View File

@ -1,37 +1,80 @@
import java.util.Scanner; 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) { public static boolean checkLaenge(String passwort) {
if (passwort == null) { if (passwort == null) {
return false; return false;
} }
// Abfrage mind. Anzahl
return passwort.length() >= 20; 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) { public static boolean checkKleinBuchstaben(String passwort) {
if (passwort == null) { if (passwort == null) {
return false; return false;
} // Abfrage der Kleinbuchstaben }
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 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) { public static boolean checkGrossBuchstaben(String passwort) {
if (passwort == null) { if (passwort == null) {
return false; 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) { public static boolean checkZiffer(String passwort) {
if (passwort == null) { if (passwort == null) {
return false; return false;
} // Abfrage der Ziffern }
return passwort.matches(".*[0-9].*[0-9].*[0-9].*"); 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) { public static boolean checkSonderZeichen(String passwort) {
if (passwort == null) { if (passwort == null) {
return false; return false;
@ -50,7 +93,11 @@ public class Passwort_Check {
// return // return
// passwort.matches(".*[^A-Za-z0-9\\x00-\\x1F\\x7F].*[^A-Za-z0-9\\x00-\\x1F\\x7F].*[^A-Za-z0-9\\x00-\\x1F\\x7F].*"); // 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) { public static void main(String[] args) {
String passwort = null; String passwort = null;