将现有私钥导入 BKS Keystore

2024-01-14

我有一个由 openssl 按以下方式生成的密钥对

openssl genrsa -out private_key.pem 2048

我将其转换为 DER 格式如下

openssl pkcs8 -topk8 -inform PEM -outform DER -in private_key.pem \ -out private_key.der -nocrypt

现在我想将它导入到 android 中,但我不想导入它,因为我想在密钥库中保护它。

所以我的问题是如何使用 keytool 将现有密钥导入 BKS 密钥库?

Thanks


A Private Key总是伴随着Certificate Chain(包括相应的证书)在密钥库中。您不能仅将其本身添加到 KeyStore 中。

一旦你生成了Private Key,您可以生成一个自签名证书,然后您可以使用此证书将您的私钥连同证书一起添加到 KeyStore。

生成自签名证书

openssl req -new -x509 -key [PRIVATE_KEY_FILE] -out [SELF_SIGNED_CERTIFICATE_FILE] -天 3650 -主题 /[YOUR_SUBJECT_DN]

创建包含私钥和证书的 PKCS#12 文件

openssl pkcs12 -export -inkey [PRIVATE_KEY_FILE] -in [CERTIFICATE_FILE] -out [PKCS12_FILE.p12] -name mykey

最后,将 PKCS12 KeyStore 转换为您想要的BKS店铺类型

keytool -importkeystore -srckeystore [ABOVE_P12_FILE] -srcstorepass [ABOVE_P12_PASSWORD] -srcstoretype pkcs12 -destkeystore [NEW_P12_FILE.p12] -deststorepass [NEW_P12_PASSWORD] -deststoretype bks -providerclass org.bouncycastle.jce.provider.BouncyCastleProvider -providerpath [ABSOLUTE_PATH_TO__bcprov-jdk15on-152.jar]

如果您需要 Java 默认存储类型JKS,您可以删除-providerclass and -providerpath最后一个命令的参数。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将现有私钥导入 BKS Keystore 的相关文章

  • 迁移到 java 17 后有关“每个进程的内存映射”和 JVM 崩溃的 GC 警告

    我们正在将 java 8 应用程序迁移到 java 17 并将 GC 从G1GC to ZGC 我们的应用程序作为容器运行 这两个基础映像之间的唯一区别是 java 的版本 例如对于 java 17 版本 FROM ubuntu 20 04
  • Android 启动器快捷方式

    我制作了一个简单的打卡 打卡时钟应用程序 我想向用户添加在主屏幕上创建快捷方式的选项 该快捷方式将切换应用程序的状态 超时 超时 但我根本不希望此快捷方式在屏幕上打开应用程序 这是我的 setupShortcut private void
  • 如何在C(Linux)中的while循环中准确地睡眠?

    在 C 代码 Linux 操作系统 中 我需要在 while 循环内准确地休眠 比如说 10000 微秒 1000 次 我尝试过usleep nanosleep select pselect和其他一些方法 但没有成功 一旦大约 50 次 它
  • 如何将文件透明地传输到浏览器?

    受控环境 IE8 IIS 7 ColdFusion 当从 IE 发出指向媒体文件 例如 mp3 mpeg 等 的 GET 请求时 浏览器将启动关联的应用程序 Window Media Player 我猜测 IIS 提供文件的方式允许应用程序
  • 检查 protobuf 消息 - 如何按名称获取字段值?

    我似乎无法找到一种方法来验证 protobuf 消息中字段的值 而无需显式调用其 getter 我看到周围的例子使用Descriptors FieldDescriptor实例到达消息映射内部 但它们要么基于迭代器 要么由字段号驱动 一旦我有
  • 尝试使用 Ruby Java Bridge (RJB) gem 时出现错误“无法创建 Java VM”

    我正在尝试实现 Ruby Java Bridge RJB gem 来与 JVM 通信 以便我可以运行 Open NLP gem 我在 Windows 8 上安装并运行了 Java 所有迹象 至少我所知道的 都表明 Java 已安装并可运行
  • 如何创建像谷歌位置历史记录一样的Android时间轴视图?

    我想设计像谷歌位置历史这样的用户界面 我必须为我正在使用的应用程序复制此 UIRecyclerView 每行都是水平的LinearLayout其中包含右侧的图标 线条和视图 该线是一个FrameLayout具有圆形背景和半透明圆圈Views
  • 将 Long 转换为 DateTime 从 C# 日期到 Java 日期

    我一直尝试用Java读取二进制文件 而二进制文件是用C 编写的 其中一些数据包含日期时间数据 当 DateTime 数据写入文件 以二进制形式 时 它使用DateTime ToBinary on C 为了读取 DateTime 数据 它将首
  • Android 设备上的静默安装

    我已经接受了一段时间了 在 Android 上静默安装应用程序是不可能的 也就是说 让程序安装捆绑为 APK 的应用程序 而不提供标准操作系统安装提示并完成应用程序安装程序活动 但现在我已经拿到了 Appbrain 快速网络安装程序的副本
  • Java中未绑定通配符泛型的用途和要点是什么?

    我不明白未绑定通配符泛型有什么用 具有上限的绑定通配符泛型 stuff for Object item stuff System out println item Since PrintStream println 可以处理所有引用类型 通
  • 使用 Flyway 和 Hibernate 的 hbm2ddl 在应用程序的生命周期中管理数据库模式

    我正在开发 Spring Hibernate MySql 应用程序 该应用程序尚未投入生产 我目前使用 Hibernatehbm2ddl该功能对于管理域上的更改非常方便 我也打算用Flyway用于数据库迁移 在未来的某个时候 该应用程序将首
  • 应用程序关闭时的倒计时问题

    我制作了一个 CountDownTimer 代码 我希望 CountDownTimer 在完成时重新启动 即使应用程序已关闭 但它仅在应用程序正在运行或重新启动应用程序时重新启动 因此 如果我在倒计时为 00 10 分钟 秒 时关闭应用程序
  • Tomcat 6找不到mysql驱动

    这里有一个类似的问题 但关于类路径 ClassNotFoundException com mysql jdbc Driver https stackoverflow com questions 1585811 classnotfoundex
  • 使用 SAX 进行 XML 解析 |如何处理特殊字符?

    我们有一个 JAVA 应用程序 可以从 SAP 系统中提取数据 解析数据并呈现给用户 使用 SAP JCo 连接器提取数据 最近我们抛出了一个异常 org xml sax SAXParseException 字符引用 是无效的 XML 字符
  • SharedFlow 和 StateFlow 的主要区别

    两者有什么区别共享流 and 状态流 以及如何使用这些MVI建筑学 使用简单更好吗Flow或者这些作为状态和事件 Flow 是冷的 意味着它仅在收集数据时才发出数据 另外Flow不能保存数据 可以把它看成是水在里面流动的管道 Flow中的数
  • Java - 不要用 bufferedwriter 覆盖

    我有一个程序可以将人员添加到数组列表中 我想做的是将这些人也添加到文本文件中 但程序会覆盖第一行 因此这些人会被删除 如何告诉编译器在下一个空闲行写入 import java io import java util import javax
  • 如何修复“sessionFactory”或“hibernateTemplate”是必需的问题

    我正在使用 Spring Boot JPA WEB 和 MYSQL 创建我的 Web 应用程序 它总是说 sessionFactory or hibernateTemplate是必需的 我该如何修复它 我已经尝试过的东西 删除了本地 Mav
  • com.jcraft.jsch.JSchException:身份验证失败

    当我从本地磁盘上传文件到远程服务器时 出现这样的异常 com jcraft jsch JSchException Auth fail at org apache tools ant taskdefs optional ssh Scp exe
  • KeyPressed 和 KeyTyped 混淆[重复]

    这个问题在这里已经有答案了 我搜索过之间的区别KeyPressedand KeyTyped事件 但我仍然不清楚 我发现的一件事是 Keypressed 比 KeyTyped 首先被触发 请澄清一下这些事件何时被准确触发 哪个适合用于哪个目的
  • 如何将图像从 Android 应用程序上传到网络服务器的特定文件夹中

    如何将图像从 android 移动到 Web 服务器上的指定文件夹 这是我的安卓代码 package com example bitmaptest import java io ByteArrayOutputStream import ja

随机推荐

  • 如何获取sap.m.table中一行的内容

    所以基本上我的问题是我有一个页面 var page1 new sap m Page title Something enableScrolling true content oTable new sap m Table items colu
  • 阶乘是如何计算的?

    说有一个计算阶乘 n 的函数 阶乘 7 是否为从1到7的n中的每一个创建7个函数对象 并在必要时使用这些值 对于阶乘 8 如阶乘 7 8 这取决于语言和语言实现 在许多函数式语言 例如 Haskell 中 函数保证不会改变任何内容 只是为了
  • 正则表达式有助于从字符串中删除干扰词或停止词

    我想从输入标签 字符串 中删除所有噪音标签 标签以逗号分隔 如果干扰词是大标签的一部分 它将保留 这是我所拥有但不起作用的 string input string This sure about all of our all values
  • Microsoft Graph 登录 - 个人帐户触发“租户中不存在用户帐户”

    我的 Web 应用程序使用 Microsoft Graph API 登录用户并访问他们的日历 我目前在尝试注册 Live Hotmail 帐户时遇到问题 选择 Live Hotmail 帐户后 Microsoft 会将用户发送到包含以下消息
  • Nginx 上的 Flask 应用程序 1 分钟后超时

    我正在尝试通过 uWSGI 在 Nginx 上提供 Flask 应用程序 第一次使用 Nginx for Flask Nginx 配置如下 server listen 80 location include uwsgi params uws
  • 重叠矩形的总面积

    假设我们有以下 4 个矩形 它们都是用x and y它们所有顶点的坐标 从左上角开始按顺时针方向 所有矩形的边均平行于 x 轴和 y 轴 Note 我愿意使用任何现有的库 如果存在 蓝色矩形示例 20 50 40 50 40 110 20
  • iOS 6 - 以编程方式触发 Unwind Segue 不执行任何操作

    在我的应用程序启动时 它使用 segue 以编程方式显示 LoginViewController 视图控制器以模态方式呈现 过渡设置为交叉溶解 身份验证成功后 我想通过以编程方式触发展开转场来关闭登录视图 所以我将其添加到我的头文件中 IB
  • 在 xml spring Batch 应用程序中复制标头标签

    我在用spring batch in spring boot应用 Spring Boot 版本是2 3 3 RELEASE 我想要达到的目标 我必须read a xml file包含数千个Transactions with header t
  • Yii2:活动记录列别名

    我正在使用 Yii2 框架和高级模板 我的控制器文件中的列别名出现问题 这是我的代码 models new ActiveDataProvider query gt User find gt select member gt fullname
  • 使用 Python 删除 json 文件中的新换行符。

    我正在从 firebase 下载数据 并将其导出为 json 之后 我尝试将其上传到bigquery 但我需要删除新的换行符以供大查询接受它 ConnectionTime 730669 644775033 objectId eHFvTUNq
  • Flex-direction:column 不允许子项在 Firefox 中滚动[重复]

    这个问题在这里已经有答案了 我正在对元素使用显示柔性 outer 应根据内容调整其高度 但不得超过特定高度 例如100px 一旦超过高度 我希望里面的内容开始垂直滚动 此行为在 Chrome 上按预期工作 但在 Firefox 中内容包装器
  • 带有服务帐户令牌的 Kubernetes kubeconfig

    我有一个调用的脚本kubectl server server certificate authority ca token token get pod all namespaces簇外 其中 token来自服务帐户my sa 在命名空间中m
  • 使用 Android APK 2.2 打开硬件加速(如果可用)(例如 Android 3+)

    我为Android 3 0开发了一个应用程序 它运行得很好 但客户端坚持兼容2 2设备 禁用硬件加速 使用 Android 兼容包 NIO 向后移植支持 对于任务和执行程序 以及 View 方法的一些重新实现 我能够将我的应用程序移植到 A
  • 如何使用其他端口在 Visual Studio Code 中离线调试无服务器?

    我有两个无服务器离线 服务器 我需要同时在本地运行 所以我需要更改其中一台服务器的端口 我使用 Visual Studio Code 调试器运行服务器 服务器的配置位于 launch json 文件中 如何更改无服务器离线应用程序的端口 以
  • android.app.Application 子类,onTerminate 未被调用

    从文档中android app Application 那些需要维护全局应用程序状态的基类 我正在使用自己的子类来维护一个用于查询服务器的对象 还来自文档 onTerminate 当应用程序停止时调用 然而 onTerminate 在我的班
  • Entity Framework Core 2.0 删除记录而不是更新记录

    我认为这可能是一个错误 但我认为我可能缺少一些可以解释该行为的东西 任何帮助 将不胜感激 Technical details EF Core version Microsoft EntityFrameworkCore 2 0 1 Datab
  • 工厂女孩什么时候在数据库中创建对象?

    我正在尝试使用模拟会话FactoryGirl shoulda 它可以与固定装置配合使用 但我在使用工厂时遇到问题 我有以下工厂 用户登录名和电子邮件都有unique验证 Factory define user do u u login qu
  • 将多种内容类型发布到 Web api

    我有一个 Web api 我想发布一个图像文件 一些数据 以便在服务器收到它时正确处理它 调用代码看起来像这样 using var client new HttpClient using var content new MultipartF
  • java nio 否定 glob 模式

    fileSystem getPathMatcher glob pattern matches path getFileName 我想匹配所有不匹配 ts 的内容 java 中 glob 的语法是什么 在有人建议我使用正则表达式之前 我需要使
  • 将现有私钥导入 BKS Keystore

    我有一个由 openssl 按以下方式生成的密钥对 openssl genrsa out private key pem 2048 我将其转换为 DER 格式如下 openssl pkcs8 topk8 inform PEM outform