test/jdk/javax/net/ssl/templates/SSLSocketTemplate.java
author chegar
Thu, 17 Oct 2019 20:54:25 +0100
branchdatagramsocketimpl-branch
changeset 58679 9c3209ff7550
parent 58678 9cf78a70fa4f
parent 58009 0daf32316b47
permissions -rw-r--r--
datagramsocketimpl-branch: merge with default
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
     1
/*
55353
946f7f2d321c 8171279: Support X25519 and X448 in TLS
wetmore
parents: 51603
diff changeset
     2
 * Copyright (c) 2016, 2019, Oracle and/or its affiliates. All rights reserved.
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
     3
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
     4
 *
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
     5
 * This code is free software; you can redistribute it and/or modify it
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
     6
 * under the terms of the GNU General Public License version 2 only, as
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
     7
 * published by the Free Software Foundation.
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
     8
 *
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
     9
 * This code is distributed in the hope that it will be useful, but WITHOUT
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
    10
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
    11
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
    12
 * version 2 for more details (a copy is included in the LICENSE file that
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
    13
 * accompanied this code).
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
    14
 *
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
    15
 * You should have received a copy of the GNU General Public License version
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
    16
 * 2 along with this work; if not, write to the Free Software Foundation,
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
    17
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
    18
 *
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
    19
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
    20
 * or visit www.oracle.com if you need additional information or have any
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
    21
 * questions.
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
    22
 */
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
    23
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    24
//
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    25
// Please run in othervm mode.  SunJSSE does not support dynamic system
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    26
// properties, no way to re-use system properties in samevm/agentvm mode.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    27
//
42155
c9b28ab5297b 8168969: Merge SSLSocketSample and SSLSocketTemplate
asmotrak
parents: 41595
diff changeset
    28
c9b28ab5297b 8168969: Merge SSLSocketSample and SSLSocketTemplate
asmotrak
parents: 41595
diff changeset
    29
/*
c9b28ab5297b 8168969: Merge SSLSocketSample and SSLSocketTemplate
asmotrak
parents: 41595
diff changeset
    30
 * @test
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    31
 * @bug 8161106 8170329
43335
911fcebb04d2 8173478: SSL related tests failes with message: "java.security.NoSuchAlgorithmException: EC KeyFactory not available"
skovalev
parents: 42920
diff changeset
    32
 * @modules jdk.crypto.ec
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    33
 * @summary Improve SSLSocket test template
42155
c9b28ab5297b 8168969: Merge SSLSocketSample and SSLSocketTemplate
asmotrak
parents: 41595
diff changeset
    34
 * @run main/othervm SSLSocketTemplate
c9b28ab5297b 8168969: Merge SSLSocketSample and SSLSocketTemplate
asmotrak
parents: 41595
diff changeset
    35
 */
43335
911fcebb04d2 8173478: SSL related tests failes with message: "java.security.NoSuchAlgorithmException: EC KeyFactory not available"
skovalev
parents: 42920
diff changeset
    36
911fcebb04d2 8173478: SSL related tests failes with message: "java.security.NoSuchAlgorithmException: EC KeyFactory not available"
skovalev
parents: 42920
diff changeset
    37
import java.io.ByteArrayInputStream;
911fcebb04d2 8173478: SSL related tests failes with message: "java.security.NoSuchAlgorithmException: EC KeyFactory not available"
skovalev
parents: 42920
diff changeset
    38
import java.io.InputStream;
911fcebb04d2 8173478: SSL related tests failes with message: "java.security.NoSuchAlgorithmException: EC KeyFactory not available"
skovalev
parents: 42920
diff changeset
    39
import java.io.IOException;
911fcebb04d2 8173478: SSL related tests failes with message: "java.security.NoSuchAlgorithmException: EC KeyFactory not available"
skovalev
parents: 42920
diff changeset
    40
import java.io.OutputStream;
911fcebb04d2 8173478: SSL related tests failes with message: "java.security.NoSuchAlgorithmException: EC KeyFactory not available"
skovalev
parents: 42920
diff changeset
    41
import javax.net.ssl.KeyManagerFactory;
911fcebb04d2 8173478: SSL related tests failes with message: "java.security.NoSuchAlgorithmException: EC KeyFactory not available"
skovalev
parents: 42920
diff changeset
    42
import javax.net.ssl.SSLContext;
911fcebb04d2 8173478: SSL related tests failes with message: "java.security.NoSuchAlgorithmException: EC KeyFactory not available"
skovalev
parents: 42920
diff changeset
    43
import javax.net.ssl.SSLServerSocket;
911fcebb04d2 8173478: SSL related tests failes with message: "java.security.NoSuchAlgorithmException: EC KeyFactory not available"
skovalev
parents: 42920
diff changeset
    44
import javax.net.ssl.SSLServerSocketFactory;
911fcebb04d2 8173478: SSL related tests failes with message: "java.security.NoSuchAlgorithmException: EC KeyFactory not available"
skovalev
parents: 42920
diff changeset
    45
import javax.net.ssl.SSLSocket;
911fcebb04d2 8173478: SSL related tests failes with message: "java.security.NoSuchAlgorithmException: EC KeyFactory not available"
skovalev
parents: 42920
diff changeset
    46
import javax.net.ssl.SSLSocketFactory;
911fcebb04d2 8173478: SSL related tests failes with message: "java.security.NoSuchAlgorithmException: EC KeyFactory not available"
skovalev
parents: 42920
diff changeset
    47
import javax.net.ssl.TrustManagerFactory;
58009
0daf32316b47 8230435: Replace wildcard address with loopback or local host in tests - part 22
dfuchs
parents: 55527
diff changeset
    48
import java.net.InetAddress;
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    49
import java.net.InetSocketAddress;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    50
import java.net.SocketTimeoutException;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    51
import java.security.KeyStore;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    52
import java.security.PrivateKey;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    53
import java.security.KeyFactory;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    54
import java.security.cert.Certificate;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    55
import java.security.cert.CertificateFactory;
43335
911fcebb04d2 8173478: SSL related tests failes with message: "java.security.NoSuchAlgorithmException: EC KeyFactory not available"
skovalev
parents: 42920
diff changeset
    56
import java.security.spec.PKCS8EncodedKeySpec;
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    57
import java.util.Base64;
42155
c9b28ab5297b 8168969: Merge SSLSocketSample and SSLSocketTemplate
asmotrak
parents: 41595
diff changeset
    58
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    59
import java.util.concurrent.CountDownLatch;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    60
import java.util.concurrent.TimeUnit;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    61
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    62
/**
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    63
 * Template to help speed your client/server tests.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    64
 *
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    65
 * Two examples that use this template:
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    66
 *    test/sun/security/ssl/ServerHandshaker/AnonCipherWithWantClientAuth.java
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    67
 *    test/sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    68
 */
42155
c9b28ab5297b 8168969: Merge SSLSocketSample and SSLSocketTemplate
asmotrak
parents: 41595
diff changeset
    69
