From 5dd4f04ddfd94195f50ad8ba96757ad47d24cdb5 Mon Sep 17 00:00:00 2001 From: Adrian Cole Date: Sat, 16 Jun 2012 16:33:48 -0400 Subject: [PATCH] allowed for mock testing --- core/src/main/java/org/jclouds/crypto/SshKeys.java | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/core/src/main/java/org/jclouds/crypto/SshKeys.java b/core/src/main/java/org/jclouds/crypto/SshKeys.java index e085d7a1ad..1813851e41 100644 --- a/core/src/main/java/org/jclouds/crypto/SshKeys.java +++ b/core/src/main/java/org/jclouds/crypto/SshKeys.java @@ -124,13 +124,14 @@ public class SshKeys { /** * - * @param used + * @param generator * to generate RSA key pairs + * @param rand + * for initializing {@code generator} * @return new 2048 bit keyPair * @see Crypto#rsaKeyPairGenerator() */ - public static KeyPair generateRsaKeyPair(KeyPairGenerator generator) { - SecureRandom rand = new SecureRandom(); + public static KeyPair generateRsaKeyPair(KeyPairGenerator generator, SecureRandom rand) { generator.initialize(2048, rand); return generator.genKeyPair(); } @@ -140,15 +141,15 @@ public class SshKeys { */ public static Map generate() { try { - return generate(KeyPairGenerator.getInstance("RSA")); + return generate(KeyPairGenerator.getInstance("RSA"), new SecureRandom()); } catch (NoSuchAlgorithmException e) { propagate(e); return null; } } - public static Map generate(KeyPairGenerator generator) { - KeyPair pair = generateRsaKeyPair(generator); + public static Map generate(KeyPairGenerator generator, SecureRandom rand) { + KeyPair pair = generateRsaKeyPair(generator, rand); Builder builder = ImmutableMap.builder(); builder.put("public", encodeAsOpenSSH(RSAPublicKey.class.cast(pair.getPublic()))); builder.put("private", encodeAsPem(RSAPrivateKey.class.cast(pair.getPrivate())));