【发布时间】:2018-12-20 15:45:59
【问题描述】:
我有以下使用弹跳城堡库的 Java 代码:
byte[] privKey = new byte[32];
privKey[31] = 1;
ECNamedCurveParameterSpec spec = ECNamedCurveTable.getParameterSpec("secp256k1");
ECPoint pointQ = spec.getG().multiply(new BigInteger(1, privKey));
System.out.println(pointQ.getRawXCoord());
System.out.println(pointQ.getRawYCoord());
为了确保我想验证计算出的 X 和 Y 与 secp256k1 测试向量相对应。 https://chuckbatson.wordpress.com/2014/11/26/secp256k1-test-vectors/
这仅适用于 k = 1。
但是当我使用 k = 2 时
byte[] privKey = new byte[32];
privKey[31] = 2;
我得到的 X 和 Y 值完全不同。我在这里做错了吗?
【问题讨论】:
标签: java cryptography bouncycastle ecdsa