diff options
Diffstat (limited to 'crypto/src/pkcs')
-rw-r--r-- | crypto/src/pkcs/PrivateKeyInfoFactory.cs | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/crypto/src/pkcs/PrivateKeyInfoFactory.cs b/crypto/src/pkcs/PrivateKeyInfoFactory.cs index d56831f35..b180e49f2 100644 --- a/crypto/src/pkcs/PrivateKeyInfoFactory.cs +++ b/crypto/src/pkcs/PrivateKeyInfoFactory.cs @@ -164,15 +164,25 @@ namespace Org.BouncyCastle.Pkcs else { X962Parameters x962; - if (priv.PublicKeyParamSet == null) + //if (priv.PublicKeyParamSet == null) + //{ + // X9ECParameters ecP = new X9ECParameters(dp.Curve, new X9ECPoint(dp.G, false), dp.N, dp.H, + // dp.GetSeed()); + // x962 = new X962Parameters(ecP); + //} + //else + //{ + // x962 = new X962Parameters(priv.PublicKeyParamSet); + //} + if (dp is ECNamedDomainParameters _dp) { - X9ECParameters ecP = new X9ECParameters(dp.Curve, new X9ECPoint(dp.G, false), dp.N, dp.H, - dp.GetSeed()); - x962 = new X962Parameters(ecP); + x962 = new X962Parameters(_dp.Name); } else { - x962 = new X962Parameters(priv.PublicKeyParamSet); + X9ECParameters ecP = new X9ECParameters(dp.Curve, new X9ECPoint(dp.G, false), dp.N, dp.H, + dp.GetSeed()); + x962 = new X962Parameters(ecP); } ec = new ECPrivateKeyStructure(orderBitLength, priv.D, publicKey, x962); |