草庐IT

java - 如何在 Java 中使用 TLSV1 或 SSLV3 进行第一次握手(Client Hello)?

当我执行以下代码时,为什么第一次握手是SSLv2,而不是TLSv1或SSLv3?如何在Java中使用TLSV1或SSLV3进行第一次握手?Stringhost="www.google.com";Stringurl="/adsense/?sourceid=aso&subid=ZH_CN-ET-AS-ADSBY6&medium=link&hl=zh_CN";SSLContextctx=SSLContext.getInstance("TLS");ctx.init(newKeyManager[0],newTrustManager[]{newDefaultTrustManager()},newS

java - Keytool 创建受信任的自签名证书

我正在尝试使用(java)keytool创建自签名证书,但是当我尝试使用它时出现以下异常(完整异常请参见底部)。...Causedby:sun.security.validator.ValidatorException:Notrustedcertificatefoundatsun.security.validator.SimpleValidator.buildTrustedChain(SimpleValidator.java:304)atsun.security.validator.SimpleValidator.engineValidate(SimpleValidator.java:

java - 无法从 Weblogic 访问 HTTPS

我在Weblogic访问HTTPS服务器时遇到问题,我可以访问其他HTTPSurl,例如google或microsoft。尝试连接到url的代码是:URLurl=newURL("https://myserver.com");HttpURLConnectionconnection=(HttpURLConnection)url.openConnection();connection.setRequestMethod("GET");connection.setRequestProperty("User-Agent","Mozilla/5.0");//failshereresponseCode

java - 为什么在 Java 中创建 SSL 套接字时会出现错误 "Cannot store non-PrivateKeys"?

我正在使用较旧的IBMiSeries(IBM-i、i5OS、AS/400等),在O/S版本V5R3M0上使用Java5JVM(Classic,而非ITJJ9)。简而言之,这里是场景:我使用Portecle1.7创建了一个JKS类型的keystore(注意:我曾尝试将我的keystore转换为JCEKS,但由于格式不受支持而被拒绝,因此JKS似乎是iSeries机器的唯一选择(至少是我使用的版本)。然后我创建了一个key对和CSR,并将CSR发送给Thawte进行签名。我使用PKCS#7格式从Thawte成功导入了签名证书以导入整个证书链,其中包括我的证书、Thawte中介和Thawte

java - 如何为 Jetty SSL 设置密码套件的顺序?

这个问题在这里已经有了答案:Howtospecifyserver-preferredorderofSSLciphersuitesforJava?(2个答案)关闭8年前。为了服务我的应用程序,我使用Apache或嵌入式Jetty。对于Jetty,我选择了一些我想使用的密码套装并使用setIncludeCipherSuites(String[]names)进行设置。在Jetty文档(http://wiki.eclipse.org/Jetty/Howto/CipherSuites)中,我发现:请注意,您必须按优先顺序指定密码套件。但是https://www.ssllabs.com/sslte

ssl - Java SSL - InstallCert 识别证书,但仍然出现 "unable to find valid certification path"错误?

我以为我遇到了和其他人一样的问题,我一直在经历无数类似的问题和潜在的解决方案,但没有运气。我使用的信任库是cacerts,位于Java1.6.0JRE的lib/security中(build1.6.0_20-b02...这可能是问题的根源吗?)。我也尝试过jssecacerts。使用InstallCert(根据发布的其他类似问题),我可以看到我的证书实际上已安装且有效(并且我已将其删除、重新导入等以确保我看到正确的数据):javaInstallCertLoadingKeyStorejssecacerts...Openingconnectionto:443...StartingSSLha

java - Kafka Java 消费者被标记为组死亡

我正在使用Java消费者来消费来自主题(kafka版本0.10.0.1)的消息,如果我在docker容器之外运行它们,它会正常工作。但是,当我在docker容器中执行它们时,这些组将被标记为已死亡并显示消息Markingthecoordinatorlocal.kafka.com:9092(id:2147483647rack:null)deadforgroupmy-group我的消费者配置如下:-metadata.max.age.ms=300000partition.assignment.strategy=[org.apache.kafka.clients.consumer.RangeA

java - 从私钥和 cer 文件创建 SSLContext

我有两个文件:mycer.cermykey.key我需要创建一个SslContext以使用Java通过SSL连接到另一台服务器。我试图找出如何直接从这些文件创建SslContext对象。这篇文章可能重复,但我试图通过创建SslContext的示例找到清晰的解释,但没有找到明确的内容。 最佳答案 获取p12格式的证书,据我所知你不能使用证书文件,有一些实用程序可以做到这一点(比如openssl)或者源代码(从你生成下载证书的地方)可以给你一个p12格式。opensslpkcs12-export-inmycer.crt-inkeymyk

java - 如何动态更新信任库?

我目前已经在我的SpringBoot应用程序中实现了双向TLS,我正在以编程方式进行,如下所示:@BeanpublicServletWebServerFactoryservContainer(){TomcatServletWebServerFactorytomcat=newTomcatServletWebServerFactory();TomcatConnectorCustomizertomcatConnectorCustomizer=newTomcatConnectorCustomizer(){@Overridepublicvoidcustomize(Connectorconnect

java - 访问报告的直接 URL - JasperServer

我最近一直在使用JasperServer上的JasperReports。阅读他们的文档后,他们说JasperServer存储库上的任何报告都可以通过直接URL访问。通过URL(GET)中的一对名称值对,例如报告名称、输出、用户名和密码,可以检索特定的报告。我的问题是,如何允许人们通过直接URL访问报告而不让人们看到地址栏中的所有信息(尤其是用户名和密码)?好像这样很不安全。JasperSoft有一些聪明人,所以我一定漏掉了什么。我如何在不显示所有参数供其他人删除和填写的情况下仍然使用直接URL?你们中的一些人可能会回答说只是将表单提交更改为POST,但我什至不知道从哪里开始更改Jasp