/
Pkcs12CertBag.xml
221 lines (211 loc) · 14.6 KB
/
Pkcs12CertBag.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
<Type Name="Pkcs12CertBag" FullName="System.Security.Cryptography.Pkcs.Pkcs12CertBag">
<TypeSignature Language="C#" Value="public sealed class Pkcs12CertBag : System.Security.Cryptography.Pkcs.Pkcs12SafeBag" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi sealed beforefieldinit Pkcs12CertBag extends System.Security.Cryptography.Pkcs.Pkcs12SafeBag" />
<TypeSignature Language="DocId" Value="T:System.Security.Cryptography.Pkcs.Pkcs12CertBag" />
<TypeSignature Language="VB.NET" Value="Public NotInheritable Class Pkcs12CertBag
Inherits Pkcs12SafeBag" />
<TypeSignature Language="F#" Value="type Pkcs12CertBag = class
 inherit Pkcs12SafeBag" />
<TypeSignature Language="C++ CLI" Value="public ref class Pkcs12CertBag sealed : System::Security::Cryptography::Pkcs::Pkcs12SafeBag" />
<AssemblyInfo>
<AssemblyName>System.Security.Cryptography.Pkcs</AssemblyName>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>5.0.0.0</AssemblyVersion>
<AssemblyVersion>6.0.0.0</AssemblyVersion>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Security.Cryptography.Pkcs.Pkcs12SafeBag</BaseTypeName>
</Base>
<Interfaces />
<Docs>
<summary>Represents the PKCS#12 CertBag. This class cannot be inherited.</summary>
<remarks>To be added.</remarks>
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public Pkcs12CertBag (System.Security.Cryptography.Oid certificateType, ReadOnlyMemory<byte> encodedCertificate);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(class System.Security.Cryptography.Oid certificateType, valuetype System.ReadOnlyMemory`1<unsigned int8> encodedCertificate) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Security.Cryptography.Pkcs.Pkcs12CertBag.#ctor(System.Security.Cryptography.Oid,System.ReadOnlyMemory{System.Byte})" />
<MemberSignature Language="VB.NET" Value="Public Sub New (certificateType As Oid, encodedCertificate As ReadOnlyMemory(Of Byte))" />
<MemberSignature Language="F#" Value="new System.Security.Cryptography.Pkcs.Pkcs12CertBag : System.Security.Cryptography.Oid * ReadOnlyMemory<byte> -> System.Security.Cryptography.Pkcs.Pkcs12CertBag" Usage="new System.Security.Cryptography.Pkcs.Pkcs12CertBag (certificateType, encodedCertificate)" />
<MemberSignature Language="C++ CLI" Value="public:
 Pkcs12CertBag(System::Security::Cryptography::Oid ^ certificateType, ReadOnlyMemory<System::Byte> encodedCertificate);" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>System.Security.Cryptography.Pkcs</AssemblyName>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>5.0.0.0</AssemblyVersion>
<AssemblyVersion>6.0.0.0</AssemblyVersion>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters>
<Parameter Name="certificateType" Type="System.Security.Cryptography.Oid">
<Attributes>
<Attribute FrameworkAlternate="net-8.0;net-9.0;windowsdesktop-8.0;windowsdesktop-9.0">
<AttributeName Language="C#">[System.Runtime.CompilerServices.Nullable(1)]</AttributeName>
<AttributeName Language="F#">[<System.Runtime.CompilerServices.Nullable(1)>]</AttributeName>
</Attribute>
</Attributes>
</Parameter>
<Parameter Name="encodedCertificate" Type="System.ReadOnlyMemory<System.Byte>" />
</Parameters>
<Docs>
<param name="certificateType">The Object Identifier (OID) for the certificate type.</param>
<param name="encodedCertificate">The encoded certificate value.</param>
<summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Pkcs.Pkcs12CertBag" /> class using the specified certificate type and encoding.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
No validation is done to ensure that the `encodedCertificate` value is correct for the indicated `certificateType`.
Note that for X.509 public-key certificates, the correct encoding for a CertBag value is to wrap the DER-encoded certificate in an OCTET STRING.
]]></format>
</remarks>
<exception cref="T:System.ArgumentNullException">The <paramref name="certificateType" /> parameter is <see langword="null" />.</exception>
<exception cref="T:System.Security.Cryptography.CryptographicException">The <paramref name="encodedCertificate" /> parameter does not represent a single ASN.1 BER-encoded value.</exception>
</Docs>
</Member>
<Member MemberName="EncodedCertificate">
<MemberSignature Language="C#" Value="public ReadOnlyMemory<byte> EncodedCertificate { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance valuetype System.ReadOnlyMemory`1<unsigned int8> EncodedCertificate" />
<MemberSignature Language="DocId" Value="P:System.Security.Cryptography.Pkcs.Pkcs12CertBag.EncodedCertificate" />
<MemberSignature Language="VB.NET" Value="Public ReadOnly Property EncodedCertificate As ReadOnlyMemory(Of Byte)" />
<MemberSignature Language="F#" Value="member this.EncodedCertificate : ReadOnlyMemory<byte>" Usage="System.Security.Cryptography.Pkcs.Pkcs12CertBag.EncodedCertificate" />
<MemberSignature Language="C++ CLI" Value="public:
 property ReadOnlyMemory<System::Byte> EncodedCertificate { ReadOnlyMemory<System::Byte> get(); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Security.Cryptography.Pkcs</AssemblyName>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>5.0.0.0</AssemblyVersion>
<AssemblyVersion>6.0.0.0</AssemblyVersion>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.ReadOnlyMemory<System.Byte></ReturnType>
</ReturnValue>
<Docs>
<summary>Gets the uninterpreted certificate contents of the CertSafeBag.</summary>
<value>The uninterpreted certificate contents of the CertSafeBag.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
For X.509 public-key certificates, the value of this property is a BER-encoded OCTET STRING value encompassing the certificate's DER encoded value.
]]></format>
</remarks>
<altmember cref="M:System.Security.Cryptography.Pkcs.Pkcs12CertBag.GetCertificate" />
</Docs>
</Member>
<Member MemberName="GetCertificate">
<MemberSignature Language="C#" Value="public System.Security.Cryptography.X509Certificates.X509Certificate2 GetCertificate ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance class System.Security.Cryptography.X509Certificates.X509Certificate2 GetCertificate() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Security.Cryptography.Pkcs.Pkcs12CertBag.GetCertificate" />
<MemberSignature Language="VB.NET" Value="Public Function GetCertificate () As X509Certificate2" />
<MemberSignature Language="F#" Value="member this.GetCertificate : unit -> System.Security.Cryptography.X509Certificates.X509Certificate2" Usage="pkcs12CertBag.GetCertificate " />
<MemberSignature Language="C++ CLI" Value="public:
 System::Security::Cryptography::X509Certificates::X509Certificate2 ^ GetCertificate();" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.Security.Cryptography.Pkcs</AssemblyName>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>5.0.0.0</AssemblyVersion>
