问题标签 [jsse]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 配置 Oracle JDK 以使用 IBM JCE/JSSE 提供程序来实现 FIPS 合规性
我想将 Oracle JDK 配置为使用 IBM 的符合 FIPS 的 JCE/JSSE 安全提供程序。我需要哪些 JAR 文件以及它们应该安装在哪里?文件中的提供者列表应该是什么java.security
样的?
java - 为什么 java 同时具有 cacerts 和 jssecacerts 文件?
我对cacerts
和jssecacerts
文件之间的差异感到非常困惑。
我知道默认情况下java会先查找jssecacerts
文件,然后再查找cacerts
文件。
但是jssecacerts
文件的意义何在?
我的理解是,如果需要使用新的信任库,cacerts
则应制作一份副本,并将所有新的受信任 CA 添加到该副本中。然后系统属性cacerts
应引用(带有新 CA)的副本。-Djavax.net.ssl.trustStore
这样,在该机器上运行的其他 java 应用程序就不会意外地信任非默认 CA。
android - 将密码套件添加到 Android/Harmony Jsse
因此,Harmony JSSE 没有我需要连接到我的服务器的密码套件。它不支持 TLS_ECDHE_ECDSA_WITH_AES_256_SHA。是否可以(如果可以,如何)添加对该套件的支持?我有 Harmony JSSE 的源代码,我可以添加该密码套件的代码吗?有没有更简单的添加方法?
谢谢!
android - 如何在 Android 中引用 jsse 类?
我正在使用带有 Android SDK 插件的 Eclipse Helios 并为 Android 2.2 编写
我正在尝试编写一个应用程序来加密发送到 Web 服务的通信,但出现错误
它失败了
控制台出现错误...
java.lang.ClassNotFoundException:com.sun.net.ssl.internal.ssl.JSA_RSAPublicKey
这是 jsse.jar 文件中的一个类。如果我尝试在构建路径中包含 jsse.jar 文件,我会收到警告错误并被编译器抱怨。
“处理“javax/net/ServerSocketFactory.class”的问题:“
如何正确引用这个库或引用核心 android 的库?
仅供参考,这可以作为 Java 应用程序使用,但不能在 Android 模块中使用。
java - 在 Java 中混淆 SSL 客户端 Hello v2 消息
我目前正在开发一个客户端/服务器 TLS 工具,该工具需要我们通过防火墙进行连接。由于我们无法控制的原因,我们只被授予传出 TCP 连接。
问题是我们客户端的防火墙阻止了客户端 Hello v2 消息(可能还有整个 SSL 握手)。
有没有办法以某种方式混淆流? 我正在考虑尝试使用压缩来使防火墙无法读取流。(也许使用 JDK7 的 GzipOutputStream 现在允许同步刷新)
我不是 SSL 专家,但在我看来应该可以翻译整个流,这应该使防火墙无法获取连接并阻止它。
据我所知,有几种(两种?)方法可以解决这个问题:
- 覆盖默认实现
- 实现 SSLServerSocketFactory
第一个选项对我来说不起作用,因为我找不到 com.sun.net.ssl.internal.ssl.SSLServerSocketFactoryImpl 的源代码,这是默认实现。我确实浏览了它的 openJDK 源代码,但即使在那里,源似乎也丢失了。
实现 SSLServerSocketFactory 超出了我的能力范围。正如我所说,我不是 SSL 专家。
请注意,该应用程序确实可以通过其他不那么激进的防火墙/防火墙规则正常工作。
java - 我选择哪种 SSL 实现?
我目前正在测试 SSL 的水域,并且是 SSL 的新手。作为我研究的一部分,我在 Java 领域遇到了 SSL 的两种不同实现。
首先说一下我的需求,很简单,我只需要一个流程来使用 https 将数据发布到 URL 中。
在这两种解决方案中,第一种是纯Java实现(仅使用核心Java类),另一种使用Apache HTTPClient来做http。
最初,作为我测试的一部分,我会得到臭名昭著的“无法找到请求目标的有效证书路径”异常,我认为当证书(从服务器接收)不是 Java 密钥存储的一部分时会发生这种情况。将证书添加到 Java 密钥库后,应用程序在这两种情况下都可以正常工作。然而,在我使用 HTTPClient 的过程中,我注意到了 SSLSocketFactory 的使用。
当我使用以下代码测试 HttpClient 时,
它工作得很好,所以我不确定 SSLSocketFactory 实现的用途是什么?当我们想要自动将证书添加到密钥库时,我最初认为这很有用。我的分析正确吗?
如果我的分析是正确的,哪个实现更好?
- 手动安装证书会更好吗?这种方法有什么缺点?证书会过期吗?如果是这样,我是否必须再次安装新证书?
- 或者我应该使用 SSLSocketFactory 自动化整个密钥存储添加功能吗?
您的意见将不胜感激。谢谢你。
java - 多个套接字 - 其中一个导致 SSLException - 如何在 jsse.jar 中调试跟踪 openSocket
我在一个企业应用程序中遇到了一个问题,该应用程序在特定场景中打开了多个套接字。我想从 jsse.jar 中 SSLSocketFactory 中的 openSocket 方法追溯——但底层 SSL 内部类没有可用的源代码。
(我知道还有另一个问题询问 jsse.jar 的来源,但没有给出确凿的答案——我不是在问这个问题。)
我的问题是 - 当您无权访问源代码时如何进行调试跟踪?(当然不是基于 JAD 的方法)。
java - 如何从 RSA Privatekey.pem 文件中获取 java.security.PrivateKey 对象?
我有一个 RSA 私钥文件 (OCkey.pem)。使用 java 我必须从这个文件中获取私钥。此密钥是使用以下 openssl 命令生成的。注意:我无法更改下面这个 openssl 命令的任何内容。
证书如下所示。
///////////////////////////////////////// /////////
bash-3.00$ less OCkey.pem
-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,EA1DBF8D142621BFBYyZuqyqq9+L0UT8UxwkDHX7P7YxpKugTXE8NCLQWhdS3EksMsv4xNQsZSVrJxE3
Ft9veWuk+PlFVQG2utZlWxTYsUVIJg4KF7EgCbyPbN1cyjsi9FMfmlPXQyCJ72rd
...
...
cBlG80PT4t27h01gcCFRCBGHxiidh5LAATkApZMSfe6BBv4hYjkCmg==
-----END RSA PRIVATE KEY-----
///////////////////// //////////////////////////////////
以下是我尝试过的
但得到
“java.security.spec.InvalidKeySpecException:java.security.InvalidKeyException:无效的密钥格式”
请帮忙。
java - 如何通过java确保使用哪个私钥创建服务器证书
客户已使用下面的 openssl 命令创建了密钥和证书
所以他们给了我证书(OCcert.pem)和私钥(OCkey.pem)。
如何确保 OCcert.pem 是使用 Java 通过 OCkey.pem 创建的?
注意:我不能要求客户更改 ssl 命令。
请帮忙。
jce - 在哪里下载 SunPKCS11Provider
我正在尝试在本文之后访问 smardCard,但我不知道在哪里可以找到带有 SunPKCS11Provider 的 jar。在 Oracle 文档中,他们说它是自 1.5 以来的标准。这是编译器抱怨找不到 SunPKCS11 的块: