Método KeyPairGenerator initialize() en Java con ejemplos

inicializar (tamaño de clave int)

El método initialize() de java.security.KeyPairGenerator se utiliza para inicializar el objeto KeyPairGenerator para su uso posterior.

Sintaxis:  

public void initialize(int keysize)

Parámetros: Este método busca el tamaño de clave de tipo int como parámetro.
Valor devuelto: este método no tiene nada que devolver.
Excepción: este método genera InvalidParameterException si se pasa el valor mayor o menor que los criterios especificados.

Nota: El siguiente programa no se ejecutará en el IDE en línea.

A continuación se muestran los ejemplos para ilustrar el método initialize(int keysize) :

Ejemplo 1:  

Java

// Java program to demonstrate
// genKeyPair() method
 
import java.security.*;
import java.util.*;
 
public class GFG {
    public static void main(String[] argv) throws Exception
    {
        try {
 
            // creating the object of KeyPairGenerator
            KeyPairGenerator kpg
                = KeyPairGenerator
                      .getInstance("RSA");
 
            // initializing with 1024
            kpg.initialize(1024);
 
            // getting key pairs
            // using genKeyPair() method
            KeyPair kp = kpg.genKeyPair();
 
            // printing the Keypair
            System.out.println("Keypair : " + kp);
        }
 
        catch (NoSuchAlgorithmException e) {
 
            System.out.println("Exception thrown : " + e);
        }
    }
}
Producción: 

Keypair : java.security.KeyPair@12a3a380

 

Ejemplo 2: para InvalidParameterException 

Java

// Java program to demonstrate
// genKeyPair() method
 
import java.security.*;
import java.util.*;
 
public class GFG {
    public static void main(String[] argv) throws Exception
    {
        try {
 
            // creating the object of KeyPairGenerator
            KeyPairGenerator kpg
                = KeyPairGenerator
                      .getInstance("RSA");
 
            // initializing with 1024
            kpg.initialize(-24);
 
            // getting key pairs
            // using genKeyPair() method
            KeyPair kp = kpg.genKeyPair();
 
            // printing the Keypair
            System.out.println("Keypair : " + kp);
        }
 
        catch (NoSuchAlgorithmException e) {
 
            System.out.println("Exception thrown : " + e);
        }
        catch (InvalidParameterException e) {
 
            System.out.println("Exception thrown : " + e);
        }
    }
}
Producción: 

Exception thrown :
 java.security.InvalidParameterException:
 RSA keys must be at least 512 bits long

 

inicializar (tamaño de clave int, SecureRandom aleatorio)

El método initialize() de java.security.KeyPairGenerator inicializa KeyPairGenerator para un tamaño particular con el objeto SecureRandom para usar más. 

Sintaxis:  

public void initialize(int keysize,
                       SecureRandom random)

Parámetros: este método toma los siguientes argumentos como parámetros: 

  • tamaño : cuál es el tamaño de la clave
  • random : que es el objeto del tipo SecureRandom

Valor de retorno: este método proporciona el objeto de KeyPairGenerator .
Excepción: este método genera InvalidParameterException si se pasa el valor mayor o menor que los criterios especificados.

A continuación se muestran los ejemplos para ilustrar el método initialize() :

Ejemplo 1: 

Java

// Java program to demonstrate
// genKeyPair() method
 
import java.security.*;
import java.util.*;
 
public class GFG {
    public static void main(String[] argv)
        throws Exception
    {
        try {
 
            // creating the object of KeyPairGenerator
            KeyPairGenerator kpg
                = KeyPairGenerator
                      .getInstance("RSA");
 
            // creating the object of SecureRandom
            SecureRandom se
                = SecureRandom.getInstance("SHA1PRNG");
 
            // initializing with 1024
            kpg.initialize(1024, se);
 
            // getting key pairs
            // using genKeyPair() method
            KeyPair kp = kpg.genKeyPair();
 
            // printing the Keypair
            System.out.println("Keypair : " + kp);
        }
 
        catch (NoSuchAlgorithmException e) {
 
            System.out.println("Exception thrown : " + e);
        }
        catch (InvalidParameterException e) {
 
            System.out.println("Exception thrown : " + e);
        }
    }
}
Producción: 

Keypair : java.security.KeyPair@4e25154f

 

Ejemplo 2: para InvalidParameterException 

Java

// Java program to demonstrate
// genKeyPair() method
 
import java.security.*;
import java.util.*;
 
public class GFG {
    public static void main(String[] argv)
        throws Exception
    {
        try {
 
            // creating the object of KeyPairGenerator
            KeyPairGenerator kpg
                = KeyPairGenerator
                      .getInstance("RSA");
 
            // creating the object of SecureRandom
            SecureRandom se
                = SecureRandom.getInstance("SHA1PRNG");
 
            // initializing with -24
            kpg.initialize(-24, se);
 
            // getting key pairs
            // using genKeyPair() method
            KeyPair kp = kpg.genKeyPair();
 
            // printing the Keypair
            System.out.println("Keypair : " + kp);
        }
 
        catch (NoSuchAlgorithmException e) {
 
            System.out.println("Exception thrown : " + e);
        }
        catch (InvalidParameterException e) {
 
            System.out.println("Exception thrown : " + e);
        }
    }
}
Producción: 

Exception thrown :
 java.security.InvalidParameterException:
 RSA keys must be at least 512 bits long

 

Referencia: https://docs.oracle.com/javase/9/docs/api/java/security/KeyPairGenerator.html#initialize-int-java.security.SecureRandom-
 

Publicación traducida automáticamente

Artículo escrito por RohitPrasad3 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *