Generating Password and OTP in Java

Many a times we forget our passwords and we opt for Forget password option and within no time we get a new password at our registered email-ID or phone no. to login our account. And every time we get a different password.
Sometime we access our bank accounts while shopping from an online store or many more ways, in order to verify our transition from the bank account they send us OTP(One Time Password) on our registered phone no. or our email-ID, within no time.

The following code explains how to generate such Passwords and OTP within no time and what code we can use if in case we need to do so.

Java program explaining the generation of Password

// Java code to explain how to generate random

// password

// Here we are using random() method of util

// class in Java

importjava.util.*;

publicclassNewClass

{

publicstaticvoidmain(String[] args)

{

// Length of your password as I have choose

// here to be 8

intlength = 10;

System.out.println(geek_Password(length));

}

// This our Password generating method

// We have use static here, so that we not to

// make any object for it

staticchar[] geek_Password(intlen)

{

System.out.println("Generating password using random() : ");

System.out.print("Your new password is : ");

// A strong password has Cap_chars, Lower_chars,

// numeric value and symbols. So we are using all of

// them to generate our password

String Capital_chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";

String Small_chars = "abcdefghijklmnopqrstuvwxyz";

String numbers = "0123456789";

String symbols = "!@#$%^&*_=+-/.?<>)";

String values = Capital_chars + Small_chars +

numbers + symbols;

// Using random method

Random rndm_method = newRandom();

char[] password = newchar[len];

for(inti = 0; i < len; i++)

{

// Use of charAt() method : to get character value

// Use of nextInt() as it is scanning the value as int

password[i] =

values.charAt(rndm_method.nextInt(values.length()));

}

returnpassword;

}

}

Note : The password we are generating will change every time. As we have used random() method to generate the password.Output :

Note :
The OTP we are generating will change every time. As we have used random() method to generate the OTP.Output :

Generating OTP using random() :
You OTP is : 5291

This article is contributed by Mohit Gupta 🙂. If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.