- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我正在尝试使用 pointy caSTLe 通过 secp256k1 曲线生成公钥和私钥对。我想我已经成功创建了一个由 ECPrivateKey 和 ECPublicKey 组成的 AsymmetricKeyPair 但我无法获得它们相应的十六进制字符串(像这样:
私有(private):ee792658c8eb1f8c3d2010ee6bc2ea328bb584fbecbfb17cf0f9103d122a8716,
公开:041b3f87beb2559aa3ca1c1d9ebb9447e4842d21cf0c70db103acc0db27ea8c27536fc2b1405b8a16a460ca089b01de8c556825927b4890b7236e357787f3e6d54)。
当我尝试打印 key 时,无论是否使用 .toString(),我得到的都是“'ECPrivateKey' 实例”和“'ECPublicKey' 实例”。
我一直在四处寻找一种方法来做到这一点,但我找不到,这有可能吗?
这是我的代码:
SecureRandom secureRandom = new SecureRandom("Fortuna");
var random = new Random.secure();
List<int> seeds = [];
for (int i = 0; i < 32; i++) {
seeds.add(random.nextInt(255));
}
secureRandom.seed(new KeyParameter(new Uint8List.fromList(seeds)));
var domainParams = new ECDomainParameters("secp256k1");
var ecParams = new ECKeyGeneratorParameters(domainParams);
var params = new ParametersWithRandom<ECKeyGeneratorParameters>(
ecParams, secureRandom);
var keyGenerator = new ECKeyGenerator();
keyGenerator.init(params);
AsymmetricKeyPair keypair = keyGenerator.generateKeyPair();
ECPrivateKey privateKey = keypair.privateKey;
ECPublicKey publicKey = keypair.publicKey;
print(privateKey);
print(privateKey.toString());
print(publicKey);
print(publicKey.toString());
最佳答案
私钥和公钥是各自 key 的成员变量:
ECPrivateKey privateKey = keypair.privateKey;
ECPublicKey publicKey = keypair.publicKey;
// in decimal
print(privateKey.d);
print(publicKey.Q.x);
print(publicKey.Q.y);
// in hex
print(privateKey.d.toRadixString(16));
print(publicKey.Q.x.toBigInteger().toRadixString(16));
print(publicKey.Q.y.toBigInteger().toRadixString(16));
关于dart - 从 ECPrivateKey 和 ECPublicKey 对象中获取十六进制字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54808047/
我正在尝试在给定私钥和已知曲线的情况下生成公钥。下面是我的代码: // Generate Keys ECGenParameterSpec ecGenSpec = new ECGenParameterS
我正在尝试从 JKS KeyStore 中读回 ECPrivateKey(包括证书链),如下面的代码所示。 String storeType = "JKS", storePass = "secret"
我正在尝试使用 pointy caSTLe 通过 secp256k1 曲线生成公钥和私钥对。我想我已经成功创建了一个由 ECPrivateKey 和 ECPublicKey 组成的 Asymmetri
希望在这里得到一些帮助... 我试图从未压缩的客户端公钥(0x04 |32字节点X|32字节点Y)和服务器私钥(openSSL生成base64)生成共享 key ,但在将服务器EC私钥转换为EC时出现
我是一名优秀的程序员,十分优秀!