/** * Cifratura, decifratura e verifica di un messaggio con chiave simmetrica * NB: richiede la IAIK-JCE @author Enrico Denti @version 1.0, 2/3/99 */ import java.security.Security; import java.security.SecureRandom; import java.security.NoSuchAlgorithmException; import java.security.InvalidKeyException; import java.security.NoSuchProviderException; import java.security.Key; import javax.crypto.*; import iaik.security.provider.*; class EsempioGlobale { public static void main(String args[]){ System.out.println("Aggiunta del nuovo provider IAIK"); IAIK provider = new IAIK(); Security.addProvider(provider); System.out.println("Aggiunta riuscita."); // -------- creazione generatore di chiavi------------------------ System.out.println("Creazione del generatore di chiavi"); KeyGenerator gen = null; try { gen = KeyGenerator.getInstance("DES","IAIK"); } catch (NoSuchAlgorithmException e1) { System.out.println("Algoritmo non supportato in KeyGenerator"); System.exit(1); } catch (NoSuchProviderException e1) { System.out.println("Provider non supportato in KeyGenerator"); System.exit(1); } System.out.println("Generatore di chiavi creato."); // -------- generazione chiave ------------------------------------ System.out.println("Generazione della chiave segreta"); gen.init(new SecureRandom()); Key k = gen.generateKey(); System.out.println("Chiave generata: "); for (int i=0; i