<AssemblyVersion>6.0.0.0</AssemblyVersion>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute FrameworkAlternate="net-8.0;net-9.0;windowsdesktop-8.0;windowsdesktop-9.0">
<AttributeName Language="C#">[System.Runtime.CompilerServices.NullableContext(1)]</AttributeName>
<AttributeName Language="F#">[<System.Runtime.CompilerServices.NullableContext(1)>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Security.Cryptography.X509Certificates.X509Certificate2</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Gets the contents of the CertBag interpreted as an X.509 public key certificate.</summary>
<returns>A certificate decoded from the contents of the CertBag.</returns>
<remarks>To be added.</remarks>
<exception cref="T:System.InvalidOperationException">The content type is not the X.509 public key certificate content type.</exception>
<exception cref="T:System.Security.Cryptography.CryptographicException">The contents were not valid for the X.509 certificate content type.</exception>
<altmember cref="P:System.Security.Cryptography.Pkcs.Pkcs12CertBag.IsX509Certificate" />
</Docs>
</Member>
<Member MemberName="GetCertificateType">
<MemberSignature Language="C#" Value="public System.Security.Cryptography.Oid GetCertificateType ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig instance class System.Security.Cryptography.Oid GetCertificateType() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Security.Cryptography.Pkcs.Pkcs12CertBag.GetCertificateType" />
<MemberSignature Language="VB.NET" Value="Public Function GetCertificateType () As Oid" />
<MemberSignature Language="F#" Value="member this.GetCertificateType : unit -> System.Security.Cryptography.Oid" Usage="pkcs12CertBag.GetCertificateType " />
<MemberSignature Language="C++ CLI" Value="public:
 System::Security::Cryptography::Oid ^ GetCertificateType();" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>System.Security.Cryptography.Pkcs</AssemblyName>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>5.0.0.0</AssemblyVersion>
<AssemblyVersion>6.0.0.0</AssemblyVersion>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute FrameworkAlternate="net-8.0;net-9.0;windowsdesktop-8.0;windowsdesktop-9.0">
<AttributeName Language="C#">[System.Runtime.CompilerServices.NullableContext(1)]</AttributeName>
<AttributeName Language="F#">[<System.Runtime.CompilerServices.NullableContext(1)>]</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Security.Cryptography.Oid</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Gets the Object Identifier (OID) which identifies the content type of the encoded certificte value.</summary>
<returns>The Object Identifier (OID) which identifies the content type of the encoded certificate value.</returns>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
IETF RFC 7292 defines two content types for a CertBag: X.509 Public Key Certificate (1.2.840.113549.1.9.22.1) and SDSI Certificate (1.2.840.113549.1.9.22.2), as well as indicating other types could be added in the future. This type has special support for X.509 Public Key Certificates, which are represented in .NET by the <xref:System.Security.Cryptography.X509Certificates.X509Certificate2> class, via the <xref:System.Security.Cryptography.Pkcs.Pkcs12CertBag.IsX509Certificate> and <xref:System.Security.Cryptography.Pkcs.Pkcs12CertBag.GetCertificate> members. This type does not have special support for SDSI certificates, but callers expecting an SDSI certificate (or a certificate type defined after IETF RFC 7292) can process the value directly via the <xref:System.Security.Cryptography.Pkcs.Pkcs12CertBag.EncodedCertificate> property.
]]></format>
</remarks>
<altmember cref="P:System.Security.Cryptography.Pkcs.Pkcs12CertBag.IsX509Certificate" />
</Docs>
</Member>
<Member MemberName="IsX509Certificate">
<MemberSignature Language="C#" Value="public bool IsX509Certificate { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance bool IsX509Certificate" />
<MemberSignature Language="DocId" Value="P:System.Security.Cryptography.Pkcs.Pkcs12CertBag.IsX509Certificate" />
<MemberSignature Language="VB.NET" Value="Public ReadOnly Property IsX509Certificate As Boolean" />
<MemberSignature Language="F#" Value="member this.IsX509Certificate : bool" Usage="System.Security.Cryptography.Pkcs.Pkcs12CertBag.IsX509Certificate" />
<MemberSignature Language="C++ CLI" Value="public:
 property bool IsX509Certificate { bool get(); };" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>System.Security.Cryptography.Pkcs</AssemblyName>
<AssemblyVersion>4.1.0.0</AssemblyVersion>
<AssemblyVersion>4.1.1.0</AssemblyVersion>
<AssemblyVersion>5.0.0.0</AssemblyVersion>
<AssemblyVersion>6.0.0.0</AssemblyVersion>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets a value indicating whether the content type of the encoded certificate value is the X.509 public key certificate content type.</summary>
<value>
<see langword="true" /> if the content type is the X.509 public key certificate content type (1.2.840.113549.1.9.22.1); otherwise, <see langword="false" />.</value>
<remarks>To be added.</remarks>
<altmember cref="M:System.Security.Cryptography.Pkcs.Pkcs12CertBag.GetCertificateType" />
</Docs>
</Member>
</Members>
</Type>