java - 从海绵城堡库 (OpenPGP) 在 android studio 中创建装甲 ECC 公钥/私钥
问题描述
我的目标是使用海绵城堡库从中创建椭圆曲线密钥对,然后对其进行装甲。
X9ECParameters curve = ECNamedCurveTable.getByName("secp256k1");
ECDomainParameters domainParams = new ECDomainParameters(curve.getCurve(),curve.getG(), curve.getN(), curve.getN(), curve.getSeed());
SecureRandom secureRandom = new SecureRandom();
ECKeyGenerationParameters keyParams = new ECKeyGenerationParameters(domainParams, secureRandom);
ECKeyPairGenerator generator = new ECKeyPairGenerator();
generator.init(keyParams);
AsymmetricCipherKeyPair kp= generator.generateKeyPair();
char[] passPhrase = "hello".toCharArray();
PGPKeyPair ecKeyPair = new BcPGPKeyPair(PGPPublicKey.ECDH, kp, new Date());
PGPKeyRingGenerator keyRingGen = new PGPKeyRingGenerator
(PGPSignature.DEFAULT_CERTIFICATION,
ecKeyPair,
"umaimaahmed1@gmail.com", null, null,
null, new BcPGPContentSignerBuilder(PGPPublicKey.EC,
HashAlgorithmTags.SHA256),
new BcPBESecretKeyEncryptorBuilder(PGPEncryptedData.AES_256).build(passPhrase));
在此之后,执行解析的装甲密钥环生成。
它适用于 RSA,但对于 ECC 实现,我在 getInstance 中遇到非法对象的异常:org.spongycastle.asn1.x9.X962Parameters
当它到达线路PGPKeyPair ecKeyPair = new BcPGPKeyPair(PGPPublicKey.ECDH, kp, new Date());
我在互联网上找不到任何东西来从 ECC 密钥对生成 PGP 密钥环。
解决方案
推荐阅读
- r - R正则表达式创建新的分类变量
- php - 插入 SQL 时保留 JSON 数据的顺序
- reactjs - 在地图函数中更新对象的状态
- excel - VBA - 运行一个excel宏需要永远
- python - 透明像素在 PIL 中被粘贴为黑色
- go - 使用 go build(或 go install)进行增量构建不起作用
- prometheus - Prometheus:如何使用 probe_http_duration_seconds 从黑盒导出器创建 SLI/SLO?
- google-app-engine - 气流 XCom 到 Python 变量
- codeigniter - 使用 codeigniter 显示位于不同行的帖子的主图像
- pdf - 鹰嘴豆泥食谱中的导入字体