ced71aa40f4c8b37bd3e2839e108bb5f05e64d7e
[platform/upstream/dotnet/runtime.git] /
1 // Licensed to the .NET Foundation under one or more agreements.
2 // The .NET Foundation licenses this file to you under the MIT license.
3 // See the LICENSE file in the project root for more information.
4 // ------------------------------------------------------------------------------
5 // Changes to this file must follow the http://aka.ms/api-review process.
6 // ------------------------------------------------------------------------------
7
8 namespace Microsoft.Win32.SafeHandles
9 {
10     public sealed partial class SafeX509ChainHandle : Microsoft.Win32.SafeHandles.SafeHandleZeroOrMinusOneIsInvalid
11     {
12         internal SafeX509ChainHandle() : base (default(bool)) { }
13         protected override void Dispose(bool disposing) { }
14         protected override bool ReleaseHandle() { throw null; }
15     }
16 }
17 namespace System.Security.Cryptography.X509Certificates
18 {
19     public sealed partial class CertificateRequest
20     {
21         public CertificateRequest(System.Security.Cryptography.X509Certificates.X500DistinguishedName subjectName, System.Security.Cryptography.ECDsa key, System.Security.Cryptography.HashAlgorithmName hashAlgorithm) { }
22         public CertificateRequest(System.Security.Cryptography.X509Certificates.X500DistinguishedName subjectName, System.Security.Cryptography.RSA key, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, System.Security.Cryptography.RSASignaturePadding padding) { }
23         public CertificateRequest(System.Security.Cryptography.X509Certificates.X500DistinguishedName subjectName, System.Security.Cryptography.X509Certificates.PublicKey publicKey, System.Security.Cryptography.HashAlgorithmName hashAlgorithm) { }
24         public CertificateRequest(string subjectName, System.Security.Cryptography.ECDsa key, System.Security.Cryptography.HashAlgorithmName hashAlgorithm) { }
25         public CertificateRequest(string subjectName, System.Security.Cryptography.RSA key, System.Security.Cryptography.HashAlgorithmName hashAlgorithm, System.Security.Cryptography.RSASignaturePadding padding) { }
26         public System.Collections.ObjectModel.Collection<System.Security.Cryptography.X509Certificates.X509Extension> CertificateExtensions { get { throw null; } }
27         public System.Security.Cryptography.HashAlgorithmName HashAlgorithm { get { throw null; } }
28         public System.Security.Cryptography.X509Certificates.PublicKey PublicKey { get { throw null; } }
29         public System.Security.Cryptography.X509Certificates.X500DistinguishedName SubjectName { get { throw null; } }
30         public System.Security.Cryptography.X509Certificates.X509Certificate2 Create(System.Security.Cryptography.X509Certificates.X500DistinguishedName issuerName, System.Security.Cryptography.X509Certificates.X509SignatureGenerator generator, System.DateTimeOffset notBefore, System.DateTimeOffset notAfter, byte[] serialNumber) { throw null; }
31         public System.Security.Cryptography.X509Certificates.X509Certificate2 Create(System.Security.Cryptography.X509Certificates.X509Certificate2 issuerCertificate, System.DateTimeOffset notBefore, System.DateTimeOffset notAfter, byte[] serialNumber) { throw null; }
32         public System.Security.Cryptography.X509Certificates.X509Certificate2 CreateSelfSigned(System.DateTimeOffset notBefore, System.DateTimeOffset notAfter) { throw null; }
33         public byte[] CreateSigningRequest() { throw null; }
34         public byte[] CreateSigningRequest(System.Security.Cryptography.X509Certificates.X509SignatureGenerator signatureGenerator) { throw null; }
35     }
36     public static partial class DSACertificateExtensions
37     {
38         public static System.Security.Cryptography.X509Certificates.X509Certificate2 CopyWithPrivateKey(this System.Security.Cryptography.X509Certificates.X509Certificate2 certificate, System.Security.Cryptography.DSA privateKey) { throw null; }
39         public static System.Security.Cryptography.DSA GetDSAPrivateKey(this System.Security.Cryptography.X509Certificates.X509Certificate2 certificate) { throw null; }
40         public static System.Security.Cryptography.DSA GetDSAPublicKey(this System.Security.Cryptography.X509Certificates.X509Certificate2 certificate) { throw null; }
41     }
42     public static partial class ECDsaCertificateExtensions
43     {
44         public static System.Security.Cryptography.X509Certificates.X509Certificate2 CopyWithPrivateKey(this System.Security.Cryptography.X509Certificates.X509Certificate2 certificate, System.Security.Cryptography.ECDsa privateKey) { throw null; }
45         public static System.Security.Cryptography.ECDsa GetECDsaPrivateKey(this System.Security.Cryptography.X509Certificates.X509Certificate2 certificate) { throw null; }
46         public static System.Security.Cryptography.ECDsa GetECDsaPublicKey(this System.Security.Cryptography.X509Certificates.X509Certificate2 certificate) { throw null; }
47     }
48     [System.FlagsAttribute]
49     public enum OpenFlags
50     {
51         ReadOnly = 0,
52         ReadWrite = 1,
53         MaxAllowed = 2,
54         OpenExistingOnly = 4,
55         IncludeArchived = 8,
56     }
57     public sealed partial class PublicKey
58     {
59         public PublicKey(System.Security.Cryptography.Oid oid, System.Security.Cryptography.AsnEncodedData parameters, System.Security.Cryptography.AsnEncodedData keyValue) { }
60         public System.Security.Cryptography.AsnEncodedData EncodedKeyValue { get { throw null; } }
61         public System.Security.Cryptography.AsnEncodedData EncodedParameters { get { throw null; } }
62         public System.Security.Cryptography.AsymmetricAlgorithm Key { get { throw null; } }
63         public System.Security.Cryptography.Oid Oid { get { throw null; } }
64     }
65     public static partial class RSACertificateExtensions
66     {
67         public static System.Security.Cryptography.X509Certificates.X509Certificate2 CopyWithPrivateKey(this System.Security.Cryptography.X509Certificates.X509Certificate2 certificate, System.Security.Cryptography.RSA privateKey) { throw null; }
68         public static System.Security.Cryptography.RSA GetRSAPrivateKey(this System.Security.Cryptography.X509Certificates.X509Certificate2 certificate) { throw null; }
69         public static System.Security.Cryptography.RSA GetRSAPublicKey(this System.Security.Cryptography.X509Certificates.X509Certificate2 certificate) { throw null; }
70     }
71     public enum StoreLocation
72     {
73         CurrentUser = 1,
74         LocalMachine = 2,
75     }
76     public enum StoreName
77     {
78         AddressBook = 1,
79         AuthRoot = 2,
80         CertificateAuthority = 3,
81         Disallowed = 4,
82         My = 5,
83         Root = 6,
84         TrustedPeople = 7,
85         TrustedPublisher = 8,
86     }
87     public sealed partial class SubjectAlternativeNameBuilder
88     {
89         public SubjectAlternativeNameBuilder() { }
90         public void AddDnsName(string dnsName) { }
91         public void AddEmailAddress(string emailAddress) { }
92         public void AddIpAddress(System.Net.IPAddress ipAddress) { }
93         public void AddUri(System.Uri uri) { }
94         public void AddUserPrincipalName(string upn) { }
95         public System.Security.Cryptography.X509Certificates.X509Extension Build(bool critical = false) { throw null; }
96     }
97     public sealed partial class X500DistinguishedName : System.Security.Cryptography.AsnEncodedData
98     {
99         public X500DistinguishedName(byte[] encodedDistinguishedName) { }
100         public X500DistinguishedName(System.Security.Cryptography.AsnEncodedData encodedDistinguishedName) { }
101         public X500DistinguishedName(System.Security.Cryptography.X509Certificates.X500DistinguishedName distinguishedName) { }
102         public X500DistinguishedName(string distinguishedName) { }
103         public X500DistinguishedName(string distinguishedName, System.Security.Cryptography.X509Certificates.X500DistinguishedNameFlags flag) { }
104         public string Name { get { throw null; } }
105         public string Decode(System.Security.Cryptography.X509Certificates.X500DistinguishedNameFlags flag) { throw null; }
106         public override string Format(bool multiLine) { throw null; }
107     }
108     [System.FlagsAttribute]
109     public enum X500DistinguishedNameFlags
110     {
111         None = 0,
112         Reversed = 1,
113         UseSemicolons = 16,
114         DoNotUsePlusSign = 32,
115         DoNotUseQuotes = 64,
116         UseCommas = 128,
117         UseNewLines = 256,
118         UseUTF8Encoding = 4096,
119         UseT61Encoding = 8192,
120         ForceUTF8Encoding = 16384,
121     }
122     public sealed partial class X509BasicConstraintsExtension : System.Security.Cryptography.X509Certificates.X509Extension
123     {
124         public X509BasicConstraintsExtension() { }
125         public X509BasicConstraintsExtension(bool certificateAuthority, bool hasPathLengthConstraint, int pathLengthConstraint, bool critical) { }
126         public X509BasicConstraintsExtension(System.Security.Cryptography.AsnEncodedData encodedBasicConstraints, bool critical) { }
127         public bool CertificateAuthority { get { throw null; } }
128         public bool HasPathLengthConstraint { get { throw null; } }
129         public int PathLengthConstraint { get { throw null; } }
130         public override void CopyFrom(System.Security.Cryptography.AsnEncodedData asnEncodedData) { }
131     }
132     public partial class X509Certificate : System.IDisposable, System.Runtime.Serialization.IDeserializationCallback, System.Runtime.Serialization.ISerializable
133     {
134         public X509Certificate() { }
135         public X509Certificate(byte[] data) { }
136         [System.CLSCompliantAttribute(false)]
137         public X509Certificate(byte[] rawData, System.Security.SecureString password) { }
138         [System.CLSCompliantAttribute(false)]
139         public X509Certificate(byte[] rawData, System.Security.SecureString password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags) { }
140         public X509Certificate(byte[] rawData, string password) { }
141         public X509Certificate(byte[] rawData, string password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags) { }
142         public X509Certificate(System.IntPtr handle) { }
143         public X509Certificate(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context) { }
144         public X509Certificate(System.Security.Cryptography.X509Certificates.X509Certificate cert) { }
145         public X509Certificate(string fileName) { }
146         [System.CLSCompliantAttribute(false)]
147         public X509Certificate(string fileName, System.Security.SecureString password) { }
148         [System.CLSCompliantAttribute(false)]
149         public X509Certificate(string fileName, System.Security.SecureString password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags) { }
150         public X509Certificate(string fileName, string password) { }
151         public X509Certificate(string fileName, string password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags) { }
152         public System.IntPtr Handle { get { throw null; } }
153         public string Issuer { get { throw null; } }
154         public string Subject { get { throw null; } }
155         public static System.Security.Cryptography.X509Certificates.X509Certificate CreateFromCertFile(string filename) { throw null; }
156         public static System.Security.Cryptography.X509Certificates.X509Certificate CreateFromSignedFile(string filename) { throw null; }
157         public void Dispose() { }
158         protected virtual void Dispose(bool disposing) { }
159         public override bool Equals(object obj) { throw null; }
160         public virtual bool Equals(System.Security.Cryptography.X509Certificates.X509Certificate other) { throw null; }
161         public virtual byte[] Export(System.Security.Cryptography.X509Certificates.X509ContentType contentType) { throw null; }
162         [System.CLSCompliantAttribute(false)]
163         public virtual byte[] Export(System.Security.Cryptography.X509Certificates.X509ContentType contentType, System.Security.SecureString password) { throw null; }
164         public virtual byte[] Export(System.Security.Cryptography.X509Certificates.X509ContentType contentType, string password) { throw null; }
165         protected static string FormatDate(System.DateTime date) { throw null; }
166         public virtual byte[] GetCertHash() { throw null; }
167         public virtual byte[] GetCertHash(System.Security.Cryptography.HashAlgorithmName hashAlgorithm) { throw null; }
168         public virtual string GetCertHashString() { throw null; }
169         public virtual string GetCertHashString(System.Security.Cryptography.HashAlgorithmName hashAlgorithm) { throw null; }
170         public virtual string GetEffectiveDateString() { throw null; }
171         public virtual string GetExpirationDateString() { throw null; }
172         public virtual string GetFormat() { throw null; }
173         public override int GetHashCode() { throw null; }
174         [System.ObsoleteAttribute("This method has been deprecated.  Please use the Issuer property instead.  https://go.microsoft.com/fwlink/?linkid=14202")]
175         public virtual string GetIssuerName() { throw null; }
176         public virtual string GetKeyAlgorithm() { throw null; }
177         public virtual byte[] GetKeyAlgorithmParameters() { throw null; }
178         public virtual string GetKeyAlgorithmParametersString() { throw null; }
179         [System.ObsoleteAttribute("This method has been deprecated.  Please use the Subject property instead.  https://go.microsoft.com/fwlink/?linkid=14202")]
180         public virtual string GetName() { throw null; }
181         public virtual byte[] GetPublicKey() { throw null; }
182         public virtual string GetPublicKeyString() { throw null; }
183         public virtual byte[] GetRawCertData() { throw null; }
184         public virtual string GetRawCertDataString() { throw null; }
185         public virtual byte[] GetSerialNumber() { throw null; }
186         public virtual string GetSerialNumberString() { throw null; }
187         public virtual void Import(byte[] rawData) { }
188         [System.CLSCompliantAttribute(false)]
189         public virtual void Import(byte[] rawData, System.Security.SecureString password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags) { }
190         public virtual void Import(byte[] rawData, string password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags) { }
191         public virtual void Import(string fileName) { }
192         [System.CLSCompliantAttribute(false)]
193         public virtual void Import(string fileName, System.Security.SecureString password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags) { }
194         public virtual void Import(string fileName, string password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags) { }
195         public virtual void Reset() { }
196         void System.Runtime.Serialization.IDeserializationCallback.OnDeserialization(object sender) { }
197         void System.Runtime.Serialization.ISerializable.GetObjectData(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context) { }
198         public override string ToString() { throw null; }
199         public virtual string ToString(bool fVerbose) { throw null; }
200         public virtual bool TryGetCertHash(System.Security.Cryptography.HashAlgorithmName hashAlgorithm, System.Span<byte> destination, out int bytesWritten) { throw null; }
201     }
202     public partial class X509Certificate2 : System.Security.Cryptography.X509Certificates.X509Certificate
203     {
204         public X509Certificate2() { }
205         public X509Certificate2(byte[] rawData) { }
206         [System.CLSCompliantAttribute(false)]
207         public X509Certificate2(byte[] rawData, System.Security.SecureString password) { }
208         [System.CLSCompliantAttribute(false)]
209         public X509Certificate2(byte[] rawData, System.Security.SecureString password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags) { }
210         public X509Certificate2(byte[] rawData, string password) { }
211         public X509Certificate2(byte[] rawData, string password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags) { }
212         public X509Certificate2(System.IntPtr handle) { }
213         protected X509Certificate2(System.Runtime.Serialization.SerializationInfo info, System.Runtime.Serialization.StreamingContext context) { }
214         public X509Certificate2(System.Security.Cryptography.X509Certificates.X509Certificate certificate) { }
215         public X509Certificate2(string fileName) { }
216         [System.CLSCompliantAttribute(false)]
217         public X509Certificate2(string fileName, System.Security.SecureString password) { }
218         [System.CLSCompliantAttribute(false)]
219         public X509Certificate2(string fileName, System.Security.SecureString password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags) { }
220         public X509Certificate2(string fileName, string password) { }
221         public X509Certificate2(string fileName, string password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags) { }
222         public bool Archived { get { throw null; } set { } }
223         public System.Security.Cryptography.X509Certificates.X509ExtensionCollection Extensions { get { throw null; } }
224         public string FriendlyName { get { throw null; } set { } }
225         public bool HasPrivateKey { get { throw null; } }
226         public System.Security.Cryptography.X509Certificates.X500DistinguishedName IssuerName { get { throw null; } }
227         public System.DateTime NotAfter { get { throw null; } }
228         public System.DateTime NotBefore { get { throw null; } }
229         public System.Security.Cryptography.AsymmetricAlgorithm PrivateKey { get { throw null; } set { } }
230         public System.Security.Cryptography.X509Certificates.PublicKey PublicKey { get { throw null; } }
231         public byte[] RawData { get { throw null; } }
232         public string SerialNumber { get { throw null; } }
233         public System.Security.Cryptography.Oid SignatureAlgorithm { get { throw null; } }
234         public System.Security.Cryptography.X509Certificates.X500DistinguishedName SubjectName { get { throw null; } }
235         public string Thumbprint { get { throw null; } }
236         public int Version { get { throw null; } }
237         public static System.Security.Cryptography.X509Certificates.X509ContentType GetCertContentType(byte[] rawData) { throw null; }
238         public static System.Security.Cryptography.X509Certificates.X509ContentType GetCertContentType(string fileName) { throw null; }
239         public string GetNameInfo(System.Security.Cryptography.X509Certificates.X509NameType nameType, bool forIssuer) { throw null; }
240         public override void Import(byte[] rawData) { }
241         [System.CLSCompliantAttribute(false)]
242         public override void Import(byte[] rawData, System.Security.SecureString password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags) { }
243         public override void Import(byte[] rawData, string password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags) { }
244         public override void Import(string fileName) { }
245         [System.CLSCompliantAttribute(false)]
246         public override void Import(string fileName, System.Security.SecureString password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags) { }
247         public override void Import(string fileName, string password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags) { }
248         public override void Reset() { }
249         public override string ToString() { throw null; }
250         public override string ToString(bool verbose) { throw null; }
251         public bool Verify() { throw null; }
252     }
253     public partial class X509Certificate2Collection : System.Security.Cryptography.X509Certificates.X509CertificateCollection
254     {
255         public X509Certificate2Collection() { }
256         public X509Certificate2Collection(System.Security.Cryptography.X509Certificates.X509Certificate2 certificate) { }
257         public X509Certificate2Collection(System.Security.Cryptography.X509Certificates.X509Certificate2Collection certificates) { }
258         public X509Certificate2Collection(System.Security.Cryptography.X509Certificates.X509Certificate2[] certificates) { }
259         public new System.Security.Cryptography.X509Certificates.X509Certificate2 this[int index] { get { throw null; } set { } }
260         public int Add(System.Security.Cryptography.X509Certificates.X509Certificate2 certificate) { throw null; }
261         public void AddRange(System.Security.Cryptography.X509Certificates.X509Certificate2Collection certificates) { }
262         public void AddRange(System.Security.Cryptography.X509Certificates.X509Certificate2[] certificates) { }
263         public bool Contains(System.Security.Cryptography.X509Certificates.X509Certificate2 certificate) { throw null; }
264         public byte[] Export(System.Security.Cryptography.X509Certificates.X509ContentType contentType) { throw null; }
265         public byte[] Export(System.Security.Cryptography.X509Certificates.X509ContentType contentType, string password) { throw null; }
266         public System.Security.Cryptography.X509Certificates.X509Certificate2Collection Find(System.Security.Cryptography.X509Certificates.X509FindType findType, object findValue, bool validOnly) { throw null; }
267         public new System.Security.Cryptography.X509Certificates.X509Certificate2Enumerator GetEnumerator() { throw null; }
268         public void Import(byte[] rawData) { }
269         public void Import(byte[] rawData, string password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags) { }
270         public void Import(string fileName) { }
271         public void Import(string fileName, string password, System.Security.Cryptography.X509Certificates.X509KeyStorageFlags keyStorageFlags) { }
272         public void Insert(int index, System.Security.Cryptography.X509Certificates.X509Certificate2 certificate) { }
273         public void Remove(System.Security.Cryptography.X509Certificates.X509Certificate2 certificate) { }
274         public void RemoveRange(System.Security.Cryptography.X509Certificates.X509Certificate2Collection certificates) { }
275         public void RemoveRange(System.Security.Cryptography.X509Certificates.X509Certificate2[] certificates) { }
276     }
277     public sealed partial class X509Certificate2Enumerator : System.Collections.IEnumerator
278     {
279         internal X509Certificate2Enumerator() { }
280         public System.Security.Cryptography.X509Certificates.X509Certificate2 Current { get { throw null; } }
281         object System.Collections.IEnumerator.Current { get { throw null; } }
282         public bool MoveNext() { throw null; }
283         public void Reset() { }
284         bool System.Collections.IEnumerator.MoveNext() { throw null; }
285         void System.Collections.IEnumerator.Reset() { }
286     }
287     public partial class X509CertificateCollection : System.Collections.CollectionBase
288     {
289         public X509CertificateCollection() { }
290         public X509CertificateCollection(System.Security.Cryptography.X509Certificates.X509CertificateCollection value) { }
291         public X509CertificateCollection(System.Security.Cryptography.X509Certificates.X509Certificate[] value) { }
292         public System.Security.Cryptography.X509Certificates.X509Certificate this[int index] { get { throw null; } set { } }
293         public int Add(System.Security.Cryptography.X509Certificates.X509Certificate value) { throw null; }
294         public void AddRange(System.Security.Cryptography.X509Certificates.X509CertificateCollection value) { }
295         public void AddRange(System.Security.Cryptography.X509Certificates.X509Certificate[] value) { }
296         public bool Contains(System.Security.Cryptography.X509Certificates.X509Certificate value) { throw null; }
297         public void CopyTo(System.Security.Cryptography.X509Certificates.X509Certificate[] array, int index) { }
298         public new System.Security.Cryptography.X509Certificates.X509CertificateCollection.X509CertificateEnumerator GetEnumerator() { throw null; }
299         public override int GetHashCode() { throw null; }
300         public int IndexOf(System.Security.Cryptography.X509Certificates.X509Certificate value) { throw null; }
301         public void Insert(int index, System.Security.Cryptography.X509Certificates.X509Certificate value) { }
302         protected override void OnValidate(object value) { }
303         public void Remove(System.Security.Cryptography.X509Certificates.X509Certificate value) { }
304         public partial class X509CertificateEnumerator : System.Collections.IEnumerator
305         {
306             public X509CertificateEnumerator(System.Security.Cryptography.X509Certificates.X509CertificateCollection mappings) { }
307             public System.Security.Cryptography.X509Certificates.X509Certificate Current { get { throw null; } }
308             object System.Collections.IEnumerator.Current { get { throw null; } }
309             public bool MoveNext() { throw null; }
310             public void Reset() { }
311             bool System.Collections.IEnumerator.MoveNext() { throw null; }
312             void System.Collections.IEnumerator.Reset() { }
313         }
314     }
315     public partial class X509Chain : System.IDisposable
316     {
317         public X509Chain() { }
318         public X509Chain(bool useMachineContext) { }
319         public X509Chain(System.IntPtr chainContext) { }
320         public System.IntPtr ChainContext { get { throw null; } }
321         public System.Security.Cryptography.X509Certificates.X509ChainElementCollection ChainElements { get { throw null; } }
322         public System.Security.Cryptography.X509Certificates.X509ChainPolicy ChainPolicy { get { throw null; } set { } }
323         public System.Security.Cryptography.X509Certificates.X509ChainStatus[] ChainStatus { get { throw null; } }
324         public Microsoft.Win32.SafeHandles.SafeX509ChainHandle SafeHandle { get { throw null; } }
325         public bool Build(System.Security.Cryptography.X509Certificates.X509Certificate2 certificate) { throw null; }
326         public static System.Security.Cryptography.X509Certificates.X509Chain Create() { throw null; }
327         public void Dispose() { }
328         protected virtual void Dispose(bool disposing) { }
329         public void Reset() { }
330     }
331     public partial class X509ChainElement
332     {
333         internal X509ChainElement() { }
334         public System.Security.Cryptography.X509Certificates.X509Certificate2 Certificate { get { throw null; } }
335         public System.Security.Cryptography.X509Certificates.X509ChainStatus[] ChainElementStatus { get { throw null; } }
336         public string Information { get { throw null; } }
337     }
338     public sealed partial class X509ChainElementCollection : System.Collections.ICollection, System.Collections.IEnumerable
339     {
340         internal X509ChainElementCollection() { }
341         public int Count { get { throw null; } }
342         public bool IsSynchronized { get { throw null; } }
343         public System.Security.Cryptography.X509Certificates.X509ChainElement this[int index] { get { throw null; } }
344         public object SyncRoot { get { throw null; } }
345         public void CopyTo(System.Security.Cryptography.X509Certificates.X509ChainElement[] array, int index) { }
346         public System.Security.Cryptography.X509Certificates.X509ChainElementEnumerator GetEnumerator() { throw null; }
347         void System.Collections.ICollection.CopyTo(System.Array array, int index) { }
348         System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() { throw null; }
349     }
350     public sealed partial class X509ChainElementEnumerator : System.Collections.IEnumerator
351     {
352         internal X509ChainElementEnumerator() { }
353         public System.Security.Cryptography.X509Certificates.X509ChainElement Current { get { throw null; } }
354         object System.Collections.IEnumerator.Current { get { throw null; } }
355         public bool MoveNext() { throw null; }
356         public void Reset() { }
357     }
358     public sealed partial class X509ChainPolicy
359     {
360         public X509ChainPolicy() { }
361         public System.Security.Cryptography.OidCollection ApplicationPolicy { get { throw null; } }
362         public System.Security.Cryptography.OidCollection CertificatePolicy { get { throw null; } }
363         public System.Security.Cryptography.X509Certificates.X509Certificate2Collection CustomTrustStore { get { throw null; } }
364         public System.Security.Cryptography.X509Certificates.X509Certificate2Collection ExtraStore { get { throw null; } }
365         public System.Security.Cryptography.X509Certificates.X509RevocationFlag RevocationFlag { get { throw null; } set { } }
366         public System.Security.Cryptography.X509Certificates.X509RevocationMode RevocationMode { get { throw null; } set { } }
367         public System.Security.Cryptography.X509Certificates.X509ChainTrustMode TrustMode { get { throw null; } set { } }
368         public System.TimeSpan UrlRetrievalTimeout { get { throw null; } set { } }
369         public System.Security.Cryptography.X509Certificates.X509VerificationFlags VerificationFlags { get { throw null; } set { } }
370         public System.DateTime VerificationTime { get { throw null; } set { } }
371         public void Reset() { }
372     }
373     public partial struct X509ChainStatus
374     {
375         private object _dummy;
376         private int _dummyPrimitive;
377         public System.Security.Cryptography.X509Certificates.X509ChainStatusFlags Status { readonly get { throw null; } set { } }
378         public string StatusInformation { get { throw null; } set { } }
379     }
380     [System.FlagsAttribute]
381     public enum X509ChainStatusFlags
382     {
383         NoError = 0,
384         NotTimeValid = 1,
385         NotTimeNested = 2,
386         Revoked = 4,
387         NotSignatureValid = 8,
388         NotValidForUsage = 16,
389         UntrustedRoot = 32,
390         RevocationStatusUnknown = 64,
391         Cyclic = 128,
392         InvalidExtension = 256,
393         InvalidPolicyConstraints = 512,
394         InvalidBasicConstraints = 1024,
395         InvalidNameConstraints = 2048,
396         HasNotSupportedNameConstraint = 4096,
397         HasNotDefinedNameConstraint = 8192,
398         HasNotPermittedNameConstraint = 16384,
399         HasExcludedNameConstraint = 32768,
400         PartialChain = 65536,
401         CtlNotTimeValid = 131072,
402         CtlNotSignatureValid = 262144,
403         CtlNotValidForUsage = 524288,
404         HasWeakSignature = 1048576,
405         OfflineRevocation = 16777216,
406         NoIssuanceChainPolicy = 33554432,
407         ExplicitDistrust = 67108864,
408         HasNotSupportedCriticalExtension = 134217728,
409     }
410     public enum X509ChainTrustMode
411     {
412         System = 0,
413         CustomRootTrust = 1,
414     }
415     public enum X509ContentType
416     {
417         Unknown = 0,
418         Cert = 1,
419         SerializedCert = 2,
420         Pfx = 3,
421         Pkcs12 = 3,
422         SerializedStore = 4,
423         Pkcs7 = 5,
424         Authenticode = 6,
425     }
426     public sealed partial class X509EnhancedKeyUsageExtension : System.Security.Cryptography.X509Certificates.X509Extension
427     {
428         public X509EnhancedKeyUsageExtension() { }
429         public X509EnhancedKeyUsageExtension(System.Security.Cryptography.AsnEncodedData encodedEnhancedKeyUsages, bool critical) { }
430         public X509EnhancedKeyUsageExtension(System.Security.Cryptography.OidCollection enhancedKeyUsages, bool critical) { }
431         public System.Security.Cryptography.OidCollection EnhancedKeyUsages { get { throw null; } }
432         public override void CopyFrom(System.Security.Cryptography.AsnEncodedData asnEncodedData) { }
433     }
434     public partial class X509Extension : System.Security.Cryptography.AsnEncodedData
435     {
436         protected X509Extension() { }
437         public X509Extension(System.Security.Cryptography.AsnEncodedData encodedExtension, bool critical) { }
438         public X509Extension(System.Security.Cryptography.Oid oid, byte[] rawData, bool critical) { }
439         public X509Extension(string oid, byte[] rawData, bool critical) { }
440         public bool Critical { get { throw null; } set { } }
441         public override void CopyFrom(System.Security.Cryptography.AsnEncodedData asnEncodedData) { }
442     }
443     public sealed partial class X509ExtensionCollection : System.Collections.ICollection, System.Collections.IEnumerable
444     {
445         public X509ExtensionCollection() { }
446         public int Count { get { throw null; } }
447         public bool IsSynchronized { get { throw null; } }
448         public System.Security.Cryptography.X509Certificates.X509Extension this[int index] { get { throw null; } }
449         public System.Security.Cryptography.X509Certificates.X509Extension this[string oid] { get { throw null; } }
450         public object SyncRoot { get { throw null; } }
451         public int Add(System.Security.Cryptography.X509Certificates.X509Extension extension) { throw null; }
452         public void CopyTo(System.Security.Cryptography.X509Certificates.X509Extension[] array, int index) { }
453         public System.Security.Cryptography.X509Certificates.X509ExtensionEnumerator GetEnumerator() { throw null; }
454         void System.Collections.ICollection.CopyTo(System.Array array, int index) { }
455         System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator() { throw null; }
456     }
457     public sealed partial class X509ExtensionEnumerator : System.Collections.IEnumerator
458     {
459         internal X509ExtensionEnumerator() { }
460         public System.Security.Cryptography.X509Certificates.X509Extension Current { get { throw null; } }
461         object System.Collections.IEnumerator.Current { get { throw null; } }
462         public bool MoveNext() { throw null; }
463         public void Reset() { }
464     }
465     public enum X509FindType
466     {
467         FindByThumbprint = 0,
468         FindBySubjectName = 1,
469         FindBySubjectDistinguishedName = 2,
470         FindByIssuerName = 3,
471         FindByIssuerDistinguishedName = 4,
472         FindBySerialNumber = 5,
473         FindByTimeValid = 6,
474         FindByTimeNotYetValid = 7,
475         FindByTimeExpired = 8,
476         FindByTemplateName = 9,
477         FindByApplicationPolicy = 10,
478         FindByCertificatePolicy = 11,
479         FindByExtension = 12,
480         FindByKeyUsage = 13,
481         FindBySubjectKeyIdentifier = 14,
482     }
483     public enum X509IncludeOption
484     {
485         None = 0,
486         ExcludeRoot = 1,
487         EndCertOnly = 2,
488         WholeChain = 3,
489     }
490     [System.FlagsAttribute]
491     public enum X509KeyStorageFlags
492     {
493         DefaultKeySet = 0,
494         UserKeySet = 1,
495         MachineKeySet = 2,
496         Exportable = 4,
497         UserProtected = 8,
498         PersistKeySet = 16,
499         EphemeralKeySet = 32,
500     }
501     public sealed partial class X509KeyUsageExtension : System.Security.Cryptography.X509Certificates.X509Extension
502     {
503         public X509KeyUsageExtension() { }
504         public X509KeyUsageExtension(System.Security.Cryptography.AsnEncodedData encodedKeyUsage, bool critical) { }
505         public X509KeyUsageExtension(System.Security.Cryptography.X509Certificates.X509KeyUsageFlags keyUsages, bool critical) { }
506         public System.Security.Cryptography.X509Certificates.X509KeyUsageFlags KeyUsages { get { throw null; } }
507         public override void CopyFrom(System.Security.Cryptography.AsnEncodedData asnEncodedData) { }
508     }
509     [System.FlagsAttribute]
510     public enum X509KeyUsageFlags
511     {
512         None = 0,
513         EncipherOnly = 1,
514         CrlSign = 2,
515         KeyCertSign = 4,
516         KeyAgreement = 8,
517         DataEncipherment = 16,
518         KeyEncipherment = 32,
519         NonRepudiation = 64,
520         DigitalSignature = 128,
521         DecipherOnly = 32768,
522     }
523     public enum X509NameType
524     {
525         SimpleName = 0,
526         EmailName = 1,
527         UpnName = 2,
528         DnsName = 3,
529         DnsFromAlternativeName = 4,
530         UrlName = 5,
531     }
532     public enum X509RevocationFlag
533     {
534         EndCertificateOnly = 0,
535         EntireChain = 1,
536         ExcludeRoot = 2,
537     }
538     public enum X509RevocationMode
539     {
540         NoCheck = 0,
541         Online = 1,
542         Offline = 2,
543     }
544     public abstract partial class X509SignatureGenerator
545     {
546         protected X509SignatureGenerator() { }
547         public System.Security.Cryptography.X509Certificates.PublicKey PublicKey { get { throw null; } }
548         protected abstract System.Security.Cryptography.X509Certificates.PublicKey BuildPublicKey();
549         public static System.Security.Cryptography.X509Certificates.X509SignatureGenerator CreateForECDsa(System.Security.Cryptography.ECDsa key) { throw null; }
550         public static System.Security.Cryptography.X509Certificates.X509SignatureGenerator CreateForRSA(System.Security.Cryptography.RSA key, System.Security.Cryptography.RSASignaturePadding signaturePadding) { throw null; }
551         public abstract byte[] GetSignatureAlgorithmIdentifier(System.Security.Cryptography.HashAlgorithmName hashAlgorithm);
552         public abstract byte[] SignData(byte[] data, System.Security.Cryptography.HashAlgorithmName hashAlgorithm);
553     }
554     public sealed partial class X509Store : System.IDisposable
555     {
556         public X509Store() { }
557         public X509Store(System.IntPtr storeHandle) { }
558         public X509Store(System.Security.Cryptography.X509Certificates.StoreLocation storeLocation) { }
559         public X509Store(System.Security.Cryptography.X509Certificates.StoreName storeName) { }
560         public X509Store(System.Security.Cryptography.X509Certificates.StoreName storeName, System.Security.Cryptography.X509Certificates.StoreLocation storeLocation) { }
561         public X509Store(System.Security.Cryptography.X509Certificates.StoreName storeName, System.Security.Cryptography.X509Certificates.StoreLocation storeLocation, System.Security.Cryptography.X509Certificates.OpenFlags flags) { }
562         public X509Store(string storeName) { }
563         public X509Store(string storeName, System.Security.Cryptography.X509Certificates.StoreLocation storeLocation) { }
564         public X509Store(string storeName, System.Security.Cryptography.X509Certificates.StoreLocation storeLocation, System.Security.Cryptography.X509Certificates.OpenFlags flags) { }
565         public System.Security.Cryptography.X509Certificates.X509Certificate2Collection Certificates { get { throw null; } }
566         public bool IsOpen { get { throw null; } }
567         public System.Security.Cryptography.X509Certificates.StoreLocation Location { get { throw null; } }
568         public string Name { get { throw null; } }
569         public System.IntPtr StoreHandle { get { throw null; } }
570         public void Add(System.Security.Cryptography.X509Certificates.X509Certificate2 certificate) { }
571         public void AddRange(System.Security.Cryptography.X509Certificates.X509Certificate2Collection certificates) { }
572         public void Close() { }
573         public void Dispose() { }
574         public void Open(System.Security.Cryptography.X509Certificates.OpenFlags flags) { }
575         public void Remove(System.Security.Cryptography.X509Certificates.X509Certificate2 certificate) { }
576         public void RemoveRange(System.Security.Cryptography.X509Certificates.X509Certificate2Collection certificates) { }
577     }
578     public sealed partial class X509SubjectKeyIdentifierExtension : System.Security.Cryptography.X509Certificates.X509Extension
579     {
580         public X509SubjectKeyIdentifierExtension() { }
581         public X509SubjectKeyIdentifierExtension(byte[] subjectKeyIdentifier, bool critical) { }
582         public X509SubjectKeyIdentifierExtension(System.Security.Cryptography.AsnEncodedData encodedSubjectKeyIdentifier, bool critical) { }
583         public X509SubjectKeyIdentifierExtension(System.Security.Cryptography.X509Certificates.PublicKey key, bool critical) { }
584         public X509SubjectKeyIdentifierExtension(System.Security.Cryptography.X509Certificates.PublicKey key, System.Security.Cryptography.X509Certificates.X509SubjectKeyIdentifierHashAlgorithm algorithm, bool critical) { }
585         public X509SubjectKeyIdentifierExtension(string subjectKeyIdentifier, bool critical) { }
586         public string SubjectKeyIdentifier { get { throw null; } }
587         public override void CopyFrom(System.Security.Cryptography.AsnEncodedData asnEncodedData) { }
588     }
589     public enum X509SubjectKeyIdentifierHashAlgorithm
590     {
591         Sha1 = 0,
592         ShortSha1 = 1,
593         CapiSha1 = 2,
594     }
595     [System.FlagsAttribute]
596     public enum X509VerificationFlags
597     {
598         NoFlag = 0,
599         IgnoreNotTimeValid = 1,
600         IgnoreCtlNotTimeValid = 2,
601         IgnoreNotTimeNested = 4,
602         IgnoreInvalidBasicConstraints = 8,
603         AllowUnknownCertificateAuthority = 16,
604         IgnoreWrongUsage = 32,
605         IgnoreInvalidName = 64,
606         IgnoreInvalidPolicy = 128,
607         IgnoreEndRevocationUnknown = 256,
608         IgnoreCtlSignerRevocationUnknown = 512,
609         IgnoreCertificateAuthorityRevocationUnknown = 1024,
610         IgnoreRootRevocationUnknown = 2048,
611         AllFlags = 4095,
612     }
613 }