1
+ package Master .JavaExample ;
2
+
3
+ import org .passay .CharacterRule ;
4
+ import org .passay .EnglishCharacterData ;
5
+ import org .passay .PasswordGenerator ;
6
+
7
+ // create class GeneratePasswordExample1 to generate a random and secure password
8
+ public class GeneratePasswordExample1 {
9
+
10
+ // main() method start
11
+ public static void main (String args []) {
12
+
13
+ // call the generatePassword() method to generate a random password using the Passay library
14
+ String pass = generateSecurePassword ();
15
+
16
+ // print Passay generated password
17
+ System .out .println ("The Passay generated password is:" +pass );
18
+
19
+ }
20
+
21
+ // create generateSecurePassword() method that find the secure password and returns it to the main() method
22
+ public static String generateSecurePassword () {
23
+
24
+ // create character rule for lower case
25
+ CharacterRule LCR = new CharacterRule (EnglishCharacterData .LowerCase );
26
+ // set number of lower case characters
27
+ LCR .setNumberOfCharacters (2 );
28
+
29
+ // create character rule for upper case
30
+ CharacterRule UCR = new CharacterRule (EnglishCharacterData .UpperCase );
31
+ // set number of upper case characters
32
+ UCR .setNumberOfCharacters (2 );
33
+
34
+ // create character rule for digit
35
+ CharacterRule DR = new CharacterRule (EnglishCharacterData .Digit );
36
+ // set number of digits
37
+ DR .setNumberOfCharacters (2 );
38
+
39
+ // create character rule for lower case
40
+ CharacterRule SR = new CharacterRule (EnglishCharacterData .Special );
41
+ // set number of special characters
42
+ SR .setNumberOfCharacters (2 );
43
+
44
+ // create instance of the PasswordGenerator class
45
+ PasswordGenerator passGen = new PasswordGenerator ();
46
+
47
+ // call generatePassword() method of PasswordGenerator class to get Passay generated password
48
+ String password = passGen .generatePassword (8 , SR , LCR , UCR , DR );
49
+
50
+ // return Passay generated password to the main() method
51
+ return password ;
52
+ }
53
+ }
0 commit comments