test/jdk/sun/security/tools/keytool/fakegen/java.base/sun/security/rsa/RSAKeyPairGenerator.java
author chegar
Thu, 17 Oct 2019 20:54:25 +0100
branchdatagramsocketimpl-branch
changeset 58679 9c3209ff7550
parent 58678 9cf78a70fa4f
parent 55640 3081f39a3d30
permissions -rw-r--r--
datagramsocketimpl-branch: merge with default
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
55468
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
     1
/*
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
     2
 * Copyright (c) 2019, Oracle and/or its affiliates. All rights reserved.
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
     3
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
     4
 *
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
     5
 * This code is free software; you can redistribute it and/or modify it
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
     6
 * under the terms of the GNU General Public License version 2 only, as
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
     7
 * published by the Free Software Foundation.
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
     8
 *
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
     9
 * This code is distributed in the hope that it will be useful, but WITHOUT
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    10
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    11
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    12
 * version 2 for more details (a copy is included in the LICENSE file that
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    13
 * accompanied this code).
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    14
 *
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    15
 * You should have received a copy of the GNU General Public License version
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    16
 * 2 along with this work; if not, write to the Free Software Foundation,
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    17
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    18
 *
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    19
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    20
 * or visit www.oracle.com if you need additional information or have any
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    21
 * questions.
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    22
 */
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    23
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    24
package sun.security.rsa;
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    25
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    26
import java.math.BigInteger;
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    27
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    28
import java.security.*;
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    29
import java.security.spec.AlgorithmParameterSpec;
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    30
import java.security.spec.RSAKeyGenParameterSpec;
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    31
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    32
import sun.security.x509.AlgorithmId;
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    33
import static sun.security.rsa.RSAUtil.KeyType;
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    34
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    35
/**
55640
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
    36
 * A fake RSA keypair generation.
55468
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    37
 */
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    38
public abstract class RSAKeyPairGenerator extends KeyPairGeneratorSpi {
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    39
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    40
    // public exponent to use
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    41
    private BigInteger publicExponent;
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    42
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    43
    // size of the key to generate, >= RSAKeyFactory.MIN_MODLEN
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    44
    private int keySize;
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    45
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    46
    private final KeyType type;
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    47
    private AlgorithmId rsaId;
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    48
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    49
    RSAKeyPairGenerator(KeyType type, int defKeySize) {
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    50
        this.type = type;
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    51
        // initialize to default in case the app does not call initialize()
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    52
        initialize(defKeySize, null);
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    53
    }
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    54
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    55
    // initialize the generator. See JCA doc
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    56
    public void initialize(int keySize, SecureRandom random) {
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    57
        try {
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    58
            initialize(new RSAKeyGenParameterSpec(keySize,
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    59
                    RSAKeyGenParameterSpec.F4), random);
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    60
        } catch (InvalidAlgorithmParameterException iape) {
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    61
            throw new InvalidParameterException(iape.getMessage());
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    62
        }
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    63
    }
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    64
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    65
    // second initialize method. See JCA doc.
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    66
    public void initialize(AlgorithmParameterSpec params, SecureRandom random)
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    67
            throws InvalidAlgorithmParameterException {
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    68
        if (params instanceof RSAKeyGenParameterSpec == false) {
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    69
            throw new InvalidAlgorithmParameterException
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    70
                ("Params must be instance of RSAKeyGenParameterSpec");
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    71
        }
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    72
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    73
        RSAKeyGenParameterSpec rsaSpec = (RSAKeyGenParameterSpec)params;
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    74
        int tmpKeySize = rsaSpec.getKeysize();
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    75
        BigInteger tmpPublicExponent = rsaSpec.getPublicExponent();
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    76
        AlgorithmParameterSpec tmpParams = rsaSpec.getKeyParams();
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    77
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    78
        if (tmpPublicExponent == null) {
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    79
            tmpPublicExponent = RSAKeyGenParameterSpec.F4;
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    80
        } else {
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    81
            if (tmpPublicExponent.compareTo(RSAKeyGenParameterSpec.F0) < 0) {
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    82
                throw new InvalidAlgorithmParameterException
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    83
                        ("Public exponent must be 3 or larger");
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    84
            }
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    85
            if (tmpPublicExponent.bitLength() > tmpKeySize) {
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    86
                throw new InvalidAlgorithmParameterException
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    87
                        ("Public exponent must be smaller than key size");
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    88
            }
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    89
        }
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    90
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    91
        // do not allow unreasonably large key sizes, probably user error
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    92
        try {
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    93
            RSAKeyFactory.checkKeyLengths(tmpKeySize, tmpPublicExponent,
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    94
                512, 64 * 1024);
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    95
        } catch (InvalidKeyException e) {
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    96
            throw new InvalidAlgorithmParameterException(
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    97
                "Invalid key sizes", e);
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    98
        }
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
    99
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   100
        try {
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   101
            this.rsaId = RSAUtil.createAlgorithmId(type, tmpParams);
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   102
        } catch (ProviderException e) {
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   103
            throw new InvalidAlgorithmParameterException(
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   104
                "Invalid key parameters", e);
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   105
        }
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   106
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   107
        this.keySize = tmpKeySize;
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   108
        this.publicExponent = tmpPublicExponent;
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   109
    }
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   110
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   111
    // generate the keypair. See JCA doc
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   112
    public KeyPair generateKeyPair() {
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   113
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   114
        // accommodate odd key sizes in case anybody wants to use them
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   115
        BigInteger e = publicExponent;
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   116
        if (!e.equals(RSAKeyGenParameterSpec.F4)) {
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   117
            throw new AssertionError("Only support F4 now");
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   118
        }
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   119
        BigInteger p, q, n;
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   120
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   121
        // Pre-calculated p and q for e == RSAKeyGenParameterSpec.F4
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   122
        switch (keySize) {
55640
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   123
            case 1024:
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   124
                p = new BigInteger("1220491537800192366196661816910427"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   125
                        + "2375185130493819649338056226264568132442590"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   126
                        + "2306195110391300298681932797393339089272174"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   127
                        + "24490645345596103420476757417659909");
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   128
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   129
                q = new BigInteger("8480533592205316739308384508307319"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   130
                        + "3310632635895778398980504245932789486455154"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   131
                        + "4265220956952343855842030266079089174423047"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   132
                        + "7382175514060777025691485728713063");
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   133
                break;
55468
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   134
            case 2048:
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   135
                p = new BigInteger("1600840041787354447543653385760927"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   136
                        + "2642568308955833364523274045522752644800599"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   137
                        + "8669541532595690224703734511692014533312515"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   138
                        + "1867029838883431415692353449578487671384896"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   139
                        + "6611685764860941767986520897595108597563035"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   140
                        + "4023785639802607792535812062420427283857665"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   141
                        + "9883578590844700707106157871508280052743363"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   142
                        + "65749456332400771");
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   143
                q = new BigInteger("1303880717101677622201474394769850"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   144
                        + "7257196073324816341282215626935164930077468"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   145
                        + "5999131251387556761167658937349436378464220"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   146
                        + "4831804147777472146628148336776639855791417"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   147
                        + "3849903041999943901924899580268176393595653"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   148
                        + "7357080543898614581363167420619163047562600"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   149
                        + "6155574020606891195960345238780709194499010"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   150
                        + "43652862954645301");
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   151
                break;
55640
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   152
            case 3072:
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   153
                p = new BigInteger("2403380417344527161525447148950543"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   154
                        + "9379802436047502603774623852967909282895900"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   155
                        + "7474251859703715384817150107392592636129366"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   156
                        + "5680725148417789414447073716354703692160825"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   157
                        + "9910929198523923851672957013786423746474670"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   158
                        + "5285365870313877239114930859096040034848729"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   159
                        + "0251735848703378313724697081522892607625120"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   160
                        + "0765531003751468146539682665307123591367928"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   161
                        + "1883284784295069877414057796300484015307336"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   162
                        + "5167008365209621810307777651197826810474895"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   163
                        + "858836606799546054179898997210174885200767");
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   164
                q = new BigInteger("2046511893459993309772203642844931"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   165
                        + "1853027469856467052942666265372903000702193"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   166
                        + "7794121141028918655144044411085405243565188"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   167
                        + "8318027937964509940322691121105328104450287"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   168
                        + "0400405975394764523022670537180050051646095"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   169
                        + "3320242109876620452477757629185501504625999"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   170
                        + "8487187901577781067325277853462587849063313"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   171
                        + "5364789330253471096755661110557598411108366"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   172
                        + "1566266965711522070909440716658568303529454"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   173
                        + "8075296935907088988560548322049196321207173"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   174
                        + "136436923455192617031129191723631954025427");
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   175
                break;
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   176
            case 3073:
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   177
                p = new BigInteger("358024230418365680745725628188289"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   178
                        + "996969857993064124357766607077169315932503"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   179
                        + "907030633492082868150575329278637502167157"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   180
                        + "345572819552678004302525872656665704012432"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   181
                        + "644868036964802792468216554458209893873320"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   182
                        + "297608885231998895441396822219845215463819"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   183
                        + "216163684222596923153702349718019538798623"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   184
                        + "793830598445085650304217449539016339429747"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   185
                        + "385490484982419227549804698120223647408926"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   186
                        + "021549912791440569127641517442362359166673"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   187
                        + "430151753277549861070074076802118983202554"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   188
                        + "7683523973");
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   189
                q = new BigInteger("169752169194244078720180277210205"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   190
                        + "255207796420396114596943944148158798629671"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   191
                        + "789863988428383183103705641694331073747120"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   192
                        + "522505020908219489265190380712941311249155"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   193
                        + "156834674079165492105570443486536740756291"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   194
                        + "314279877766807786397193023304245520017295"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   195
                        + "969248707516367324340822062886043618371887"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   196
                        + "320492710434958863952407959935025922006108"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   197
                        + "282752473898685457767312430894004833959025"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   198
                        + "415996648289919841900071076314309778495245"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   199
                        + "505026665971431792707247787031811654193145"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   200
                        + "1044952887");
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   201
                break;
55468
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   202
            case 4096:
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   203
                p = new BigInteger("2985635754414679487171962796211911"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   204
                        + "1563710734938215274736352092606404045130913"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   205
                        + "2477365484439939846705721840432140066578525"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   206
                        + "0762327458086280430118434094733412377416194"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   207
                        + "8736124795243564050755767519346747209606612"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   208
                        + "5835460937739428885308798309679495432910469"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   209
                        + "0294757621321446003970767164933974474924664"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   210
                        + "1513767092845098947552598109657871041666676"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   211
                        + "2945573325433283821164032766425479703026349"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   212
                        + "9433641551427112483593214628620450175257586"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   213
                        + "4350119143877183562692754400346175237007314"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   214
                        + "7121580349193179272551363894896336921717843"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   215
                        + "3734726842184251708799134654802475890197293"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   216
                        + "9094908310578403843742664173424031260840446"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   217
                        + "591633359364559754200663");
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   218
                q = new BigInteger("2279248439141087793789384816271625"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   219
                        + "1304008816573950275844533962181244003563987"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   220
                        + "6638461665174020058827698592331066726709304"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   221
                        + "9231319346136709972639455506783245161859951"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   222
                        + "6191872757335765533547033659834427437142631"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   223
                        + "3801232751161907082392011429712327250253948"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   224
                        + "6012497852063361866175243227579880020724881"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   225
                        + "9393797645220239009219998518884396282407710"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   226
                        + "7199202450846395844337846503427790307364624"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   227
                        + "5124871273035872938616425951596065309519651"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   228
                        + "1519189356431513094684173807318945903212527"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   229
                        + "7712469749366620048658571121822171067675915"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   230
                        + "5479178304648399924549334007222294762969503"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   231
                        + "5341584429803583589276956979963609078497238"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   232
                        + "760757619468018224491053");
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   233
                break;
55640
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   234
            case 7680:
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   235
                p = new BigInteger("7034022146817764608206409206476311"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   236
                        + "1371065855827199565170055133179419153145313"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   237
                        + "9446295819321510144417300286482767498463255"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   238
                        + "3370362723164324606829434617977090251035572"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   239
                        + "4237546099249090966627372485629853471350368"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   240
                        + "1497807044971675189990783927066958945388379"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   241
                        + "4004871857862380913954692362042250112646330"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   242
                        + "0515873693830575810241740671573357342073942"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   243
                        + "4924331206670599086552994426505996651481869"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   244
                        + "2750320309695596383830444337180596058381417"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   245
                        + "7804256675894755482917598033151085120879826"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   246
                        + "5373459707672000040090469058320463160804122"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   247
                        + "8041026671361647347262771363754358441620179"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   248
                        + "3861076191970047581401830740749715862725492"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   249
                        + "5750077182986169592435996668282677192000592"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   250
                        + "8019204141383012670399208092972174321639234"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   251
                        + "6398779487064860458178135981700487728919191"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   252
                        + "2418625085287791733119321378648688730352488"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   253
                        + "6446800847442687530322927871063574241918202"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   254
                        + "1883228799435533794167861499482410970370569"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   255
                        + "6964781912514810444018313637829915454156777"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   256
                        + "4591735979781496237582756842195362757823524"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   257
                        + "2054367976655738752756266147542536910268553"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   258
                        + "7448833810249238249431673425245843356607647"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   259
                        + "4372260685985882252621076435844355190011754"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   260
                        + "0656637395317040751098009821385816878380790"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   261
                        + "9017022563392158510700243843871343995665725"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   262
                        + "9447");
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   263
                q = new BigInteger("7006097449483280289139842436346899"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   264
                        + "9530483972793167261845287040200424598484519"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   265
                        + "0516644904497480849788319004016685820778949"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   266
                        + "8514891188272714344395538114013074460410497"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   267
                        + "8359325044727263936454825245761418873141623"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   268
                        + "2797767712619624879346520836103128457266811"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   269
                        + "0175147598232556414901292143389437071453369"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   270
                        + "4867355570712858957689566849950544938172174"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   271
                        + "9136345403774445991224311311204082279382451"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   272
                        + "1977673518543939329498617563049052032259503"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   273
                        + "1057378839061411322975567618416093845144604"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   274
                        + "4563500271329350225709899627798126176885843"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   275
                        + "9953695524756659384424971651654225913916902"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   276
                        + "7087953078966988666226779422822854729725410"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   277
                        + "1118666318953891716194309185187152294057704"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   278
                        + "2509582485250984938518224243061447485603856"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   279
                        + "0197517312286511585545481984194518805766300"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   280
                        + "7351141154720653351520788558277866920369211"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   281
                        + "9269193267018615410395030712426882576851775"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   282
                        + "9240726416572698143674385203349496226355950"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   283
                        + "0327319442530888807531774734409411628435155"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   284
                        + "6449625936156829175453919098709371623972260"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   285
                        + "4090598351878256110255744263233419699486705"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   286
                        + "3658219936031243191809689036438631617494147"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   287
                        + "8183898954195399872571907981872765548994005"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   288
                        + "0754996819683869837696561316479950526914796"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   289
                        + "3613549619563212818369365543951734053135086"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   290
                        + "8593");
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   291
                break;
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   292
            case 7681:
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   293
                p = new BigInteger("1051422012172516922972337796421710"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   294
                        + "1479918158427421377774284533124281583092508"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   295
                        + "4961153980854679659383249048667658521370629"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   296
                        + "6404078819943386006431233653506112030196761"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   297
                        + "7596078830067404622117784094070983115834842"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   298
                        + "0487926993058767148294211654032287322495894"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   299
                        + "1733666341539644761909820700670130074920230"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   300
                        + "0423405253327351685101039824822997870642295"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   301
                        + "8176417666723292317903368285439828460328413"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   302
                        + "9578515412811253729224087502906626189200448"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   303
                        + "4062549581079444644685394008569377879899377"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   304
                        + "0578136407363616816108795867392262638913436"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   305
                        + "2041457188733948013731661456602199370852579"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   306
                        + "2394583215214266552642082043674873685065171"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   307
                        + "9053703728689139119006448644148961706358756"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   308
                        + "0498696516029596534138345596800696824976461"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   309
                        + "8461070371773003241093580622731426623849732"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   310
                        + "8737707046931934781383331589291927520571138"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   311
                        + "2759511573966362005294438252298268405782746"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   312
                        + "9642105075721912120520774388679358659061825"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   313
                        + "8867415333830751976884165265610029632416351"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   314
                        + "6666642762305875140340531095190000199307531"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   315
                        + "2186952558457690950270489966695323839026041"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   316
                        + "0797018634946454573060304991245539422899112"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   317
                        + "9312288231966690989900334936215870198735213"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   318
                        + "6745631923445509394027128331099748294658904"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   319
                        + "6303809606943116678969915369410846798143779"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   320
                        + "89187");
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   321
                q = new BigInteger("8160183444544784072886152354850963"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   322
                        + "2507221530634202707531181684048014518183560"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   323
                        + "4586261698204521358487995639975786964316103"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   324
                        + "5861955444259138806900123878887948650444640"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   325
                        + "7062365744302695074634248387572850855758081"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   326
                        + "9074631976865727985289995811413472254074432"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   327
                        + "4751574514329862821405069035713821908598155"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   328
                        + "5436571566703295992717666421591959121774983"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   329
                        + "5913798632992394695663301960139778059658979"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   330
                        + "4944466598070019481108421780314115410201334"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   331
                        + "2925668957166258484312039121420100795544341"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   332
                        + "5372918969907063685116069321551182817324799"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   333
                        + "3347159610063964281388144113123539915925090"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   334
                        + "2692309096312451442405059120315891913678403"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   335
                        + "4977738880336169371406947347468157606390086"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   336
                        + "3381587148478097717352225924672548657441771"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   337
                        + "3887371520215341151934095945869956390140929"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   338
                        + "3098286281540595154062683214111934217839063"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   339
                        + "3309526631019699109621050440794920159910038"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   340
                        + "3248965999877529393614116991972153758910967"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   341
                        + "1712258745878268303349611893651932564447696"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   342
                        + "9601760120187828039923387985032881949408596"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   343
                        + "0689784023540256749586591441103043888423326"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   344
                        + "3078541569639917739590630101701573133092711"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   345
                        + "6157430583592378472242178997833136144409256"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   346
                        + "3558220277370179546822023437190315852529873"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   347
                        + "0831890147323301322699740037060134979740963"
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   348
                        + "4289");
3081f39a3d30 8227059: sun/security/tools/keytool/DefaultSignatureAlgorithm.java timed out
weijun
parents: 55468
diff changeset
   349
                break;
55468
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   350
            case 8192:
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   351
                p = new BigInteger("9821669838446774374944535804569858"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   352
                        + "0553278885576950130485823829973470553571905"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   353
                        + "3014418421996241500307589880457361653957913"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   354
                        + "9176499436767288125182942994089196450118944"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   355
                        + "8701794862752733776161684616570463744619126"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   356
                        + "4981622564763630694110472008409561205704867"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   357
                        + "0221819623405201369630462487520858670679048"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   358
                        + "5854008441429858453634949980424333056803703"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   359
                        + "1205609490778445762604050796894221725977551"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   360
                        + "1428887194691696420765173256600200430067305"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   361
                        + "4364524177041858044598166859757042904625691"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   362
                        + "4292728453597609683799189454690202563236931"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   363
                        + "8171122071288244573793276051041975005528757"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   364
                        + "0228306442708182141334279133965507583927772"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   365
                        + "9244311696220253059281524393613278272067808"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   366
                        + "7017494446447670799055720358621918361716353"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   367
                        + "5018317015764698318012095108914870478138809"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   368
                        + "8204738169777192718869484177321870413838036"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   369
                        + "8149216482968887382371881239714335470844573"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   370
                        + "1862934371951394070111726593305334971041399"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   371
                        + "5517260339034138718517336990212463882142363"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   372
                        + "9154412320743552301967162100734381046548816"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   373
                        + "3883737645359595416600487444018399886391071"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   374
                        + "3777667222706059170707223589163679915863781"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   375
                        + "4662302526078720977228426750718207481384357"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   376
                        + "7918717041190413457052439016978578217755022"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   377
                        + "7370720979516554707297685239584071755267452"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   378
                        + "6021894842754355160100506065457679069228273"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   379
                        + "95209345267367982516553449135291473361");
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   380
                q = new BigInteger("7902448465953646210110784092684896"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   381
                        + "0265474424590294110174550047938700740921014"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   382
                        + "1981650823416127449143596912363210790070524"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   383
                        + "2903784112701128957948996730263815210531364"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   384
                        + "0489145287401377007608600217628773627723381"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   385
                        + "1194123533939872283952535576847014977682278"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   386
                        + "9332064706645169741712060131540562788886577"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   387
                        + "3762235020990267901959745687867018811088495"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   388
                        + "3716021011509120447248882358515954471433808"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   389
                        + "2782236662758287959413069553620728137831579"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   390
                        + "2321174813204514354999978428741310035945405"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   391
                        + "0226661395731921098764192439072425262100813"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   392
                        + "9732949866553839713092238096261034339815187"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   393
                        + "2832617055364163276140160068136296115910569"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   394
                        + "9466440903693740716929166334256441926903849"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   395
                        + "1082968246155177124035336609654226388424434"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   396
                        + "5775783323612758615407928446164631651292743"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   397
                        + "8428509642959278732826297890909454571009075"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   398
                        + "7836191622138731918099379467912681177757761"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   399
                        + "6141378131042432093843778753846726589215845"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   400
                        + "7402160146427434508515156204064224022904659"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   401
                        + "8645441448874409852211668374267341177082462"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   402
                        + "7341410218867175406105046487057429530801973"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   403
                        + "0931082058719258230993681115780999537424968"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   404
                        + "2385515792331573549935317407789344892257264"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   405
                        + "7464569110078675090194686816764429827739815"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   406
                        + "0566036514181547634372488184242167294602000"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   407
                        + "8232780963578241583529875079397308150506597"
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   408
                        + "37190564909892937290776929541076192569");
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   409
                break;
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   410
            default:
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   411
                throw new AssertionError("Unknown keySize " + keySize);
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   412
        }
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   413
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   414
        n = p.multiply(q);
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   415
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   416
        // phi = (p - 1) * (q - 1) must be relative prime to e
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   417
        // otherwise RSA just won't work ;-)
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   418
        BigInteger p1 = p.subtract(BigInteger.ONE);
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   419
        BigInteger q1 = q.subtract(BigInteger.ONE);
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   420
        BigInteger phi = p1.multiply(q1);
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   421
        // generate new p and q until they work. typically
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   422
        // the first try will succeed when using F4
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   423
        if (e.gcd(phi).equals(BigInteger.ONE) == false) {
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   424
            throw new AssertionError("Should not happen");
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   425
        }
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   426
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   427
        // private exponent d is the inverse of e mod phi
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   428
        BigInteger d = e.modInverse(phi);
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   429
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   430
        // 1st prime exponent pe = d mod (p - 1)
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   431
        BigInteger pe = d.mod(p1);
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   432
        // 2nd prime exponent qe = d mod (q - 1)
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   433
        BigInteger qe = d.mod(q1);
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   434
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   435
        // crt coefficient coeff is the inverse of q mod p
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   436
        BigInteger coeff = q.modInverse(p);
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   437
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   438
        try {
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   439
            PublicKey publicKey = new RSAPublicKeyImpl(rsaId, n, e);
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   440
            PrivateKey privateKey = new RSAPrivateCrtKeyImpl(
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   441
                    rsaId, n, e, d, p, q, pe, qe, coeff);
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   442
            return new KeyPair(publicKey, privateKey);
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   443
        } catch (InvalidKeyException exc) {
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   444
            // invalid key exception only thrown for keys < 512 bit,
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   445
            // will not happen here
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   446
            throw new RuntimeException(exc);
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   447
        }
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   448
    }
076f34b82b98 8225257: sun/security/tools/keytool/PSS.java timed out
weijun
parents:
diff changeset
   449
}