当前位置: 首页>>代码示例>>Java>>正文


Java SSLSocket.setUseClientMode方法代码示例

本文整理汇总了Java中javax.net.ssl.SSLSocket.setUseClientMode方法的典型用法代码示例。如果您正苦于以下问题:Java SSLSocket.setUseClientMode方法的具体用法?Java SSLSocket.setUseClientMode怎么用?Java SSLSocket.setUseClientMode使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在javax.net.ssl.SSLSocket的用法示例。


在下文中一共展示了SSLSocket.setUseClientMode方法的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: upgradeToTls

import javax.net.ssl.SSLSocket; //导入方法依赖的package包/类
private void upgradeToTls(Socket socket) throws KeyStoreException, IOException, NoSuchAlgorithmException,
        CertificateException, UnrecoverableKeyException, KeyManagementException {

    KeyStore keyStore = keyStoreProvider.getKeyStore();

    String defaultAlgorithm = KeyManagerFactory.getDefaultAlgorithm();
    KeyManagerFactory keyManagerFactory = KeyManagerFactory.getInstance(defaultAlgorithm);
    keyManagerFactory.init(keyStore, keyStoreProvider.getPassword());

    SSLContext sslContext = SSLContext.getInstance("TLS");
    sslContext.init(keyManagerFactory.getKeyManagers(), null, null);
    SSLSocketFactory sslSocketFactory = sslContext.getSocketFactory();

    SSLSocket sslSocket = (SSLSocket) sslSocketFactory.createSocket(
            socket, socket.getInetAddress().getHostAddress(), socket.getPort(), true);
    sslSocket.setUseClientMode(false);
    sslSocket.startHandshake();

    input = Okio.buffer(Okio.source(sslSocket.getInputStream()));
    output = Okio.buffer(Okio.sink(sslSocket.getOutputStream()));
}
 
开发者ID:philipwhiuk,项目名称:q-mail,代码行数:22,代码来源:MockSmtpServer.java

示例2: createServerSocket

import javax.net.ssl.SSLSocket; //导入方法依赖的package包/类
/**
 * <p>Creates a server socket that accepts SSL connections
 * configured according to this factory's SSL socket configuration
 * parameters.</p>
 */
public ServerSocket createServerSocket(int port) throws IOException {
    final SSLSocketFactory sslSocketFactory =
            context == null ?
                getDefaultSSLSocketFactory() : context.getSocketFactory();
    return new ServerSocket(port) {
        public Socket accept() throws IOException {
            Socket socket = super.accept();
            SSLSocket sslSocket = (SSLSocket) sslSocketFactory.createSocket(
                    socket, socket.getInetAddress().getHostName(),
                    socket.getPort(), true);
            sslSocket.setUseClientMode(false);
            if (enabledCipherSuites != null) {
                sslSocket.setEnabledCipherSuites(enabledCipherSuites);
            }
            if (enabledProtocols != null) {
                sslSocket.setEnabledProtocols(enabledProtocols);
            }
            sslSocket.setNeedClientAuth(needClientAuth);
            return sslSocket;
        }
    };
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:28,代码来源:SslRMIServerSocketFactory.java

示例3: accept

import javax.net.ssl.SSLSocket; //导入方法依赖的package包/类
@Override
public Socket accept() throws IOException {
    final SSLSocketFactory sslSocketFactory =
            context == null ?
                getDefaultSSLSocketFactory() : context.getSocketFactory();
    Socket socket = super.accept();
    SSLSocket sslSocket = (SSLSocket) sslSocketFactory.createSocket(
            socket, socket.getInetAddress().getHostName(),
            socket.getPort(), true);
    sslSocket.setUseClientMode(false);
    if (enabledCipherSuites != null) {
        sslSocket.setEnabledCipherSuites(enabledCipherSuites);
    }
    if (enabledProtocols != null) {
        sslSocket.setEnabledProtocols(enabledProtocols);
    }
    sslSocket.setNeedClientAuth(needClientAuth);
    return sslSocket;
}
 
开发者ID:lambdalab-mirror,项目名称:jdk8u-jdk,代码行数:20,代码来源:ConnectorBootstrap.java

示例4: runClientApplication

import javax.net.ssl.SSLSocket; //导入方法依赖的package包/类
@Override
protected void runClientApplication(SSLSocket socket) throws Exception {
    String ciphers[] = {
            "TLS_DHE_RSA_WITH_AES_128_CBC_SHA",
            "TLS_DHE_DSS_WITH_AES_128_CBC_SHA",
            "SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA",
            "SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA"};
    socket.setEnabledCipherSuites(ciphers);
    socket.setUseClientMode(true);

    InputStream sslIS = socket.getInputStream();
    OutputStream sslOS = socket.getOutputStream();

    sslOS.write(280);
    sslOS.flush();
    sslIS.read();
}
 
开发者ID:AdoptOpenJDK,项目名称:openjdk-jdk10,代码行数:18,代码来源:UseStrongDHSizes.java

示例5: doSsl

import javax.net.ssl.SSLSocket; //导入方法依赖的package包/类
private SSLSocket doSsl(Socket socket) throws IOException {
  SSLSocket sslSocket = (SSLSocket) sslSocketFactory.createSocket(
      socket, socket.getInetAddress().getHostAddress(), socket.getPort(), true);
  sslSocket.setUseClientMode(false);
  Platform.get().configureTlsExtensions(sslSocket, null,
      Collections.singletonList(Protocol.HTTP_2));
  sslSocket.startHandshake();
  return sslSocket;
}
 
开发者ID:weiwenqiang,项目名称:GitHub,代码行数:10,代码来源:Http2Server.java

示例6: sslNegotiation

import javax.net.ssl.SSLSocket; //导入方法依赖的package包/类
/**
 * SSL/TLS negotiation. Acquires an SSL socket of a control
 * connection and carries out handshake processing.
 * @throws java.io.IOException If server negotiation fails
 */
protected void sslNegotiation() throws IOException {
    plainSocket = _socket_;
    initSslContext();

    SSLSocketFactory ssf = context.getSocketFactory();
    String ip = _socket_.getInetAddress().getHostAddress();
    int port = _socket_.getPort();
    SSLSocket socket =
        (SSLSocket) ssf.createSocket(_socket_, ip, port, false);
    socket.setEnableSessionCreation(isCreation);
    socket.setUseClientMode(isClientMode);
    // server mode
    if (!isClientMode) {
        socket.setNeedClientAuth(isNeedClientAuth);
        socket.setWantClientAuth(isWantClientAuth);
    }

    if (protocols != null) {
        socket.setEnabledProtocols(protocols);
    }
    if (suites != null) {
        socket.setEnabledCipherSuites(suites);
    }
    socket.startHandshake();

    _socket_ = socket;
    _controlInput_ = new BufferedReader(new InputStreamReader(
            socket .getInputStream(), getControlEncoding()));
    _controlOutput_ = new BufferedWriter(new OutputStreamWriter(
            socket.getOutputStream(), getControlEncoding()));
}
 
开发者ID:archos-sa,项目名称:aos-FileCoreLibrary,代码行数:37,代码来源:FTPSClient.java

示例7: _openDataConnection_

import javax.net.ssl.SSLSocket; //导入方法依赖的package包/类
/**
 * Returns a socket of the data connection.
 * Wrapped as an {@link javax.net.ssl.SSLSocket}, which carries out handshake processing.
 * @param command The textual representation of the FTP command to send.
 * @param arg The arguments to the FTP command.
 * If this parameter is set to null, then the command is sent with
 * no arguments.
 * @return corresponding to the established data connection.
 * Null is returned if an FTP protocol error is reported at any point
 * during the establishment and initialization of the connection.
 * @throws java.io.IOException If there is any problem with the connection.
 * @see org.apache.commons.net.ftp.FTPClient#_openDataConnection_(int, String)
 * @since 3.2
 */
@Override
protected Socket _openDataConnection_(String command, String arg)
        throws IOException {
    Socket socket = super._openDataConnection_(command, arg);
    _prepareDataSocket_(socket);
    if (socket instanceof SSLSocket) {
        SSLSocket sslSocket = (SSLSocket)socket;

        sslSocket.setUseClientMode(isClientMode);
        sslSocket.setEnableSessionCreation(isCreation);

        // server mode
        if (!isClientMode) {
            sslSocket.setNeedClientAuth(isNeedClientAuth);
            sslSocket.setWantClientAuth(isWantClientAuth);
        }
        if (suites != null) {
            sslSocket.setEnabledCipherSuites(suites);
        }
        if (protocols != null) {
            sslSocket.setEnabledProtocols(protocols);
        }
        sslSocket.startHandshake();
    }

    return socket;
}
 
开发者ID:archos-sa,项目名称:aos-FileCoreLibrary,代码行数:42,代码来源:FTPSClient.java

示例8: sslNegotiation

import javax.net.ssl.SSLSocket; //导入方法依赖的package包/类
@Override
protected void sslNegotiation() throws IOException {
    if(protocol.isSecure()) {
        final SSLSocket socket = (SSLSocket) sslSocketFactory.createSocket(_socket_,
                _socket_.getInetAddress().getHostAddress(), _socket_.getPort(), false);
        socket.setEnableSessionCreation(true);
        socket.setUseClientMode(true);
        socket.startHandshake();
        _socket_ = socket;
        _controlInput_ = new BufferedReader(new InputStreamReader(
                socket.getInputStream(), getControlEncoding()));
        _controlOutput_ = new BufferedWriter(new OutputStreamWriter(
                socket.getOutputStream(), getControlEncoding()));
    }
}
 
开发者ID:iterate-ch,项目名称:cyberduck,代码行数:16,代码来源:FTPClient.java

示例9: createDataSocket

import javax.net.ssl.SSLSocket; //导入方法依赖的package包/类
public Socket createDataSocket() throws IOException {
    if(passive && passiveServer != null) {
        return passiveServer.accept();
    } else if(secureData) {
        SSLSocketFactory factory = con.getServer().getSSLContext().getSocketFactory();
        SSLSocket socket = (SSLSocket)factory.createSocket(activeHost, activePort);
        socket.setUseClientMode(false);
        return socket;
    } else {
        return new Socket(activeHost, activePort);
    }
}
 
开发者ID:Guichaguri,项目名称:MinimalFTP,代码行数:13,代码来源:ConnectionHandler.java

示例10: runClientApplication

import javax.net.ssl.SSLSocket; //导入方法依赖的package包/类
@Override
protected void runClientApplication(SSLSocket socket) throws Exception {
    String ciphers[] = {
            "SSL_DH_anon_EXPORT_WITH_DES40_CBC_SHA",
            "SSL_DH_anon_EXPORT_WITH_RC4_40_MD5" };
    socket.setEnabledCipherSuites(ciphers);
    socket.setUseClientMode(true);

    InputStream sslIS = socket.getInputStream();
    OutputStream sslOS = socket.getOutputStream();

    sslOS.write(280);
    sslOS.flush();
    sslIS.read();
}
 
开发者ID:AdoptOpenJDK,项目名称:openjdk-jdk10,代码行数:16,代码来源:AnonCipherWithWantClientAuth.java

示例11: wrapXmppTalk

import javax.net.ssl.SSLSocket; //导入方法依赖的package包/类
public static void wrapXmppTalk(OpenFireTalk xmppTalk) {
	try {
		Socket socket = xmppTalk.getSocket();
		SSLContext sslContext = getSslContext();
		InetSocketAddress remoteAddress = (InetSocketAddress) socket.getRemoteSocketAddress();
		SSLSocketFactory sf = sslContext.getSocketFactory();
		SSLSocket s = (SSLSocket) (sf.createSocket(socket, remoteAddress.getHostName(), socket.getPort(), true));
		s.setUseClientMode(true);
		s.startHandshake();
		xmppTalk.setSocket(s);
	} catch (Exception e) {
		e.printStackTrace();
	}
}
 
开发者ID:SoapboxRaceWorld,项目名称:soapbox-race-core,代码行数:15,代码来源:TlsWrapper.java

示例12: createSSLClientSocket

import javax.net.ssl.SSLSocket; //导入方法依赖的package包/类
/**
 * Used for peering tls connection.
 * Prepare socket for handshake negotiation.
 * 
 * @param socket
 * @return
 * @throws IOException
 */
public static SSLSocket createSSLClientSocket(Socket socket) throws IOException{
	//autoClose - close the underlying socket when this socket is closed.
	SSLSocket sslsocket = (SSLSocket) sslContext.getSocketFactory().createSocket(socket, null, true);
       sslsocket.setUseClientMode(true);//client
       sslsocket.setNeedClientAuth(true);
       return sslsocket;
}
 
开发者ID:Anoncheg1,项目名称:dibd,代码行数:16,代码来源:TLS.java


注:本文中的javax.net.ssl.SSLSocket.setUseClientMode方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。