我正在使用ecdh进行私钥/公钥
var ecdh = new ECDiffieHellmanCng(CngKey.Create(CngAlgorithm.ECDiffieHellmanP256, null, new CngKeyCreationParameters { ExportPolicy = CngExportPolicies.AllowPlaintextExport }));
var privateKey = ecdh.Key.Export(CngKeyBlobFormat.EccPrivateBlob);
var publickey = ecdh.Key.Export(CngKeyBlobFormat.EccPublicBlob);
此代码工作正常,但我想使用算法prime256v1
,而CngAlgorithm
没有这样的选择。
我该怎么办?
答案 0 :(得分:1)
根据文档,CngAlgorithm.ECDiffieHellmanP256指定P-256曲线:
指定使用P-256曲线的ECDH算法的对象。
crypto.stackexchange.com中的此answer解释了这些名称的来源不同,并且NIST表示法中的P-256对应于“ ANSI X9.62:公开密钥密码术”中的prime256v1
。金融服务业”。