Skip to content
Related Articles

Related Articles

Improve Article
Save Article
Like Article

MessageDigest getInstance() method in Java with Examples

  • Last Updated : 09 Jun, 2020

getInstance(String algorithm)

The getInstance() method of java.security.MessageDigest class used to return a object of MessageDigest type that applys the assigned MessageDigest algorithm.

Syntax:

Attention reader! Don’t stop learning now. Get hold of all the important Java Foundation and Collections concepts with the Fundamentals of Java and Java Collections Course at a student-friendly price and become industry ready. To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.

public static MessageDigest
  getInstance(String algorithm)
  throws NoSuchAlgorithmException

Parameters: This method accepts the name of the standard Algorithm as a parameter.

Return Value: This method provides an object of type MessageDigest.



Exception: This method throws following exception:

  • NoSuchAlgorithmException: if no provider supports an message digest spi application for the particular algorithm.
  • NullPointerException: if algorithm is null.

Below are the examples to illustrate the getInstance() method:

Example 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 MessageDigest
            // and getting instance
            // By using getInstance() method
            MessageDigest sr
                = MessageDigest.getInstance("MD5");
  
            // getting the status of MessageDigest object
            String str = sr.toString();
  
            // printing the status
            System.out.println("Status : " + str);
        }
  
        catch (NoSuchAlgorithmException e) {
  
            System.out.println("Exception thrown : " + e);
        }
        catch (NullPointerException e) {
  
            System.out.println("Exception thrown : " + e);
        }
    }
}
Output:
Status : MD5 Message Digest from SUN, <initialized>

Example 2: To show 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 MessageDigest
            // and getting instance
            // By using getInstance() method
            MessageDigest sr
                = MessageDigest.getInstance("GFG");
  
            // getting the status of MessageDigest object
            String str = sr.toString();
  
            // printing the status
            System.out.println("Status : " + str);
        }
  
        catch (NoSuchAlgorithmException e) {
  
            System.out.println("Exception thrown : " + e);
        }
        catch (NullPointerException e) {
  
            System.out.println("Exception thrown : " + e);
        }
    }
}
Output:
Exception thrown :
 java.security.NoSuchAlgorithmException:
 GFG MessageDigest not available

getInstance(String algorithm, String provider)

This getInstance() method of java.security.MessageDigest class provides an object of MessageDigest type that applys the assigned MessageDigest algorithm and assigned provider object.

Syntax:



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

Parameters: This method seeks the following arguments as a parameters:

  • algorithm: which is the name of the algorithm to be specified in this instance.
  • provider: which is the name of the provider to be specified in this instance

Return Value: This method provides an object of type MessageDigest.

Exception: This method throws following exceptions:

  • NoSuchAlgorithmException:– if no MessageDigestSpi implementation for the particular algorithm is available from the particular Provider .
  • IllegalArgumentException: if the provider is null.
  • NullPointerException: if algorithm is null

Below are the examples to illustrate the getInstance() method:

Example 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 MessageDigest
            // and getting instance
            // By using getInstance() method
            MessageDigest sr
                = MessageDigest.getInstance(
                    "SHA-384", "SUN");
  
            // getting the status of MessageDigest object
            String str = sr.toString();
  
            // printing the status
            System.out.println("Status : " + 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);
        }
    }
}
Output:
Status : SHA-384 Message Digest from SUN, <initialized>

Example 2: To show 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 MessageDigest
            // and getting instance
            // By using getInstance() method
            MessageDigest sr
                = MessageDigest.getInstance(
                    "GFG", "SUN");
  
            // getting the status of MessageDigest object
            String str = sr.toString();
  
            // printing the status
            System.out.println("Status : " + 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);
        }
    }
}
Output:
Exception thrown :
 java.security.NoSuchAlgorithmException:
 no such algorithm: GFG for provider SUN

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




My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!