⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 signaturetest.java

📁 sun公司开发的,java2核心技术,卷II:高级性能,包括一系列的高级java应用技术,如数据库德连接,高级swing,多线程,软件本地化等等,本文件中则包含该书中的所用实例,配合该书使用,使对ja
💻 JAVA
字号:
/**
 * @version 1.00 1997-09-10
 * @author Cay Horstmann
 */

import java.security.*;

public class SignatureTest
{  public static void main(String[] args)
   {  try
      {  KeyPairGenerator keygen
            = KeyPairGenerator.getInstance("DSA");
         SecureRandom secrand = new SecureRandom();
         keygen.initialize(512, secrand);

         KeyPair keys1 = keygen.generateKeyPair();
         PublicKey pubkey1 = keys1.getPublic();
         PrivateKey privkey1 = keys1.getPrivate();

         KeyPair keys2 = keygen.generateKeyPair();
         PublicKey pubkey2 = keys2.getPublic();
         PrivateKey privkey2 = keys2.getPrivate();

         Signature signalg = Signature.getInstance("DSA");
         signalg.initSign(privkey1);
         String message
            = "Pay authors a bonus of $20,000.";
         signalg.update(message.getBytes());
         byte[] signature = signalg.sign();
         Signature verifyalg = Signature.getInstance("DSA");
         verifyalg.initVerify(pubkey1);
         verifyalg.update(message.getBytes());
         if (!verifyalg.verify(signature))
            System.out.print("not ");
         System.out.println("signed with private key 1");

         verifyalg.initVerify(pubkey2);
         verifyalg.update(message.getBytes());
         if (!verifyalg.verify(signature))
            System.out.print("not ");
         System.out.println("signed with private key 2");
      }
      catch(Exception e)
      {  System.out.println("Error " + e);
      }
   }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -