Skip to content

BouncyCastle (BC) Provider ​

🔐 Java 加密库,r0capture 用它创建 PKCS12 KeyStore。

概述 ​

BouncyCastle 是开源 Java 加密 Provider,Android 系统自带。r0capture 在 storeP12 里用它:

javascript
var ks = Java.use("java.security.KeyStore").getInstance("PKCS12", "BC");

getInstance("PKCS12", "BC"):用 BouncyCastle provider 创建 PKCS12 类型的 KeyStore。

为什么用 BC ​

维度BC默认 provider
PKCS12 支持完整部分 Android 版本不全
可用性Android 自带—
稳定性跨版本一致各 ROM 实现不一

BC 在 Android 上稳定可用,且 PKCS12 支持完整,适合导出客户端证书。

KeyStore 操作 ​

javascript
ks.load(null, null);  // 初始化空 KeyStore
ks.setKeyEntry("client", pri, 密码char[], 证书链);  // 存入私钥+证书
ks.store(out, 密码char[]);  // 写入文件

详见 storeP12。

相关文档 ​

基于 VitePress 构建 · 教学用途