src/share/classes/javax/crypto/KeyGenerator.java

Print this page




  49  * The only difference between the two is the initialization of the object:
  50  *
  51  * <ul>
  52  * <li><b>Algorithm-Independent Initialization</b>
  53  * <p>All key generators share the concepts of a <i>keysize</i> and a
  54  * <i>source of randomness</i>.
  55  * There is an
  56  * {@link #init(int, java.security.SecureRandom) init}
  57  * method in this KeyGenerator class that takes these two universally
  58  * shared types of arguments. There is also one that takes just a
  59  * <code>keysize</code> argument, and uses the SecureRandom implementation
  60  * of the highest-priority installed provider as the source of randomness
  61  * (or a system-provided source of randomness if none of the installed
  62  * providers supply a SecureRandom implementation), and one that takes just a
  63  * source of randomness.
  64  *
  65  * <p>Since no other parameters are specified when you call the above
  66  * algorithm-independent <code>init</code> methods, it is up to the
  67  * provider what to do about the algorithm-specific parameters (if any) to be
  68  * associated with each of the keys.
  69  * <p>
  70  *
  71  * <li><b>Algorithm-Specific Initialization</b>
  72  * <p>For situations where a set of algorithm-specific parameters already
  73  * exists, there are two
  74  * {@link #init(java.security.spec.AlgorithmParameterSpec) init}
  75  * methods that have an <code>AlgorithmParameterSpec</code>
  76  * argument. One also has a <code>SecureRandom</code> argument, while the
  77  * other uses the SecureRandom implementation
  78  * of the highest-priority installed provider as the source of randomness
  79  * (or a system-provided source of randomness if none of the installed
  80  * providers supply a SecureRandom implementation).
  81  * </ul>
  82  *
  83  * <p>In case the client does not explicitly initialize the KeyGenerator
  84  * (via a call to an <code>init</code> method), each provider must
  85  * supply (and document) a default initialization.
  86  *
  87  * <p> Every implementation of the Java platform is required to support the
  88  * following standard <code>KeyGenerator</code> algorithms with the keysizes in
  89  * parentheses:




  49  * The only difference between the two is the initialization of the object:
  50  *
  51  * <ul>
  52  * <li><b>Algorithm-Independent Initialization</b>
  53  * <p>All key generators share the concepts of a <i>keysize</i> and a
  54  * <i>source of randomness</i>.
  55  * There is an
  56  * {@link #init(int, java.security.SecureRandom) init}
  57  * method in this KeyGenerator class that takes these two universally
  58  * shared types of arguments. There is also one that takes just a
  59  * <code>keysize</code> argument, and uses the SecureRandom implementation
  60  * of the highest-priority installed provider as the source of randomness
  61  * (or a system-provided source of randomness if none of the installed
  62  * providers supply a SecureRandom implementation), and one that takes just a
  63  * source of randomness.
  64  *
  65  * <p>Since no other parameters are specified when you call the above
  66  * algorithm-independent <code>init</code> methods, it is up to the
  67  * provider what to do about the algorithm-specific parameters (if any) to be
  68  * associated with each of the keys.

  69  *
  70  * <li><b>Algorithm-Specific Initialization</b>
  71  * <p>For situations where a set of algorithm-specific parameters already
  72  * exists, there are two
  73  * {@link #init(java.security.spec.AlgorithmParameterSpec) init}
  74  * methods that have an <code>AlgorithmParameterSpec</code>
  75  * argument. One also has a <code>SecureRandom</code> argument, while the
  76  * other uses the SecureRandom implementation
  77  * of the highest-priority installed provider as the source of randomness
  78  * (or a system-provided source of randomness if none of the installed
  79  * providers supply a SecureRandom implementation).
  80  * </ul>
  81  *
  82  * <p>In case the client does not explicitly initialize the KeyGenerator
  83  * (via a call to an <code>init</code> method), each provider must
  84  * supply (and document) a default initialization.
  85  *
  86  * <p> Every implementation of the Java platform is required to support the
  87  * following standard <code>KeyGenerator</code> algorithms with the keysizes in
  88  * parentheses: