Home | History | Annotate | Download | only in spec
      1 /*
      2  *  Licensed to the Apache Software Foundation (ASF) under one or more
      3  *  contributor license agreements.  See the NOTICE file distributed with
      4  *  this work for additional information regarding copyright ownership.
      5  *  The ASF licenses this file to You under the Apache License, Version 2.0
      6  *  (the "License"); you may not use this file except in compliance with
      7  *  the License.  You may obtain a copy of the License at
      8  *
      9  *     http://www.apache.org/licenses/LICENSE-2.0
     10  *
     11  *  Unless required by applicable law or agreed to in writing, software
     12  *  distributed under the License is distributed on an "AS IS" BASIS,
     13  *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     14  *  See the License for the specific language governing permissions and
     15  *  limitations under the License.
     16  */
     17 
     18 package javax.crypto.spec;
     19 
     20 import java.security.spec.AlgorithmParameterSpec;
     21 
     22 /**
     23  * The algorithm parameter specification for generating Diffie-Hellman
     24  * parameters used in Diffie-Hellman key agreement.
     25  */
     26 public class DHGenParameterSpec implements AlgorithmParameterSpec {
     27 
     28     private final int primeSize;
     29     private final int exponentSize;
     30 
     31     /**
     32      * Creates a new <code>DHGenParameterSpec</code> instance with the specified
     33      * parameters.
     34      *
     35      * @param primeSize
     36      *            the size of the <i>prime modulus</i> in bits.
     37      * @param exponentSize
     38      *            the size of the <i>random exponent</i> in bits.
     39      */
     40     public DHGenParameterSpec(int primeSize, int exponentSize) {
     41         this.primeSize = primeSize;
     42         this.exponentSize = exponentSize;
     43     }
     44 
     45     /**
     46      * Returns the size of the <i>prime modulus</i> in bits.
     47      *
     48      * @return the size of the prime modulus in bits.
     49      */
     50     public int getPrimeSize() {
     51         return primeSize;
     52     }
     53 
     54     /**
     55      * Returns the size of the <i>random exponent</i> in bits.
     56      *
     57      * @return the size of the random exponent in bits.
     58      */
     59     public int getExponentSize() {
     60         return exponentSize;
     61     }
     62 }
     63 
     64