创建 ECDSA 对象并尝试提取私钥和公钥对象时,它会返回一个byte[]. 但是当尝试将其转换为字符串时,它给出的输出看起来不正确。
// Creating the object with default parameters
ECDsa ecdSa = ECDsa.Create(ECCurve.NamedCurves.nistP256);
// Export parameters
ECParameters ecParamters = ecdSa.ExportParameters(true);
// Private Key
byte[] privateKey = ecParamters.D;
// Public key params
ECPoint publicKey = ecParamters.Q;
// Coordinates
byte[] publicKeyX = publicKey.X; // What format? int, double, etc
byte[] publicKeyY = publicKey.Y; // What format? int, double, etc
Run Code Online (Sandbox Code Playgroud)
上面提供了对,和 的ECParameters访问。curveD (private key)Q (public key)
知道这些字节数组中使用了哪种格式吗?我们如何将其转换为字符串格式,例如:私钥和公钥到PKCS#8?