验证数字签名
如果您具有为其生成数字签名的数据,则可以验证签名的真实性。为此,您需要
-
the data
-
the signature
-
与用于签署数据的私钥相对应的公钥
在此示例中,您编写一个VerSig
程序以验证GenSig程序生成的签名。这演示了验证所谓的签名的真实性所需的步骤。
VerSig
导入公钥和据称是指定数据文件签名的签名,然后验证签名的真实性。公用密钥,签名和数据文件名在命令行上指定。
下面是创建VerSig
示例程序以导入文件并验证签名的步骤。
创建一个名为VerSig.java
的文本文件。Importing 初始程序结构(import 语句,类名,main
方法等)。
从指定为第一个命令行参数的文件中导入已编码的公钥字节,并将其转换为PublicKey
。
从指定为第二个命令行参数的文件中 Importing 签名字节。
获取一个Signature
对象,并使用公共密钥对其进行初始化以验证签名。向其提供要验证签名的数据(来自指定为第三个命令行参数的文件),然后验证签名。