}
}
第二段代码,命令行中指定存放密钥的文件,用于签名的字符串(这里使用字符串只是
为了简单,其实在真正实际使用中应该换成用 MD5 或 SHA1 算法计算某一文件流的消息摘
要值)和签名所存放的文件.功能是计算出签名并把该签名存放在文件中.
import java.security.*;
import java.io.*;
public class SignGen
{
public static void main(String[] args)
{
if(args.length!=3)
{
System.out.println("Usage: java SignGen KeyFile String SigFile");
System.exit(1);
}
SignGen obj=new SignGen();
try{
obj.genSignature(args[0],args[1],args[2]);
}catch(NoSuchAlgorithmException ex)
{
System.out.println("NoSuchAlgorithmException");
}
catch(InvalidKeyException ex)
{
System.out.println("InvalidKeyException");
}
catch(SignatureException ex)
{
System.out.println("SignatureException");
}
catch(ClassNotFoundException ex)
{
System.out.println("ClassNotFoundException");
}
catch(FileNotFoundException ex)
{
System.out.println("FileNotFoundException");
}
catch(IOException ex)
{
System.out.println("IOException");