131 lines
5.0 KiB
C#
131 lines
5.0 KiB
C#
using System;
|
|
using System.Collections;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Anssi;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.CryptoPro;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.GM;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Nist;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Sec;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.TeleTrust;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Crypto.Parameters;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Math;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Math.EC;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Utilities.Collections;
|
|
using Cpp2IlInjected;
|
|
|
|
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.X9
|
|
{
|
|
// Token: 0x02001DC8 RID: 7624
|
|
[Token(Token = "0x2001DC8")]
|
|
public class ECNamedCurveTable
|
|
{
|
|
// Token: 0x0600C11A RID: 49434 RVA: 0x002BEF80 File Offset: 0x002BD180
|
|
[Token(Token = "0x600C11A")]
|
|
[Address(RVA = "0x166DCE0", Offset = "0x166CAE0", VA = "0x18166DCE0")]
|
|
public static X9ECParameters GetByName(string name)
|
|
{
|
|
DerObjectIdentifier oid;
|
|
do
|
|
{
|
|
oid = X962NamedCurves.GetOid(name);
|
|
if (oid == 0)
|
|
{
|
|
}
|
|
}
|
|
while (X962NamedCurves.GetByOid(oid) != 0 || SecNamedCurves.GetByName(name) != 0 || NistNamedCurves.GetByName(name) != 0 || TeleTrusTNamedCurves.GetByName(name) != 0 || AnssiNamedCurves.GetByName(name) != 0 || ECNamedCurveTable.FromDomainParameters(ECGost3410NamedCurves.GetByName(name)) != 0);
|
|
return GMNamedCurves.GetByName(name);
|
|
}
|
|
|
|
// Token: 0x0600C11B RID: 49435 RVA: 0x002BEFDC File Offset: 0x002BD1DC
|
|
[Token(Token = "0x600C11B")]
|
|
[Address(RVA = "0x166E020", Offset = "0x166CE20", VA = "0x18166E020")]
|
|
public static string GetName(DerObjectIdentifier oid)
|
|
{
|
|
do
|
|
{
|
|
IDictionary names = X962NamedCurves.names;
|
|
}
|
|
while (SecNamedCurves.GetName(oid) != 0 || NistNamedCurves.GetName(oid) != 0 || TeleTrusTNamedCurves.GetName(oid) != 0 || AnssiNamedCurves.GetName(oid) != 0 || ECGost3410NamedCurves.GetName(oid) != 0);
|
|
return GMNamedCurves.GetName(oid);
|
|
}
|
|
|
|
// Token: 0x0600C11C RID: 49436 RVA: 0x002BF028 File Offset: 0x002BD228
|
|
[Token(Token = "0x600C11C")]
|
|
[Address(RVA = "0x166E220", Offset = "0x166D020", VA = "0x18166E220")]
|
|
public static DerObjectIdentifier GetOid(string name)
|
|
{
|
|
DerObjectIdentifier oid = X962NamedCurves.GetOid(name);
|
|
if (oid == 0 && SecNamedCurves.GetOid(name) == 0 && NistNamedCurves.GetOid(name) == 0 && TeleTrusTNamedCurves.GetOid(name) == 0 && AnssiNamedCurves.GetOid(name) == 0 && ECGost3410NamedCurves.GetOid(name) == 0)
|
|
{
|
|
return GMNamedCurves.GetOid(name);
|
|
}
|
|
return oid;
|
|
}
|
|
|
|
// Token: 0x0600C11D RID: 49437 RVA: 0x002BF078 File Offset: 0x002BD278
|
|
[Token(Token = "0x600C11D")]
|
|
[Address(RVA = "0x166DED0", Offset = "0x166CCD0", VA = "0x18166DED0")]
|
|
public static X9ECParameters GetByOid(DerObjectIdentifier oid)
|
|
{
|
|
X9ECParameters byOid = X962NamedCurves.GetByOid(oid);
|
|
if (byOid == 0 && SecNamedCurves.GetByOid(oid) == 0 && TeleTrusTNamedCurves.GetByOid(oid) == 0 && AnssiNamedCurves.GetByOid(oid) == 0 && ECNamedCurveTable.FromDomainParameters(ECGost3410NamedCurves.GetByOid(oid)) == 0)
|
|
{
|
|
return GMNamedCurves.GetByOid(oid);
|
|
}
|
|
return byOid;
|
|
}
|
|
|
|
// Token: 0x17001DC5 RID: 7621
|
|
// (get) Token: 0x0600C11E RID: 49438 RVA: 0x002BF0C4 File Offset: 0x002BD2C4
|
|
[Token(Token = "0x17001DC5")]
|
|
public static IEnumerable Names
|
|
{
|
|
[Token(Token = "0x600C11E")]
|
|
[Address(RVA = "0x166E390", Offset = "0x166D190", VA = "0x18166E390")]
|
|
get
|
|
{
|
|
IList list = Platform.CreateArrayList();
|
|
IDictionary names = X962NamedCurves.names;
|
|
EnumerableProxy enumerableProxy;
|
|
CollectionUtilities.AddRange(list, enumerableProxy);
|
|
IEnumerable names2 = SecNamedCurves.Names;
|
|
CollectionUtilities.AddRange(list, names2);
|
|
IEnumerable names3 = NistNamedCurves.Names;
|
|
CollectionUtilities.AddRange(list, names3);
|
|
IEnumerable names4 = TeleTrusTNamedCurves.Names;
|
|
CollectionUtilities.AddRange(list, names4);
|
|
IEnumerable names5 = AnssiNamedCurves.Names;
|
|
CollectionUtilities.AddRange(list, names5);
|
|
IEnumerable names6 = ECGost3410NamedCurves.Names;
|
|
CollectionUtilities.AddRange(list, names6);
|
|
IEnumerable names7 = GMNamedCurves.Names;
|
|
CollectionUtilities.AddRange(list, names7);
|
|
throw new NullReferenceException();
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600C11F RID: 49439 RVA: 0x002BF158 File Offset: 0x002BD358
|
|
[Token(Token = "0x600C11F")]
|
|
[Address(RVA = "0x166DC20", Offset = "0x166CA20", VA = "0x18166DC20")]
|
|
private static X9ECParameters FromDomainParameters(ECDomainParameters dp)
|
|
{
|
|
if (dp == 0)
|
|
{
|
|
}
|
|
BigInteger n = dp.n;
|
|
BigInteger h = dp.h;
|
|
ECPoint g = dp.g;
|
|
ECCurve curve = dp.curve;
|
|
byte[] seed = dp.GetSeed();
|
|
return new X9ECParameters(curve, g, n, h, seed);
|
|
}
|
|
|
|
// Token: 0x0600C120 RID: 49440 RVA: 0x002BF19C File Offset: 0x002BD39C
|
|
[Token(Token = "0x600C120")]
|
|
[Address(RVA = "0x3F5100", Offset = "0x3F3F00", VA = "0x1803F5100")]
|
|
public ECNamedCurveTable()
|
|
{
|
|
}
|
|
}
|
|
}
|