public class SSLSocketTemplate {
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
    70
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    71
    /*
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    72
     * ==================
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    73
     * Run the test case.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    74
     */
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    75
    public static void main(String[] args) throws Exception {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    76
        (new SSLSocketTemplate()).run();
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    77
    }
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    78
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    79
    /*
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    80
     * Run the test case.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    81
     */
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    82
    public void run() throws Exception {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    83
        bootup();
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    84
    }
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    85
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    86
    /*
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    87
     * Define the server side application of the test for the specified socket.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    88
     */
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    89
    protected void runServerApplication(SSLSocket socket) throws Exception {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    90
        // here comes the test logic
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    91
        InputStream sslIS = socket.getInputStream();
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    92
        OutputStream sslOS = socket.getOutputStream();
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    93
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    94
        sslIS.read();
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    95
        sslOS.write(85);
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    96
        sslOS.flush();
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    97
    }
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    98
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
    99
    /*
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   100
     * Define the client side application of the test for the specified socket.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   101
     * This method is used if the returned value of
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   102
     * isCustomizedClientConnection() is false.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   103
     *
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   104
     * @param socket may be null is no client socket is generated.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   105
     *
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   106
     * @see #isCustomizedClientConnection()
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   107
     */
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   108
    protected void runClientApplication(SSLSocket socket) throws Exception {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   109
        InputStream sslIS = socket.getInputStream();
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   110
        OutputStream sslOS = socket.getOutputStream();
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   111
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   112
        sslOS.write(280);
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   113
        sslOS.flush();
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   114
        sslIS.read();
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   115
    }
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   116
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   117
    /*
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   118
     * Define the client side application of the test for the specified
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   119
     * server port.  This method is used if the returned value of
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   120
     * isCustomizedClientConnection() is true.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   121
     *
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   122
     * Note that the client need to connect to the server port by itself
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   123
     * for the actual message exchange.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   124
     *
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   125
     * @see #isCustomizedClientConnection()
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   126
     */
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   127
    protected void runClientApplication(int serverPort) throws Exception {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   128
        // blank
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   129
    }
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   130
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   131
    /*
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   132
     * Create an instance of SSLContext for client use.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   133
     */
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   134
    protected SSLContext createClientSSLContext() throws Exception {
55527
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   135
        return createSSLContext(TRUSTED_CERTS, END_ENTITY_CERTS,
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   136
                getClientContextParameters());
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   137
    }
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   138
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   139
    /*
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   140
     * Create an instance of SSLContext for server use.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   141
     */
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   142
    protected SSLContext createServerSSLContext() throws Exception {
55527
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   143
        return createSSLContext(TRUSTED_CERTS, END_ENTITY_CERTS,
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   144
                getServerContextParameters());
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   145
    }
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   146
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   147
    /*
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   148
     * The parameters used to configure SSLContext.
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   149
     */
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   150
    protected static final class ContextParameters {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   151
        final String contextProtocol;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   152
        final String tmAlgorithm;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   153
        final String kmAlgorithm;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   154
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   155
        ContextParameters(String contextProtocol,
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   156
                String tmAlgorithm, String kmAlgorithm) {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   157
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   158
            this.contextProtocol = contextProtocol;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   159
            this.tmAlgorithm = tmAlgorithm;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   160
            this.kmAlgorithm = kmAlgorithm;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   161
        }
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   162
    }
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   163
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   164
    /*
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   165
     * Get the client side parameters of SSLContext.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   166
     */
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   167
    protected ContextParameters getClientContextParameters() {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   168
        return new ContextParameters("TLS", "PKIX", "NewSunX509");
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   169
    }
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   170
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   171
    /*
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   172
     * Get the server side parameters of SSLContext.
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   173
     */
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   174
    protected ContextParameters getServerContextParameters() {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   175
        return new ContextParameters("TLS", "PKIX", "NewSunX509");
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   176
    }
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   177
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   178
    /*
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   179
     * Does the client side use customized connection other than
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   180
     * explicit Socket.connect(), for example, URL.openConnection()?
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   181
     */
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   182
    protected boolean isCustomizedClientConnection() {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   183
        return false;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   184
    }
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   185
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   186
    /*
55353
946f7f2d321c 8171279: Support X25519 and X448 in TLS
wetmore
parents: 51603
diff changeset
   187
     * Configure the client side socket.
946f7f2d321c 8171279: Support X25519 and X448 in TLS
wetmore
parents: 51603
diff changeset
   188
     */
946f7f2d321c 8171279: Support X25519 and X448 in TLS
wetmore
parents: 51603
diff changeset
   189
    protected void configureClientSocket(SSLSocket socket) {
946f7f2d321c 8171279: Support X25519 and X448 in TLS
wetmore
parents: 51603
diff changeset
   190
    }
946f7f2d321c 8171279: Support X25519 and X448 in TLS
wetmore
parents: 51603
diff changeset
   191
946f7f2d321c 8171279: Support X25519 and X448 in TLS
wetmore
parents: 51603
diff changeset
   192
    /*
42920
781f5e69910b 8168935: sun/security/ssl/SSLContextImpl/TrustTrustedCert.java failed Intermittently
mli
parents: 42464
diff changeset
   193
     * Configure the server side socket.
781f5e69910b 8168935: sun/security/ssl/SSLContextImpl/TrustTrustedCert.java failed Intermittently
mli
parents: 42464
diff changeset
   194
     */
781f5e69910b 8168935: sun/security/ssl/SSLContextImpl/TrustTrustedCert.java failed Intermittently
mli
parents: 42464
diff changeset
   195
    protected void configureServerSocket(SSLServerSocket socket) {
781f5e69910b 8168935: sun/security/ssl/SSLContextImpl/TrustTrustedCert.java failed Intermittently
mli
parents: 42464
diff changeset
   196
    }
781f5e69910b 8168935: sun/security/ssl/SSLContextImpl/TrustTrustedCert.java failed Intermittently
mli
parents: 42464
diff changeset
   197
781f5e69910b 8168935: sun/security/ssl/SSLContextImpl/TrustTrustedCert.java failed Intermittently
mli
parents: 42464
diff changeset
   198
    /*
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   199
     * =============================================
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   200
     * Define the client and server side operations.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   201
     *
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   202
     * If the client or server is doing some kind of object creation
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   203
     * that the other side depends on, and that thread prematurely
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   204
     * exits, you may experience a hang.  The test harness will
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   205
     * terminate all hung threads after its timeout has expired,
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   206
     * currently 3 minutes by default, but you might try to be
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   207
     * smart about it....
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   208
     */
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   209
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   210
    /*
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   211
     * Is the server ready to serve?
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   212
     */
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   213
    private final CountDownLatch serverCondition = new CountDownLatch(1);
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   214
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   215
    /*
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   216
     * Is the client ready to handshake?
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   217
     */
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   218
    private final CountDownLatch clientCondition = new CountDownLatch(1);
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   219
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   220
    /*
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   221
     * What's the server port?  Use any free port by default
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   222
     */
51603
d0b71f6163e1 8209362: sun/security/ssl/SSLSocketImpl/ReuseAddr.java failed due to "BindException: Address already in use (Bind failed)"
jjiang
parents: 50768
diff changeset
   223
    protected volatile int serverPort = 0;
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   224
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   225
    /*
58009
0daf32316b47 8230435: Replace wildcard address with loopback or local host in tests - part 22
dfuchs
parents: 55527
diff changeset
   226
     * What's the server address?  null means binding to the wildcard.
0daf32316b47 8230435: Replace wildcard address with loopback or local host in tests - part 22
dfuchs
parents: 55527
diff changeset
   227
     */
0daf32316b47 8230435: Replace wildcard address with loopback or local host in tests - part 22
dfuchs
parents: 55527
diff changeset
   228
    protected volatile InetAddress serverAddress = null;
0daf32316b47 8230435: Replace wildcard address with loopback or local host in tests - part 22
dfuchs
parents: 55527
diff changeset
   229
0daf32316b47 8230435: Replace wildcard address with loopback or local host in tests - part 22
dfuchs
parents: 55527
diff changeset
   230
    /*
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   231
     * Define the server side of the test.
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   232
     */
51603
d0b71f6163e1 8209362: sun/security/ssl/SSLSocketImpl/ReuseAddr.java failed due to "BindException: Address already in use (Bind failed)"
jjiang
parents: 50768
diff changeset
   233
    protected void doServerSide() throws Exception {
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   234
        // kick start the server side service
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   235
        SSLContext context = createServerSSLContext();
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   236
        SSLServerSocketFactory sslssf = context.getServerSocketFactory();
58009
0daf32316b47 8230435: Replace wildcard address with loopback or local host in tests - part 22
dfuchs
parents: 55527
diff changeset
   237
        InetAddress serverAddress = this.serverAddress;
0daf32316b47 8230435: Replace wildcard address with loopback or local host in tests - part 22
dfuchs
parents: 55527
diff changeset
   238
        SSLServerSocket sslServerSocket = serverAddress == null ?
0daf32316b47 8230435: Replace wildcard address with loopback or local host in tests - part 22
dfuchs
parents: 55527
diff changeset
   239
                (SSLServerSocket)sslssf.createServerSocket(serverPort)
0daf32316b47 8230435: Replace wildcard address with loopback or local host in tests - part 22
dfuchs
parents: 55527
diff changeset
   240
                : (SSLServerSocket)sslssf.createServerSocket();
0daf32316b47 8230435: Replace wildcard address with loopback or local host in tests - part 22
dfuchs
parents: 55527
diff changeset
   241
        if (serverAddress != null) {
0daf32316b47 8230435: Replace wildcard address with loopback or local host in tests - part 22
dfuchs
parents: 55527
diff changeset
   242
            sslServerSocket.bind(new InetSocketAddress(serverAddress, serverPort));
0daf32316b47 8230435: Replace wildcard address with loopback or local host in tests - part 22
dfuchs
parents: 55527
diff changeset
   243
        }
42920
781f5e69910b 8168935: sun/security/ssl/SSLContextImpl/TrustTrustedCert.java failed Intermittently
mli
parents: 42464
diff changeset
   244
        configureServerSocket(sslServerSocket);
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   245
        serverPort = sslServerSocket.getLocalPort();
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   246
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   247
        // Signal the client, the server is ready to accept connection.
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   248
        serverCondition.countDown();
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   249
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   250
        // Try to accept a connection in 30 seconds.
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   251
        SSLSocket sslSocket;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   252
        try {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   253
            sslServerSocket.setSoTimeout(30000);
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   254
            sslSocket = (SSLSocket)sslServerSocket.accept();
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   255
        } catch (SocketTimeoutException ste) {
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   256
            // Ignore the test case if no connection within 30 seconds.
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   257
            System.out.println(
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   258
                "No incoming client connection in 30 seconds. " +
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   259
                "Ignore in server side.");
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   260
            return;
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   261
        } finally {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   262
            sslServerSocket.close();
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   263
        }
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   264
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   265
        // handle the connection
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   266
        try {
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   267
            // Is it the expected client connection?
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   268
            //
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   269
            // Naughty test cases or third party routines may try to
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   270
            // connection to this server port unintentionally.  In
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   271
            // order to mitigate the impact of unexpected client
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   272
            // connections and avoid intermittent failure, it should
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   273
            // be checked that the accepted connection is really linked
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   274
            // to the expected client.
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   275
            boolean clientIsReady =
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   276
                    clientCondition.await(30L, TimeUnit.SECONDS);
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   277
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   278
            if (clientIsReady) {
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   279
                // Run the application in server side.
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   280
                runServerApplication(sslSocket);
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   281
            } else {    // Otherwise, ignore
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   282
                // We don't actually care about plain socket connections
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   283
                // for TLS communication testing generally.  Just ignore
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   284
                // the test if the accepted connection is not linked to
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   285
                // the expected client or the client connection timeout
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   286
                // in 30 seconds.
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   287
                System.out.println(
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   288
                        "The client is not the expected one or timeout. " +
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   289
                        "Ignore in server side.");
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   290
            }
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   291
        } finally {
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   292
            sslSocket.close();
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   293
        }
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   294
    }
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   295
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   296
    /*
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   297
     * Define the client side of the test.
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   298
     */
51603
d0b71f6163e1 8209362: sun/security/ssl/SSLSocketImpl/ReuseAddr.java failed due to "BindException: Address already in use (Bind failed)"
jjiang
parents: 50768
diff changeset
   299
    protected void doClientSide() throws Exception {
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   300
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   301
        // Wait for server to get started.
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   302
        //
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   303
        // The server side takes care of the issue if the server cannot
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   304
        // get started in 90 seconds.  The client side would just ignore
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   305
        // the test case if the serer is not ready.
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   306
        boolean serverIsReady =
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   307
                serverCondition.await(90L, TimeUnit.SECONDS);
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   308
        if (!serverIsReady) {
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   309
            System.out.println(
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   310
                    "The server is not ready yet in 90 seconds. " +
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   311
                    "Ignore in client side.");
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   312
            return;
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   313
        }
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   314
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   315
        if (isCustomizedClientConnection()) {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   316
            // Signal the server, the client is ready to communicate.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   317
            clientCondition.countDown();
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   318
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   319
            // Run the application in client side.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   320
            runClientApplication(serverPort);
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   321
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   322
            return;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   323
        }
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   324
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   325
        SSLContext context = createClientSSLContext();
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   326
        SSLSocketFactory sslsf = context.getSocketFactory();
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   327
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   328
        try (SSLSocket sslSocket = (SSLSocket)sslsf.createSocket()) {
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   329
            try {
55353
946f7f2d321c 8171279: Support X25519 and X448 in TLS
wetmore
parents: 51603
diff changeset
   330
                configureClientSocket(sslSocket);
58009
0daf32316b47 8230435: Replace wildcard address with loopback or local host in tests - part 22
dfuchs
parents: 55527
diff changeset
   331
                InetAddress serverAddress = this.serverAddress;
0daf32316b47 8230435: Replace wildcard address with loopback or local host in tests - part 22
dfuchs
parents: 55527
diff changeset
   332
                InetSocketAddress connectAddress = serverAddress == null
0daf32316b47 8230435: Replace wildcard address with loopback or local host in tests - part 22
dfuchs
parents: 55527
diff changeset
   333
                        ? new InetSocketAddress("localhost", serverPort)
0daf32316b47 8230435: Replace wildcard address with loopback or local host in tests - part 22
dfuchs
parents: 55527
diff changeset
   334
                        : new InetSocketAddress(serverAddress, serverPort);
0daf32316b47 8230435: Replace wildcard address with loopback or local host in tests - part 22
dfuchs
parents: 55527
diff changeset
   335
                sslSocket.connect(connectAddress, 15000);
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   336
            } catch (IOException ioe) {
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   337
                // The server side may be impacted by naughty test cases or
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   338
                // third party routines, and cannot accept connections.
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   339
                //
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   340
                // Just ignore the test if the connection cannot be
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   341
                // established.
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   342
                System.out.println(
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   343
                        "Cannot make a connection in 15 seconds. " +
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   344
                        "Ignore in client side.");
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   345
                return;
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   346
            }
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   347
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   348
            // OK, here the client and server get connected.
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   349
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   350
            // Signal the server, the client is ready to communicate.
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   351
            clientCondition.countDown();
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   352
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   353
            // There is still a chance in theory that the server thread may
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   354
            // wait client-ready timeout and then quit.  The chance should
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   355
            // be really rare so we don't consider it until it becomes a
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   356
            // real problem.
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   357
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   358
            // Run the application in client side.
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   359
            runClientApplication(sslSocket);
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   360
        }
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   361
    }
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   362
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   363
    /*
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   364
     * =============================================
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   365
     * Stuffs to customize the SSLContext instances.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   366
     */
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   367
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   368
    /*
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   369
     * =======================================
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   370
     * Certificates and keys used in the test.
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   371
     */
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   372
    // Trusted certificates.
55527
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   373
    protected final static Cert[] TRUSTED_CERTS = {
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   374
            Cert.CA_ECDSA_SECP256R1,
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   375
            Cert.CA_RSA_2048,
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   376
            Cert.CA_DSA_2048 };
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   377
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   378
    // End entity certificate.
55527
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   379
    protected final static Cert[] END_ENTITY_CERTS = {
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   380
            Cert.EE_ECDSA_SECP256R1,
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   381
            Cert.EE_RSA_2048,
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   382
            Cert.EE_EC_RSA_SECP256R1,
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   383
            Cert.EE_DSA_2048 };
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   384
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   385
    /*
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   386
     * Create an instance of SSLContext with the specified trust/key materials.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   387
     */
55527
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   388
    public static SSLContext createSSLContext(
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   389
            Cert[] trustedCerts,
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   390
            Cert[] endEntityCerts,
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   391
            ContextParameters params) throws Exception {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   392
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   393
        KeyStore ts = null;     // trust store
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   394
        KeyStore ks = null;     // key store
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   395
        char passphrase[] = "passphrase".toCharArray();
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   396
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   397
        // Generate certificate from cert string.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   398
        CertificateFactory cf = CertificateFactory.getInstance("X.509");
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   399
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   400
        // Import the trused certs.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   401
        ByteArrayInputStream is;
55527
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   402
        if (trustedCerts != null && trustedCerts.length != 0) {
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   403
            ts = KeyStore.getInstance("JKS");
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   404
            ts.load(null, null);
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   405
55527
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   406
            Certificate[] trustedCert = new Certificate[trustedCerts.length];
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   407
            for (int i = 0; i < trustedCerts.length; i++) {
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   408
                is = new ByteArrayInputStream(trustedCerts[i].certStr.getBytes());
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   409
                try {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   410
                    trustedCert[i] = cf.generateCertificate(is);
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   411
                } finally {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   412
                    is.close();
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   413
                }
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   414
55527
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   415
                ts.setCertificateEntry(
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   416
                        "trusted-cert-" + trustedCerts[i].name(), trustedCert[i]);
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   417
            }
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   418
        }
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   419
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   420
        // Import the key materials.
55527
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   421
        if (endEntityCerts != null && endEntityCerts.length != 0) {
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   422
            ks = KeyStore.getInstance("JKS");
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   423
            ks.load(null, null);
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   424
55527
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   425
            for (int i = 0; i < endEntityCerts.length; i++) {
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   426
                // generate the private key.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   427
                PKCS8EncodedKeySpec priKeySpec = new PKCS8EncodedKeySpec(
55527
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   428
                    Base64.getMimeDecoder().decode(endEntityCerts[i].privKeyStr));
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   429
                KeyFactory kf =
55527
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   430
                    KeyFactory.getInstance(
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   431
                            endEntityCerts[i].keyAlgo);
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   432
                PrivateKey priKey = kf.generatePrivate(priKeySpec);
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   433
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   434
                // generate certificate chain
55527
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   435
                is = new ByteArrayInputStream(
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   436
                        endEntityCerts[i].certStr.getBytes());
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   437
                Certificate keyCert = null;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   438
                try {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   439
                    keyCert = cf.generateCertificate(is);
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   440
                } finally {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   441
                    is.close();
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   442
                }
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   443
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   444
                Certificate[] chain = new Certificate[] { keyCert };
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   445
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   446
                // import the key entry.
55527
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   447
                ks.setKeyEntry("cert-" + endEntityCerts[i].name(),
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   448
                        priKey, passphrase, chain);
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   449
            }
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   450
        }
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   451
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   452
        // Create an SSLContext object.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   453
        TrustManagerFactory tmf =
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   454
                TrustManagerFactory.getInstance(params.tmAlgorithm);
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   455
        tmf.init(ts);
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   456
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   457
        SSLContext context = SSLContext.getInstance(params.contextProtocol);
55527
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   458
        if (endEntityCerts != null && endEntityCerts.length != 0 && ks != null) {
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   459
            KeyManagerFactory kmf =
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   460
                    KeyManagerFactory.getInstance(params.kmAlgorithm);
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   461
            kmf.init(ks, passphrase);
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   462
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   463
            context.init(kmf.getKeyManagers(), tmf.getTrustManagers(), null);
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   464
        } else {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   465
            context.init(null, tmf.getTrustManagers(), null);
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   466
        }
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   467
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   468
        return context;
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   469
    }
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   470
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   471
    /*
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   472
     * =================================================
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   473
     * Stuffs to boot up the client-server mode testing.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   474
     */
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   475
    private Thread clientThread = null;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   476
    private Thread serverThread = null;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   477
    private volatile Exception serverException = null;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   478
    private volatile Exception clientException = null;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   479
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   480
    /*
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   481
     * Should we run the client or server in a separate thread?
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   482
     * Both sides can throw exceptions, but do you have a preference
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   483
     * as to which side should be the main thread.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   484
     */
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   485
    private static final boolean separateServerThread = false;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   486
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   487
    /*
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   488
     * Boot up the testing, used to drive remainder of the test.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   489
     */
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   490
    private void bootup() throws Exception {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   491
        Exception startException = null;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   492
        try {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   493
            if (separateServerThread) {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   494
                startServer(true);
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   495
                startClient(false);
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   496
            } else {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   497
                startClient(true);
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   498
                startServer(false);
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   499
            }
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   500
        } catch (Exception e) {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   501
            startException = e;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   502
        }
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   503
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   504
        /*
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   505
         * Wait for other side to close down.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   506
         */
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   507
        if (separateServerThread) {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   508
            if (serverThread != null) {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   509
                serverThread.join();
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   510
            }
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   511
        } else {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   512
            if (clientThread != null) {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   513
                clientThread.join();
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   514
            }
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   515
        }
42155
c9b28ab5297b 8168969: Merge SSLSocketSample and SSLSocketTemplate
asmotrak
parents: 41595
diff changeset
   516
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   517
        /*
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   518
         * When we get here, the test is pretty much over.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   519
         * Which side threw the error?
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   520
         */
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   521
        Exception local;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   522
        Exception remote;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   523
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   524
        if (separateServerThread) {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   525
            remote = serverException;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   526
            local = clientException;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   527
        } else {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   528
            remote = clientException;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   529
            local = serverException;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   530
        }
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   531
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   532
        Exception exception = null;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   533
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   534
        /*
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   535
         * Check various exception conditions.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   536
         */
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   537
        if ((local != null) && (remote != null)) {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   538
            // If both failed, return the curthread's exception.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   539
            local.initCause(remote);
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   540
            exception = local;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   541
        } else if (local != null) {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   542
            exception = local;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   543
        } else if (remote != null) {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   544
            exception = remote;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   545
        } else if (startException != null) {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   546
            exception = startException;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   547
        }
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   548
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   549
        /*
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   550
         * If there was an exception *AND* a startException,
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   551
         * output it.
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   552
         */
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   553
        if (exception != null) {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   554
            if (exception != startException && startException != null) {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   555
                exception.addSuppressed(startException);
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   556
            }
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   557
            throw exception;
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   558
        }
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   559
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   560
        // Fall-through: no exception to throw!
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   561
    }
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   562
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   563
    private void startServer(boolean newThread) throws Exception {
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   564
        if (newThread) {
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   565
            serverThread = new Thread() {
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   566
                @Override
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   567
                public void run() {
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   568
                    try {
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   569
                        doServerSide();
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   570
                    } catch (Exception e) {
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   571
                        /*
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   572
                         * Our server thread just died.
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   573
                         *
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   574
                         * Release the client, if not active already...
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   575
                         */
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   576
                        logException("Server died", e);
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   577
                        serverException = e;
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   578
                    }
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   579
                }
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   580
            };
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   581
            serverThread.start();
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   582
        } else {
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   583
            try {
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   584
                doServerSide();
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   585
            } catch (Exception e) {
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   586
                logException("Server failed", e);
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   587
                serverException = e;
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   588
            }
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   589
        }
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   590
    }
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   591
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   592
    private void startClient(boolean newThread) throws Exception {
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   593
        if (newThread) {
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   594
            clientThread = new Thread() {
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   595
                @Override
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   596
                public void run() {
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   597
                    try {
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   598
                        doClientSide();
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   599
                    } catch (Exception e) {
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   600
                        /*
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   601
                         * Our client thread just died.
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   602
                         */
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   603
                        logException("Client died", e);
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   604
                        clientException = e;
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   605
                    }
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   606
                }
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   607
            };
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   608
            clientThread.start();
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   609
        } else {
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   610
            try {
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   611
                doClientSide();
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   612
            } catch (Exception e) {
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   613
                logException("Client failed", e);
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   614
                clientException = e;
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   615
            }
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   616
        }
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
   617
    }
42464
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   618
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   619
    private synchronized void logException(String prefix, Throwable cause) {
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   620
        System.out.println(prefix + ": " + cause);
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   621
        cause.printStackTrace(System.out);
38d967704a9f 8170329: New SSLSocket testing template
xuelei
parents: 42164
diff changeset
   622
    }
55527
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   623
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   624
    public static enum Cert {
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   625
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   626
        CA_ECDSA_SECP256R1(
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   627
                "EC",
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   628
                // SHA256withECDSA, curve secp256r1
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   629
                // Validity
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   630
                //     Not Before: May 22 07:18:16 2018 GMT
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   631
                //     Not After : May 17 07:18:16 2038 GMT
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   632
                // Subject Key Identifier:
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   633
                //     60:CF:BD:73:FF:FA:1A:30:D2:A4:EC:D3:49:71:46:EF:1A:35:A0:86
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   634
                "-----BEGIN CERTIFICATE-----\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   635
                "MIIBvjCCAWOgAwIBAgIJAIvFG6GbTroCMAoGCCqGSM49BAMCMDsxCzAJBgNVBAYT\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   636
                "AlVTMQ0wCwYDVQQKDARKYXZhMR0wGwYDVQQLDBRTdW5KU1NFIFRlc3QgU2VyaXZj\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   637
                "ZTAeFw0xODA1MjIwNzE4MTZaFw0zODA1MTcwNzE4MTZaMDsxCzAJBgNVBAYTAlVT\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   638
                "MQ0wCwYDVQQKDARKYXZhMR0wGwYDVQQLDBRTdW5KU1NFIFRlc3QgU2VyaXZjZTBZ\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   639
                "MBMGByqGSM49AgEGCCqGSM49AwEHA0IABBz1WeVb6gM2mh85z3QlvaB/l11b5h0v\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   640
                "LIzmkC3DKlVukZT+ltH2Eq1oEkpXuf7QmbM0ibrUgtjsWH3mULfmcWmjUDBOMB0G\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   641
                "A1UdDgQWBBRgz71z//oaMNKk7NNJcUbvGjWghjAfBgNVHSMEGDAWgBRgz71z//oa\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   642
                "MNKk7NNJcUbvGjWghjAMBgNVHRMEBTADAQH/MAoGCCqGSM49BAMCA0kAMEYCIQCG\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   643
                "6wluh1r2/T6L31mZXRKf9JxeSf9pIzoLj+8xQeUChQIhAJ09wAi1kV8yePLh2FD9\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   644
                "2YEHlSQUAbwwqCDEVB5KxaqP\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   645
                "-----END CERTIFICATE-----",
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   646
                "MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQg/HcHdoLJCdq3haVd\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   647
                "XZTSKP00YzM3xX97l98vGL/RI1KhRANCAAQc9VnlW+oDNpofOc90Jb2gf5ddW+Yd\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   648
                "LyyM5pAtwypVbpGU/pbR9hKtaBJKV7n+0JmzNIm61ILY7Fh95lC35nFp"),
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   649
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   650
        CA_ECDSA_SECP384R1(
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   651
                "EC",
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   652
                // SHA384withECDSA, curve secp384r1
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   653
                // Validity
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   654
                //     Not Before: Jun 24 08:15:06 2019 GMT
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   655
                //     Not After : Jun 19 08:15:06 2039 GMT
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   656
                // Subject Key Identifier:
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   657
                //     0a:93:a9:a0:bf:e7:d5:48:9d:4f:89:15:c6:51:98:80:05:51:4e:4e
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   658
                "-----BEGIN CERTIFICATE-----\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   659
                "MIICCDCCAY6gAwIBAgIUCpOpoL/n1UidT4kVxlGYgAVRTk4wCgYIKoZIzj0EAwMw\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   660
                "OzELMAkGA1UEBhMCVVMxDTALBgNVBAoMBEphdmExHTAbBgNVBAsMFFN1bkpTU0Ug\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   661
                "VGVzdCBTZXJpdmNlMB4XDTE5MDYyNDA4MTUwNloXDTM5MDYxOTA4MTUwNlowOzEL\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   662
                "MAkGA1UEBhMCVVMxDTALBgNVBAoMBEphdmExHTAbBgNVBAsMFFN1bkpTU0UgVGVz\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   663
                "dCBTZXJpdmNlMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAENVQN1wXWFdgC6u/dDdiC\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   664
                "y+WtMTF66oL/0BSm+1ZqsogamzCryawOcHgiuXgWzx5CQ3LuOC+tDFyXpGfHuCvb\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   665
                "dkzxPrP5n9NrR8/uRPe5l1KOUbchviU8z9cTP+LZxnZDo1MwUTAdBgNVHQ4EFgQU\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   666
                "SktSFArR1p/5mXV0kyo0RxIVa/UwHwYDVR0jBBgwFoAUSktSFArR1p/5mXV0kyo0\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   667
                "RxIVa/UwDwYDVR0TAQH/BAUwAwEB/zAKBggqhkjOPQQDAwNoADBlAjBZvoNmq3/v\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   668
                "RD2gBTyvxjS9h0rsMRLHDnvul/KWngytwGPTOBo0Y8ixQXSjdKoc3rkCMQDkiNgx\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   669
                "IDxuHedmrLQKIPnVcthTmwv7//jHiqGoKofwChMo2a1P+DQdhszmeHD/ARQ=\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   670
                "-----END CERTIFICATE-----",
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   671
                "MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDChlbt0NF8oIKODSxn2\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   672
                "WXCXuJm3z78LRkzYQS3Nx5NMjei5ytkFZz4qvD4XXMWlTEyhZANiAAQ1VA3XBdYV\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   673
                "2ALq790N2ILL5a0xMXrqgv/QFKb7VmqyiBqbMKvJrA5weCK5eBbPHkJDcu44L60M\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   674
                "XJekZ8e4K9t2TPE+s/mf02tHz+5E97mXUo5RtyG+JTzP1xM/4tnGdkM="),
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   675
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   676
        CA_ECDSA_SECP521R1(
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   677
                "EC",
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   678
                // SHA512withECDSA, curve secp521r1
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   679
                // Validity
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   680
                //     Not Before: Jun 24 08:15:06 2019 GMT
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   681
                //     Not After : Jun 19 08:15:06 2039 GMT
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   682
                // Subject Key Identifier:
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   683
                //     25:ca:68:76:6d:29:17:9b:71:78:45:2d:d4:c6:e4:5d:fe:25:ff:90
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   684
                "-----BEGIN CERTIFICATE-----\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   685
                "MIICUzCCAbSgAwIBAgIUJcpodm0pF5txeEUt1MbkXf4l/5AwCgYIKoZIzj0EAwQw\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   686
                "OzELMAkGA1UEBhMCVVMxDTALBgNVBAoMBEphdmExHTAbBgNVBAsMFFN1bkpTU0Ug\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   687
                "VGVzdCBTZXJpdmNlMB4XDTE5MDYyNDA4MTUwNloXDTM5MDYxOTA4MTUwNlowOzEL\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   688
                "MAkGA1UEBhMCVVMxDTALBgNVBAoMBEphdmExHTAbBgNVBAsMFFN1bkpTU0UgVGVz\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   689
                "dCBTZXJpdmNlMIGbMBAGByqGSM49AgEGBSuBBAAjA4GGAAQAmFD5VmB2MdyJ6k+E\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   690
                "eP4JncrE65ySL07gVmFwnr8otOt3NtRAyzmviMNNXXjo5R5NqNjKP4pr92JjT0sO\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   691
                "D65yngkBtH151Ev/fiKPLxkXL9GzfKdWHVhDX7Zg6DUydzukzZV2/dIyloAIqwlz\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   692
                "QVKJqT7RypDufdng8hnE9YfKo6ypZiujUzBRMB0GA1UdDgQWBBRAIrxa7WqtqUCe\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   693
                "HFuKREDC92spvTAfBgNVHSMEGDAWgBRAIrxa7WqtqUCeHFuKREDC92spvTAPBgNV\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   694
                "HRMBAf8EBTADAQH/MAoGCCqGSM49BAMEA4GMADCBiAJCAe22iirZnODCmlpxcv57\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   695
                "3g5BEE60C+dtYmTqR4DtFyDaTRQ5CFf4ZxvQPIbD+SXi5Cbrl6qtrZG0cjUihPkC\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   696
                "Hi1hAkIAiEcO7nMPgQLny+GrciojfN+bZXME/dPz6KHBm/89f8Me+jawVnv6y+df\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   697
                "2Sbafh1KV6ntWQtB4bK3MXV8Ym9Eg1I=\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   698
                "-----END CERTIFICATE-----",
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   699
                "MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIAV8dZszV6+nLw3LeA\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   700
                "Q+qLJLGaqyjlsQkaopCPcmoRdy1HX6AzB/YnKsPkHp/9DQN6A2JgUhFG5B0XvKSk\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   701
                "BqNNuSGhgYkDgYYABACYUPlWYHYx3InqT4R4/gmdysTrnJIvTuBWYXCevyi063c2\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   702
                "1EDLOa+Iw01deOjlHk2o2Mo/imv3YmNPSw4PrnKeCQG0fXnUS/9+Io8vGRcv0bN8\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   703
                "p1YdWENftmDoNTJ3O6TNlXb90jKWgAirCXNBUompPtHKkO592eDyGcT1h8qjrKlm\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   704
                "Kw=="),
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   705
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   706
        CA_RSA_2048(
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   707
                "RSA",
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   708
                // SHA256withRSA, 2048 bits
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   709
                // Validity
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   710
                //     Not Before: May 22 07:18:16 2018 GMT
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   711
                //     Not After : May 17 07:18:16 2038 GMT
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   712
                // Subject Key Identifier:
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   713
                //     0D:DD:93:C9:FE:4B:BD:35:B7:E8:99:78:90:FB:DB:5A:3D:DB:15:4C
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   714
                "-----BEGIN CERTIFICATE-----\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   715
                "MIIDSTCCAjGgAwIBAgIJAI4ZF3iy8zG+MA0GCSqGSIb3DQEBCwUAMDsxCzAJBgNV\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   716
                "BAYTAlVTMQ0wCwYDVQQKDARKYXZhMR0wGwYDVQQLDBRTdW5KU1NFIFRlc3QgU2Vy\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   717
                "aXZjZTAeFw0xODA1MjIwNzE4MTZaFw0zODA1MTcwNzE4MTZaMDsxCzAJBgNVBAYT\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   718
                "AlVTMQ0wCwYDVQQKDARKYXZhMR0wGwYDVQQLDBRTdW5KU1NFIFRlc3QgU2VyaXZj\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   719
                "ZTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALpMcY7aWieXDEM1/YJf\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   720
                "JW27b4nRIFZyEYhEloyGsKTuQiiQjc8cqRZFNXe2vwziDB4IyTEl0Hjl5QF6ZaQE\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   721
                "huPzzwvQm1pv64KrRXrmj3FisQK8B5OWLty9xp6xDqsaMRoyObLK+oIb20T5fSlE\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   722
                "evmo1vYjnh8CX0Yzx5Gr5ye6YSEHQvYOWEws8ad17OlyToR2KMeC8w4qo6rs59pW\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   723
                "g7Mxn9vo22ImDzrtAbTbXbCias3xlE0Bp0h5luyf+5U4UgksoL9B9r2oP4GrLNEV\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   724
                "oJk57t8lwaR0upiv3CnS8LcJELpegZub5ggqLY8ZPYFQPjlK6IzLOm6rXPgZiZ3m\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   725
                "RL0CAwEAAaNQME4wHQYDVR0OBBYEFA3dk8n+S701t+iZeJD721o92xVMMB8GA1Ud\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   726
                "IwQYMBaAFA3dk8n+S701t+iZeJD721o92xVMMAwGA1UdEwQFMAMBAf8wDQYJKoZI\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   727
                "hvcNAQELBQADggEBAJTRC3rKUUhVH07/1+stUungSYgpM08dY4utJq0BDk36BbmO\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   728
                "0AnLDMbkwFdHEoqF6hQIfpm7SQTmXk0Fss6Eejm8ynYr6+EXiRAsaXOGOBCzF918\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   729
                "/RuKOzqABfgSU4UBKECLM5bMfQTL60qx+HdbdVIpnikHZOFfmjCDVxoHsGyXc1LW\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   730
                "Jhkht8IGOgc4PMGvyzTtRFjz01kvrVQZ75aN2E0GQv6dCxaEY0i3ypSzjUWAKqDh\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   731
                "3e2OLwUSvumcdaxyCdZAOUsN6pDBQ+8VRG7KxnlRlY1SMEk46QgQYLbPDe/+W/yH\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   732
                "ca4PejicPeh+9xRAwoTpiE2gulfT7Lm+fVM7Ruc=\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   733
                "-----END CERTIFICATE-----",
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   734
                "MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQC6THGO2lonlwxD\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   735
                "Nf2CXyVtu2+J0SBWchGIRJaMhrCk7kIokI3PHKkWRTV3tr8M4gweCMkxJdB45eUB\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   736
                "emWkBIbj888L0Jtab+uCq0V65o9xYrECvAeTli7cvcaesQ6rGjEaMjmyyvqCG9tE\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   737
                "+X0pRHr5qNb2I54fAl9GM8eRq+cnumEhB0L2DlhMLPGndezpck6EdijHgvMOKqOq\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   738
                "7OfaVoOzMZ/b6NtiJg867QG0212womrN8ZRNAadIeZbsn/uVOFIJLKC/Qfa9qD+B\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   739
                "qyzRFaCZOe7fJcGkdLqYr9wp0vC3CRC6XoGbm+YIKi2PGT2BUD45SuiMyzpuq1z4\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   740
                "GYmd5kS9AgMBAAECggEAFHSoU2MuWwJ+2jJnb5U66t2V1bAcuOE1g5zkWvG/G5z9\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   741
                "rq6Qo5kmB8f5ovdx6tw3MGUOklLwnRXBG3RxDJ1iokz3AvkY1clMNsDPlDsUrQKF\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   742
                "JSO4QUBQTPSZhnsyfR8XHSU+qJ8Y+ohMfzpVv95BEoCzebtXdVgxVegBlcEmVHo2\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   743
                "kMmkRN+bYNsr8eb2r+b0EpyumS39ZgKYh09+cFb78y3T6IFMGcVJTP6nlGBFkmA/\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   744
                "25pYeCF2tSki08qtMJZQAvKfw0Kviibk7ZxRbJqmc7B1yfnOEHP6ftjuvKl2+RP/\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   745
                "+5P5f8CfIP6gtA0LwSzAqQX/hfIKrGV5j0pCqrD0kQKBgQDeNR6Xi4sXVq79lihO\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   746
                "a1bSeV7r8yoQrS8x951uO+ox+UIZ1MsAULadl7zB/P0er92p198I9M/0Jth3KBuS\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   747
                "zj45mucvpiiGvmQlMKMEfNq4nN7WHOu55kufPswQB2mR4J3xmwI+4fM/nl1zc82h\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   748
                "De8JSazRldJXNhfx0RGFPmgzbwKBgQDWoVXrXLbCAn41oVnWB8vwY9wjt92ztDqJ\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   749
                "HMFA/SUohjePep9UDq6ooHyAf/Lz6oE5NgeVpPfTDkgvrCFVKnaWdwALbYoKXT2W\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   750
                "9FlyJox6eQzrtHAacj3HJooXWuXlphKSizntfxj3LtMR9BmrmRJOfK+SxNOVJzW2\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   751
                "+MowT20EkwKBgHmpB8jdZBgxI7o//m2BI5Y1UZ1KE5vx1kc7VXzHXSBjYqeV9FeF\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   752
                "2ZZLP9POWh/1Fh4pzTmwIDODGT2UPhSQy0zq3O0fwkyT7WzXRknsuiwd53u/dejg\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   753
                "iEL2NPAJvulZ2+AuiHo5Z99LK8tMeidV46xoJDDUIMgTG+UQHNGhK5gNAoGAZn/S\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   754
                "Cn7SgMC0CWSvBHnguULXZO9wH1wZAFYNLL44OqwuaIUFBh2k578M9kkke7woTmwx\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   755
                "HxQTjmWpr6qimIuY6q6WBN8hJ2Xz/d1fwhYKzIp20zHuv5KDUlJjbFfqpsuy3u1C\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   756
                "kts5zwI7pr1ObRbDGVyOdKcu7HI3QtR5qqyjwaUCgYABo7Wq6oHva/9V34+G3Goh\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   757
                "63bYGUnRw2l5BD11yhQv8XzGGZFqZVincD8gltNThB0Dc/BI+qu3ky4YdgdZJZ7K\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   758
                "z51GQGtaHEbrHS5caV79yQ8QGY5mUVH3E+VXSxuIqb6pZq2DH4sTAEFHyncddmOH\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   759
                "zoXBInYwRG9KE/Bw5elhUw=="),
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   760
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   761
        CA_DSA_2048(
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   762
                "DSA",
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   763
                // SHA256withDSA, 2048 bits
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   764
                // Validity
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   765
                //     Not Before: May 22 07:18:18 2018 GMT
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   766
                //     Not After : May 17 07:18:18 2038 GMT
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   767
                // Subject Key Identifier:
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   768
                //     76:66:9E:F7:3B:DD:45:E5:3B:D9:72:3C:3F:F0:54:39:86:31:26:53
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   769
                "-----BEGIN CERTIFICATE-----\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   770
                "MIIErjCCBFSgAwIBAgIJAOktYLNCbr02MAsGCWCGSAFlAwQDAjA7MQswCQYDVQQG\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   771
                "EwJVUzENMAsGA1UECgwESmF2YTEdMBsGA1UECwwUU3VuSlNTRSBUZXN0IFNlcml2\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   772
                "Y2UwHhcNMTgwNTIyMDcxODE4WhcNMzgwNTE3MDcxODE4WjA7MQswCQYDVQQGEwJV\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   773
                "UzENMAsGA1UECgwESmF2YTEdMBsGA1UECwwUU3VuSlNTRSBUZXN0IFNlcml2Y2Uw\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   774
                "ggNHMIICOQYHKoZIzjgEATCCAiwCggEBAO5GyPhSm0ze3LSu+gicdULLj05iOfTL\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   775
                "UvZQ29sYz41zmqrLBQbdKiHqgJu2Re9sgTb5suLNjF047TOLPnU3jhPtWm2X8Xzi\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   776
                "VGIcHym/Q/MeZxStt/88seqroI3WOKzIML2GcrishT+lcGrtH36Tf1+ue2Snn3PS\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   777
                "WyxygNqPjllP5uUjYmFLvAf4QLMldkd/D2VxcwsHjB8y5iUZsXezc/LEhRZS/02m\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   778
                "ivqlRw3AMkq/OVe/ZtxFWsP0nsfxEGdZuaUFpppGfixxFvymrB3+J51cTt+pZBDq\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   779
                "D2y0DYfc+88iCs4jwHTfcDIpLb538HBjBj2rEgtQESQmB0ooD/+wsPsCIQC1bYch\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   780
                "gElNtDYL3FgpLgNSUYp7gIWv9ehaC7LO2z7biQKCAQBitvFOnDkUja8NAF7lDpOV\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   781
                "b5ipQ8SicBLW3kQamxhyuyxgZyy/PojZ/oPorkqW/T/A0rhnG6MssEpAtdiwVB+c\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   782
                "rBYGo3bcwmExJhdOJ6dYuKFppPWhCwKMHs9npK+lqBMl8l5j58xlcFeC7ZfGf8GY\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   783
                "GkhFW0c44vEQhMMbac6ZTTP4mw+1t7xJfmDMlLEyIpTXaAAk8uoVLWzQWnR40sHi\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   784
                "ybvS0u3JxQkb7/y8tOOZu8qlz/YOS7lQ6UxUGX27Ce1E0+agfPphetoRAlS1cezq\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   785
                "Wa7r64Ga0nkj1kwkcRqjgTiJx0NwnUXr78VAXFhVF95+O3lfqhvdtEGtkhDGPg7N\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   786
                "A4IBBgACggEBAMmSHQK0w2i+iqUjOPzn0yNEZrzepLlLeQ1tqtn0xnlv5vBAeefD\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   787
                "Pm9dd3tZOjufVWP7hhEz8xPobb1CS4e3vuQiv5UBfhdPL3f3l9T7JMAKPH6C9Vve\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   788
                "OQXE5eGqbjsySbcmseHoYUt1WCSnSda1opX8zchX04e7DhGfE2/L9flpYEoSt8lI\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   789
                "vMNjgOwvKdW3yvPt1/eBBHYNFG5gWPv/Q5KoyCtHS03uqGm4rNc/wZTIEEfd66C+\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   790
                "QRaUltjOaHmtwOdDHaNqwhYZSVOip+Mo+TfyzHFREcdHLapo7ZXqbdYkRGxRR3d+\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   791
                "3DfHaraJO0OKoYlPkr3JMvM/MSGR9AnZOcejUDBOMB0GA1UdDgQWBBR2Zp73O91F\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   792
                "5TvZcjw/8FQ5hjEmUzAfBgNVHSMEGDAWgBR2Zp73O91F5TvZcjw/8FQ5hjEmUzAM\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   793
                "BgNVHRMEBTADAQH/MAsGCWCGSAFlAwQDAgNHADBEAiBzriYE41M2y9Hy5ppkL0Qn\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   794
                "dIlNc8JhXT/PHW7GDtViagIgMko8Qoj9gDGPK3+O9E8DC3wGiiF9CObM4LN387ok\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   795
                "J+g=\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   796
                "-----END CERTIFICATE-----",
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   797
                "MIICZQIBADCCAjkGByqGSM44BAEwggIsAoIBAQDuRsj4UptM3ty0rvoInHVCy49O" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   798
                "Yjn0y1L2UNvbGM+Nc5qqywUG3Soh6oCbtkXvbIE2+bLizYxdOO0ziz51N44T7Vpt" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   799
                "l/F84lRiHB8pv0PzHmcUrbf/PLHqq6CN1jisyDC9hnK4rIU/pXBq7R9+k39frntk" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   800
                "p59z0lsscoDaj45ZT+blI2JhS7wH+ECzJXZHfw9lcXMLB4wfMuYlGbF3s3PyxIUW" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   801
                "Uv9Npor6pUcNwDJKvzlXv2bcRVrD9J7H8RBnWbmlBaaaRn4scRb8pqwd/iedXE7f" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   802
                "qWQQ6g9stA2H3PvPIgrOI8B033AyKS2+d/BwYwY9qxILUBEkJgdKKA//sLD7AiEA" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   803
                "tW2HIYBJTbQ2C9xYKS4DUlGKe4CFr/XoWguyzts+24kCggEAYrbxTpw5FI2vDQBe" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   804
                "5Q6TlW+YqUPEonAS1t5EGpsYcrssYGcsvz6I2f6D6K5Klv0/wNK4ZxujLLBKQLXY" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   805
                "sFQfnKwWBqN23MJhMSYXTienWLihaaT1oQsCjB7PZ6SvpagTJfJeY+fMZXBXgu2X" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   806
                "xn/BmBpIRVtHOOLxEITDG2nOmU0z+JsPtbe8SX5gzJSxMiKU12gAJPLqFS1s0Fp0" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   807
                "eNLB4sm70tLtycUJG+/8vLTjmbvKpc/2Dku5UOlMVBl9uwntRNPmoHz6YXraEQJU" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   808
                "tXHs6lmu6+uBmtJ5I9ZMJHEao4E4icdDcJ1F6+/FQFxYVRfefjt5X6ob3bRBrZIQ" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   809
                "xj4OzQQjAiEAsceWOM8do4etxp2zgnoNXV8PUUyqWhz1+0srcKV7FR4="),
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   810
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   811
        EE_ECDSA_SECP256R1(
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   812
                "EC",
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   813
                // SHA256withECDSA, curve secp256r1
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   814
                // Validity
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   815
                //     Not Before: May 22 07:18:16 2018 GMT
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   816
                //     Not After : May 17 07:18:16 2038 GMT
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   817
                // Authority Key Identifier:
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   818
                //     60:CF:BD:73:FF:FA:1A:30:D2:A4:EC:D3:49:71:46:EF:1A:35:A0:86
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   819
                "-----BEGIN CERTIFICATE-----\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   820
                "MIIBqjCCAVCgAwIBAgIJAPLY8qZjgNRAMAoGCCqGSM49BAMCMDsxCzAJBgNVBAYT\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   821
                "AlVTMQ0wCwYDVQQKDARKYXZhMR0wGwYDVQQLDBRTdW5KU1NFIFRlc3QgU2VyaXZj\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   822
                "ZTAeFw0xODA1MjIwNzE4MTZaFw0zODA1MTcwNzE4MTZaMFUxCzAJBgNVBAYTAlVT\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   823
                "MQ0wCwYDVQQKDARKYXZhMR0wGwYDVQQLDBRTdW5KU1NFIFRlc3QgU2VyaXZjZTEY\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   824
                "MBYGA1UEAwwPUmVncmVzc2lvbiBUZXN0MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcD\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   825
                "QgAEb+9n05qfXnfHUb0xtQJNS4JeSi6IjOfW5NqchvKnfJey9VkJzR7QHLuOESdf\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   826
                "xlR7q8YIWgih3iWLGfB+wxHiOqMjMCEwHwYDVR0jBBgwFoAUYM+9c//6GjDSpOzT\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   827
                "SXFG7xo1oIYwCgYIKoZIzj0EAwIDSAAwRQIgWpRegWXMheiD3qFdd8kMdrkLxRbq\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   828
                "1zj8nQMEwFTUjjQCIQDRIrAjZX+YXHN9b0SoWWLPUq0HmiFIi8RwMnO//wJIGQ==\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   829
                "-----END CERTIFICATE-----",
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   830
                "MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgn5K03bpTLjEtFQRa\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   831
                "JUtx22gtmGEvvSUSQdimhGthdtihRANCAARv72fTmp9ed8dRvTG1Ak1Lgl5KLoiM\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   832
                "59bk2pyG8qd8l7L1WQnNHtAcu44RJ1/GVHurxghaCKHeJYsZ8H7DEeI6"),
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   833
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   834
        EE_ECDSA_SECP384R1(
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   835
                "EC",
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   836
                // SHA384withECDSA, curve secp384r1
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   837
                // Validity
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   838
                //     Not Before: Jun 24 08:15:06 2019 GMT
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   839
                //     Not After : Jun 19 08:15:06 2039 GMT
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   840
                // Authority Key Identifier:
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   841
                //     40:2D:AA:EE:66:AA:33:27:AD:9B:5D:52:9B:60:67:6A:2B:AD:52:D2
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   842
                "-----BEGIN CERTIFICATE-----\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   843
                "MIICEjCCAZegAwIBAgIUS3F0AqAXWRg07CnbknJzxofyBQMwCgYIKoZIzj0EAwMw\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   844
                "OzELMAkGA1UEBhMCVVMxDTALBgNVBAoMBEphdmExHTAbBgNVBAsMFFN1bkpTU0Ug\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   845
                "VGVzdCBTZXJpdmNlMB4XDTE5MDYyNDA4MTUwNloXDTM5MDYxOTA4MTUwNlowVTEL\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   846
                "MAkGA1UEBhMCVVMxDTALBgNVBAoMBEphdmExHTAbBgNVBAsMFFN1bkpTU0UgVGVz\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   847
                "dCBTZXJpdmNlMRgwFgYDVQQDDA9SZWdyZXNzaW9uIFRlc3QwdjAQBgcqhkjOPQIB\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   848
                "BgUrgQQAIgNiAARqElz8b6T07eyKomIinhztV3/3XBk9bKGtJ0W+JOltjuhMmP/w\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   849
                "G8ASSevpgqgpi6EzpBZaaJxE3zNfkNnxXOZmQi2Ypd1uK0zRdbEOKg0XOcTTZwEj\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   850
                "iLjYmt3O0pwpklijQjBAMB0GA1UdDgQWBBRALaruZqozJ62bXVKbYGdqK61S0jAf\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   851
                "BgNVHSMEGDAWgBRKS1IUCtHWn/mZdXSTKjRHEhVr9TAKBggqhkjOPQQDAwNpADBm\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   852
                "AjEArVDFKf48xijN6huVUJzKCOP0zlWB5Js+DItIkZmLQuhciPLhLIB/rChf3Y4C\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   853
                "xuP4AjEAmfLhQRI0O3pifpYzYSVh2G7/jHNG4eO+2dvgAcU+Lh2IIj/cpLaPFSvL\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   854
                "J8FXY9Nj\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   855
                "-----END CERTIFICATE-----",
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   856
                "MIG2AgEAMBAGByqGSM49AgEGBSuBBAAiBIGeMIGbAgEBBDASuI9EtK29APXPipkc\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   857
                "qDA+qwlewMjv/OcjUJ77kP1Vz62oVF9iY9SRIyFIUju8wt+hZANiAARqElz8b6T0\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   858
                "7eyKomIinhztV3/3XBk9bKGtJ0W+JOltjuhMmP/wG8ASSevpgqgpi6EzpBZaaJxE\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   859
                "3zNfkNnxXOZmQi2Ypd1uK0zRdbEOKg0XOcTTZwEjiLjYmt3O0pwpklg="),
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   860
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   861
        EE_ECDSA_SECP521R1(
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   862
                "EC",
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   863
                // SHA512withECDSA, curve secp521r1
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   864
                // Validity
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   865
                //     Not Before: Jun 24 08:15:06 2019 GMT
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   866
                //     Not After : Jun 19 08:15:06 2039 GMT
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   867
                // Authority Key Identifier:
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   868
                //     7B:AA:79:A4:49:DD:59:34:F0:86:6C:51:C7:30:F4:CE:C5:81:8A:28
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   869
                "-----BEGIN CERTIFICATE-----\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   870
                "MIICXDCCAb2gAwIBAgIUck4QTsbHNqUfPxfGPJLYbedFPdswCgYIKoZIzj0EAwQw\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   871
                "OzELMAkGA1UEBhMCVVMxDTALBgNVBAoMBEphdmExHTAbBgNVBAsMFFN1bkpTU0Ug\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   872
                "VGVzdCBTZXJpdmNlMB4XDTE5MDYyNDA4MTUwNloXDTM5MDYxOTA4MTUwNlowVTEL\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   873
                "MAkGA1UEBhMCVVMxDTALBgNVBAoMBEphdmExHTAbBgNVBAsMFFN1bkpTU0UgVGVz\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   874
                "dCBTZXJpdmNlMRgwFgYDVQQDDA9SZWdyZXNzaW9uIFRlc3QwgZswEAYHKoZIzj0C\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   875
                "AQYFK4EEACMDgYYABAGa2zDLhYQHHCLI3YBqFYJTzrnDIjzwXrxhcRTS8DYkcrjZ\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   876
                "+Fih1YyNhix0sdjH+3EqElXAHHuVzn3n3hPOtQCWlQCICkErB34S0cvmtRkeW8Fi\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   877
                "hrR5tvJEzEZjPSgwn81kKyhV2L70je6i7Cw884Va8bODckpgw0vTmbQb7T9dupkv\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   878
                "1aNCMEAwHQYDVR0OBBYEFHuqeaRJ3Vk08IZsUccw9M7FgYooMB8GA1UdIwQYMBaA\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   879
                "FEAivFrtaq2pQJ4cW4pEQML3aym9MAoGCCqGSM49BAMEA4GMADCBiAJCAb33KHdY\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   880
                "WDbusORWoY8Euglpd5zsF15hJsk7wtpD5HST1/NWmdCx405w+TV6a9Gr4VPHeaIQ\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   881
                "99i/+f237ALL5p6IAkIBbwwFL1vt3c/bx+niyuffQPNjly80rdC9puqAqriSiboS\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   882
                "efhxjidJ9HLaIRCMEPyd6vAsC8mO8YvL1uCuEQLsiGM=\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   883
                "-----END CERTIFICATE-----",
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   884
                "MIHuAgEAMBAGByqGSM49AgEGBSuBBAAjBIHWMIHTAgEBBEIB8C/2OX2Dt9vFszzV\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   885
                "hcAe0CbkMlvu9uQ/L7Vz88heuIj0rUZIPGshvgIJt1hCMT8HZxYHvDa4lbUvqjFB\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   886
                "+zafvPWhgYkDgYYABAGa2zDLhYQHHCLI3YBqFYJTzrnDIjzwXrxhcRTS8DYkcrjZ\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   887
                "+Fih1YyNhix0sdjH+3EqElXAHHuVzn3n3hPOtQCWlQCICkErB34S0cvmtRkeW8Fi\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   888
                "hrR5tvJEzEZjPSgwn81kKyhV2L70je6i7Cw884Va8bODckpgw0vTmbQb7T9dupkv\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   889
                "1Q=="),
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   890
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   891
        EE_RSA_2048(
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   892
                "RSA",
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   893
                // SHA256withRSA, 2048 bits
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   894
                // Validity
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   895
                //     Not Before: May 22 07:18:16 2018 GMT
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   896
                //     Not After : May 17 07:18:16 2038 GMT
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   897
                // Authority Key Identifier:
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   898
                //     0D:DD:93:C9:FE:4B:BD:35:B7:E8:99:78:90:FB:DB:5A:3D:DB:15:4C
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   899
                "-----BEGIN CERTIFICATE-----\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   900
                "MIIDNjCCAh6gAwIBAgIJAO2+yPcFryUTMA0GCSqGSIb3DQEBCwUAMDsxCzAJBgNV\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   901
                "BAYTAlVTMQ0wCwYDVQQKDARKYXZhMR0wGwYDVQQLDBRTdW5KU1NFIFRlc3QgU2Vy\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   902
                "aXZjZTAeFw0xODA1MjIwNzE4MTZaFw0zODA1MTcwNzE4MTZaMFUxCzAJBgNVBAYT\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   903
                "AlVTMQ0wCwYDVQQKDARKYXZhMR0wGwYDVQQLDBRTdW5KU1NFIFRlc3QgU2VyaXZj\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   904
                "ZTEYMBYGA1UEAwwPUmVncmVzc2lvbiBUZXN0MIIBIjANBgkqhkiG9w0BAQEFAAOC\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   905
                "AQ8AMIIBCgKCAQEAszfBobWfZIp8AgC6PiWDDavP65mSvgCXUGxACbxVNAfkLhNR\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   906
                "QOsHriRB3X1Q3nvO9PetC6wKlvE9jlnDDj7D+1j1r1CHO7ms1fq8rfcQYdkanDtu\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   907
                "4AlHo8v+SSWX16MIXFRYDj2VVHmyPtgbltcg4zGAuwT746FdLI94uXjJjq1IOr/v\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   908
                "0VIlwE5ORWH5Xc+5Tj+oFWK0E4a4GHDgtKKhn2m72hN56/GkPKGkguP5NRS1qYYV\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   909
                "/EFkdyQMOV8J1M7HaicSft4OL6eKjTrgo93+kHk+tv0Dc6cpVBnalX3TorG8QI6B\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   910
                "cHj1XQd78oAlAC+/jF4pc0mwi0un49kdK9gRfQIDAQABoyMwITAfBgNVHSMEGDAW\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   911
                "gBQN3ZPJ/ku9NbfomXiQ+9taPdsVTDANBgkqhkiG9w0BAQsFAAOCAQEApXS0nKwm\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   912
                "Kp8gpmO2yG1rpd1+2wBABiMU4JZaTqmma24DQ3RzyS+V2TeRb29dl5oTUEm98uc0\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   913
                "GPZvhK8z5RFr4YE17dc04nI/VaNDCw4y1NALXGs+AHkjoPjLyGbWpi1S+gfq2sNB\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   914
                "Ekkjp6COb/cb9yiFXOGVls7UOIjnVZVd0r7KaPFjZhYh82/f4PA/A1SnIKd1+nfH\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   915
                "2yk7mSJNC7Z3qIVDL8MM/jBVwiC3uNe5GPB2uwhd7k5LGAVN3j4HQQGB0Sz+VC1h\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   916
                "92oi6xDa+YBva2fvHuCd8P50DDjxmp9CemC7rnZ5j8egj88w14X44Xjb/Fd/ApG9\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   917
                "e57NnbT7KM+Grw==\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   918
                "-----END CERTIFICATE-----",
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   919
                "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCzN8GhtZ9kinwC\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   920
                "ALo+JYMNq8/rmZK+AJdQbEAJvFU0B+QuE1FA6weuJEHdfVDee870960LrAqW8T2O\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   921
                "WcMOPsP7WPWvUIc7uazV+ryt9xBh2RqcO27gCUejy/5JJZfXowhcVFgOPZVUebI+\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   922
                "2BuW1yDjMYC7BPvjoV0sj3i5eMmOrUg6v+/RUiXATk5FYfldz7lOP6gVYrQThrgY\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   923
                "cOC0oqGfabvaE3nr8aQ8oaSC4/k1FLWphhX8QWR3JAw5XwnUzsdqJxJ+3g4vp4qN\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   924
                "OuCj3f6QeT62/QNzpylUGdqVfdOisbxAjoFwePVdB3vygCUAL7+MXilzSbCLS6fj\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   925
                "2R0r2BF9AgMBAAECggEASIkPkMCuw4WdTT44IwERus3IOIYOs2IP3BgEDyyvm4B6\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   926
                "JP/iihDWKfA4zEl1Gqcni1RXMHswSglXra682J4kui02Ov+vzEeJIY37Ibn2YnP5\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   927
                "ZjRT2s9GtI/S2o4hl8A/mQb2IMViFC+xKehTukhV4j5d6NPKk0XzLR7gcMjnYxwn\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   928
                "l21fS6D2oM1xRG/di7sL+uLF8EXLRzfiWDNi12uQv4nwtxPKvuKhH6yzHt7YqMH0\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   929
                "46pmDKDaxV4w1JdycjCb6NrCJOYZygoQobuZqOQ30UZoZsPJrtovkncFr1e+lNcO\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   930
                "+aWDfOLCtTH046dEQh5oCShyXMybNlry/QHsOtHOwQKBgQDh2iIjs+FPpQy7Z3EX\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   931
                "DGEvHYqPjrYO9an2KSRr1m9gzRlWYxKY46WmPKwjMerYtra0GP+TBHrgxsfO8tD2\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   932
                "wUAII6sd1qup0a/Sutgf2JxVilLykd0+Ge4/Cs51tCdJ8EqDV2B6WhTewOY2EGvg\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   933
                "JiKYkeNwgRX/9M9CFSAMAk0hUQKBgQDLJAartL3DoGUPjYtpJnfgGM23yAGl6G5r\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   934
                "NSXDn80BiYIC1p0bG3N0xm3yAjqOtJAUj9jZbvDNbCe3GJfLARMr23legX4tRrgZ\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   935
                "nEdKnAFKAKL01oM+A5/lHdkwaZI9yyv+hgSVdYzUjB8rDmzeVQzo1BT7vXypt2yV\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   936
                "6O1OnUpCbQKBgA/0rzDChopv6KRcvHqaX0tK1P0rYeVQqb9ATNhpf9jg5Idb3HZ8\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   937
                "rrk91BNwdVz2G5ZBpdynFl9G69rNAMJOCM4KZw5mmh4XOEq09Ivba8AHU7DbaTv3\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   938
                "7QL7KnbaUWRB26HHzIMYVh0el6T+KADf8NXCiMTr+bfpfbL3dxoiF3zhAoGAbCJD\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   939
                "Qse1dBs/cKYCHfkSOsI5T6kx52Tw0jS6Y4X/FOBjyqr/elyEexbdk8PH9Ar931Qr\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   940
                "NKMvn8oA4iA/PRrXX7M2yi3YQrWwbkGYWYjtzrzEAdzmg+5eARKAeJrZ8/bg9l3U\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   941
                "ttKaItJsDPlizn8rngy3FsJpR9aSAMK6/+wOiYkCgYEA1tZkI1rD1W9NYZtbI9BE\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   942
                "qlJVFi2PBOJMKNuWdouPX3HLQ72GJSQff2BFzLTELjweVVJ0SvY4IipzpQOHQOBy\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   943
                "5qh/p6izXJZh3IHtvwVBjHoEVplg1b2+I5e3jDCfqnwcQw82dW5SxOJMg1h/BD0I\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   944
                "qAL3go42DYeYhu/WnECMeis="),
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   945
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   946
        EE_EC_RSA_SECP256R1(
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   947
                "EC",
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   948
                // SHA256withRSA, curve secp256r1
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   949
                // Validity
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   950
                //     Not Before: May 22 07:18:16 2018 GMT
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   951
                //     Not After : May 21 07:18:16 2028 GMT
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   952
                // Authority Key Identifier:
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   953
                //     0D:DD:93:C9:FE:4B:BD:35:B7:E8:99:78:90:FB:DB:5A:3D:DB:15:4C
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   954
                "-----BEGIN CERTIFICATE-----\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   955
                "MIICazCCAVOgAwIBAgIJAO2+yPcFryUUMA0GCSqGSIb3DQEBCwUAMDsxCzAJBgNV\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   956
                "BAYTAlVTMQ0wCwYDVQQKDARKYXZhMR0wGwYDVQQLDBRTdW5KU1NFIFRlc3QgU2Vy\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   957
                "aXZjZTAeFw0xODA1MjIwNzE4MTZaFw0yODA1MjEwNzE4MTZaMFUxCzAJBgNVBAYT\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   958
                "AlVTMQ0wCwYDVQQKDARKYXZhMR0wGwYDVQQLDBRTdW5KU1NFIFRlc3QgU2VyaXZj\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   959
                "ZTEYMBYGA1UEAwwPUmVncmVzc2lvbiBUZXN0MFkwEwYHKoZIzj0CAQYIKoZIzj0D\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   960
                "AQcDQgAE59MERNTlVZ1eeps8Z3Oue5ZkgQdPtD+WIE6tj3PbIKpxGPDxvfNP959A\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   961
                "yQjEK/ehWQVrCMmNoEkIzY+IIBgB06MjMCEwHwYDVR0jBBgwFoAUDd2Tyf5LvTW3\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   962
                "6Jl4kPvbWj3bFUwwDQYJKoZIhvcNAQELBQADggEBAFOTVEqs70ykhZiIdrEsF1Ra\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   963
                "I3B2rLvwXZk52uSltk2/bzVvewA577ZCoxQ1pL7ynkisPfBN1uVYtHjM1VA3RC+4\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   964
                "+TAK78dnI7otYjWoHp5rvs4l6c/IbOspS290IlNuDUxMErEm5wxIwj+Aukx/1y68\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   965
                "hOyCvHBLMY2c1LskH1MMBbDuS1aI+lnGpToi+MoYObxGcV458vxuT8+wwV8Fkpvd\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   966
                "ll8IIFmeNPRv+1E+lXbES6CSNCVaZ/lFhPgdgYKleN7sfspiz50DG4dqafuEAaX5\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   967
                "xaK1NWXJxTRz0ROH/IUziyuDW6jphrlgit4+3NCzp6vP9hAJQ8Vhcj0n15BKHIQ=\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   968
                "-----END CERTIFICATE-----",
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   969
                "MIGHAgEAMBMGByqGSM49AgEGCCqGSM49AwEHBG0wawIBAQQgGVc7hICpmp91jbYe\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   970
                "nrr8nYHD37RZP3VENY+szuA7WjuhRANCAATn0wRE1OVVnV56mzxnc657lmSBB0+0\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   971
                "P5YgTq2Pc9sgqnEY8PG980/3n0DJCMQr96FZBWsIyY2gSQjNj4ggGAHT"),
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   972
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   973
        EE_DSA_2048(
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   974
                "DSA",
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   975
                // SHA256withDSA, 2048 bits
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   976
                // Validity
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   977
                //     Not Before: May 22 07:18:20 2018 GMT
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   978
                //     Not After : May 17 07:18:20 2038 GMT
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   979
                // Authority Key Identifier:
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   980
                //     76:66:9E:F7:3B:DD:45:E5:3B:D9:72:3C:3F:F0:54:39:86:31:26:53
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   981
                "-----BEGIN CERTIFICATE-----\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   982
                "MIIEnDCCBEGgAwIBAgIJAP/jh1qVhNVjMAsGCWCGSAFlAwQDAjA7MQswCQYDVQQG\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   983
                "EwJVUzENMAsGA1UECgwESmF2YTEdMBsGA1UECwwUU3VuSlNTRSBUZXN0IFNlcml2\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   984
                "Y2UwHhcNMTgwNTIyMDcxODIwWhcNMzgwNTE3MDcxODIwWjBVMQswCQYDVQQGEwJV\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   985
                "UzENMAsGA1UECgwESmF2YTEdMBsGA1UECwwUU3VuSlNTRSBUZXN0IFNlcml2Y2Ux\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   986
                "GDAWBgNVBAMMD1JlZ3Jlc3Npb24gVGVzdDCCA0cwggI6BgcqhkjOOAQBMIICLQKC\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   987
                "AQEAmlavgoJrMcjqWRVcDE2dmWAPREgnzQvneEDef68cprDzjSwvOs5QeFyx75ib\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   988
                "ado1e6jO/rW1prCGWHDD1oA/Tn4Pk3vu0nUxzvl1qATc+aJbpUU5Op0bvp6LbCsQ\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   989
                "QslV9FeRh7Eb7bP6gpc/kHCBzEgC1VCK7prccXWy+t6SMOHbND3h+UbckfSaUuaV\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   990
                "sVJNTD1D6GElfRj4Nmz1BGPfSYvKorwNZEU3gXwFgtDoAcGx7tcyClLpDHfqRfw/\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   991
                "7yiqLyeiP7D4hl5lMNouJWDlAdMFp0FMgS3s9VDFinIcr6VtBWMTG7+4+czHAB+3\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   992
                "fvrwlqNzhBn3uFHrekN/w8fNxwIhAJo7Sae1za7IMW0Q6hE5B4b+s2B/FaKPoA4E\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   993
                "jtZu13B9AoIBAQCOZqLMKfvqZWUgT0PQ3QjR7dAFdd06I9Y3+TOQzZk1+j+vw/6E\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   994
                "X4vFItX4gihb/u5Q9CdmpwhVGi7bvo+7+/IKeTgoQ6f5+PSug7SrWWUQ5sPwaZui\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   995
                "zXZJ5nTeZDucFc2yFx0wgnjbPwiUxZklOT7xGiOMtzOTa2koCz5KuIBL+/wPKKxm\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   996
                "ypo9VoY9xfbdU6LMXZv/lpD5XTM9rYHr/vUTNkukvV6Hpm0YMEWhVZKUJiqCqTqG\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   997
                "XHaleOxSw6uQWB/+TznifcC7gB48UOQjCqOKf5VuwQneJLhlhU/jhRV3xtr+hLZa\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   998
                "hW1wYhVi8cjLDrZFKlgEQqhB4crnJU0mJY+tA4IBBQACggEAID0ezl00/X8mv7eb\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
   999
                "bzovum1+DEEP7FM57k6HZEG2N3ve4CW+0m9Cd+cWPz8wkZ+M0j/Eqa6F0IdbkXEc\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1000
                "Q7CuzvUyJ57xQ3L/WCgXsiS+Bh8O4Mz7GwW22CGmHqafbVv+hKBfr8MkskO6GJUt\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1001
                "SUF/CVLzB4gMIvZMH26tBP2xK+i7FeEK9kT+nGdzQSZBAhFYpEVCBplHZO24/OYq\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1002
                "1DNoU327nUuXIhmsfA8N0PjiWbIZIjTPwBGr9H0LpATI7DIDNcvRRvtROP+pBU9y\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1003
                "fuykPkptg9C0rCM9t06bukpOSaEz/2VIQdLE8fHYFA6pHZ6CIc2+5cfvMgTPhcjz\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1004
                "W2jCt6MjMCEwHwYDVR0jBBgwFoAUdmae9zvdReU72XI8P/BUOYYxJlMwCwYJYIZI\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1005
                "AWUDBAMCA0gAMEUCIQCeI5fN08b9BpOaHdc3zQNGjp24FOL/RxlBLeBAorswJgIg\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1006
                "JEZ8DhYxQy1O7mmZ2UIT7op6epWMB4dENjs0qWPmcKo=\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1007
                "-----END CERTIFICATE-----",
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1008
                "MIICZQIBADCCAjoGByqGSM44BAEwggItAoIBAQCaVq+CgmsxyOpZFVwMTZ2ZYA9E\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1009
                "SCfNC+d4QN5/rxymsPONLC86zlB4XLHvmJtp2jV7qM7+tbWmsIZYcMPWgD9Ofg+T\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1010
                "e+7SdTHO+XWoBNz5olulRTk6nRu+notsKxBCyVX0V5GHsRvts/qClz+QcIHMSALV\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1011
                "UIrumtxxdbL63pIw4ds0PeH5RtyR9JpS5pWxUk1MPUPoYSV9GPg2bPUEY99Ji8qi\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1012
                "vA1kRTeBfAWC0OgBwbHu1zIKUukMd+pF/D/vKKovJ6I/sPiGXmUw2i4lYOUB0wWn\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1013
                "QUyBLez1UMWKchyvpW0FYxMbv7j5zMcAH7d++vCWo3OEGfe4Uet6Q3/Dx83HAiEA\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1014
                "mjtJp7XNrsgxbRDqETkHhv6zYH8Voo+gDgSO1m7XcH0CggEBAI5moswp++plZSBP\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1015
                "Q9DdCNHt0AV13Toj1jf5M5DNmTX6P6/D/oRfi8Ui1fiCKFv+7lD0J2anCFUaLtu+\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1016
                "j7v78gp5OChDp/n49K6DtKtZZRDmw/Bpm6LNdknmdN5kO5wVzbIXHTCCeNs/CJTF\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1017
                "mSU5PvEaI4y3M5NraSgLPkq4gEv7/A8orGbKmj1Whj3F9t1Tosxdm/+WkPldMz2t\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1018
                "gev+9RM2S6S9XoembRgwRaFVkpQmKoKpOoZcdqV47FLDq5BYH/5POeJ9wLuAHjxQ\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1019
                "5CMKo4p/lW7BCd4kuGWFT+OFFXfG2v6EtlqFbXBiFWLxyMsOtkUqWARCqEHhyucl\n" +
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1020
                "TSYlj60EIgIgLfA75+8KcKxdN8mr6gzGjQe7jPFGG42Ejhd7Q2F4wuw=");
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1021
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1022
        final String keyAlgo;
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1023
        final String certStr;
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1024
        final String privKeyStr;
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1025
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1026
        Cert(String keyAlgo, String certStr, String privKeyStr) {
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1027
            this.keyAlgo = keyAlgo;
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1028
            this.certStr = certStr;
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1029
            this.privKeyStr = privKeyStr;
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1030
        }
ed7851b2d5e4 8224650: Add tests to support X25519 and X448 in TLS
jjiang
parents: 55353
diff changeset
  1031
    }
41196
240314163e51 8164591: sun/net/www/protocol/https/HttpsClient/ServerIdentityTest.java failed with SSLHandshakeException
asmotrak
parents:
diff changeset
  1032
}