/** * Generazione di una chiave per il DES * 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 Esempio2 { public static void main(String args[]){ System.out.print("Aggiunta del nuovo provider IAIK..."); IAIK provider = new IAIK(); Security.addProvider(provider); System.out.println(" aggiunta riuscita."); // -------- creazione generatore di chiavi------------------------ System.out.print("Creazione del generatore di chiavi..."); KeyGenerator gen = null; try { gen = KeyGenerator.getInstance("DES","IAIK"); // qui occorre specificare l'algoritmo per cui si vuole // la chiave, e quale provider va utilizzato } 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.print("Generazione della chiave..."); gen.init(new SecureRandom()); // si potrebbe inizializzare il generatore con un seme specifico Key k = gen.generateKey(); System.out.println(" chiave generata."); System.out.println(""); for (int i=0; i