using System; using System.IO; using System.Runtime.InteropServices; using Cpp2IlInjected; using Mono.Security.Cryptography; namespace System.Security.Cryptography { /// Performs asymmetric encryption and decryption using the implementation of the algorithm provided by the cryptographic service provider (CSP). This class cannot be inherited. // Token: 0x02000405 RID: 1029 [Token(Token = "0x2000405")] [ComVisible(true)] public sealed class RSACryptoServiceProvider : RSA, ICspAsymmetricAlgorithm { /// Gets the name of the signature algorithm available with this implementation of . /// The name of the signature algorithm. // Token: 0x170004C1 RID: 1217 // (get) Token: 0x06002295 RID: 8853 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x170004C1")] public override string SignatureAlgorithm { [Token(Token = "0x6002295")] [Address(RVA = "0x2DB67B0", Offset = "0x2DB55B0", VA = "0x182DB67B0", Slot = "9")] get { return null; } } /// Gets or sets a value indicating whether the key should be persisted in the computer's key store instead of the user profile store. /// /// if the key should be persisted in the computer key store; otherwise, . // Token: 0x170004C2 RID: 1218 // (get) Token: 0x06002296 RID: 8854 RVA: 0x00014E08 File Offset: 0x00013008 // (set) Token: 0x06002297 RID: 8855 RVA: 0x00002050 File Offset: 0x00000250 [Token(Token = "0x170004C2")] public static bool UseMachineKeyStore { [Token(Token = "0x6002296")] [Address(RVA = "0x2DB67E0", Offset = "0x2DB55E0", VA = "0x182DB67E0")] get { return default(bool); } [Token(Token = "0x6002297")] [Address(RVA = "0x2DB68D0", Offset = "0x2DB56D0", VA = "0x182DB68D0")] set { } } // Token: 0x06002298 RID: 8856 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x6002298")] [Address(RVA = "0x2DB5290", Offset = "0x2DB4090", VA = "0x182DB5290", Slot = "17")] protected override byte[] HashData(byte[] data, int offset, int count, HashAlgorithmName hashAlgorithm) { return null; } // Token: 0x06002299 RID: 8857 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x6002299")] [Address(RVA = "0x2DB52F0", Offset = "0x2DB40F0", VA = "0x182DB52F0", Slot = "18")] protected override byte[] HashData(Stream data, HashAlgorithmName hashAlgorithm) { return null; } // Token: 0x0600229A RID: 8858 RVA: 0x00014E20 File Offset: 0x00013020 [Token(Token = "0x600229A")] [Address(RVA = "0x2DB4C70", Offset = "0x2DB3A70", VA = "0x182DB4C70")] private static int GetAlgorithmId(HashAlgorithmName hashAlgorithm) { return 0; } /// Encrypts data with the algorithm using the specified padding. /// The data to encrypt. /// The padding. /// The encrypted data. /// /// is . /// -or- /// is . /// The padding mode is not supported. // Token: 0x0600229B RID: 8859 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x600229B")] [Address(RVA = "0x2DB4700", Offset = "0x2DB3500", VA = "0x182DB4700", Slot = "13")] public override byte[] Encrypt(byte[] data, RSAEncryptionPadding padding) { return null; } /// Decrypts data that was previously encrypted with the algorithm by using the specified padding. /// The data to decrypt. /// The padding. /// The decrypted data. /// /// is . /// -or- /// is . /// The padding mode is not supported. // Token: 0x0600229C RID: 8860 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x600229C")] [Address(RVA = "0x2DB4360", Offset = "0x2DB3160", VA = "0x182DB4360", Slot = "14")] public override byte[] Decrypt(byte[] data, RSAEncryptionPadding padding) { return null; } /// Computes the signature for the specified hash value by encrypting it with the private key using the specified padding. /// The hash value of the data to be signed. /// The hash algorithm name used to create the hash value of the data. /// The padding. /// The signature for the specified hash value. /// /// is or . /// /// is . /// -or- /// is . /// /// does not equal . // Token: 0x0600229D RID: 8861 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x600229D")] [Address(RVA = "0x2DB5B90", Offset = "0x2DB4990", VA = "0x182DB5B90", Slot = "15")] public override byte[] SignHash(byte[] hash, HashAlgorithmName hashAlgorithm, RSASignaturePadding padding) { return null; } /// Verifies that a digital signature is valid by determining the hash value in the signature using the specified hashing algorithm and padding, and comparing it to the provided hash value. /// The hash value of the signed data. /// The signature data to be verified. /// The hash algorithm name used to create the hash value. /// The padding. /// /// if the signature is valid; otherwise, . /// /// is or . /// /// is . /// -or- /// is . /// /// does not equal . // Token: 0x0600229E RID: 8862 RVA: 0x00014E38 File Offset: 0x00013038 [Token(Token = "0x600229E")] [Address(RVA = "0x2DB5FB0", Offset = "0x2DB4DB0", VA = "0x182DB5FB0", Slot = "16")] public override bool VerifyHash(byte[] hash, byte[] signature, HashAlgorithmName hashAlgorithm, RSASignaturePadding padding) { return default(bool); } // Token: 0x0600229F RID: 8863 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x600229F")] [Address(RVA = "0x2DB5800", Offset = "0x2DB4600", VA = "0x182DB5800")] private static Exception PaddingModeNotSupported() { return null; } /// Initializes a new instance of the class using the default key. /// The cryptographic service provider (CSP) cannot be acquired. // Token: 0x060022A0 RID: 8864 RVA: 0x00002050 File Offset: 0x00000250 [Token(Token = "0x60022A0")] [Address(RVA = "0x2DB6520", Offset = "0x2DB5320", VA = "0x182DB6520")] public RSACryptoServiceProvider() { } /// Initializes a new instance of the class with the specified parameters. /// The parameters to be passed to the cryptographic service provider (CSP). /// The CSP cannot be acquired. // Token: 0x060022A1 RID: 8865 RVA: 0x00002050 File Offset: 0x00000250 [Token(Token = "0x60022A1")] [Address(RVA = "0x2DB6400", Offset = "0x2DB5200", VA = "0x182DB6400")] public RSACryptoServiceProvider(CspParameters parameters) { } /// Initializes a new instance of the class with the specified key size. /// The size of the key to use in bits. /// The cryptographic service provider (CSP) cannot be acquired. // Token: 0x060022A2 RID: 8866 RVA: 0x00002050 File Offset: 0x00000250 [Token(Token = "0x60022A2")] [Address(RVA = "0x2DB6670", Offset = "0x2DB5470", VA = "0x182DB6670")] public RSACryptoServiceProvider(int dwKeySize) { } /// Initializes a new instance of the class with the specified key size and parameters. /// The size of the key to use in bits. /// The parameters to be passed to the cryptographic service provider (CSP). /// The CSP cannot be acquired. /// -or- /// The key cannot be created. // Token: 0x060022A3 RID: 8867 RVA: 0x00002050 File Offset: 0x00000250 [Token(Token = "0x60022A3")] [Address(RVA = "0x2DB6550", Offset = "0x2DB5350", VA = "0x182DB6550")] public RSACryptoServiceProvider(int dwKeySize, CspParameters parameters) { } // Token: 0x060022A4 RID: 8868 RVA: 0x00002050 File Offset: 0x00000250 [Token(Token = "0x60022A4")] [Address(RVA = "0x2DB3FA0", Offset = "0x2DB2DA0", VA = "0x182DB3FA0")] private void Common(int dwKeySize, bool parameters) { } // Token: 0x060022A5 RID: 8869 RVA: 0x00002050 File Offset: 0x00000250 [Token(Token = "0x60022A5")] [Address(RVA = "0x2DB41C0", Offset = "0x2DB2FC0", VA = "0x182DB41C0")] private void Common(CspParameters p) { } // Token: 0x060022A6 RID: 8870 RVA: 0x00002050 File Offset: 0x00000250 [Token(Token = "0x60022A6")] [Address(RVA = "0x2DB4BF0", Offset = "0x2DB39F0", VA = "0x182DB4BF0", Slot = "1")] protected override void Finalize() { } /// Gets the name of the key exchange algorithm available with this implementation of . /// The name of the key exchange algorithm if it exists; otherwise, . // Token: 0x170004C3 RID: 1219 // (get) Token: 0x060022A7 RID: 8871 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x170004C3")] public override string KeyExchangeAlgorithm { [Token(Token = "0x60022A7")] [Address(RVA = "0x2DB6730", Offset = "0x2DB5530", VA = "0x182DB6730", Slot = "10")] get { return null; } } /// Gets the size of the current key. /// The size of the key in bits. // Token: 0x170004C4 RID: 1220 // (get) Token: 0x060022A8 RID: 8872 RVA: 0x00014E50 File Offset: 0x00013050 [Token(Token = "0x170004C4")] public override int KeySize { [Token(Token = "0x60022A8")] [Address(RVA = "0x2DB6760", Offset = "0x2DB5560", VA = "0x182DB6760", Slot = "6")] get { return 0; } } /// Gets or sets a value indicating whether the key should be persisted in the cryptographic service provider (CSP). /// /// if the key should be persisted in the CSP; otherwise, . // Token: 0x170004C5 RID: 1221 // (get) Token: 0x060022A9 RID: 8873 RVA: 0x00014E68 File Offset: 0x00013068 // (set) Token: 0x060022AA RID: 8874 RVA: 0x00002050 File Offset: 0x00000250 [Token(Token = "0x170004C5")] public bool PersistKeyInCsp { [Token(Token = "0x60022A9")] [Address(RVA = "0x494270", Offset = "0x493070", VA = "0x180494270")] get { return default(bool); } [Token(Token = "0x60022AA")] [Address(RVA = "0x2DB6850", Offset = "0x2DB5650", VA = "0x182DB6850")] set { } } /// Gets a value that indicates whether the object contains only a public key. /// /// if the object contains only a public key; otherwise, . // Token: 0x170004C6 RID: 1222 // (get) Token: 0x060022AB RID: 8875 RVA: 0x00014E80 File Offset: 0x00013080 [Token(Token = "0x170004C6")] [ComVisible(false)] public bool PublicOnly { [Token(Token = "0x60022AB")] [Address(RVA = "0x2DB6790", Offset = "0x2DB5590", VA = "0x182DB6790")] get { return default(bool); } } /// Decrypts data with the algorithm. /// The data to be decrypted. /// /// to perform direct decryption using OAEP padding (only available on a computer running Microsoft Windows XP or later); otherwise, to use PKCS#1 v1.5 padding. /// The decrypted data, which is the original plain text before encryption. /// The cryptographic service provider (CSP) cannot be acquired. /// -or- /// The parameter is and the length of the parameter is greater than . /// -or- /// The parameter is and OAEP is not supported. /// -or- /// The key does not match the encrypted data. However, the exception wording may not be accurate. For example, it may say Not enough storage is available to process this command. /// /// is . // Token: 0x060022AC RID: 8876 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x60022AC")] [Address(RVA = "0x2DB4500", Offset = "0x2DB3300", VA = "0x182DB4500")] public byte[] Decrypt(byte[] rgb, bool fOAEP) { return null; } /// This method is not supported in the current version. /// The data to be decrypted. /// The decrypted data, which is the original plain text before encryption. /// This method is not supported in the current version. // Token: 0x060022AD RID: 8877 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x60022AD")] [Address(RVA = "0x2DB42C0", Offset = "0x2DB30C0", VA = "0x182DB42C0", Slot = "22")] public override byte[] DecryptValue(byte[] rgb) { return null; } /// Encrypts data with the algorithm. /// The data to be encrypted. /// /// to perform direct encryption using OAEP padding (only available on a computer running Windows XP or later); otherwise, to use PKCS#1 v1.5 padding. /// The encrypted data. /// The cryptographic service provider (CSP) cannot be acquired. /// -or- /// The length of the parameter is greater than the maximum allowed length. /// -or- /// The parameter is and OAEP padding is not supported. /// /// is . // Token: 0x060022AE RID: 8878 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x60022AE")] [Address(RVA = "0x2DB4910", Offset = "0x2DB3710", VA = "0x182DB4910")] public byte[] Encrypt(byte[] rgb, bool fOAEP) { return null; } /// This method is not supported in the current version. /// The data to be encrypted. /// The encrypted data. /// This method is not supported in the current version. // Token: 0x060022AF RID: 8879 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x60022AF")] [Address(RVA = "0x2437360", Offset = "0x2436160", VA = "0x182437360", Slot = "23")] public override byte[] EncryptValue(byte[] rgb) { return null; } /// Exports the . /// /// to include private parameters; otherwise, . /// The parameters for . /// The key cannot be exported. // Token: 0x060022B0 RID: 8880 RVA: 0x00014E98 File Offset: 0x00013098 [Token(Token = "0x60022B0")] [Address(RVA = "0x2DB4A40", Offset = "0x2DB3840", VA = "0x182DB4A40", Slot = "24")] public override RSAParameters ExportParameters(bool includePrivateParameters) { return default(RSAParameters); } /// Imports the specified . /// The parameters for . /// The cryptographic service provider (CSP) cannot be acquired. /// -or- /// The parameter has missing fields. // Token: 0x060022B1 RID: 8881 RVA: 0x00002050 File Offset: 0x00000250 [Token(Token = "0x60022B1")] [Address(RVA = "0x2DB5610", Offset = "0x2DB4410", VA = "0x182DB5610", Slot = "25")] public override void ImportParameters(RSAParameters parameters) { } // Token: 0x060022B2 RID: 8882 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x60022B2")] [Address(RVA = "0x2DB4FD0", Offset = "0x2DB3DD0", VA = "0x182DB4FD0")] private HashAlgorithm GetHash(object halg) { return null; } // Token: 0x060022B3 RID: 8883 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x60022B3")] [Address(RVA = "0x2DB4DD0", Offset = "0x2DB3BD0", VA = "0x182DB4DD0")] private HashAlgorithm GetHashFromString(string name) { return null; } /// Computes the hash value of the specified byte array using the specified hash algorithm, and signs the resulting hash value. /// The input data for which to compute the hash. /// The hash algorithm to use to create the hash value. /// The signature for the specified data. /// The parameter is . /// The parameter is not a valid type. // Token: 0x060022B4 RID: 8884 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x60022B4")] [Address(RVA = "0x2DB5910", Offset = "0x2DB4710", VA = "0x182DB5910")] public byte[] SignData(byte[] buffer, object halg) { return null; } /// Computes the hash value of the specified input stream using the specified hash algorithm, and signs the resulting hash value. /// The input data for which to compute the hash. /// The hash algorithm to use to create the hash value. /// The signature for the specified data. /// The parameter is . /// The parameter is not a valid type. // Token: 0x060022B5 RID: 8885 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x60022B5")] [Address(RVA = "0x2DB5870", Offset = "0x2DB4670", VA = "0x182DB5870")] public byte[] SignData(Stream inputStream, object halg) { return null; } /// Computes the hash value of a subset of the specified byte array using the specified hash algorithm, and signs the resulting hash value. /// The input data for which to compute the hash. /// The offset into the array from which to begin using data. /// The number of bytes in the array to use as data. /// The hash algorithm to use to create the hash value. /// The signature for the specified data. /// The parameter is . /// The parameter is not a valid type. // Token: 0x060022B6 RID: 8886 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x60022B6")] [Address(RVA = "0x2DB5A20", Offset = "0x2DB4820", VA = "0x182DB5A20")] public byte[] SignData(byte[] buffer, int offset, int count, object halg) { return null; } // Token: 0x060022B7 RID: 8887 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x60022B7")] [Address(RVA = "0x2DB4EB0", Offset = "0x2DB3CB0", VA = "0x182DB4EB0")] private string GetHashNameFromOID(string oid) { return null; } /// Computes the signature for the specified hash value by encrypting it with the private key. /// The hash value of the data to be signed. /// The hash algorithm identifier (OID) used to create the hash value of the data. /// The signature for the specified hash value. /// The parameter is . /// The cryptographic service provider (CSP) cannot be acquired. /// -or- /// There is no private key. // Token: 0x060022B8 RID: 8888 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x60022B8")] [Address(RVA = "0x2DB5DB0", Offset = "0x2DB4BB0", VA = "0x182DB5DB0")] public byte[] SignHash(byte[] rgbHash, string str) { return null; } // Token: 0x060022B9 RID: 8889 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x60022B9")] [Address(RVA = "0x2DB5AF0", Offset = "0x2DB48F0", VA = "0x182DB5AF0")] private byte[] SignHash(byte[] rgbHash, int calgHash) { return null; } // Token: 0x060022BA RID: 8890 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x60022BA")] [Address(RVA = "0x2DB5660", Offset = "0x2DB4460", VA = "0x182DB5660")] private static HashAlgorithm InternalHashToHashAlgorithm(int calgHash) { return null; } /// Verifies that a digital signature is valid by determining the hash value in the signature using the provided public key and comparing it to the hash value of the provided data. /// The data that was signed. /// The name of the hash algorithm used to create the hash value of the data. /// The signature data to be verified. /// /// if the signature is valid; otherwise, . /// The parameter is . /// The parameter is not a valid type. // Token: 0x060022BB RID: 8891 RVA: 0x00014EB0 File Offset: 0x000130B0 [Token(Token = "0x60022BB")] [Address(RVA = "0x2DB5E80", Offset = "0x2DB4C80", VA = "0x182DB5E80")] public bool VerifyData(byte[] buffer, object halg, byte[] signature) { return default(bool); } /// Verifies that a digital signature is valid by determining the hash value in the signature using the provided public key and comparing it to the provided hash value. /// The hash value of the signed data. /// The hash algorithm identifier (OID) used to create the hash value of the data. /// The signature data to be verified. /// /// if the signature is valid; otherwise, . /// The parameter is . /// -or- /// The parameter is . /// The cryptographic service provider (CSP) cannot be acquired. /// -or- /// The signature cannot be verified. // Token: 0x060022BC RID: 8892 RVA: 0x00014EC8 File Offset: 0x000130C8 [Token(Token = "0x60022BC")] [Address(RVA = "0x2DB62E0", Offset = "0x2DB50E0", VA = "0x182DB62E0")] public bool VerifyHash(byte[] rgbHash, string str, byte[] rgbSignature) { return default(bool); } // Token: 0x060022BD RID: 8893 RVA: 0x00014EE0 File Offset: 0x000130E0 [Token(Token = "0x60022BD")] [Address(RVA = "0x2DB6220", Offset = "0x2DB5020", VA = "0x182DB6220")] private bool VerifyHash(byte[] rgbHash, int calgHash, byte[] rgbSignature) { return default(bool); } // Token: 0x060022BE RID: 8894 RVA: 0x00002050 File Offset: 0x00000250 [Token(Token = "0x60022BE")] [Address(RVA = "0x2DA4F90", Offset = "0x2DA3D90", VA = "0x182DA4F90", Slot = "5")] protected override void Dispose(bool disposing) { } // Token: 0x060022BF RID: 8895 RVA: 0x00002050 File Offset: 0x00000250 [Token(Token = "0x60022BF")] [Address(RVA = "0x2DB5780", Offset = "0x2DB4580", VA = "0x182DB5780")] private void OnKeyGenerated(object sender, EventArgs e) { } /// Gets a object that describes additional information about a cryptographic key pair. /// A object that describes additional information about a cryptographic key pair. // Token: 0x170004C7 RID: 1223 // (get) Token: 0x060022C0 RID: 8896 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x170004C7")] [ComVisible(false)] public CspKeyContainerInfo CspKeyContainerInfo { [Token(Token = "0x60022C0")] [Address(RVA = "0x2DB66B0", Offset = "0x2DB54B0", VA = "0x182DB66B0", Slot = "28")] get { return null; } } /// Exports a blob containing the key information associated with an object. /// /// to include the private key; otherwise, . /// A byte array containing the key information associated with an object. // Token: 0x060022C1 RID: 8897 RVA: 0x00002082 File Offset: 0x00000282 [Token(Token = "0x60022C1")] [Address(RVA = "0x2DB49C0", Offset = "0x2DB37C0", VA = "0x182DB49C0", Slot = "26")] [ComVisible(false)] public byte[] ExportCspBlob(bool includePrivateParameters) { return null; } /// Imports a blob that represents RSA key information. /// A byte array that represents an RSA key blob. // Token: 0x060022C2 RID: 8898 RVA: 0x00002050 File Offset: 0x00000250 [Token(Token = "0x60022C2")] [Address(RVA = "0x2DB5330", Offset = "0x2DB4130", VA = "0x182DB5330", Slot = "27")] [ComVisible(false)] public void ImportCspBlob(byte[] keyBlob) { } // Token: 0x040013AF RID: 5039 [Token(Token = "0x40013AF")] private static CspProviderFlags s_UseMachineKeyStore; // Token: 0x040013B0 RID: 5040 [Token(Token = "0x40013B0")] private const int PROV_RSA_FULL = 1; // Token: 0x040013B1 RID: 5041 [Token(Token = "0x40013B1")] private const int AT_KEYEXCHANGE = 1; // Token: 0x040013B2 RID: 5042 [Token(Token = "0x40013B2")] private const int AT_SIGNATURE = 2; // Token: 0x040013B3 RID: 5043 [global::Cpp2IlInjected.FieldOffset(Offset = "0x20")] [Token(Token = "0x40013B3")] private KeyPairPersistence store; // Token: 0x040013B4 RID: 5044 [global::Cpp2IlInjected.FieldOffset(Offset = "0x28")] [Token(Token = "0x40013B4")] private bool persistKey; // Token: 0x040013B5 RID: 5045 [global::Cpp2IlInjected.FieldOffset(Offset = "0x29")] [Token(Token = "0x40013B5")] private bool persisted; // Token: 0x040013B6 RID: 5046 [global::Cpp2IlInjected.FieldOffset(Offset = "0x2A")] [Token(Token = "0x40013B6")] private bool privateKeyExportable; // Token: 0x040013B7 RID: 5047 [global::Cpp2IlInjected.FieldOffset(Offset = "0x2B")] [Token(Token = "0x40013B7")] private bool m_disposed; // Token: 0x040013B8 RID: 5048 [global::Cpp2IlInjected.FieldOffset(Offset = "0x30")] [Token(Token = "0x40013B8")] private RSAManaged rsa; } }