import java.security.*; import java.security.spec.*; import java.io.*; public class Allkirjakontrollija{ public static void main(String argumendid[]) throws Exception{ String avavotmefail="avavoti.key"; String andmefail="andmed.txt"; String allkirjafail="andmed.sig"; byte[] avavotmebaidid=new byte[(int)new File(avavotmefail).length()]; FileInputStream sisse=new FileInputStream(avavotmefail); sisse.read(avavotmebaidid); sisse.close(); PublicKey avavoti=KeyFactory.getInstance("DSA").generatePublic( new X509EncodedKeySpec(avavotmebaidid) ); byte[] andmebaidid=new byte[(int)new File(andmefail).length()]; sisse=new FileInputStream(andmefail); sisse.read(andmebaidid); sisse.close(); byte[] allkirjabaidid=new byte[(int)new File(allkirjafail).length()]; sisse=new FileInputStream(allkirjafail); sisse.read(allkirjabaidid); sisse.close(); Signature allkirjakontrollija=Signature.getInstance("DSA"); allkirjakontrollija.initVerify(avavoti); allkirjakontrollija.update(andmebaidid); System.out.print("Andmed failist "+andmefail+" ning allkiri failist "+allkirjafail+ " "); if(allkirjakontrollija.verify(allkirjabaidid)){ System.out.println("sobivad."); } else { System.out.println("ei sobi."); } } }