到目前为止,我已经在Bouncy Castle的轻量级API中生成了一个ECDHE对。但是我在尝试从byte[]重新创建公钥时遇到了问题。
由于ECPublicKeyParameters对象只有一个getQ()方法,因此我假设只需要这个方法就可以重建密钥。其他参数,例如使用的曲线(P-521),保持不变。
我正在执行以下操作:
由于ECPublicKeyParameters对象只有一个getQ()方法,因此我假设只需要这个方法就可以重建密钥。其他参数,例如使用的曲线(P-521),保持不变。
我正在执行以下操作:
AsymmetricCipherKeyPair kp = kpgen.generateKeyPair(); //ECDHE Key Generator
ECPublicKeyParameters pubKey = (ECPublicKeyParameters)kp.getPublic();
byte[] aPubKeybytes = pubKey.getQ().getEncoded(false); //Should I set to true or false?
除非有其他方法获取公钥pubKey的原始字节,否则我不知道如何在不调用返回ECPoint对象的getQ()方法的情况下获得字节。
我的问题是如何使用弹性城堡轻量级API将byte[]重构为ECPoint对象。或者更好的方法是,如何使用从原始pubKey对象派生的某种字节数组重新构建整个ECPublicKeyParameter对象。