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

📄 testsig.java

📁 这是一个英文版的《Java程序设计与问题解决》现在好多大学都当成教材
💻 JAVA
字号:
import java.io.*;import java.security.*;class testSig {    public static void main(String[] args) {        /* Test generating and verifying a DSA signature */        try {            /* generate a key pair */            KeyPairGenerator keyGen = KeyPairGenerator.getInstance("DSA");            keyGen.initialize(1024, new SecureRandom());            KeyPair pair = keyGen.generateKeyPair();            /* create a Signature object to use             * for signing and verifying */            Signature dsa = Signature.getInstance("SHA/DSA");             /* initialize the Signature object for signing */            PrivateKey priv = pair.getPrivate();            dsa.initSign(priv);            /* Update and sign the data */            FileInputStream fis = new FileInputStream(args[0]);            byte b;            while (fis.available() != 0) {                b = (byte) fis.read();                dsa.update(b);                };            fis.close();            /* Now that all the data to be signed             * has been read in, sign it */            byte[] sig = dsa.sign();            /* Verify the signature */            /* Initialize the Signature object for verification */            PublicKey pub = pair.getPublic();            dsa.initVerify(pub);            /* Update and verify the data */            fis = new FileInputStream(args[0]);            while (fis.available() != 0) {                b = (byte) fis.read();                dsa.update(b);                };            fis.close();            boolean verifies = dsa.verify(sig);            System.out.println("signature verifies: " + verifies);        } catch (Exception e) {            System.err.println("Caught exception " + e.toString());        }    }}

⌨️ 快捷键说明

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