java - 是否可以部分生成 CSR?直到在一台计算机上散列并在其他地方使用私钥签名的步骤?
问题描述
我正在使用充气城堡库来生成证书签名请求,但我使用的不是它们提供的密钥对生成器功能,而是我生成的知道模数和指数的公钥。现在我只想对详细信息进行哈希处理,然后发送到另一台具有私钥对其进行签名的服务器。私钥不会离开该服务器。是否可以在充气城堡或任何其他图书馆这样做?我已经在命令中检查了充气城堡哈希和 CSR 签名,是否可以将这两个命令分开?
解决方案
一般来说,不,至少在没有黑客攻击的情况下不会。
原则上当然可以这样做。例如,您可以简单地使用以下方式发送结构CertificationRequestInfo
:
这基本上是没有签名的 CSR。然后,您可以从 Bouncy Castle 解除签名程序并实施该部分。但是,这不是一个已经标准化为单独使用的结构,因此默认情况下软件不知道如何处理它。通常,CSR 总是在私钥所在的位置生成。
当然还有其他选择(或黑客):
- 在私钥位置实现 CSR 创建服务;
- 使用临时密钥对请求进行签名,替换 CSR 的公钥并在私钥所在的位置重新签名请求。
当然,这些选项的问题是您仍然需要在私钥的位置做大量工作,这可能使它们几乎无用。
推荐阅读
- django - 如何在 django 中编辑管理员用户权限模板的设计?
- ios - 使用 React Native 构建时,出现与 @react-native-firebase / 消息相关的错误
- python - 查找今天日期和输入日期之间的日期差异
- json - 在 Xamarin 表单应用程序中设置 Newtonsoft.Json 选项
- python - 在 Python 中的两个列表中查找几乎相同的点
- c# - 使用 C# 和类 XLWorkbook 在 Excel 中的单个单元格中将文本拆分为多行
- python-3.x - Python多处理拒绝执行代码并立即退出
- algorithm - 二分查找,什么时候用right = mid - 1,什么时候用right = mid?
- mediawiki - 在 mediawiki 中,无法插入正文长度超过指定值的页面,为什么?
- javascript - 如何在发送包含要设置的标头和来自后端(Node.js)的重定向 url 的响应时为客户端(浏览器)设置 HTTP 标头?