草庐IT

SSL_CTX_set_options

全部标签

java - java可以连接wildcard ssl吗

我们希望购买通配符SSL证书,因为我们有很多子域。但是我不知道Java是否信任通配符证书。当人们通过SSL连接到我们的API时,我们不足以强制与我们通信的所有第三方将我们的SSL证书添加到他们的本地信任库中。目前,我面临着从Java可信颁发者处购买通配符证书或为每个子域购买多个证书的两难选择。其他语言也有信任库吗?如果是这样,有人知道通配符证书是否也适用于它们。 最佳答案 Sun的JSSE中的默认实现不支持通配符。您需要编写自己的X509TrustManager来处理通配符。但是,Java从Java5开始支持SAN(SubjectA

java - 将 Set<Object> 转换为 Collection<String>

我有一个Set.我需要一个Collection从它。我可以考虑制作一个for循环来添加和转换所有对象,但这很难看,而且可能也很慢。@OverridepublicCollectionkeys(){//propsisbasedonHashMapSetkeys=newHashSet();for(Objecto:props.keySet()){keys.add((String)o);}returnkeys;}什么是正确的方法? 最佳答案 如果你知道所有Object在HashSet里面是字符串,你可以直接转换它:Collectionset=(

java - Guava Sets.intersection 性能不佳

我今天在生产中遇到了一个奇怪的问题。虽然我喜欢Guava,但我遇到了一个用例,其中Guava的Sets.intersection()表现非常糟糕。我写了一个示例代码:Setcache=newHashSet();for(longi=0;ikeys=newHashSet();for(longi=0;ifoundKeys=newHashSet();for(Longkey:keys){if(cache.contains(key)){foundKeys.add(key);}}System.out.println("Javasearch:"+(System.currentTimeMillis()-

java - 基本 JPA 问题 : "Could not determine type for: java.util.Set"

我刚刚开始在PlayFramework网络应用程序中构建我的JPA架构。我对SQL有一定的了解,但我是JPA新手,在第一个障碍上就被绊倒了。根据Play教程,我假设您只是创建Java类,JPA/Play会自动为您创建模式。所以我想在两个模型类Rankable和Tag之间创建ManyToMany关系:@Entity@Inheritance(strategy=InheritanceType.JOINED)publicclassRankableextendsModel{publicStringname;privateSettags;@ManyToMany()@JoinTable(name="

java - 网络 SSL : how to write a TrustManager

我已经阅读了很多关于设置我的SSL客户端/服务器系统(无HTTP)的资料。我的灵感来自thesecurechatexample和thewebsocketsslserverexample.已经使用命令创建了我的cert.jks文件keytool-genkey-aliasapp-keysize2048-validity36500-keyalgRSA-dname"CN=app"-keypassmysecret-storepassmysecret-keystorecert.jks在安全聊天示例中有这个类:publicclassSecureChatTrustManagerFactoryexten

java - 玩2.1 SSL配置

我是Play的新手,正在为生产配置SSL。我可以使用自签名证书在开发模式下成功运行,但是当我尝试使用签名证书时,初始客户端握手失败并且Play生成以下堆栈跟踪:play-ErrorloadingHTTPSkeystorefromconf/keystore.jksjava.security.NoSuchAlgorithmException:RSAKeyManagerFactorynotavailableatsun.security.jca.GetInstance.getInstance(GetInstance.java:159)~[na:1.7.0_11]atjavax.net.ssl.

SSL-更新别名下的证书之一

我正在尝试通过保持与以前相同的别名来更新服务器端的密钥库证书,而在此别名下,实际上有3个不同的证书,我只想更新其中一个。他们就像:Aliasname:aliasCreationdate:Certificatechainlength:3Certificate[1]:Owner:.........Certificate[2]:...我首先尝试了:keytool-import-trustcacerts-alias-filenew.cer-keystore.jks但要获得例外:keytoolerror:java.lang.Exception:Failedtoestablishchainfromrepl

java - 下载项目依赖时Maven(SSL相关?)抛出IllegalStateException

我正在ARM机器上设置开发环境,使用以下版本的Java和Maven,它们都是通过apt-get安装的:(xenial)craig@localhost:~$mvn-versionApacheMaven3.3.9Mavenhome:/usr/share/mavenJavaversion:1.8.0_91,vendor:OracleCorporationJavahome:/usr/lib/jvm/java-8-openjdk-armhf/jreDefaultlocale:en_US,platformencoding:ANSI_X3.4-1968OSname:"linux",version:"

Openssl生成证书-nginx使用ssl

Openssl生成证书并用nginx使用安装opensslyuminstallopenssl-y创库目录存放证书mkdir/etc/nginx/certcd/etc/nginx/cert配置本地解析cat>>/etc/hosts生成证书方式一:1、生成服务器私钥。opensslgenrsa-outserver.key10242、根据服务器私钥文件生成证书请求文件,这个文件中会包含申请人的一些信息,所以执行下面这行命令过程中需要用户在命令行输入一些用户信息,随便填写,一路回车即可。opensslreq-new-keyserver.key-outserver.csr3、生成CA机构的私钥,命令和生

java - SSL 套接字连接超时

如何在Java中为SSL套接字配置连接超时?对于普通套接字,我可以使用newSocket()简单地创建没有任何目标端点的新套接字实例,然后调用connect(SocketAddressendpoint,inttimeout)方法。使用SSL套接字,我无法创建newSSLSocket()和SSLSocketFactory.getDefault().createSocket()方法,没有端点抛出UnsupportedOperationException和Unconnectedsocketsnotimplemented消息。有没有办法在Java中使用SSL套接字的连接超时,仅使用标准java