可以使用getInstance()类java.security.Signature中的方法来获得可以实现所需签名算法的签名对象。此方法需要一个参数,即标准算法名称,并返回签名对象。
演示此的程序如下所示-
import java.security.*;
import java.util.*;
public class Demo {
public static void main(String[] argv) {
try {
Signature signature = Signature.getInstance("SHA256withRSA");
String str = signature.toString();
System.out.println(str);
} catch (NoSuchAlgorithmException e) {
System.out.println("Error!!! NoSuchAlgorithmException");
}
}
}输出结果
Signature object: SHA256withRSA<not initialized>
现在让我们了解上面的程序。
该方法getInstance()用于获取可以实现所需签名算法的签名对象。然后显示签名对象的字符串表示形式。如果算法名称错误,则会引发异常NoSuchAlgorithmException。演示的代码片段如下-
try {
Signature signature = Signature.getInstance("SHA256withRSA");
String str = signature.toString();
System.out.println(str);
} catch (NoSuchAlgorithmException e) {
System.out.println("Error!!! NoSuchAlgorithmException");
}