‏إظهار الرسائل ذات التسميات كود Code. إظهار كافة الرسائل
‏إظهار الرسائل ذات التسميات كود Code. إظهار كافة الرسائل

الخميس، 28 يناير 2021

كود توليد كلمة المرور و OTP في Java

توليد كلمة المرور و OTP في Java


كود Java

في كثير من الأحيان ننسى كلمات المرور الخاصة بنا ونختار خيار نسيت كلمة المرور وفي أي وقت من الأوقات نحصل على كلمة مرور جديدة على معرف البريد الإلكتروني المسجل لدينا أو رقم الهاتف. لتسجيل الدخول إلى حسابنا. وفي كل مرة نحصل على كلمة مرور مختلفة.

في بعض الأحيان نقوم بالوصول إلى حساباتنا المصرفية أثناء التسوق من متجر عبر الإنترنت أو العديد من الطرق الأخرى ، من أجل التحقق من انتقالنا من الحساب المصرفي ، يرسلون إلينا OTP (كلمة مرور لمرة واحدة) على رقم الهاتف المسجل لدينا. أو معرف البريد الإلكتروني الخاص بنا ، في أي وقت من الأوقات.

 

يشرح الكود التالي كيفية إنشاء كلمات المرور وكلمة المرور لمرة واحدة في أي وقت من الأوقات وما هو الرمز الذي يمكننا استخدامه إذا احتجنا إلى القيام بذلك.

طريقة 1:

برنامج جافا يشرح توليد كلمة المرور

 

// Java code to explain how to generate random

// password

  

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

// class in Java

import java.util.*;

  

public class NewClass

{

    public static void main(String[] args)

    {

        // Length of your password as I have choose

        // here to be 8

        int length = 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

    static char[] geek_Password(int len)

    {

        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 = new Random();

  

        char[] password = new char[len];

  

        for (int i = 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()));

  

        }

        return password;

    }

}

 

ملاحظة: كلمة المرور التي ننشئها ستتغير في كل مرة. كما استخدمنا طريقة Random () لإنشاء كلمة المرور.

 

Output :

Generating password using random() :

Your new password is : KHeCZBTM;-

 

Java program explaining the generation of OTP(One Time Password)

 

// Java code to explain how to generate OTP

  

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

// class in Java

import java.util.*;

  

public class NewClass

{

    static char[] OTP(int len)

    {

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

        System.out.print("You OTP is : ");

  

        // Using numeric values

        String numbers = "0123456789";

  

        // Using random method

        Random rndm_method = new Random();

  

        char[] otp = new char[len];

  

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

        {

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

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

            otp[i] =

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

        }

        return otp;

    }

    public static void main(String[] args)

    {

        int length = 4;

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

    }

}

 

ملحوظة :

سوف يتغير OTP الذي نقوم بإنشائه في كل مرة. كما استخدمنا طريقة Random () لإنشاء كلمة المرور لمرة واحدة.

 

Output :

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

طريقة 2:

 

Java program explaining the generation of Password

 

// Java code to explain how to generate random

// password

class uniquePassword

{

public static long Code() //this code returns the  unique 16 digit code 

{  //creating a 16 digit code using Math.random function

    long code   =(long)((Math.random()*9*Math.pow(10,15))+Math.pow(10,15));

    return code; //returning the code

}

    //method to generate the password

    //by converting every two digits as an ascii value of a character

public static void main(String args[]) 

{

long code=Code();//function calling

String unique_password="";

for (long i=code;i!=0;i/=100)//a loop extracting 2 digits from the code 

    {

        long digit=i%100;//extracting two digits

        if (digit<=90)

        digit=digit+32; 

        //converting those two digits(ascii value) to its character value

        char ch=(char) digit;

        // adding 32 so that our least value be a valid character 

        unique_password=ch+unique_password;//adding the character to the string

    }

    System.out.println("unique password ="+unique_password);

    }

}

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

// class in Java                               

 

 

ملاحظة: كلمة المرور التي ننشئها ستتغير في كل مرة. كما استخدمنا طريقة Random () لإنشاء كلمة المرور.

 

Output :

Generating password using Math.random() and ascii code: 
Your new password is : KHe%ZBT$
 

Java program explaining the generation of OTP(One Time Password)

 

// Java code to explain how to generate OTP

public class GenerateOTP {

//declaring a of return type String

//which on calling provides the otp

    public static String generateOTP() 

    {  //int randomPin declared to store the otp

        //since we using Math.random() hence we have to type cast it int

        //because Math.random() returns decimal value

        int randomPin   =(int) (Math.random()*9000)+1000;

        String otp  = String.valueOf(randomPin);

      

  return otp; //returning value of otp

    }

            public static void main(String args[])//method to call and print otp

    {

        String otpSting  =generateOTP();//function calling

        System.out.println("OTP : "+otpSting);

    }

}// Here we are using Math.random() function.

// class in Java

 

ملحوظة :

سوف يتغير OTP الذي نقوم بإنشائه في كل مرة. كما استخدمنا وظيفة Math.random () لإنشاء كلمة المرور لمرة واحدة.

Output :

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