The Java Tutorials have been written for JDK 8.Java教程是为JDK 8编写的。Examples and practices described in this page don't take advantage of improvements introduced in later releases and might use technology no longer available.本页中描述的示例和实践没有利用后续版本中引入的改进,并且可能使用不再可用的技术。See Java Language Changes for a summary of updated language features in Java SE 9 and subsequent releases.有关Java SE 9及其后续版本中更新的语言特性的摘要,请参阅Java语言更改。
See JDK Release Notes for information about new features, enhancements, and removed or deprecated options for all JDK releases.有关所有JDK版本的新功能、增强功能以及已删除或不推荐的选项的信息,请参阅JDK发行说明。
If you have data for which a digital signature was generated, you can verify the authenticity of the signature. To do so, you need
In this example you write a VerSig
program to verify the signature generated by the GenSig
program. This demonstrates the steps required to verify the authenticity of an alleged signature.
VerSig
imports a public key and a signature that is alleged to be the signature of a specified data file and then verifies the authenticity of the signature. The public key, signature, and data file names are specified on the command line.
The steps to create the VerSig
sample program to import the files and to verify the signature are the following.
Prepare Initial Program Structure
Create a text file named VerSig.java
. Type in the initial program structure (import statements, class name, main
method, and so on).
Input and Convert the Encoded Public Key Bytes
Import the encoded public key bytes from the file specified as the first command line argument and convert them to a PublicKey
.
Input the signature bytes from the file specified as the second command line argument.
Get a Signature
object and initialize it with the public key for verifying the signature. Supply it with the data whose signature is to be verified (from the file specified as the third command line argument), and verify the signature.