相关疑难解决方法(0)

如何从byte []数组中恢复RSA公钥?

我想知道是否有可能恢复我之前转换为字节数组的RSA公钥.

byte[] keyBytes = publicKey.getEncoded();
Run Code Online (Sandbox Code Playgroud)

谢谢您的帮助.

java cryptography rsa

46
推荐指数
2
解决办法
4万
查看次数

从ECPrivateKey生成ECPublicKey

我正在尝试使用私钥和已知曲线生成公钥.以下是我的代码:

// Generate Keys
ECGenParameterSpec ecGenSpec = new ECGenParameterSpec("secp256r1");
KeyPairGenerator keyPairGenerator = KeyPairGenerator.getInstance("ECDSA", "BC");
keyPairGenerator.initialize(ecGenSpec, new SecureRandom());
java.security.KeyPair pair = keyPairGenerator.generateKeyPair();
ECPrivateKey privateKey = (ECPrivateKey) pair.getPrivate();
ECPublicKey publicKeyExpected = (ECPublicKey) pair.getPublic();

// Expected public key
System.out.print("Expected Public Key: " +
        BaseEncoding.base64Url().encode(publicKeyExpected.getEncoded()));

// Generate public key from private key
X9ECParameters ecp = SECNamedCurves.getByName("secp256r1");
ECDomainParameters domainParams = new ECDomainParameters(ecp.getCurve(),
        ecp.getG(), ecp.getN(), ecp.getH(),
        ecp.getSeed());
ECPoint Q = domainParams.getG().multiply(privateKey.getS()); // is this correct?
KeyFactory kf = KeyFactory.getInstance("ECDSA", "BC");
ECPublicKey publicKeyGenerated =
        (ECPublicKey) kf.generatePublic(new X509EncodedKeySpec(Q.getEncoded(false))); …
Run Code Online (Sandbox Code Playgroud)

java security cryptography bouncycastle public-key

2
推荐指数
1
解决办法
2273
查看次数

标签 统计

cryptography ×2

java ×2

bouncycastle ×1

public-key ×1

rsa ×1

security ×1