Skip to content
Related Articles

Related Articles

MessageDigest isEqual() method in Java with Examples
  • Last Updated : 14 Oct, 2019

The isEqual() method of java.security.MessageDigest class is used to test if two message digest are equal or not.

Syntax:

public static boolean
  isEqual(byte[] digesta, byte[] digestb)

Paramters: This method takes 2 byte arrays for comparison.

Return Value: This method provides the Boolean value, true if both digests are equal otherwise false.

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



Example 1: For Equal Digest Values




// Java program to demonstrate
// isEqual() method
  
import java.security.*;
import java.util.*;
  
public class GFG1 {
    public static void main(String[] argv)
    {
        try {
  
            // creating object of MessageDigest
            MessageDigest msd1
                = MessageDigest.getInstance("SHA-256");
  
            // creating object of MessageDigest
            MessageDigest msd2
                = MessageDigest.getInstance("SHA-256");
  
            // getting provider used in object msd
            // using getAlgorithm() method
            boolean status
                = MessageDigest
                      .isEqual(msd1.digest(),
                               msd2.digest());
  
            // check the condition
            if (status)
                System.out.println("msd1 is equals to msd2");
            else
                System.out.println("msd1 is not equals to msd2");
        }
  
        catch (NoSuchAlgorithmException e) {
  
            System.out.println("Exception thrown : " + e);
        }
        catch (ProviderException e) {
  
            System.out.println("Exception thrown : " + e);
        }
    }
}
Output:
msd1 is equals to msd2

Example 2: For Unequal Digest Values




// Java program to demonstrate
// isEqual() method
  
import java.security.*;
import java.util.*;
  
public class GFG1 {
    public static void main(String[] argv)
    {
        try {
  
            // creating object of MessageDigest
            MessageDigest msd1
                = MessageDigest.getInstance("MD5");
  
            // creating object of MessageDigest
            MessageDigest msd2
                = MessageDigest.getInstance("SHA-256");
  
            // getting provider used in object msd
            // using getAlgorithm() method
            boolean status
                = MessageDigest.isEqual(msd1.digest(),
                                        msd2.digest());
  
            // check the condition
            if (status)
                System.out.println("msd1 is equals to msd2");
            else
                System.out.println("msd1 is not equals to msd2");
        }
  
        catch (NoSuchAlgorithmException e) {
  
            System.out.println("Exception thrown : " + e);
        }
        catch (ProviderException e) {
  
            System.out.println("Exception thrown : " + e);
        }
    }
}
Output:
msd1 is not equals to msd2

Reference: https://docs.oracle.com/javase/9/docs/api/java/security/MessageDigest.html#isEqual-byte:A-byte:A-

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.

My Personal Notes arrow_drop_up
Recommended Articles
Page :