341 lines
9.0 KiB
C#
341 lines
9.0 KiB
C#
using System;
|
|
using BestHTTP.SecureProtocol.Org.BouncyCastle.Math;
|
|
using Cpp2IlInjected;
|
|
|
|
namespace BestHTTP.SecureProtocol.Org.BouncyCastle.Asn1.Pkcs
|
|
{
|
|
// Token: 0x02001E9A RID: 7834
|
|
[Token(Token = "0x2001E9A")]
|
|
public class RsaPrivateKeyStructure : Asn1Encodable
|
|
{
|
|
// Token: 0x0600C5FA RID: 50682 RVA: 0x002D379C File Offset: 0x002D199C
|
|
[Token(Token = "0x600C5FA")]
|
|
[Address(RVA = "0x2BCAF80", Offset = "0x2BC9D80", VA = "0x182BCAF80")]
|
|
public static RsaPrivateKeyStructure GetInstance(Asn1TaggedObject obj, bool isExplicit)
|
|
{
|
|
Asn1Sequence instance;
|
|
Asn1Sequence instance2;
|
|
for (;;)
|
|
{
|
|
instance = Asn1Sequence.GetInstance(obj, isExplicit);
|
|
if (instance == 0)
|
|
{
|
|
return;
|
|
}
|
|
if (instance == 0)
|
|
{
|
|
break;
|
|
}
|
|
if (instance2 != 0)
|
|
{
|
|
return;
|
|
}
|
|
}
|
|
instance2 = Asn1Sequence.GetInstance(instance);
|
|
return new RsaPrivateKeyStructure(instance2);
|
|
}
|
|
|
|
// Token: 0x0600C5FB RID: 50683 RVA: 0x002D37D8 File Offset: 0x002D19D8
|
|
[Token(Token = "0x600C5FB")]
|
|
[Address(RVA = "0x2BCAE80", Offset = "0x2BC9C80", VA = "0x182BCAE80")]
|
|
public static RsaPrivateKeyStructure GetInstance(object obj)
|
|
{
|
|
while (obj != 0)
|
|
{
|
|
Asn1Sequence instance;
|
|
if (obj == 0)
|
|
{
|
|
instance = Asn1Sequence.GetInstance(obj);
|
|
return new RsaPrivateKeyStructure(instance);
|
|
}
|
|
if (instance != 0)
|
|
{
|
|
return;
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600C5FC RID: 50684 RVA: 0x002D380C File Offset: 0x002D1A0C
|
|
[Token(Token = "0x600C5FC")]
|
|
[Address(RVA = "0x2BCB4E0", Offset = "0x2BCA2E0", VA = "0x182BCB4E0")]
|
|
public RsaPrivateKeyStructure(BigInteger modulus, BigInteger publicExponent, BigInteger privateExponent, BigInteger prime1, BigInteger prime2, BigInteger exponent1, BigInteger exponent2, BigInteger coefficient)
|
|
{
|
|
this.prime1 = 0;
|
|
this.prime2 = 0;
|
|
this.exponent1 = 0;
|
|
this.exponent2 = 0;
|
|
this.modulus = modulus;
|
|
this.privateExponent = privateExponent;
|
|
this.coefficient = 0;
|
|
this.publicExponent = publicExponent;
|
|
}
|
|
|
|
// Token: 0x0600C5FD RID: 50685 RVA: 0x002D3858 File Offset: 0x002D1A58
|
|
[Token(Token = "0x600C5FD")]
|
|
[Address(RVA = "0x2BCB560", Offset = "0x2BCA360", VA = "0x182BCB560")]
|
|
[Obsolete]
|
|
public RsaPrivateKeyStructure(Asn1Sequence seq)
|
|
{
|
|
for (;;)
|
|
{
|
|
base..ctor();
|
|
Asn1SequenceParser parser = seq.Parser;
|
|
BigInteger bigInteger;
|
|
if (parser != 0 && parser != 0 && bigInteger.IntValue == 0)
|
|
{
|
|
Asn1SequenceParser parser2 = seq.Parser;
|
|
if (parser2 != 0 && parser2 != 0)
|
|
{
|
|
BigInteger bigInteger2;
|
|
this.modulus = bigInteger2;
|
|
Asn1SequenceParser parser3 = seq.Parser;
|
|
if (parser3 != 0 && parser3 != 0)
|
|
{
|
|
BigInteger bigInteger3;
|
|
this.publicExponent = bigInteger3;
|
|
Asn1SequenceParser parser4 = seq.Parser;
|
|
if (parser4 != 0 && parser4 != 0)
|
|
{
|
|
BigInteger bigInteger4;
|
|
this.privateExponent = bigInteger4;
|
|
Asn1SequenceParser parser5 = seq.Parser;
|
|
if (parser5 != 0 && parser5 != 0)
|
|
{
|
|
BigInteger bigInteger5;
|
|
this.prime1 = bigInteger5;
|
|
Asn1SequenceParser parser6 = seq.Parser;
|
|
if (parser6 != 0 && parser6 != 0)
|
|
{
|
|
BigInteger bigInteger6;
|
|
this.prime2 = bigInteger6;
|
|
Asn1SequenceParser parser7 = seq.Parser;
|
|
if (parser7 != 0 && parser7 != 0)
|
|
{
|
|
BigInteger bigInteger7;
|
|
this.exponent1 = bigInteger7;
|
|
Asn1SequenceParser parser8 = seq.Parser;
|
|
if (parser8 != 0 && parser8 != 0)
|
|
{
|
|
BigInteger bigInteger8;
|
|
this.exponent2 = bigInteger8;
|
|
Asn1SequenceParser parser9 = seq.Parser;
|
|
if (parser9 != 0 && parser9 != 0)
|
|
{
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
BigInteger bigInteger9;
|
|
this.coefficient = bigInteger9;
|
|
}
|
|
|
|
// Token: 0x17001EC0 RID: 7872
|
|
// (get) Token: 0x0600C5FE RID: 50686 RVA: 0x002D39AC File Offset: 0x002D1BAC
|
|
[Token(Token = "0x17001EC0")]
|
|
public BigInteger Modulus
|
|
{
|
|
[Token(Token = "0x600C5FE")]
|
|
[Address(RVA = "0x3F6E20", Offset = "0x3F5C20", VA = "0x1803F6E20")]
|
|
get
|
|
{
|
|
return this.modulus;
|
|
}
|
|
}
|
|
|
|
// Token: 0x17001EC1 RID: 7873
|
|
// (get) Token: 0x0600C5FF RID: 50687 RVA: 0x002D39C0 File Offset: 0x002D1BC0
|
|
[Token(Token = "0x17001EC1")]
|
|
public BigInteger PublicExponent
|
|
{
|
|
[Token(Token = "0x600C5FF")]
|
|
[Address(RVA = "0x3F5F40", Offset = "0x3F4D40", VA = "0x1803F5F40")]
|
|
get
|
|
{
|
|
return this.publicExponent;
|
|
}
|
|
}
|
|
|
|
// Token: 0x17001EC2 RID: 7874
|
|
// (get) Token: 0x0600C600 RID: 50688 RVA: 0x002D39D4 File Offset: 0x002D1BD4
|
|
[Token(Token = "0x17001EC2")]
|
|
public BigInteger PrivateExponent
|
|
{
|
|
[Token(Token = "0x600C600")]
|
|
[Address(RVA = "0x3F6400", Offset = "0x3F5200", VA = "0x1803F6400")]
|
|
get
|
|
{
|
|
return this.privateExponent;
|
|
}
|
|
}
|
|
|
|
// Token: 0x17001EC3 RID: 7875
|
|
// (get) Token: 0x0600C601 RID: 50689 RVA: 0x002D39E8 File Offset: 0x002D1BE8
|
|
[Token(Token = "0x17001EC3")]
|
|
public BigInteger Prime1
|
|
{
|
|
[Token(Token = "0x600C601")]
|
|
[Address(RVA = "0x3F63E0", Offset = "0x3F51E0", VA = "0x1803F63E0")]
|
|
get
|
|
{
|
|
return this.prime1;
|
|
}
|
|
}
|
|
|
|
// Token: 0x17001EC4 RID: 7876
|
|
// (get) Token: 0x0600C602 RID: 50690 RVA: 0x002D39FC File Offset: 0x002D1BFC
|
|
[Token(Token = "0x17001EC4")]
|
|
public BigInteger Prime2
|
|
{
|
|
[Token(Token = "0x600C602")]
|
|
[Address(RVA = "0x3FA180", Offset = "0x3F8F80", VA = "0x1803FA180")]
|
|
get
|
|
{
|
|
return this.prime2;
|
|
}
|
|
}
|
|
|
|
// Token: 0x17001EC5 RID: 7877
|
|
// (get) Token: 0x0600C603 RID: 50691 RVA: 0x002D3A10 File Offset: 0x002D1C10
|
|
[Token(Token = "0x17001EC5")]
|
|
public BigInteger Exponent1
|
|
{
|
|
[Token(Token = "0x600C603")]
|
|
[Address(RVA = "0x3F63D0", Offset = "0x3F51D0", VA = "0x1803F63D0")]
|
|
get
|
|
{
|
|
return this.exponent1;
|
|
}
|
|
}
|
|
|
|
// Token: 0x17001EC6 RID: 7878
|
|
// (get) Token: 0x0600C604 RID: 50692 RVA: 0x002D3A24 File Offset: 0x002D1C24
|
|
[Token(Token = "0x17001EC6")]
|
|
public BigInteger Exponent2
|
|
{
|
|
[Token(Token = "0x600C604")]
|
|
[Address(RVA = "0x408890", Offset = "0x407690", VA = "0x180408890")]
|
|
get
|
|
{
|
|
return this.exponent2;
|
|
}
|
|
}
|
|
|
|
// Token: 0x17001EC7 RID: 7879
|
|
// (get) Token: 0x0600C605 RID: 50693 RVA: 0x002D3A38 File Offset: 0x002D1C38
|
|
[Token(Token = "0x17001EC7")]
|
|
public BigInteger Coefficient
|
|
{
|
|
[Token(Token = "0x600C605")]
|
|
[Address(RVA = "0x3FA170", Offset = "0x3F8F70", VA = "0x1803FA170")]
|
|
get
|
|
{
|
|
return this.coefficient;
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600C606 RID: 50694 RVA: 0x002D3A4C File Offset: 0x002D1C4C
|
|
[Token(Token = "0x600C606")]
|
|
[Address(RVA = "0x2BCB080", Offset = "0x2BC9E80", VA = "0x182BCB080", Slot = "5")]
|
|
public override Asn1Object ToAsn1Object()
|
|
{
|
|
Asn1Encodable[] array = new Asn1Encodable[9];
|
|
int num;
|
|
DerInteger derInteger = new DerInteger(num);
|
|
num = 0;
|
|
if (derInteger != 0)
|
|
{
|
|
}
|
|
array[0] = derInteger;
|
|
DerInteger derInteger2 = new DerInteger(this.modulus);
|
|
if (derInteger2 != 0)
|
|
{
|
|
}
|
|
array[1] = derInteger2;
|
|
DerInteger derInteger3 = new DerInteger(this.publicExponent);
|
|
if (derInteger3 != 0)
|
|
{
|
|
}
|
|
array[2] = derInteger3;
|
|
DerInteger derInteger4 = new DerInteger(this.privateExponent);
|
|
if (derInteger4 != 0)
|
|
{
|
|
}
|
|
array[3] = derInteger4;
|
|
DerInteger derInteger5 = new DerInteger(this.prime1);
|
|
if (derInteger5 != 0)
|
|
{
|
|
}
|
|
array[4] = derInteger5;
|
|
DerInteger derInteger6 = new DerInteger(this.prime2);
|
|
if (derInteger6 != 0)
|
|
{
|
|
}
|
|
array[5] = derInteger6;
|
|
DerInteger derInteger7 = new DerInteger(this.exponent1);
|
|
if (derInteger7 != 0)
|
|
{
|
|
}
|
|
array[6] = derInteger7;
|
|
DerInteger derInteger8 = new DerInteger(this.exponent2);
|
|
if (derInteger8 != 0)
|
|
{
|
|
}
|
|
array[7] = derInteger8;
|
|
DerInteger derInteger9 = new DerInteger(this.coefficient);
|
|
if (derInteger9 != 0)
|
|
{
|
|
}
|
|
array[8] = derInteger9;
|
|
DerSequence derSequence = new DerSequence(array);
|
|
throw new NullReferenceException();
|
|
}
|
|
|
|
// Token: 0x04007DBB RID: 32187
|
|
[FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x4007DBB")]
|
|
private readonly BigInteger modulus;
|
|
|
|
// Token: 0x04007DBC RID: 32188
|
|
[FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x4007DBC")]
|
|
private readonly BigInteger publicExponent;
|
|
|
|
// Token: 0x04007DBD RID: 32189
|
|
[FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x4007DBD")]
|
|
private readonly BigInteger privateExponent;
|
|
|
|
// Token: 0x04007DBE RID: 32190
|
|
[FieldOffset(Offset = "0x28")]
|
|
[Token(Token = "0x4007DBE")]
|
|
private readonly BigInteger prime1;
|
|
|
|
// Token: 0x04007DBF RID: 32191
|
|
[FieldOffset(Offset = "0x30")]
|
|
[Token(Token = "0x4007DBF")]
|
|
private readonly BigInteger prime2;
|
|
|
|
// Token: 0x04007DC0 RID: 32192
|
|
[FieldOffset(Offset = "0x38")]
|
|
[Token(Token = "0x4007DC0")]
|
|
private readonly BigInteger exponent1;
|
|
|
|
// Token: 0x04007DC1 RID: 32193
|
|
[FieldOffset(Offset = "0x40")]
|
|
[Token(Token = "0x4007DC1")]
|
|
private readonly BigInteger exponent2;
|
|
|
|
// Token: 0x04007DC2 RID: 32194
|
|
[FieldOffset(Offset = "0x48")]
|
|
[Token(Token = "0x4007DC2")]
|
|
private readonly BigInteger coefficient;
|
|
}
|
|
}
|