Método KeyFactory getInstance() en Java con ejemplos

getInstance (algoritmo de string)

El método getInstance() de la clase java.security.KeyFactory devuelve un objeto de tipo KeyFactory que aplica el algoritmo KeyFactory asignado.

Sintaxis:

public static KeyFactory
  getInstance(String algorithm)
  throws NoSuchAlgorithmException

Parámetros: Este método busca el Algoritmo estándar como parámetro cuya instancia se va a crear a esta instancia de KeyFactory.

Valor de retorno: este método devuelve un nuevo objeto de fábrica de claves.

Excepción: este método arroja la siguiente excepción:

  • NoSuchAlgorithmException: si no hay ningún proveedor disponible para admitir una aplicación spi de fábrica clave para el algoritmo en particular.
  • NullPointerException: si el algoritmo es nulo.

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

Ejemplo 1:

// Java program to demonstrate
// getInstance() method
  
import java.security.*;
import java.util.*;
  
public class GFG1 {
    public static void main(String[] argv)
    {
  
        try {
  
            // creating the object of KeyFactory
            // and getting instance
            // By using getInstance() method
            KeyFactory sr
                = KeyFactory.getInstance("DSA");
  
            // getting the algorithm of KeyFactory object
            String str = sr.getAlgorithm();
  
            // printing the status
            System.out.println("algorithm : " + str);
        }
  
        catch (NoSuchAlgorithmException e) {
  
            System.out.println("Exception thrown : " + e);
        }
        catch (NullPointerException e) {
  
            System.out.println("Exception thrown : " + e);
        }
    }
}
Producción:

algorithm : DSA

Ejemplo 2: Para mostrar NoSuchAlgorithmException

// Java program to demonstrate
// getInstance() method
  
import java.security.*;
import java.util.*;
  
public class GFG1 {
    public static void main(String[] argv)
    {
  
        try {
  
            // creating the object of KeyFactory
            // and getting instance
            // By using getInstance() method
            KeyFactory sr = KeyFactory.getInstance("GEEKS");
  
            // getting the algorithm of KeyFactory object
            String str = sr.getAlgorithm();
  
            // printing the status
            System.out.println("algorithm : " + str);
        }
  
        catch (NoSuchAlgorithmException e) {
  
            System.out.println("Exception thrown : " + e);
        }
        catch (NullPointerException e) {
  
            System.out.println("Exception thrown : " + e);
        }
    }
}
Producción:

Exception thrown :
 java.security.NoSuchAlgorithmException:
 GEEKS KeyFactory not available

getInstance (algoritmo de string, proveedor de string)

El método getInstance() de la clase java.security.KeyFactory devuelve un objeto de tipo KeyFactory que aplica el algoritmo KeyFactory asignado y el objeto proveedor asignado.

Sintaxis:

public static KeyFactory
  getInstance(String algorithm, String provider)
  throws NoSuchAlgorithmException

Parámetros: Este método busca los siguientes argumentos como parámetros:

  • algoritmo : que es el nombre del algoritmo especificado para obtener la instancia.
  • proveedor : que es el nombre del proveedor a especificar

Valor de retorno: este método devuelve un nuevo objeto de fábrica de claves.

Excepción: este método arroja las siguientes excepciones:

  • NoSuchAlgorithmException: – si no hay ningún proveedor disponible para admitir una aplicación spi de fábrica clave para el algoritmo en particular.
  • IllegalArgumentException: – si el proveedor es nulo.
  • NullPointerException: – si el algoritmo es nulo

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

Ejemplo 1:

// Java program to demonstrate
// getInstance() method
  
import java.security.*;
import java.util.*;
  
public class GFG1 {
    public static void main(String[] argv)
    {
        try {
            // creating the object of KeyFactory
            // and getting instance
            // By using getInstance() method
            KeyFactory sr
                = KeyFactory.getInstance(
                    "DSA", "SUN");
  
            // getting the algorithm of KeyFactory object
            String str = sr.getAlgorithm();
  
            // printing the status
            System.out.println("algorithm : " + str);
        }
  
        catch (NoSuchAlgorithmException e) {
  
            System.out.println("Exception thrown : " + e);
        }
        catch (NullPointerException e) {
  
            System.out.println("Exception thrown : " + e);
        }
        catch (NoSuchProviderException e) {
  
            System.out.println("Exception thrown : " + e);
        }
    }
}
Producción:

algorithm : DSA

Ejemplo 2: Para mostrar NoSuchAlgorithmException

// Java program to demonstrate
// getInstance() method
  
import java.security.*;
import java.util.*;
  
public class GFG1 {
    public static void main(String[] argv)
    {
        try {
            // creating the object of KeyFactory
            // and getting instance
            // By using getInstance() method
            KeyFactory sr
                = KeyFactory.getInstance(
                    "RSA", "SUN");
  
            // getting the algorithm of KeyFactory object
            String str = sr.getAlgorithm();
  
            // printing the status
            System.out.println("algorithm : " + str);
        }
  
        catch (NoSuchAlgorithmException e) {
  
            System.out.println("Exception thrown : " + e);
        }
        catch (NullPointerException e) {
  
            System.out.println("Exception thrown : " + e);
        }
        catch (NoSuchProviderException e) {
  
            System.out.println("Exception thrown : " + e);
        }
    }
}
Producción:

Exception thrown :
 java.security.NoSuchAlgorithmException:
 no such algorithm: RSA for provider SUN

Referencia: https://docs.oracle.com/javase/9/docs/api/java/security/KeyFactory.html#getInstance-java.lang.String-

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 *