📌  相关文章
📜  Java中的 Provider.Service getAlgorithm() 方法及示例

📅  最后修改于: 2022-05-13 01:55:04.240000             🧑  作者: Mango

Java中的 Provider.Service getAlgorithm() 方法及示例

Java.security.Provider.Service类的getAlgorithm()方法用于返回与此 Provider.Service 关联的算法的标准名称。

句法:

public final String getAlgorithm()

返回值:此方法返回算法的名称

以下是说明getAlgorithm()方法的示例:

示例 1:

Java
// Java program to demonstrate
// getAlgorithm() method
 
import java.security.*;
import java.util.*;
 
public class GFG1 {
    public static void main(String[] argv)
    {
        try {
 
            // creating the object of Signature
            Signature sr
                = Signature.getInstance(
                    "SHA1withDSA",
                    "SUN");
 
            // getting the Provider of the Signature sr
            // by using method getProvider()
            Provider provider
                = sr.getProvider();
 
            // getting the service of the provider
            // using getServices() method
            Provider.Service service
                = provider
                      .getService("Signature",
                                  sr.getAlgorithm());
 
            // getting algorithm of Provider.Service object
            // by using getAlgorithm() method
            String algo = service.getAlgorithm();
 
            // display the result
            System.out.println("Algorithm : " + algo);
        }
 
        catch (NoSuchAlgorithmException e) {
            System.out.println("Exception thrown : " + e);
        }
        catch (NoSuchProviderException e) {
            System.out.println("Exception thrown : " + e);
        }
    }
}


Java
// Java program to demonstrate
// getAlgorithm() method
 
import java.security.*;
import java.util.*;
 
public class GFG1 {
    public static void main(String[] argv)
    {
        try {
 
            // creating object of MessageDigest
            MessageDigest msd
                = MessageDigest.getInstance("MD5");
 
            // getting the Provider of the Signature sr
            // by using method getProvider()
            Provider provider = msd.getProvider();
 
            // getting the service of the provider
            // using getServices() method
            Provider.Service service
                = provider
                      .getService("MessageDigest",
                                  msd.getAlgorithm());
 
            // getting algorithm of Provider.Service object
            // by using getAlgorithm() method
            String algo = service.getAlgorithm();
 
            // display the result
            System.out.println("Algorithm : " + algo);
        }
 
        catch (NoSuchAlgorithmException e) {
            System.out.println("Exception thrown : " + e);
        }
    }
}


输出:
Algorithm : SHA1withDSA

示例 2:

Java

// Java program to demonstrate
// getAlgorithm() method
 
import java.security.*;
import java.util.*;
 
public class GFG1 {
    public static void main(String[] argv)
    {
        try {
 
            // creating object of MessageDigest
            MessageDigest msd
                = MessageDigest.getInstance("MD5");
 
            // getting the Provider of the Signature sr
            // by using method getProvider()
            Provider provider = msd.getProvider();
 
            // getting the service of the provider
            // using getServices() method
            Provider.Service service
                = provider
                      .getService("MessageDigest",
                                  msd.getAlgorithm());
 
            // getting algorithm of Provider.Service object
            // by using getAlgorithm() method
            String algo = service.getAlgorithm();
 
            // display the result
            System.out.println("Algorithm : " + algo);
        }
 
        catch (NoSuchAlgorithmException e) {
            System.out.println("Exception thrown : " + e);
        }
    }
}
输出:
Algorithm : MD5

参考: https://docs.oracle.com/javase/9/docs/api/ Java/security/Provider.Service.html#getAlgorithm–