/* * KeyHandler.java * * Created on den 29 december 2004, 15:52 */ import javax.crypto.*; import javax.crypto.spec.*; import java.security.*; import java.io.*; /** * * @author Henrik Johansson */ public class KeyHandler { private String keyName = null; private String algorithm = "Blowfish"; private int strength = 448; /** Creates a new instance of KeyHandler */ public KeyHandler() { } public void setKeyName(String keyName) { this.keyName = keyName; } public String getKeyName() { return keyName; } public void createKey() { try { KeyGenerator kg = KeyGenerator.getInstance(algorithm); kg.init(strength); SecretKey sk = kg.generateKey(); FileOutputStream fos = new FileOutputStream(keyName); ObjectOutputStream oos = new ObjectOutputStream(fos); oos.writeObject(sk); } catch(NoSuchAlgorithmException e) { e.printStackTrace(); } catch(FileNotFoundException e) { e.printStackTrace(); } catch(IOException e) { e.printStackTrace(); } } /** * @param args the command line arguments */ public static void main(String[] args) { if(args.length != 1) { System.err.println("KeyHandler måste anropas med ett argument, namnet på den nya nyckeln."); System.exit(1); } KeyHandler kh = new KeyHandler(); kh.setKeyName(args[0]); kh.createKey(); } }