1 <?xml version="1.0" encoding="utf-8"?><doc>
3 <name>System.Security.Cryptography.Algorithms</name>
6 <member name="T:System.Security.Cryptography.AesManaged">
7 <summary>Provides a managed implementation of the Advanced Encryption Standard (AES) symmetric algorithm.</summary>
9 <member name="M:System.Security.Cryptography.AesManaged.#ctor">
10 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.AesManaged"></see> class.</summary>
11 <exception cref="T:System.Security.Cryptography.CryptographicException">The Windows security policy setting for FIPS is enabled.</exception>
12 <exception cref="T:System.InvalidOperationException">This implementation is not part of the Windows Platform FIPS-validated cryptographic algorithms.</exception>
14 <member name="P:System.Security.Cryptography.AesManaged.BlockSize">
17 <member name="M:System.Security.Cryptography.AesManaged.CreateDecryptor">
18 <summary>Creates a symmetric decryptor object using the current key and initialization vector (IV).</summary>
19 <returns>A symmetric decryptor object.</returns>
21 <member name="M:System.Security.Cryptography.AesManaged.CreateDecryptor(System.Byte[],System.Byte[])">
22 <summary>Creates a symmetric decryptor object using the specified key and initialization vector (IV).</summary>
23 <param name="rgbKey"></param>
24 <param name="rgbIV"></param>
25 <returns>A symmetric decryptor object.</returns>
26 <exception cref="T:System.ArgumentNullException"><paramref name="key">key</paramref> or <paramref name="iv">iv</paramref> is <see langword="null"></see>.</exception>
27 <exception cref="T:System.ArgumentException"><paramref name="key">key</paramref> is invalid.</exception>
29 <member name="M:System.Security.Cryptography.AesManaged.CreateEncryptor">
30 <summary>Creates a symmetric encryptor object using the current key and initialization vector (IV).</summary>
31 <returns>A symmetric encryptor object.</returns>
33 <member name="M:System.Security.Cryptography.AesManaged.CreateEncryptor(System.Byte[],System.Byte[])">
34 <summary>Creates a symmetric encryptor object using the specified key and initialization vector (IV).</summary>
35 <param name="rgbKey"></param>
36 <param name="rgbIV"></param>
37 <returns>A symmetric encryptor object.</returns>
38 <exception cref="T:System.ArgumentNullException"><paramref name="key">key</paramref> or <paramref name="iv">iv</paramref> is <see langword="null"></see>.</exception>
39 <exception cref="T:System.ArgumentException"><paramref name="key">key</paramref> is invalid.</exception>
41 <member name="P:System.Security.Cryptography.AesManaged.FeedbackSize">
42 <summary>Gets or sets the number of bits to use as feedback.</summary>
43 <returns>The feedback size, in bits.</returns>
45 <member name="M:System.Security.Cryptography.AesManaged.GenerateIV">
46 <summary>Generates a random initialization vector (IV) to use for the symmetric algorithm.</summary>
48 <member name="M:System.Security.Cryptography.AesManaged.GenerateKey">
49 <summary>Generates a random key to use for the symmetric algorithm.</summary>
51 <member name="P:System.Security.Cryptography.AesManaged.IV">
52 <summary>Gets or sets the initialization vector (IV) to use for the symmetric algorithm.</summary>
53 <returns>The initialization vector to use for the symmetric algorithm</returns>
55 <member name="P:System.Security.Cryptography.AesManaged.Key">
56 <summary>Gets or sets the secret key used for the symmetric algorithm.</summary>
57 <returns>The key for the symmetric algorithm.</returns>
59 <member name="P:System.Security.Cryptography.AesManaged.KeySize">
60 <summary>Gets or sets the size, in bits, of the secret key used for the symmetric algorithm.</summary>
61 <returns>The size, in bits, of the key used by the symmetric algorithm.</returns>
63 <member name="P:System.Security.Cryptography.AesManaged.LegalBlockSizes">
66 <member name="P:System.Security.Cryptography.AesManaged.LegalKeySizes">
69 <member name="P:System.Security.Cryptography.AesManaged.Mode">
70 <summary>Gets or sets the mode for operation of the symmetric algorithm.</summary>
71 <returns>One of the enumeration values that specifies the block cipher mode to use for encryption. The default is <see cref="F:System.Security.Cryptography.CipherMode.CBC"></see>.</returns>
72 <exception cref="T:System.Security.Cryptography.CryptographicException"><see cref="System.Security.Cryptography.AesManaged.Mode"></see> is set to <see cref="System.Security.Cryptography.CipherMode.CFB"></see> or <see cref="System.Security.Cryptography.CipherMode.OFB"></see>.</exception>
74 <member name="P:System.Security.Cryptography.AesManaged.Padding">
75 <summary>Gets or sets the padding mode used in the symmetric algorithm.</summary>
76 <returns>One of the enumeration values that specifies the type of padding to apply. The default is <see cref="F:System.Security.Cryptography.PaddingMode.PKCS7"></see>.</returns>
78 <member name="T:System.Security.Cryptography.Aes">
79 <summary>Represents the abstract base class from which all implementations of the Advanced Encryption Standard (AES) must inherit.</summary>
81 <member name="M:System.Security.Cryptography.Aes.#ctor">
82 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Aes"></see> class.</summary>
84 <member name="M:System.Security.Cryptography.Aes.Create">
85 <summary>Creates a cryptographic object that is used to perform the symmetric algorithm.</summary>
86 <returns>A cryptographic object that is used to perform the symmetric algorithm.</returns>
88 <member name="M:System.Security.Cryptography.Aes.Create(System.String)">
89 <summary>Creates a cryptographic object that specifies the implementation of AES to use to perform the symmetric algorithm.</summary>
90 <param name="algorithmName">The name of the specific implementation of AES to use.</param>
91 <returns>A cryptographic object that is used to perform the symmetric algorithm.</returns>
92 <exception cref="T:System.ArgumentNullException">The <paramref name="algorithmName">algorithmName</paramref> parameter is <see langword="null"></see>.</exception>
94 <member name="P:System.Security.Cryptography.Aes.LegalBlockSizes">
97 <member name="P:System.Security.Cryptography.Aes.LegalKeySizes">
100 <member name="T:System.Security.Cryptography.TripleDES">
101 <summary>Represents the base class for Triple Data Encryption Standard algorithms from which all <see cref="T:System.Security.Cryptography.TripleDES"></see> implementations must derive.</summary>
103 <member name="M:System.Security.Cryptography.TripleDES.#ctor">
104 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.TripleDES"></see> class.</summary>
106 <member name="M:System.Security.Cryptography.TripleDES.Create">
107 <summary>Creates an instance of a cryptographic object to perform the <see cref="T:System.Security.Cryptography.TripleDES"></see> algorithm.</summary>
108 <returns>An instance of a cryptographic object.</returns>
110 <member name="M:System.Security.Cryptography.TripleDES.Create(System.String)">
111 <summary>Creates an instance of a cryptographic object to perform the specified implementation of the <see cref="T:System.Security.Cryptography.TripleDES"></see> algorithm.</summary>
112 <param name="str">The name of the specific implementation of <see cref="T:System.Security.Cryptography.TripleDES"></see> to use.</param>
113 <returns>An instance of a cryptographic object.</returns>
115 <member name="M:System.Security.Cryptography.TripleDES.IsWeakKey(System.Byte[])">
116 <summary>Determines whether the specified key is weak.</summary>
117 <param name="rgbKey">The secret key to test for weakness.</param>
118 <returns><see langword="true"></see> if the key is weak; otherwise, <see langword="false"></see>.</returns>
119 <exception cref="T:System.Security.Cryptography.CryptographicException">The size of the <paramref name="rgbKey">rgbKey</paramref> parameter is not valid.</exception>
121 <member name="P:System.Security.Cryptography.TripleDES.Key">
122 <summary>Gets or sets the secret key for the <see cref="T:System.Security.Cryptography.TripleDES"></see> algorithm.</summary>
123 <returns>The secret key for the <see cref="T:System.Security.Cryptography.TripleDES"></see> algorithm.</returns>
124 <exception cref="T:System.ArgumentNullException">An attempt was made to set the key to <see langword="null"></see>.</exception>
125 <exception cref="T:System.Security.Cryptography.CryptographicException">An attempt was made to set a key whose length is invalid.
127 An attempt was made to set a weak key (see <see cref="System.Security.Cryptography.TripleDES.IsWeakKey(System.Byte[])"></see>).</exception>
129 <member name="P:System.Security.Cryptography.TripleDES.LegalBlockSizes">
132 <member name="P:System.Security.Cryptography.TripleDES.LegalKeySizes">
135 <member name="T:System.Security.Cryptography.SignatureDescription">
136 <summary>Contains information about the properties of a digital signature.</summary>
138 <member name="M:System.Security.Cryptography.SignatureDescription.#ctor">
139 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.SignatureDescription"></see> class.</summary>
141 <member name="M:System.Security.Cryptography.SignatureDescription.#ctor(System.Security.SecurityElement)">
142 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.SignatureDescription"></see> class from the specified <see cref="T:System.Security.SecurityElement"></see>.</summary>
143 <param name="el">The <see cref="T:System.Security.SecurityElement"></see> from which to get the algorithms for the signature description.</param>
144 <exception cref="T:System.ArgumentNullException">The <paramref name="el">el</paramref> parameter is <see langword="null"></see>.</exception>
146 <member name="M:System.Security.Cryptography.SignatureDescription.CreateDeformatter(System.Security.Cryptography.AsymmetricAlgorithm)">
147 <summary>Creates an <see cref="T:System.Security.Cryptography.AsymmetricSignatureDeformatter"></see> instance with the specified key using the <see cref="P:System.Security.Cryptography.SignatureDescription.DeformatterAlgorithm"></see> property.</summary>
148 <param name="key">The key to use in the <see cref="T:System.Security.Cryptography.AsymmetricSignatureDeformatter"></see>.</param>
149 <returns>The newly created <see cref="T:System.Security.Cryptography.AsymmetricSignatureDeformatter"></see> instance.</returns>
151 <member name="M:System.Security.Cryptography.SignatureDescription.CreateDigest">
152 <summary>Creates a <see cref="T:System.Security.Cryptography.HashAlgorithm"></see> instance using the <see cref="P:System.Security.Cryptography.SignatureDescription.DigestAlgorithm"></see> property.</summary>
153 <returns>The newly created <see cref="T:System.Security.Cryptography.HashAlgorithm"></see> instance.</returns>
155 <member name="M:System.Security.Cryptography.SignatureDescription.CreateFormatter(System.Security.Cryptography.AsymmetricAlgorithm)">
156 <summary>Creates an <see cref="T:System.Security.Cryptography.AsymmetricSignatureFormatter"></see> instance with the specified key using the <see cref="P:System.Security.Cryptography.SignatureDescription.FormatterAlgorithm"></see> property.</summary>
157 <param name="key">The key to use in the <see cref="T:System.Security.Cryptography.AsymmetricSignatureFormatter"></see>.</param>
158 <returns>The newly created <see cref="T:System.Security.Cryptography.AsymmetricSignatureFormatter"></see> instance.</returns>
160 <member name="P:System.Security.Cryptography.SignatureDescription.DeformatterAlgorithm">
161 <summary>Gets or sets the deformatter algorithm for the signature description.</summary>
162 <returns>The deformatter algorithm for the signature description.</returns>
164 <member name="P:System.Security.Cryptography.SignatureDescription.DigestAlgorithm">
165 <summary>Gets or sets the digest algorithm for the signature description.</summary>
166 <returns>The digest algorithm for the signature description.</returns>
168 <member name="P:System.Security.Cryptography.SignatureDescription.FormatterAlgorithm">
169 <summary>Gets or sets the formatter algorithm for the signature description.</summary>
170 <returns>The formatter algorithm for the signature description.</returns>
172 <member name="P:System.Security.Cryptography.SignatureDescription.KeyAlgorithm">
173 <summary>Gets or sets the key algorithm for the signature description.</summary>
174 <returns>The key algorithm for the signature description.</returns>
176 <member name="T:System.Security.Cryptography.SHA512Managed">
177 <summary>Computes the <see cref="T:System.Security.Cryptography.SHA512"></see> hash algorithm for the input data using the managed library.</summary>
179 <member name="M:System.Security.Cryptography.SHA512Managed.#ctor">
180 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.SHA512Managed"></see> class.</summary>
181 <exception cref="T:System.InvalidOperationException">The Federal Information Processing Standards (FIPS) security setting is enabled. This implementation is not part of the Windows Platform FIPS-validated cryptographic algorithms.</exception>
183 <member name="M:System.Security.Cryptography.SHA512Managed.Dispose(System.Boolean)">
184 <param name="disposing"></param>
186 <member name="M:System.Security.Cryptography.SHA512Managed.HashCore(System.ReadOnlySpan{System.Byte})">
187 <param name="source"></param>
189 <member name="M:System.Security.Cryptography.SHA512Managed.HashCore(System.Byte[],System.Byte[],System.Int32,System.Int32)">
190 <summary>When overridden in a derived class, routes data written to the object into the <see cref="T:System.Security.Cryptography.SHA512Managed"></see> hash algorithm for computing the hash.</summary>
191 <param name="array"></param>
192 <param name="rgb">The input data.</param>
193 <param name="ibStart">The offset into the byte array from which to begin using data.</param>
194 <param name="cbSize">The number of bytes in the array to use as data.</param>
196 <member name="M:System.Security.Cryptography.SHA512Managed.HashFinal">
197 <summary>When overridden in a derived class, finalizes the hash computation after the last data is processed by the cryptographic stream object.</summary>
198 <returns>The computed hash code.</returns>
200 <member name="M:System.Security.Cryptography.SHA512Managed.Initialize">
201 <summary>Initializes an instance of the <see cref="T:System.Security.Cryptography.SHA512Managed"></see> class using the managed library.</summary>
203 <member name="M:System.Security.Cryptography.SHA512Managed.TryHashFinal(System.Span{System.Byte},System.Int32@)">
204 <param name="destination"></param>
205 <param name="bytesWritten"></param>
208 <member name="T:System.Security.Cryptography.SHA512">
209 <summary>Computes the <see cref="T:System.Security.Cryptography.SHA512"></see> hash for the input data.</summary>
211 <member name="M:System.Security.Cryptography.SHA512.#ctor">
212 <summary>Initializes a new instance of <see cref="T:System.Security.Cryptography.SHA512"></see>.</summary>
214 <member name="M:System.Security.Cryptography.SHA512.Create">
215 <summary>Creates an instance of the default implementation of <see cref="T:System.Security.Cryptography.SHA512"></see>.</summary>
216 <returns>A new instance of <see cref="T:System.Security.Cryptography.SHA512"></see>.</returns>
217 <exception cref="T:System.Reflection.TargetInvocationException">The algorithm was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.</exception>
219 <member name="M:System.Security.Cryptography.SHA512.Create(System.String)">
220 <summary>Creates an instance of a specified implementation of <see cref="T:System.Security.Cryptography.SHA512"></see>.</summary>
221 <param name="hashName">The name of the specific implementation of <see cref="T:System.Security.Cryptography.SHA512"></see> to be used.</param>
222 <returns>A new instance of <see cref="T:System.Security.Cryptography.SHA512"></see> using the specified implementation.</returns>
223 <exception cref="T:System.Reflection.TargetInvocationException">The algorithm described by the <paramref name="hashName">hashName</paramref> parameter was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.</exception>
225 <member name="T:System.Security.Cryptography.SHA384Managed">
226 <summary>Computes the <see cref="T:System.Security.Cryptography.SHA384"></see> hash for the input data using the managed library.</summary>
228 <member name="M:System.Security.Cryptography.SHA384Managed.#ctor">
229 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.SHA384Managed"></see> class.</summary>
230 <exception cref="T:System.InvalidOperationException">The Federal Information Processing Standards (FIPS) security setting is enabled. This implementation is not part of the Windows Platform FIPS-validated cryptographic algorithms.</exception>
232 <member name="M:System.Security.Cryptography.SHA384Managed.Dispose(System.Boolean)">
233 <param name="disposing"></param>
235 <member name="M:System.Security.Cryptography.SHA384Managed.HashCore(System.ReadOnlySpan{System.Byte})">
236 <param name="source"></param>
238 <member name="M:System.Security.Cryptography.SHA384Managed.HashCore(System.Byte[],System.Byte[],System.Int32,System.Int32)">
239 <summary>When overridden in a derived class, routes data written to the object into the <see cref="T:System.Security.Cryptography.SHA384Managed"></see> hash algorithm for computing the hash.</summary>
240 <param name="array"></param>
241 <param name="rgb">The input data.</param>
242 <param name="ibStart">The offset into the byte array from which to begin using data.</param>
243 <param name="cbSize">The number of bytes in the array to use as data.</param>
245 <member name="M:System.Security.Cryptography.SHA384Managed.HashFinal">
246 <summary>When overridden in a derived class, finalizes the hash computation after the last data is processed by the cryptographic stream object.</summary>
247 <returns>The computed hash code.</returns>
249 <member name="M:System.Security.Cryptography.SHA384Managed.Initialize">
250 <summary>Initializes an instance of <see cref="T:System.Security.Cryptography.SHA384Managed"></see>.</summary>
252 <member name="M:System.Security.Cryptography.SHA384Managed.TryHashFinal(System.Span{System.Byte},System.Int32@)">
253 <param name="destination"></param>
254 <param name="bytesWritten"></param>
257 <member name="T:System.Security.Cryptography.SHA384">
258 <summary>Computes the <see cref="T:System.Security.Cryptography.SHA384"></see> hash for the input data.</summary>
260 <member name="M:System.Security.Cryptography.SHA384.#ctor">
261 <summary>Initializes a new instance of <see cref="T:System.Security.Cryptography.SHA384"></see>.</summary>
263 <member name="M:System.Security.Cryptography.SHA384.Create">
264 <summary>Creates an instance of the default implementation of <see cref="T:System.Security.Cryptography.SHA384"></see>.</summary>
265 <returns>A new instance of <see cref="T:System.Security.Cryptography.SHA384"></see>.</returns>
266 <exception cref="T:System.Reflection.TargetInvocationException">The algorithm was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.</exception>
268 <member name="M:System.Security.Cryptography.SHA384.Create(System.String)">
269 <summary>Creates an instance of a specified implementation of <see cref="T:System.Security.Cryptography.SHA384"></see>.</summary>
270 <param name="hashName">The name of the specific implementation of <see cref="T:System.Security.Cryptography.SHA384"></see> to be used.</param>
271 <returns>A new instance of <see cref="T:System.Security.Cryptography.SHA384"></see> using the specified implementation.</returns>
272 <exception cref="T:System.Reflection.TargetInvocationException">The algorithm described by the <paramref name="hashName">hashName</paramref> parameter was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.</exception>
274 <member name="T:System.Security.Cryptography.SHA256Managed">
275 <summary>Computes the <see cref="T:System.Security.Cryptography.SHA256"></see> hash for the input data using the managed library.</summary>
277 <member name="M:System.Security.Cryptography.SHA256Managed.#ctor">
278 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.SHA256Managed"></see> class using the managed library.</summary>
279 <exception cref="T:System.InvalidOperationException">The Federal Information Processing Standards (FIPS) security setting is enabled. This implementation is not part of the Windows Platform FIPS-validated cryptographic algorithms.</exception>
281 <member name="M:System.Security.Cryptography.SHA256Managed.Dispose(System.Boolean)">
282 <param name="disposing"></param>
284 <member name="M:System.Security.Cryptography.SHA256Managed.HashCore(System.ReadOnlySpan{System.Byte})">
285 <param name="source"></param>
287 <member name="M:System.Security.Cryptography.SHA256Managed.HashCore(System.Byte[],System.Byte[],System.Int32,System.Int32)">
288 <summary>When overridden in a derived class, routes data written to the object into the <see cref="T:System.Security.Cryptography.SHA256"></see> hash algorithm for computing the hash.</summary>
289 <param name="array"></param>
290 <param name="rgb">The input data.</param>
291 <param name="ibStart">The offset into the byte array from which to begin using data.</param>
292 <param name="cbSize">The number of bytes in the array to use as data.</param>
294 <member name="M:System.Security.Cryptography.SHA256Managed.HashFinal">
295 <summary>When overridden in a derived class, finalizes the hash computation after the last data is processed by the cryptographic stream object.</summary>
296 <returns>The computed hash code.</returns>
298 <member name="M:System.Security.Cryptography.SHA256Managed.Initialize">
299 <summary>Initializes an instance of <see cref="T:System.Security.Cryptography.SHA256Managed"></see>.</summary>
301 <member name="M:System.Security.Cryptography.SHA256Managed.TryHashFinal(System.Span{System.Byte},System.Int32@)">
302 <param name="destination"></param>
303 <param name="bytesWritten"></param>
306 <member name="T:System.Security.Cryptography.SHA256">
307 <summary>Computes the <see cref="T:System.Security.Cryptography.SHA256"></see> hash for the input data.</summary>
309 <member name="M:System.Security.Cryptography.SHA256.#ctor">
310 <summary>Initializes a new instance of <see cref="T:System.Security.Cryptography.SHA256"></see>.</summary>
312 <member name="M:System.Security.Cryptography.SHA256.Create">
313 <summary>Creates an instance of the default implementation of <see cref="T:System.Security.Cryptography.SHA256"></see>.</summary>
314 <returns>A new instance of <see cref="T:System.Security.Cryptography.SHA256"></see>. On the .NET Framework, this method creates an instance of the <see cref="T:System.Security.Cryptography.SHA256Managed"></see> class if FIPS mode is not active; if FIPS mode is active, it creates an instance of the <see cref="T:System.Security.Cryptography.SHA256Cng"></see> class. On .NET Core, it returns an instance of a private class derived from <see cref="T:System.Security.Cryptography.SHA256"></see>.</returns>
315 <exception cref="T:System.Reflection.TargetInvocationException">On the .NET Framework 4.6.1 and earlier versions only: The algorithm was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.</exception>
317 <member name="M:System.Security.Cryptography.SHA256.Create(System.String)">
318 <summary>Creates an instance of a specified implementation of <see cref="T:System.Security.Cryptography.SHA256"></see>.</summary>
319 <param name="hashName">The name of the specific implementation of <see cref="T:System.Security.Cryptography.SHA256"></see> to be used.</param>
320 <returns>A new instance of <see cref="T:System.Security.Cryptography.SHA256"></see> using the specified implementation.</returns>
321 <exception cref="T:System.Reflection.TargetInvocationException">On the .NET Framework only: FIPS mode is enabled, but <paramref name="hashName">hashName</paramref> requests <see cref="System.Security.Cryptography.SHA256Managed"></see>, which is not FIPS compatible.</exception>
323 <member name="T:System.Security.Cryptography.SHA1Managed">
324 <summary>Computes the <see cref="T:System.Security.Cryptography.SHA1"></see> hash for the input data using the managed library.</summary>
326 <member name="M:System.Security.Cryptography.SHA1Managed.#ctor">
327 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.SHA1Managed"></see> class.</summary>
328 <exception cref="T:System.InvalidOperationException">This class is not compliant with the FIPS algorithm.</exception>
330 <member name="M:System.Security.Cryptography.SHA1Managed.Dispose(System.Boolean)">
331 <param name="disposing"></param>
333 <member name="M:System.Security.Cryptography.SHA1Managed.HashCore(System.ReadOnlySpan{System.Byte})">
334 <param name="source"></param>
336 <member name="M:System.Security.Cryptography.SHA1Managed.HashCore(System.Byte[],System.Byte[],System.Int32,System.Int32)">
337 <summary>Routes data written to the object into the <see cref="T:System.Security.Cryptography.SHA1Managed"></see> hash algorithm for computing the hash.</summary>
338 <param name="array"></param>
339 <param name="rgb">The input data.</param>
340 <param name="ibStart">The offset into the byte array from which to begin using data.</param>
341 <param name="cbSize">The number of bytes in the array to use as data.</param>
343 <member name="M:System.Security.Cryptography.SHA1Managed.HashFinal">
344 <summary>Returns the computed <see cref="T:System.Security.Cryptography.SHA1"></see> hash value after all data has been written to the object.</summary>
345 <returns>The computed hash code.</returns>
347 <member name="M:System.Security.Cryptography.SHA1Managed.Initialize">
348 <summary>Initializes an instance of <see cref="T:System.Security.Cryptography.SHA1Managed"></see>.</summary>
350 <member name="M:System.Security.Cryptography.SHA1Managed.TryHashFinal(System.Span{System.Byte},System.Int32@)">
351 <param name="destination"></param>
352 <param name="bytesWritten"></param>
355 <member name="T:System.Security.Cryptography.SHA1">
356 <summary>Computes the <see cref="T:System.Security.Cryptography.SHA1"></see> hash for the input data.</summary>
358 <member name="M:System.Security.Cryptography.SHA1.#ctor">
359 <summary>Initializes a new instance of <see cref="T:System.Security.Cryptography.SHA1"></see>.</summary>
360 <exception cref="T:System.InvalidOperationException">The policy on this object is not compliant with the FIPS algorithm.</exception>
362 <member name="M:System.Security.Cryptography.SHA1.Create">
363 <summary>Creates an instance of the default implementation of <see cref="T:System.Security.Cryptography.SHA1"></see>.</summary>
364 <returns>A new instance of <see cref="T:System.Security.Cryptography.SHA1"></see>.</returns>
366 <member name="M:System.Security.Cryptography.SHA1.Create(System.String)">
367 <summary>Creates an instance of the specified implementation of <see cref="T:System.Security.Cryptography.SHA1"></see>.</summary>
368 <param name="hashName">The name of the specific implementation of <see cref="T:System.Security.Cryptography.SHA1"></see> to be used.</param>
369 <returns>A new instance of <see cref="T:System.Security.Cryptography.SHA1"></see> using the specified implementation.</returns>
371 <member name="T:System.Security.Cryptography.RSASignaturePaddingMode">
372 <summary>Specifies the padding mode to use with RSA signature creation or verification operations.</summary>
374 <member name="F:System.Security.Cryptography.RSASignaturePaddingMode.Pkcs1">
375 <summary>PKCS #1 v1.5</summary>
378 <member name="F:System.Security.Cryptography.RSASignaturePaddingMode.Pss">
379 <summary>Probabilistic Signature Scheme</summary>
382 <member name="T:System.Security.Cryptography.RSASignaturePadding">
383 <summary>Specifies the padding mode and parameters to use with RSA signature creation or verification operations.</summary>
385 <member name="M:System.Security.Cryptography.RSASignaturePadding.Equals(System.Object)">
386 <summary>Returns a value that indicates whether this instance is equal to a specified object.</summary>
387 <param name="obj">The object to compare with the current instance.</param>
388 <returns><see langword="true"></see> if the specified object is equal to the current object; otherwise, <see langword="false"></see>.</returns>
390 <member name="M:System.Security.Cryptography.RSASignaturePadding.Equals(System.Security.Cryptography.RSASignaturePadding)">
391 <summary>Returns a value that indicates whether this instance is equal to a specified <see cref="T:System.Security.Cryptography.RSASignaturePadding"></see> object.</summary>
392 <param name="other">The object to compare with the current instance.</param>
393 <returns><see langword="true"></see> if the specified object is equal to the current object; otherwise, <see langword="false"></see>.</returns>
395 <member name="M:System.Security.Cryptography.RSASignaturePadding.GetHashCode">
396 <summary>Returns the hash code for this <see cref="T:System.Security.Cryptography.RSASignaturePadding"></see> instance.</summary>
397 <returns>The hash code for this <see cref="T:System.Security.Cryptography.RSASignaturePadding"></see> instance.</returns>
399 <member name="P:System.Security.Cryptography.RSASignaturePadding.Mode">
400 <summary>Gets the padding mode of this <see cref="T:System.Security.Cryptography.RSASignaturePadding"></see> instance.</summary>
401 <returns>The padding mode (either <see cref="F:System.Security.Cryptography.RSASignaturePaddingMode.Pkcs1"></see> or <see cref="F:System.Security.Cryptography.RSASignaturePaddingMode.Pss"></see>) of this instance.</returns>
403 <member name="M:System.Security.Cryptography.RSASignaturePadding.op_Equality(System.Security.Cryptography.RSASignaturePadding,System.Security.Cryptography.RSASignaturePadding)">
404 <summary>Indicates whether two specified <see cref="T:System.Security.Cryptography.RSASignaturePadding"></see> objects are equal.</summary>
405 <param name="left">The first object to compare.</param>
406 <param name="right">The second object to compare.</param>
407 <returns><see langword="true"></see> if <see langword="left"></see> and <see langword="right"></see> are equal; otherwise, <see langword="false"></see>.</returns>
409 <member name="M:System.Security.Cryptography.RSASignaturePadding.op_Inequality(System.Security.Cryptography.RSASignaturePadding,System.Security.Cryptography.RSASignaturePadding)">
410 <summary>Indicates whether two specified <see cref="T:System.Security.Cryptography.RSASignaturePadding"></see> objects are unequal.</summary>
411 <param name="left">The first object to compare.</param>
412 <param name="right">The second object to compare.</param>
413 <returns><see langword="true"></see> if <see langword="left"></see> and <see langword="right"></see> are unequal; otherwise, <see langword="false"></see>.</returns>
415 <member name="P:System.Security.Cryptography.RSASignaturePadding.Pkcs1">
416 <summary>Gets an object that uses the PKCS #1 v1.5 padding mode.</summary>
417 <returns>An object that uses the <see cref="F:System.Security.Cryptography.RSASignaturePaddingMode.Pkcs1"></see> padding mode.</returns>
419 <member name="P:System.Security.Cryptography.RSASignaturePadding.Pss">
420 <summary>Gets an object that uses PSS padding mode.</summary>
421 <returns>An object that uses the <see cref="F:System.Security.Cryptography.RSASignaturePaddingMode.Pss"></see> padding mode with the number of salt bytes equal to the size of the hash.</returns>
423 <member name="M:System.Security.Cryptography.RSASignaturePadding.ToString">
424 <summary>Returns the string representation of the current <see cref="T:System.Security.Cryptography.RSASignaturePadding"></see> instance.</summary>
425 <returns>The string representation of the current object.</returns>
427 <member name="T:System.Security.Cryptography.RSAPKCS1SignatureFormatter">
428 <summary>Creates an <see cref="T:System.Security.Cryptography.RSA"></see> PKCS #1 version 1.5 signature.</summary>
430 <member name="M:System.Security.Cryptography.RSAPKCS1SignatureFormatter.#ctor">
431 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAPKCS1SignatureFormatter"></see> class.</summary>
433 <member name="M:System.Security.Cryptography.RSAPKCS1SignatureFormatter.#ctor(System.Security.Cryptography.AsymmetricAlgorithm)">
434 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAPKCS1SignatureFormatter"></see> class with the specified key.</summary>
435 <param name="key">The instance of the <see cref="T:System.Security.Cryptography.RSA"></see> algorithm that holds the private key.</param>
436 <exception cref="T:System.ArgumentNullException"><paramref name="key">key</paramref> is <see langword="null"></see>.</exception>
438 <member name="M:System.Security.Cryptography.RSAPKCS1SignatureFormatter.CreateSignature(System.Byte[])">
439 <summary>Creates the <see cref="T:System.Security.Cryptography.RSA"></see> PKCS #1 signature for the specified data.</summary>
440 <param name="rgbHash">The data to be signed.</param>
441 <returns>The digital signature for <paramref name="rgbHash">rgbHash</paramref>.</returns>
442 <exception cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException">The key is <see langword="null"></see>.
444 The hash algorithm is <see langword="null"></see>.</exception>
445 <exception cref="T:System.ArgumentNullException">The <paramref name="rgbHash">rgbHash</paramref> parameter is <see langword="null"></see>.</exception>
447 <member name="M:System.Security.Cryptography.RSAPKCS1SignatureFormatter.SetHashAlgorithm(System.String)">
448 <summary>Sets the hash algorithm to use for creating the signature.</summary>
449 <param name="strName">The name of the hash algorithm to use for creating the signature.</param>
451 <member name="M:System.Security.Cryptography.RSAPKCS1SignatureFormatter.SetKey(System.Security.Cryptography.AsymmetricAlgorithm)">
452 <summary>Sets the private key to use for creating the signature.</summary>
453 <param name="key">The instance of the <see cref="T:System.Security.Cryptography.RSA"></see> algorithm that holds the private key.</param>
454 <exception cref="T:System.ArgumentNullException"><paramref name="key">key</paramref> is <see langword="null"></see>.</exception>
456 <member name="T:System.Security.Cryptography.RSAPKCS1SignatureDeformatter">
457 <summary>Verifies an <see cref="T:System.Security.Cryptography.RSA"></see> PKCS #1 version 1.5 signature.</summary>
459 <member name="M:System.Security.Cryptography.RSAPKCS1SignatureDeformatter.#ctor">
460 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAPKCS1SignatureDeformatter"></see> class.</summary>
462 <member name="M:System.Security.Cryptography.RSAPKCS1SignatureDeformatter.#ctor(System.Security.Cryptography.AsymmetricAlgorithm)">
463 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAPKCS1SignatureDeformatter"></see> class with the specified key.</summary>
464 <param name="key">The instance of <see cref="T:System.Security.Cryptography.RSA"></see> that holds the public key.</param>
465 <exception cref="T:System.ArgumentNullException"><paramref name="key">key</paramref> is <see langword="null"></see>.</exception>
467 <member name="M:System.Security.Cryptography.RSAPKCS1SignatureDeformatter.SetHashAlgorithm(System.String)">
468 <summary>Sets the hash algorithm to use for verifying the signature.</summary>
469 <param name="strName">The name of the hash algorithm to use for verifying the signature.</param>
471 <member name="M:System.Security.Cryptography.RSAPKCS1SignatureDeformatter.SetKey(System.Security.Cryptography.AsymmetricAlgorithm)">
472 <summary>Sets the public key to use for verifying the signature.</summary>
473 <param name="key">The instance of <see cref="T:System.Security.Cryptography.RSA"></see> that holds the public key.</param>
474 <exception cref="T:System.ArgumentNullException"><paramref name="key">key</paramref> is <see langword="null"></see>.</exception>
476 <member name="M:System.Security.Cryptography.RSAPKCS1SignatureDeformatter.VerifySignature(System.Byte[],System.Byte[])">
477 <summary>Verifies the <see cref="T:System.Security.Cryptography.RSA"></see> PKCS#1 signature for the specified data.</summary>
478 <param name="rgbHash">The data signed with rgbSignature.</param>
479 <param name="rgbSignature">The signature to be verified for rgbHash.</param>
480 <returns><see langword="true"></see> if <paramref name="rgbSignature">rgbSignature</paramref> matches the signature computed using the specified hash algorithm and key on <paramref name="rgbHash">rgbHash</paramref>; otherwise, <see langword="false"></see>.</returns>
481 <exception cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException">The key is <see langword="null"></see>.
483 The hash algorithm is <see langword="null"></see>.</exception>
484 <exception cref="T:System.ArgumentNullException">The <paramref name="rgbHash">rgbHash</paramref> parameter is <see langword="null"></see>.
486 The <paramref name="rgbSignature">rgbSignature</paramref> parameter is <see langword="null"></see>.</exception>
488 <member name="T:System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter">
489 <summary>Creates the PKCS#1 key exchange data using <see cref="T:System.Security.Cryptography.RSA"></see>.</summary>
491 <member name="M:System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter.#ctor">
492 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter"></see> class.</summary>
494 <member name="M:System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter.#ctor(System.Security.Cryptography.AsymmetricAlgorithm)">
495 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter"></see> class with the specified key.</summary>
496 <param name="key">The instance of the <see cref="T:System.Security.Cryptography.RSA"></see> algorithm that holds the public key.</param>
497 <exception cref="T:System.ArgumentNullException"><paramref name="key">key</paramref> is <see langword="null"></see>.</exception>
499 <member name="M:System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter.CreateKeyExchange(System.Byte[])">
500 <summary>Creates the encrypted key exchange data from the specified input data.</summary>
501 <param name="rgbData">The secret information to be passed in the key exchange.</param>
502 <returns>The encrypted key exchange data to be sent to the intended recipient.</returns>
503 <exception cref="T:System.Security.Cryptography.CryptographicException"><paramref name="rgbData">rgbData</paramref> is too big.</exception>
504 <exception cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException">The key is <see langword="null"></see>.</exception>
506 <member name="M:System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter.CreateKeyExchange(System.Byte[],System.Type)">
507 <summary>Creates the encrypted key exchange data from the specified input data.</summary>
508 <param name="rgbData">The secret information to be passed in the key exchange.</param>
509 <param name="symAlgType">This parameter is not used in the current version.</param>
510 <returns>The encrypted key exchange data to be sent to the intended recipient.</returns>
512 <member name="P:System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter.Parameters">
513 <summary>Gets the parameters for the PKCS #1 key exchange.</summary>
514 <returns>An XML string containing the parameters of the PKCS #1 key exchange operation.</returns>
516 <member name="P:System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter.Rng">
517 <summary>Gets or sets the random number generator algorithm to use in the creation of the key exchange.</summary>
518 <returns>The instance of a random number generator algorithm to use.</returns>
520 <member name="M:System.Security.Cryptography.RSAPKCS1KeyExchangeFormatter.SetKey(System.Security.Cryptography.AsymmetricAlgorithm)">
521 <summary>Sets the public key to use for encrypting the key exchange data.</summary>
522 <param name="key">The instance of the <see cref="T:System.Security.Cryptography.RSA"></see> algorithm that holds the public key.</param>
523 <exception cref="T:System.ArgumentNullException"><paramref name="key">key</paramref> is <see langword="null"></see>.</exception>
525 <member name="T:System.Security.Cryptography.RSAPKCS1KeyExchangeDeformatter">
526 <summary>Decrypts the PKCS #1 key exchange data.</summary>
528 <member name="M:System.Security.Cryptography.RSAPKCS1KeyExchangeDeformatter.#ctor">
529 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAPKCS1KeyExchangeDeformatter"></see> class.</summary>
531 <member name="M:System.Security.Cryptography.RSAPKCS1KeyExchangeDeformatter.#ctor(System.Security.Cryptography.AsymmetricAlgorithm)">
532 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAPKCS1KeyExchangeDeformatter"></see> class with the specified key.</summary>
533 <param name="key">The instance of the <see cref="T:System.Security.Cryptography.RSA"></see> algorithm that holds the private key.</param>
534 <exception cref="T:System.ArgumentNullException"><paramref name="key">key</paramref> is <see langword="null"></see>.</exception>
536 <member name="M:System.Security.Cryptography.RSAPKCS1KeyExchangeDeformatter.DecryptKeyExchange(System.Byte[])">
537 <summary>Extracts secret information from the encrypted key exchange data.</summary>
538 <param name="rgbIn">The key exchange data within which the secret information is hidden.</param>
539 <returns>The secret information derived from the key exchange data.</returns>
540 <exception cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException">The key is missing.</exception>
542 <member name="P:System.Security.Cryptography.RSAPKCS1KeyExchangeDeformatter.Parameters">
543 <summary>Gets the parameters for the PKCS #1 key exchange.</summary>
544 <returns>An XML string containing the parameters of the PKCS #1 key exchange operation.</returns>
546 <member name="P:System.Security.Cryptography.RSAPKCS1KeyExchangeDeformatter.RNG">
547 <summary>Gets or sets the random number generator algorithm to use in the creation of the key exchange.</summary>
548 <returns>The instance of a random number generator algorithm to use.</returns>
550 <member name="M:System.Security.Cryptography.RSAPKCS1KeyExchangeDeformatter.SetKey(System.Security.Cryptography.AsymmetricAlgorithm)">
551 <summary>Sets the private key to use for decrypting the secret information.</summary>
552 <param name="key">The instance of the <see cref="T:System.Security.Cryptography.RSA"></see> algorithm that holds the private key.</param>
553 <exception cref="T:System.ArgumentNullException"><paramref name="key">key</paramref> is <see langword="null"></see>.</exception>
555 <member name="T:System.Security.Cryptography.RSAParameters">
556 <summary>Represents the standard parameters for the <see cref="T:System.Security.Cryptography.RSA"></see> algorithm.</summary>
558 <member name="F:System.Security.Cryptography.RSAParameters.D">
559 <summary>Represents the <see langword="D"></see> parameter for the <see cref="T:System.Security.Cryptography.RSA"></see> algorithm.</summary>
562 <member name="F:System.Security.Cryptography.RSAParameters.DP">
563 <summary>Represents the <see langword="DP"></see> parameter for the <see cref="T:System.Security.Cryptography.RSA"></see> algorithm.</summary>
566 <member name="F:System.Security.Cryptography.RSAParameters.DQ">
567 <summary>Represents the <see langword="DQ"></see> parameter for the <see cref="T:System.Security.Cryptography.RSA"></see> algorithm.</summary>
570 <member name="F:System.Security.Cryptography.RSAParameters.Exponent">
571 <summary>Represents the <see langword="Exponent"></see> parameter for the <see cref="T:System.Security.Cryptography.RSA"></see> algorithm.</summary>
574 <member name="F:System.Security.Cryptography.RSAParameters.InverseQ">
575 <summary>Represents the <see langword="InverseQ"></see> parameter for the <see cref="T:System.Security.Cryptography.RSA"></see> algorithm.</summary>
578 <member name="F:System.Security.Cryptography.RSAParameters.Modulus">
579 <summary>Represents the <see langword="Modulus"></see> parameter for the <see cref="T:System.Security.Cryptography.RSA"></see> algorithm.</summary>
582 <member name="F:System.Security.Cryptography.RSAParameters.P">
583 <summary>Represents the <see langword="P"></see> parameter for the <see cref="T:System.Security.Cryptography.RSA"></see> algorithm.</summary>
586 <member name="F:System.Security.Cryptography.RSAParameters.Q">
587 <summary>Represents the <see langword="Q"></see> parameter for the <see cref="T:System.Security.Cryptography.RSA"></see> algorithm.</summary>
590 <member name="T:System.Security.Cryptography.RSAOAEPKeyExchangeFormatter">
591 <summary>Creates Optimal Asymmetric Encryption Padding (OAEP) key exchange data using <see cref="T:System.Security.Cryptography.RSA"></see>.</summary>
593 <member name="M:System.Security.Cryptography.RSAOAEPKeyExchangeFormatter.#ctor">
594 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAOAEPKeyExchangeFormatter"></see> class.</summary>
596 <member name="M:System.Security.Cryptography.RSAOAEPKeyExchangeFormatter.#ctor(System.Security.Cryptography.AsymmetricAlgorithm)">
597 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAOAEPKeyExchangeFormatter"></see> class with the specified key.</summary>
598 <param name="key">The instance of the <see cref="T:System.Security.Cryptography.RSA"></see> algorithm that holds the public key.</param>
599 <exception cref="T:System.ArgumentNullException"><paramref name="key">key</paramref> is <see langword="null"></see>.</exception>
601 <member name="M:System.Security.Cryptography.RSAOAEPKeyExchangeFormatter.CreateKeyExchange(System.Byte[])">
602 <summary>Creates the encrypted key exchange data from the specified input data.</summary>
603 <param name="rgbData">The secret information to be passed in the key exchange.</param>
604 <returns>The encrypted key exchange data to be sent to the intended recipient.</returns>
605 <exception cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException">The key is missing.</exception>
607 <member name="M:System.Security.Cryptography.RSAOAEPKeyExchangeFormatter.CreateKeyExchange(System.Byte[],System.Type)">
608 <summary>Creates the encrypted key exchange data from the specified input data.</summary>
609 <param name="rgbData">The secret information to be passed in the key exchange.</param>
610 <param name="symAlgType">This parameter is not used in the current version.</param>
611 <returns>The encrypted key exchange data to be sent to the intended recipient.</returns>
613 <member name="P:System.Security.Cryptography.RSAOAEPKeyExchangeFormatter.Parameter">
614 <summary>Gets or sets the parameter used to create padding in the key exchange creation process.</summary>
615 <returns>The parameter value.</returns>
617 <member name="P:System.Security.Cryptography.RSAOAEPKeyExchangeFormatter.Parameters">
618 <summary>Gets the parameters for the Optimal Asymmetric Encryption Padding (OAEP) key exchange.</summary>
619 <returns>An XML string containing the parameters of the OAEP key exchange operation.</returns>
621 <member name="P:System.Security.Cryptography.RSAOAEPKeyExchangeFormatter.Rng">
622 <summary>Gets or sets the random number generator algorithm to use in the creation of the key exchange.</summary>
623 <returns>The instance of a random number generator algorithm to use.</returns>
625 <member name="M:System.Security.Cryptography.RSAOAEPKeyExchangeFormatter.SetKey(System.Security.Cryptography.AsymmetricAlgorithm)">
626 <summary>Sets the public key to use for encrypting the key exchange data.</summary>
627 <param name="key">The instance of the <see cref="T:System.Security.Cryptography.RSA"></see> algorithm that holds the public key.</param>
628 <exception cref="T:System.ArgumentNullException"><paramref name="key">key</paramref> is <see langword="null"></see>.</exception>
630 <member name="T:System.Security.Cryptography.RSAOAEPKeyExchangeDeformatter">
631 <summary>Decrypts Optimal Asymmetric Encryption Padding (OAEP) key exchange data.</summary>
633 <member name="M:System.Security.Cryptography.RSAOAEPKeyExchangeDeformatter.#ctor">
634 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAOAEPKeyExchangeDeformatter"></see> class.</summary>
636 <member name="M:System.Security.Cryptography.RSAOAEPKeyExchangeDeformatter.#ctor(System.Security.Cryptography.AsymmetricAlgorithm)">
637 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSAOAEPKeyExchangeDeformatter"></see> class with the specified key.</summary>
638 <param name="key">The instance of the <see cref="T:System.Security.Cryptography.RSA"></see> algorithm that holds the private key.</param>
639 <exception cref="T:System.ArgumentNullException"><paramref name="key">key</paramref> is <see langword="null"></see>.</exception>
641 <member name="M:System.Security.Cryptography.RSAOAEPKeyExchangeDeformatter.DecryptKeyExchange(System.Byte[])">
642 <summary>Extracts secret information from the encrypted key exchange data.</summary>
643 <param name="rgbData">The key exchange data within which the secret information is hidden.</param>
644 <returns>The secret information derived from the key exchange data.</returns>
645 <exception cref="T:System.Security.Cryptography.CryptographicException">The key exchange data verification has failed.</exception>
646 <exception cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException">The key is missing.</exception>
648 <member name="P:System.Security.Cryptography.RSAOAEPKeyExchangeDeformatter.Parameters">
649 <summary>Gets the parameters for the Optimal Asymmetric Encryption Padding (OAEP) key exchange.</summary>
650 <returns>An XML string containing the parameters of the OAEP key exchange operation.</returns>
652 <member name="M:System.Security.Cryptography.RSAOAEPKeyExchangeDeformatter.SetKey(System.Security.Cryptography.AsymmetricAlgorithm)">
653 <summary>Sets the private key to use for decrypting the secret information.</summary>
654 <param name="key">The instance of the <see cref="T:System.Security.Cryptography.RSA"></see> algorithm that holds the private key.</param>
655 <exception cref="T:System.ArgumentNullException"><paramref name="key">key</paramref> is <see langword="null"></see>.</exception>
657 <member name="T:System.Security.Cryptography.RSAEncryptionPaddingMode">
658 <summary>Specifies the padding mode to use with RSA encryption or decryption operations.</summary>
660 <member name="F:System.Security.Cryptography.RSAEncryptionPaddingMode.Oaep">
661 <summary>Optimal Asymmetric Encryption Padding.</summary>
664 <member name="F:System.Security.Cryptography.RSAEncryptionPaddingMode.Pkcs1">
665 <summary>PKCS #1 v1.5.</summary>
668 <member name="T:System.Security.Cryptography.RSAEncryptionPadding">
669 <summary>Specifies the padding mode and parameters to use with RSA encryption or decryption operations.</summary>
671 <member name="M:System.Security.Cryptography.RSAEncryptionPadding.CreateOaep(System.Security.Cryptography.HashAlgorithmName)">
672 <summary>Creates a new <see cref="T:System.Security.Cryptography.RSAEncryptionPadding"></see> instance whose <see cref="P:System.Security.Cryptography.RSAEncryptionPadding.Mode"></see> is <see cref="F:System.Security.Cryptography.RSAEncryptionPaddingMode.Oaep"></see> with the given hash algorithm.</summary>
673 <param name="hashAlgorithm">The hash algorithm.</param>
674 <returns>An object whose mode is <see cref="P:System.Security.Cryptography.RSAEncryptionPadding.Mode"></see> is <see cref="F:System.Security.Cryptography.RSAEncryptionPaddingMode.Oaep"></see> with the hash algorithm specified by <paramref name="hashAlgorithm">hashAlgorithm</paramref>. .</returns>
675 <exception cref="T:System.ArgumentException">The <see cref="System.Security.Cryptography.HashAlgorithmName.Name"></see> property of <paramref name="hashAlgorithm">hashAlgorithm</paramref> is either <see langword="null"></see> or <see cref="System.String.Empty"></see>.</exception>
677 <member name="M:System.Security.Cryptography.RSAEncryptionPadding.Equals(System.Object)">
678 <summary>Determines whether the current instance is equal to the specified object.</summary>
679 <param name="obj">The object to compare.</param>
680 <returns><see langword="true"></see> if <paramref name="obj">obj</paramref> is equal to the current instance; otherwise, <see langword="false"></see>.</returns>
682 <member name="M:System.Security.Cryptography.RSAEncryptionPadding.Equals(System.Security.Cryptography.RSAEncryptionPadding)">
683 <summary>Determines whether the current instance is equal to the specified <see cref="T:System.Security.Cryptography.RSAEncryptionPadding"></see> object.</summary>
684 <param name="other">The object to compare.</param>
685 <returns><see langword="true"></see> if <paramref name="other">other</paramref> is equal to the current instance; otherwise, <see langword="false"></see>.</returns>
687 <member name="M:System.Security.Cryptography.RSAEncryptionPadding.GetHashCode">
688 <summary>Returns the hash code of this <see cref="T:System.Security.Cryptography.RSAEncryptionPadding"></see> object.</summary>
689 <returns>The hash code of this instance.</returns>
691 <member name="P:System.Security.Cryptography.RSAEncryptionPadding.Mode">
692 <summary>Gets the padding mode represented by this <see cref="T:System.Security.Cryptography.RSAEncryptionPadding"></see> instance.</summary>
693 <returns>A padding mode.</returns>
695 <member name="P:System.Security.Cryptography.RSAEncryptionPadding.OaepHashAlgorithm">
696 <summary>Gets the hash algorithm used in conjunction with the <see cref="F:System.Security.Cryptography.RSAEncryptionPaddingMode.Oaep"></see> padding mode. If the value of the <see cref="P:System.Security.Cryptography.RSAEncryptionPadding.Mode"></see> property is not <see cref="F:System.Security.Cryptography.RSAEncryptionPaddingMode.Oaep"></see>, <see cref="P:System.Security.Cryptography.HashAlgorithmName.Name"></see> is <see langword="null"></see>.</summary>
697 <returns>The hash algorithm.</returns>
699 <member name="P:System.Security.Cryptography.RSAEncryptionPadding.OaepSHA1">
700 <summary>Gets an object that represents the Optimal Asymmetric Encryption Padding (OAEP) encryption standard with a SHA1 hash algorithm.</summary>
701 <returns>An object that represents the OAEP encryption standard with a SHA1 hash algorithm.</returns>
703 <member name="P:System.Security.Cryptography.RSAEncryptionPadding.OaepSHA256">
704 <summary>Gets an object that represents the Optimal Asymmetric Encryption Padding (OAEP) encryption standard with a SHA256 hash algorithm.</summary>
705 <returns>An object that represents the OAEP encryption standard with a SHA256 hash algorithm.</returns>
707 <member name="P:System.Security.Cryptography.RSAEncryptionPadding.OaepSHA384">
708 <summary>Gets an object that represents the Optimal Asymmetric Encryption Padding (OAEP) encryption standard with a SHA-384 hash algorithm.</summary>
709 <returns>An object that represents the OAEP encryption standard with a SHA384 hash algorithm.</returns>
711 <member name="P:System.Security.Cryptography.RSAEncryptionPadding.OaepSHA512">
712 <summary>Gets an object that represents the Optimal Asymmetric Encryption Padding (OAEP) encryption standard with a SHA512 hash algorithm.</summary>
713 <returns>An object that represents the OAEP encryption standard with a SHA512 hash algorithm.</returns>
715 <member name="M:System.Security.Cryptography.RSAEncryptionPadding.op_Equality(System.Security.Cryptography.RSAEncryptionPadding,System.Security.Cryptography.RSAEncryptionPadding)">
716 <summary>Indicates whether two specified <see cref="T:System.Security.Cryptography.RSAEncryptionPadding"></see> objects are equal.</summary>
717 <param name="left">The first object to compare.</param>
718 <param name="right">The second object to compare.</param>
719 <returns><see langword="true"></see> if <see langword="left"></see> and <see langword="right"></see> are equal; otherwise, <see langword="false"></see>.</returns>
721 <member name="M:System.Security.Cryptography.RSAEncryptionPadding.op_Inequality(System.Security.Cryptography.RSAEncryptionPadding,System.Security.Cryptography.RSAEncryptionPadding)">
722 <summary>Indicates whether two specified <see cref="T:System.Security.Cryptography.RSAEncryptionPadding"></see> objects are unequal.</summary>
723 <param name="left">The first object to compare.</param>
724 <param name="right">The second object to compare.</param>
725 <returns><see langword="true"></see> if <see langword="left"></see> and <see langword="right"></see> are not equal; otherwise, <see langword="false"></see>.</returns>
727 <member name="P:System.Security.Cryptography.RSAEncryptionPadding.Pkcs1">
728 <summary>Gets an object that represents the PKCS #1 encryption standard.</summary>
729 <returns>An object that represents the PKCS #1 encryption standard.</returns>
731 <member name="M:System.Security.Cryptography.RSAEncryptionPadding.ToString">
732 <summary>Returns the string representation of the current <see cref="T:System.Security.Cryptography.RSAEncryptionPadding"></see> instance.</summary>
733 <returns>The string representation of the current object.</returns>
735 <member name="T:System.Security.Cryptography.RSA">
736 <summary>Represents the base class from which all implementations of the <see cref="T:System.Security.Cryptography.RSA"></see> algorithm inherit.</summary>
738 <member name="M:System.Security.Cryptography.RSA.#ctor">
739 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RSA"></see> class.</summary>
741 <member name="M:System.Security.Cryptography.RSA.Create">
742 <summary>Creates an instance of the default implementation of the <see cref="T:System.Security.Cryptography.RSA"></see> algorithm.</summary>
743 <returns>A new instance of the default implementation of <see cref="T:System.Security.Cryptography.RSA"></see>.</returns>
745 <member name="M:System.Security.Cryptography.RSA.Create(System.Int32)">
746 <summary>Creates a new ephemeral RSA key with the specified key size.</summary>
747 <param name="keySizeInBits">The key size, in bits.</param>
748 <returns>A new ephemeral RSA key with the specified key size.</returns>
749 <exception cref="T:System.Security.Cryptography.CryptographicException"><paramref name="keySizeInBits">keySizeInBits</paramref> is different than <see cref="System.Security.Cryptography.AsymmetricAlgorithm.KeySize"></see>.</exception>
751 <member name="M:System.Security.Cryptography.RSA.Create(System.Security.Cryptography.RSAParameters)">
752 <summary>Creates a new ephemeral RSA key with the specified RSA key parameters.</summary>
753 <param name="parameters">The parameters for the <see cref="T:System.Security.Cryptography.RSA"></see> algorithm.</param>
754 <returns>A new ephemeral RSA key.</returns>
756 <member name="M:System.Security.Cryptography.RSA.Create(System.String)">
757 <summary>Creates an instance of the specified implementation of <see cref="T:System.Security.Cryptography.RSA"></see>.</summary>
758 <param name="algName">The name of the implementation of <see cref="T:System.Security.Cryptography.RSA"></see> to use.</param>
759 <returns>A new instance of the specified implementation of <see cref="T:System.Security.Cryptography.RSA"></see>.</returns>
761 <member name="M:System.Security.Cryptography.RSA.Decrypt(System.Byte[],System.Security.Cryptography.RSAEncryptionPadding)">
762 <summary>When overridden in a derived class, decrypts the input data using the specified padding mode.</summary>
763 <param name="data">The data to decrypt.</param>
764 <param name="padding">The padding mode.</param>
765 <returns>The decrypted data.</returns>
766 <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
768 <member name="M:System.Security.Cryptography.RSA.DecryptValue(System.Byte[])">
769 <summary>When overridden in a derived class, decrypts the input data using the private key.</summary>
770 <param name="rgb">The cipher text to be decrypted.</param>
771 <returns>The resulting decryption of the <paramref name="rgb">rgb</paramref> parameter in plain text.</returns>
772 <exception cref="T:System.NotSupportedException">This method call is not supported. This exception is thrown starting with the .NET Framework 4.6.</exception>
774 <member name="M:System.Security.Cryptography.RSA.Encrypt(System.Byte[],System.Security.Cryptography.RSAEncryptionPadding)">
775 <summary>When overridden in a derived class, encrypts the input data using the specified padding mode.</summary>
776 <param name="data">The data to encrypt.</param>
777 <param name="padding">The padding mode.</param>
778 <returns>The encrypted data.</returns>
779 <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
781 <member name="M:System.Security.Cryptography.RSA.EncryptValue(System.Byte[])">
782 <summary>When overridden in a derived class, encrypts the input data using the public key.</summary>
783 <param name="rgb">The plain text to be encrypted.</param>
784 <returns>The resulting encryption of the <paramref name="rgb">rgb</paramref> parameter as cipher text.</returns>
785 <exception cref="T:System.NotSupportedException">This method call is not supported. This exception is thrown starting with the .NET Framework 4.6.</exception>
787 <member name="M:System.Security.Cryptography.RSA.ExportParameters(System.Boolean)">
788 <summary>When overridden in a derived class, exports the <see cref="T:System.Security.Cryptography.RSAParameters"></see>.</summary>
789 <param name="includePrivateParameters"><see langword="true"></see> to include private parameters; otherwise, <see langword="false"></see>.</param>
790 <returns>The parameters for <see cref="T:System.Security.Cryptography.DSA"></see>.</returns>
792 <member name="M:System.Security.Cryptography.RSA.FromXmlString(System.String)">
793 <summary>Initializes an <see cref="T:System.Security.Cryptography.RSA"></see> object from the key information from an XML string.</summary>
794 <param name="xmlString">The XML string containing <see cref="T:System.Security.Cryptography.RSA"></see> key information.</param>
795 <exception cref="T:System.ArgumentNullException">The <paramref name="xmlString">xmlString</paramref> parameter is <see langword="null"></see>.</exception>
796 <exception cref="T:System.Security.Cryptography.CryptographicException">The format of the <paramref name="xmlString">xmlString</paramref> parameter is not valid.</exception>
798 <member name="M:System.Security.Cryptography.RSA.HashData(System.IO.Stream,System.Security.Cryptography.HashAlgorithmName)">
799 <summary>When overridden in a derived class, computes the hash value of a specified binary stream by using a specified hashing algorithm.</summary>
800 <param name="data">The binary stream to hash.</param>
801 <param name="hashAlgorithm">The hash algorithm.</param>
802 <returns>The hashed data.</returns>
803 <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
805 <member name="M:System.Security.Cryptography.RSA.HashData(System.Byte[],System.Int32,System.Int32,System.Security.Cryptography.HashAlgorithmName)">
806 <summary>When overridden in a derived class, computes the hash value of a specified portion of a byte array by using a specified hashing algorithm.</summary>
807 <param name="data">The data to be hashed.</param>
808 <param name="offset">The index of the first byte in data that is to be hashed.</param>
809 <param name="count">The number of bytes to hash.</param>
810 <param name="hashAlgorithm">The algorithm to use in hash the data.</param>
811 <returns>The hashed data.</returns>
812 <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
814 <member name="M:System.Security.Cryptography.RSA.ImportParameters(System.Security.Cryptography.RSAParameters)">
815 <summary>When overridden in a derived class, imports the specified <see cref="T:System.Security.Cryptography.RSAParameters"></see>.</summary>
816 <param name="parameters">The parameters for <see cref="T:System.Security.Cryptography.RSA"></see>.</param>
818 <member name="P:System.Security.Cryptography.RSA.KeyExchangeAlgorithm">
819 <summary>Gets the name of the key exchange algorithm available with this implementation of <see cref="T:System.Security.Cryptography.RSA"></see>.</summary>
820 <returns>Returns &quot;RSA&quot;.</returns>
822 <member name="P:System.Security.Cryptography.RSA.SignatureAlgorithm">
823 <summary>Gets the name of the signature algorithm available with this implementation of <see cref="T:System.Security.Cryptography.RSA"></see>.</summary>
824 <returns>Returns &quot;RSA&quot;.</returns>
826 <member name="M:System.Security.Cryptography.RSA.SignData(System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
827 <summary>Computes the hash value of the specified byte array using the specified hash algorithm and padding mode, and signs the resulting hash value.</summary>
828 <param name="data">The input data for which to compute the hash.</param>
829 <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
830 <param name="padding">The padding mode.</param>
831 <returns>The RSA signature for the specified data.</returns>
832 <exception cref="T:System.ArgumentNullException"><paramref name="data">data</paramref> is <see langword="null"></see>.
834 <paramref name="padding">padding</paramref> is <see langword="null"></see>.</exception>
835 <exception cref="T:System.ArgumentException"><paramref name="hashAlgorithm">hashAlgorithm</paramref>.<see cref="System.Security.Cryptography.HashAlgorithmName.Name"></see> is <see langword="null"></see> or <see cref="System.String.Empty"></see>.</exception>
837 <member name="M:System.Security.Cryptography.RSA.SignData(System.IO.Stream,System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
838 <summary>Computes the hash value of the specified stream using the specified hash algorithm and padding mode, and signs the resulting hash value.</summary>
839 <param name="data">The input stream for which to compute the hash.</param>
840 <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
841 <param name="padding">The padding mode.</param>
842 <returns>The RSA signature for the specified data.</returns>
843 <exception cref="T:System.ArgumentNullException"><paramref name="data">data</paramref> is <see langword="null"></see>.
845 <paramref name="padding">padding</paramref> is <see langword="null"></see>.</exception>
846 <exception cref="T:System.ArgumentException"><paramref name="hashAlgorithm">hashAlgorithm</paramref>.<see cref="System.Security.Cryptography.HashAlgorithmName.Name"></see> is <see langword="null"></see> or <see cref="System.String.Empty"></see>.</exception>
848 <member name="M:System.Security.Cryptography.RSA.SignData(System.Byte[],System.Int32,System.Int32,System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
849 <summary>Computes the hash value of a portion of the specified byte array using the specified hash algorithm and padding mode, and signs the resulting hash value.</summary>
850 <param name="data">The input data for which to compute the hash.</param>
851 <param name="offset">The offset into the array at which to begin using data.</param>
852 <param name="count">The number of bytes in the array to use as data.</param>
853 <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
854 <param name="padding">The padding mode.</param>
855 <returns>The RSA signature for the specified data.</returns>
856 <exception cref="T:System.ArgumentNullException"><paramref name="data">data</paramref> is <see langword="null"></see>.
858 <paramref name="padding">padding</paramref> is <see langword="null"></see>.</exception>
859 <exception cref="T:System.ArgumentException"><paramref name="hashAlgorithm">hashAlgorithm</paramref>.<see cref="System.Security.Cryptography.HashAlgorithmName.Name"></see> is <see langword="null"></see> or <see cref="System.String.Empty"></see>.</exception>
860 <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="offset">offset</paramref> is less than zero.
862 <paramref name="count">count</paramref> is less than zero.
864 <paramref name="offset">offset</paramref> + <paramref name="count">count</paramref> – 1 results in an index that is beyond the upper bound of <paramref name="data">data</paramref>.</exception>
866 <member name="M:System.Security.Cryptography.RSA.SignHash(System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
867 <summary>When overridden in a derived class, computes the signature for the specified hash value by encrypting it with the private key using the specified padding.</summary>
868 <param name="hash">The hash value of the data to be signed.</param>
869 <param name="hashAlgorithm">The hash algorithm used to create the hash value of the data.</param>
870 <param name="padding">The padding.</param>
871 <returns>The RSA signature for the specified hash value.</returns>
872 <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
874 <member name="M:System.Security.Cryptography.RSA.ToXmlString(System.Boolean)">
875 <summary>Creates and returns an XML string containing the key of the current <see cref="T:System.Security.Cryptography.RSA"></see> object.</summary>
876 <param name="includePrivateParameters"><see langword="true"></see> to include a public and private RSA key; <see langword="false"></see> to include only the public key.</param>
877 <returns>An XML string containing the key of the current <see cref="T:System.Security.Cryptography.RSA"></see> object.</returns>
879 <member name="M:System.Security.Cryptography.RSA.TryDecrypt(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.RSAEncryptionPadding,System.Int32@)">
880 <param name="data"></param>
881 <param name="destination"></param>
882 <param name="padding"></param>
883 <param name="bytesWritten"></param>
886 <member name="M:System.Security.Cryptography.RSA.TryEncrypt(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.RSAEncryptionPadding,System.Int32@)">
887 <param name="data"></param>
888 <param name="destination"></param>
889 <param name="padding"></param>
890 <param name="bytesWritten"></param>
893 <member name="M:System.Security.Cryptography.RSA.TryHashData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Int32@)">
894 <param name="data"></param>
895 <param name="destination"></param>
896 <param name="hashAlgorithm"></param>
897 <param name="bytesWritten"></param>
900 <member name="M:System.Security.Cryptography.RSA.TrySignData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding,System.Int32@)">
901 <param name="data"></param>
902 <param name="destination"></param>
903 <param name="hashAlgorithm"></param>
904 <param name="padding"></param>
905 <param name="bytesWritten"></param>
908 <member name="M:System.Security.Cryptography.RSA.TrySignHash(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding,System.Int32@)">
909 <param name="hash"></param>
910 <param name="destination"></param>
911 <param name="hashAlgorithm"></param>
912 <param name="padding"></param>
913 <param name="bytesWritten"></param>
916 <member name="M:System.Security.Cryptography.RSA.VerifyData(System.Byte[],System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
917 <summary>Verifies that a digital signature is valid by calculating the hash value of the specified data using the specified hash algorithm and padding, and comparing it to the provided signature.</summary>
918 <param name="data">The signed data.</param>
919 <param name="signature">The signature data to be verified.</param>
920 <param name="hashAlgorithm">The hash algorithm used to create the hash value of the data.</param>
921 <param name="padding">The padding mode.</param>
922 <returns><see langword="true"></see> if the signature is valid; otherwise, <see langword="false"></see>.</returns>
923 <exception cref="T:System.ArgumentNullException"><paramref name="data">data</paramref> is <see langword="null"></see>.
925 <paramref name="signature">signature</paramref> is <see langword="null"></see>.
927 <paramref name="padding">padding</paramref> is <see langword="null"></see>.</exception>
928 <exception cref="T:System.ArgumentException"><paramref name="hashAlgorithm">hashAlgorithm</paramref>.<see cref="System.Security.Cryptography.HashAlgorithmName.Name"></see> is <see langword="null"></see> or <see cref="System.String.Empty"></see>.</exception>
930 <member name="M:System.Security.Cryptography.RSA.VerifyData(System.IO.Stream,System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
931 <summary>Verifies that a digital signature is valid by calculating the hash value of the specified stream using the specified hash algorithm and padding, and comparing it to the provided signature.</summary>
932 <param name="data">The signed data.</param>
933 <param name="signature">The signature data to be verified.</param>
934 <param name="hashAlgorithm">The hash algorithm used to create the hash value of the data.</param>
935 <param name="padding">The padding mode.</param>
936 <returns><see langword="true"></see> if the signature is valid; otherwise, <see langword="false"></see>.</returns>
937 <exception cref="T:System.ArgumentNullException"><paramref name="data">data</paramref> is <see langword="null"></see>.
939 <paramref name="signature">signature</paramref> is <see langword="null"></see>.
941 <paramref name="padding">padding</paramref> is <see langword="null"></see>.</exception>
942 <exception cref="T:System.ArgumentException"><paramref name="hashAlgorithm">hashAlgorithm</paramref>.<see cref="System.Security.Cryptography.HashAlgorithmName.Name"></see> is <see langword="null"></see> or <see cref="System.String.Empty"></see>.</exception>
944 <member name="M:System.Security.Cryptography.RSA.VerifyData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
945 <param name="data"></param>
946 <param name="signature"></param>
947 <param name="hashAlgorithm"></param>
948 <param name="padding"></param>
951 <member name="M:System.Security.Cryptography.RSA.VerifyData(System.Byte[],System.Int32,System.Int32,System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
952 <summary>Verifies that a digital signature is valid by calculating the hash value of the data in a portion of a byte array using the specified hash algorithm and padding, and comparing it to the provided signature.</summary>
953 <param name="data">The signed data.</param>
954 <param name="offset">The starting index at which to compute the hash.</param>
955 <param name="count">The number of bytes to hash.</param>
956 <param name="signature">The signature data to be verified.</param>
957 <param name="hashAlgorithm">The hash algorithm used to create the hash value of the data.</param>
958 <param name="padding">The padding mode.</param>
959 <returns><see langword="true"></see> if the signature is valid; otherwise, <see langword="false"></see>.</returns>
960 <exception cref="T:System.ArgumentNullException"><paramref name="data">data</paramref> is <see langword="null"></see>.
962 <paramref name="signature">signature</paramref> is <see langword="null"></see>.
964 <paramref name="padding">padding</paramref> is <see langword="null"></see>.</exception>
965 <exception cref="T:System.ArgumentException"><paramref name="hashAlgorithm">hashAlgorithm</paramref>.<see cref="System.Security.Cryptography.HashAlgorithmName.Name"></see> is <see langword="null"></see> or <see cref="System.String.Empty"></see>.</exception>
966 <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="offset">offset</paramref> is less than zero.
968 <paramref name="count">count</paramref> is less than zero.
970 <paramref name="offset">offset</paramref> + <paramref name="count">count</paramref> – 1 results in an index that is beyond the upper bound of <paramref name="data">data</paramref>.</exception>
972 <member name="M:System.Security.Cryptography.RSA.VerifyHash(System.Byte[],System.Byte[],System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
973 <summary>Verifies that a digital signature is valid by determining the hash value in the signature using the specified hash algorithm and padding, and comparing it to the provided hash value.</summary>
974 <param name="hash">The hash value of the signed data.</param>
975 <param name="signature">The signature data to be verified.</param>
976 <param name="hashAlgorithm">The hash algorithm used to create the hash value.</param>
977 <param name="padding">The padding mode.</param>
978 <returns><see langword="true"></see> if the signature is valid; otherwise, <see langword="false"></see>.</returns>
979 <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
981 <member name="M:System.Security.Cryptography.RSA.VerifyHash(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Security.Cryptography.RSASignaturePadding)">
982 <param name="hash"></param>
983 <param name="signature"></param>
984 <param name="hashAlgorithm"></param>
985 <param name="padding"></param>
988 <member name="T:System.Security.Cryptography.CryptoConfig">
989 <summary>Accesses the cryptography configuration information.</summary>
991 <member name="M:System.Security.Cryptography.CryptoConfig.#ctor">
992 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.CryptoConfig"></see> class.</summary>
994 <member name="M:System.Security.Cryptography.CryptoConfig.AddAlgorithm(System.Type,System.String[])">
995 <summary>Adds a set of names to algorithm mappings to be used for the current application domain.</summary>
996 <param name="algorithm">The algorithm to map to.</param>
997 <param name="names">An array of names to map to the algorithm.</param>
998 <exception cref="T:System.ArgumentNullException">The <paramref name="algorithm">algorithm</paramref> or <paramref name="names">names</paramref> parameter is <see langword="null"></see>.</exception>
999 <exception cref="T:System.ArgumentException"><paramref name="algorithm">algorithm</paramref> cannot be accessed from outside the assembly.
1001 One of the entries in the <paramref name="names">names</paramref> parameter is empty or <see langword="null"></see>.</exception>
1003 <member name="M:System.Security.Cryptography.CryptoConfig.AddOID(System.String,System.String[])">
1004 <summary>Adds a set of names to object identifier (OID) mappings to be used for the current application domain.</summary>
1005 <param name="oid">The object identifier (OID) to map to.</param>
1006 <param name="names">An array of names to map to the OID.</param>
1007 <exception cref="T:System.ArgumentNullException">The <paramref name="oid">oid</paramref> or <paramref name="names">names</paramref> parameter is <see langword="null"></see>.</exception>
1008 <exception cref="T:System.ArgumentException">One of the entries in the <paramref name="names">names</paramref> parameter is empty or <see langword="null"></see>.</exception>
1010 <member name="P:System.Security.Cryptography.CryptoConfig.AllowOnlyFipsAlgorithms">
1011 <summary>Indicates whether the runtime should enforce the policy to create only Federal Information Processing Standard (FIPS) certified algorithms.</summary>
1012 <returns><see langword="true"></see> to enforce the policy; otherwise, <see langword="false"></see>.</returns>
1014 <member name="M:System.Security.Cryptography.CryptoConfig.CreateFromName(System.String)">
1015 <summary>Creates a new instance of the specified cryptographic object.</summary>
1016 <param name="name">The simple name of the cryptographic object of which to create an instance.</param>
1017 <returns>A new instance of the specified cryptographic object.</returns>
1018 <exception cref="T:System.ArgumentNullException">The <paramref name="name">name</paramref> parameter is <see langword="null"></see>.</exception>
1019 <exception cref="T:System.Reflection.TargetInvocationException">The algorithm described by the <paramref name="name">name</paramref> parameter was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.</exception>
1021 <member name="M:System.Security.Cryptography.CryptoConfig.CreateFromName(System.String,System.Object[])">
1022 <summary>Creates a new instance of the specified cryptographic object with the specified arguments.</summary>
1023 <param name="name">The simple name of the cryptographic object of which to create an instance.</param>
1024 <param name="args">The arguments used to create the specified cryptographic object.</param>
1025 <returns>A new instance of the specified cryptographic object.</returns>
1026 <exception cref="T:System.ArgumentNullException">The <paramref name="name">name</paramref> parameter is <see langword="null"></see>.</exception>
1027 <exception cref="T:System.Reflection.TargetInvocationException">The algorithm described by the <paramref name="name">name</paramref> parameter was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.</exception>
1029 <member name="M:System.Security.Cryptography.CryptoConfig.EncodeOID(System.String)">
1030 <summary>Encodes the specified object identifier (OID).</summary>
1031 <param name="str">The OID to encode.</param>
1032 <returns>A byte array containing the encoded OID.</returns>
1033 <exception cref="T:System.ArgumentNullException">The <paramref name="str">str</paramref> parameter is <see langword="null"></see>.</exception>
1034 <exception cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException">An error occurred while encoding the OID.</exception>
1036 <member name="M:System.Security.Cryptography.CryptoConfig.MapNameToOID(System.String)">
1037 <summary>Gets the object identifier (OID) of the algorithm corresponding to the specified simple name.</summary>
1038 <param name="name">The simple name of the algorithm for which to get the OID.</param>
1039 <returns>The OID of the specified algorithm.</returns>
1040 <exception cref="T:System.ArgumentNullException">The <paramref name="name">name</paramref> parameter is <see langword="null"></see>.</exception>
1042 <member name="T:System.Security.Cryptography.AsymmetricSignatureFormatter">
1043 <summary>Represents the base class from which all implementations of asymmetric signature formatters derive.</summary>
1045 <member name="M:System.Security.Cryptography.AsymmetricSignatureFormatter.#ctor">
1046 <summary>Initializes a new instance of <see cref="T:System.Security.Cryptography.AsymmetricSignatureFormatter"></see>.</summary>
1048 <member name="M:System.Security.Cryptography.AsymmetricSignatureFormatter.CreateSignature(System.Byte[])">
1049 <summary>When overridden in a derived class, creates the signature for the specified data.</summary>
1050 <param name="rgbHash">The data to be signed.</param>
1051 <returns>The digital signature for the <paramref name="rgbHash">rgbHash</paramref> parameter.</returns>
1053 <member name="M:System.Security.Cryptography.AsymmetricSignatureFormatter.CreateSignature(System.Security.Cryptography.HashAlgorithm)">
1054 <summary>Creates the signature from the specified hash value.</summary>
1055 <param name="hash">The hash algorithm to use to create the signature.</param>
1056 <returns>The signature for the specified hash value.</returns>
1057 <exception cref="T:System.ArgumentNullException">The <paramref name="hash">hash</paramref> parameter is <see langword="null"></see>.</exception>
1059 <member name="M:System.Security.Cryptography.AsymmetricSignatureFormatter.SetHashAlgorithm(System.String)">
1060 <summary>When overridden in a derived class, sets the hash algorithm to use for creating the signature.</summary>
1061 <param name="strName">The name of the hash algorithm to use for creating the signature.</param>
1063 <member name="M:System.Security.Cryptography.AsymmetricSignatureFormatter.SetKey(System.Security.Cryptography.AsymmetricAlgorithm)">
1064 <summary>When overridden in a derived class, sets the asymmetric algorithm to use to create the signature.</summary>
1065 <param name="key">The instance of the implementation of <see cref="T:System.Security.Cryptography.AsymmetricAlgorithm"></see> to use to create the signature.</param>
1067 <member name="T:System.Security.Cryptography.AsymmetricSignatureDeformatter">
1068 <summary>Represents the abstract base class from which all implementations of asymmetric signature deformatters derive.</summary>
1070 <member name="M:System.Security.Cryptography.AsymmetricSignatureDeformatter.#ctor">
1071 <summary>Initializes a new instance of <see cref="T:System.Security.Cryptography.AsymmetricSignatureDeformatter"></see>.</summary>
1073 <member name="M:System.Security.Cryptography.AsymmetricSignatureDeformatter.SetHashAlgorithm(System.String)">
1074 <summary>When overridden in a derived class, sets the hash algorithm to use for verifying the signature.</summary>
1075 <param name="strName">The name of the hash algorithm to use for verifying the signature.</param>
1077 <member name="M:System.Security.Cryptography.AsymmetricSignatureDeformatter.SetKey(System.Security.Cryptography.AsymmetricAlgorithm)">
1078 <summary>When overridden in a derived class, sets the public key to use for verifying the signature.</summary>
1079 <param name="key">The instance of an implementation of <see cref="T:System.Security.Cryptography.AsymmetricAlgorithm"></see> that holds the public key.</param>
1081 <member name="M:System.Security.Cryptography.AsymmetricSignatureDeformatter.VerifySignature(System.Byte[],System.Byte[])">
1082 <summary>When overridden in a derived class, verifies the signature for the specified data.</summary>
1083 <param name="rgbHash">The data signed with rgbSignature.</param>
1084 <param name="rgbSignature">The signature to be verified for rgbHash.</param>
1085 <returns><see langword="true"></see> if <paramref name="rgbSignature">rgbSignature</paramref> matches the signature computed using the specified hash algorithm and key on <paramref name="rgbHash">rgbHash</paramref>; otherwise, <see langword="false"></see>.</returns>
1087 <member name="M:System.Security.Cryptography.AsymmetricSignatureDeformatter.VerifySignature(System.Security.Cryptography.HashAlgorithm,System.Byte[])">
1088 <summary>Verifies the signature from the specified hash value.</summary>
1089 <param name="hash">The hash algorithm to use to verify the signature.</param>
1090 <param name="rgbSignature">The signature to be verified.</param>
1091 <returns><see langword="true"></see> if the signature is valid for the hash; otherwise, <see langword="false"></see>.</returns>
1092 <exception cref="T:System.ArgumentNullException">The <paramref name="hash">hash</paramref> parameter is <see langword="null"></see>.</exception>
1094 <member name="T:System.Security.Cryptography.AsymmetricKeyExchangeFormatter">
1095 <summary>Represents the base class from which all asymmetric key exchange formatters derive.</summary>
1097 <member name="M:System.Security.Cryptography.AsymmetricKeyExchangeFormatter.#ctor">
1098 <summary>Initializes a new instance of <see cref="T:System.Security.Cryptography.AsymmetricKeyExchangeFormatter"></see>.</summary>
1100 <member name="M:System.Security.Cryptography.AsymmetricKeyExchangeFormatter.CreateKeyExchange(System.Byte[])">
1101 <summary>When overridden in a derived class, creates the encrypted key exchange data from the specified input data.</summary>
1102 <param name="data">The secret information to be passed in the key exchange.</param>
1103 <returns>The encrypted key exchange data to be sent to the intended recipient.</returns>
1105 <member name="M:System.Security.Cryptography.AsymmetricKeyExchangeFormatter.CreateKeyExchange(System.Byte[],System.Type)">
1106 <summary>When overridden in a derived class, creates the encrypted key exchange data from the specified input data.</summary>
1107 <param name="data">The secret information to be passed in the key exchange.</param>
1108 <param name="symAlgType">This parameter is not used in the current version.</param>
1109 <returns>The encrypted key exchange data to be sent to the intended recipient.</returns>
1111 <member name="P:System.Security.Cryptography.AsymmetricKeyExchangeFormatter.Parameters">
1112 <summary>When overridden in a derived class, gets the parameters for the asymmetric key exchange.</summary>
1113 <returns>A string in XML format containing the parameters of the asymmetric key exchange operation.</returns>
1115 <member name="M:System.Security.Cryptography.AsymmetricKeyExchangeFormatter.SetKey(System.Security.Cryptography.AsymmetricAlgorithm)">
1116 <summary>When overridden in a derived class, sets the public key to use for encrypting the secret information.</summary>
1117 <param name="key">The instance of the implementation of <see cref="T:System.Security.Cryptography.AsymmetricAlgorithm"></see> that holds the public key.</param>
1119 <member name="T:System.Security.Cryptography.AsymmetricKeyExchangeDeformatter">
1120 <summary>Represents the base class from which all asymmetric key exchange deformatters derive.</summary>
1122 <member name="M:System.Security.Cryptography.AsymmetricKeyExchangeDeformatter.#ctor">
1123 <summary>Initializes a new instance of <see cref="T:System.Security.Cryptography.AsymmetricKeyExchangeDeformatter"></see>.</summary>
1125 <member name="M:System.Security.Cryptography.AsymmetricKeyExchangeDeformatter.DecryptKeyExchange(System.Byte[])">
1126 <summary>When overridden in a derived class, extracts secret information from the encrypted key exchange data.</summary>
1127 <param name="rgb">The key exchange data within which the secret information is hidden.</param>
1128 <returns>The secret information derived from the key exchange data.</returns>
1130 <member name="P:System.Security.Cryptography.AsymmetricKeyExchangeDeformatter.Parameters">
1131 <summary>When overridden in a derived class, gets or sets the parameters for the asymmetric key exchange.</summary>
1132 <returns>A string in XML format containing the parameters of the asymmetric key exchange operation.</returns>
1134 <member name="M:System.Security.Cryptography.AsymmetricKeyExchangeDeformatter.SetKey(System.Security.Cryptography.AsymmetricAlgorithm)">
1135 <summary>When overridden in a derived class, sets the private key to use for decrypting the secret information.</summary>
1136 <param name="key">The instance of the implementation of <see cref="T:System.Security.Cryptography.AsymmetricAlgorithm"></see> that holds the private key.</param>
1138 <member name="T:System.Security.Cryptography.ECPoint">
1139 <summary>Represents a (X,Y) coordinate pair for elliptic curve cryptography (ECC) structures.</summary>
1141 <member name="F:System.Security.Cryptography.ECPoint.X">
1142 <summary>Represents the X coordinate.</summary>
1145 <member name="F:System.Security.Cryptography.ECPoint.Y">
1146 <summary>Represents the Y coordinate.</summary>
1149 <member name="T:System.Security.Cryptography.ECParameters">
1150 <summary>Represents the standard parameters for the elliptic curve cryptography (ECC) algorithm.</summary>
1152 <member name="F:System.Security.Cryptography.ECParameters.Curve">
1153 <summary>Represents the curve associated with the public key (<see cref="F:System.Security.Cryptography.ECParameters.Q"></see>) and the optional private key (<see cref="F:System.Security.Cryptography.ECParameters.D"></see>).</summary>
1156 <member name="F:System.Security.Cryptography.ECParameters.D">
1157 <summary>Represents the private key <see langword="D"></see> for the elliptic curve cryptography (ECC) algorithm, stored in big-endian format.</summary>
1160 <member name="F:System.Security.Cryptography.ECParameters.Q">
1161 <summary>Represents the public key <see langword="Q"></see> for the elliptic curve cryptography (ECC) algorithm.</summary>
1164 <member name="M:System.Security.Cryptography.ECParameters.Validate">
1165 <summary>Validates the current object.</summary>
1166 <exception cref="T:System.Security.Cryptography.CryptographicException">The key or curve parameters are not valid for the current curve type.</exception>
1168 <member name="T:System.Security.Cryptography.ECDsa">
1169 <summary>Provides an abstract base class that encapsulates the Elliptic Curve Digital Signature Algorithm (ECDSA).</summary>
1171 <member name="M:System.Security.Cryptography.ECDsa.#ctor">
1172 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ECDsa"></see> class.</summary>
1174 <member name="M:System.Security.Cryptography.ECDsa.Create">
1175 <summary>Creates a new instance of the default implementation of the Elliptic Curve Digital Signature Algorithm (ECDSA).</summary>
1176 <returns>A new instance of the default implementation (<see cref="T:System.Security.Cryptography.ECDsaCng"></see>) of this class.</returns>
1178 <member name="M:System.Security.Cryptography.ECDsa.Create(System.Security.Cryptography.ECCurve)">
1179 <summary>Creates a new instance of the default implementation of the Elliptic Curve Digital Signature Algorithm (ECDSA) with a newly generated key over the specified curve.</summary>
1180 <param name="curve">The curve to use for key generation.</param>
1181 <returns>A new instance of the default implementation (<see cref="T:System.Security.Cryptography.ECDsaCng"></see>) of this class.</returns>
1183 <member name="M:System.Security.Cryptography.ECDsa.Create(System.Security.Cryptography.ECParameters)">
1184 <summary>Creates a new instance of the default implementation of the Elliptic Curve Digital Signature Algorithm (ECDSA) using the specified parameters as the key.</summary>
1185 <param name="parameters">The parameters representing the key to use.</param>
1186 <returns>A new instance of the default implementation (<see cref="T:System.Security.Cryptography.ECDsaCng"></see>) of this class.</returns>
1188 <member name="M:System.Security.Cryptography.ECDsa.Create(System.String)">
1189 <summary>Creates a new instance of the specified implementation of the Elliptic Curve Digital Signature Algorithm (ECDSA).</summary>
1190 <param name="algorithm">The name of an ECDSA implementation. The following strings all refer to the same implementation, which is the only implementation currently supported in the .NET Framework:
1191 - &quot;ECDsa&quot;
1192 - &quot;ECDsaCng&quot;
1193 - &quot;System.Security.Cryptography.ECDsaCng&quot;
1194 You can also provide the name of a custom ECDSA implementation.</param>
1195 <returns>A new instance of the specified implementation of this class. If the specified algorithm name does not map to an ECDSA implementation, this method returns <see langword="null"></see>.</returns>
1196 <exception cref="T:System.ArgumentNullException">The <paramref name="algorithm">algorithm</paramref> parameter is <see langword="null"></see>.</exception>
1198 <member name="M:System.Security.Cryptography.ECDsa.ExportExplicitParameters(System.Boolean)">
1199 <summary>When overridden in a derived class, exports the explicit parameters for an elliptic curve.</summary>
1200 <param name="includePrivateParameters"><see langword="true"></see> to include private parameters; otherwise, <see langword="false"></see>.</param>
1201 <returns>The parameters representing the point on the curve for this key, using the explicit curve format.</returns>
1202 <exception cref="T:System.NotSupportedException">A derived class must override this method.</exception>
1204 <member name="M:System.Security.Cryptography.ECDsa.ExportParameters(System.Boolean)">
1205 <summary>When overridden in a derived class, exports the named or explicit parameters for an elliptic curve. If the curve has a name, the <see cref="F:System.Security.Cryptography.ECParameters.Curve"></see> field contains named curve parameters, otherwise it contains explicit parameters.</summary>
1206 <param name="includePrivateParameters"><see langword="true"></see> to include private parameters; otherwise, <see langword="false"></see>.</param>
1207 <returns>The parameters representing the point on the curve for this key.</returns>
1208 <exception cref="T:System.NotSupportedException">A derived class must override this method.</exception>
1210 <member name="M:System.Security.Cryptography.ECDsa.FromXmlString(System.String)">
1211 <param name="xmlString"></param>
1213 <member name="M:System.Security.Cryptography.ECDsa.GenerateKey(System.Security.Cryptography.ECCurve)">
1214 <summary>When overridden in a derived class, generates a new public/private key pair for the specified curve.</summary>
1215 <param name="curve">The curve to use.</param>
1216 <exception cref="T:System.NotSupportedException">A derived class must override this method.</exception>
1218 <member name="M:System.Security.Cryptography.ECDsa.HashData(System.IO.Stream,System.Security.Cryptography.HashAlgorithmName)">
1219 <summary>When overridden in a derived class, computes the hash value of the specified binary stream by using the specified hashing algorithm.</summary>
1220 <param name="data">The binary stream to hash.</param>
1221 <param name="hashAlgorithm">The algorithm to use to hash the data.</param>
1222 <returns>The hashed data.</returns>
1223 <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
1225 <member name="M:System.Security.Cryptography.ECDsa.HashData(System.Byte[],System.Int32,System.Int32,System.Security.Cryptography.HashAlgorithmName)">
1226 <summary>When overridden in a derived class, computes the hash value of the specified portion of a byte array by using the specified hashing algorithm.</summary>
1227 <param name="data">The data to be hashed.</param>
1228 <param name="offset">The index of the first byte in data to be hashed.</param>
1229 <param name="count">The number of bytes to hash.</param>
1230 <param name="hashAlgorithm">The algorithm to use to hash the data.</param>
1231 <returns>The hashed data.</returns>
1232 <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
1234 <member name="M:System.Security.Cryptography.ECDsa.ImportParameters(System.Security.Cryptography.ECParameters)">
1235 <summary>When overridden in a derived class, imports the specified parameters.</summary>
1236 <param name="parameters">The curve parameters.</param>
1237 <exception cref="T:System.NotSupportedException">A derived class must override this method.</exception>
1239 <member name="P:System.Security.Cryptography.ECDsa.KeyExchangeAlgorithm">
1240 <summary>Gets the name of the key exchange algorithm.</summary>
1241 <returns>Always <see langword="null"></see>.</returns>
1243 <member name="P:System.Security.Cryptography.ECDsa.SignatureAlgorithm">
1244 <summary>Gets the name of the signature algorithm.</summary>
1245 <returns>The string &quot;ECDsa&quot;.</returns>
1247 <member name="M:System.Security.Cryptography.ECDsa.SignData(System.Byte[],System.Security.Cryptography.HashAlgorithmName)">
1248 <summary>Computes the hash value of the specified byte array using the specified hash algorithm and signs the resulting hash value.</summary>
1249 <param name="data">The input data for which to compute the hash.</param>
1250 <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
1251 <returns>The ECDSA signature for the specified data.</returns>
1252 <exception cref="T:System.ArgumentNullException"><paramref name="data">data</paramref> is <see langword="null"></see>.</exception>
1253 <exception cref="T:System.ArgumentException"><paramref name="hashAlgorithm">hashAlgorithm</paramref>.<see cref="System.Security.Cryptography.HashAlgorithmName.Name"></see> is <see langword="null"></see> or <see cref="System.String.Empty"></see>.</exception>
1255 <member name="M:System.Security.Cryptography.ECDsa.SignData(System.IO.Stream,System.Security.Cryptography.HashAlgorithmName)">
1256 <summary>Computes the hash value of the specified stream using the specified hash algorithm and signs the resulting hash value.</summary>
1257 <param name="data">The input stream for which to compute the hash.</param>
1258 <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
1259 <returns>The ECDSA signature for the specified data.</returns>
1260 <exception cref="T:System.ArgumentNullException"><paramref name="data">data</paramref> is <see langword="null"></see>.</exception>
1261 <exception cref="T:System.ArgumentException"><paramref name="hashAlgorithm">hashAlgorithm</paramref>.<see cref="System.Security.Cryptography.HashAlgorithmName.Name"></see> is <see langword="null"></see> or <see cref="System.String.Empty"></see>.</exception>
1263 <member name="M:System.Security.Cryptography.ECDsa.SignData(System.Byte[],System.Int32,System.Int32,System.Security.Cryptography.HashAlgorithmName)">
1264 <summary>Computes the hash value of a portion of the specified byte array using the specified hash algorithm and signs the resulting hash value.</summary>
1265 <param name="data">The input data for which to compute the hash.</param>
1266 <param name="offset">The offset into the array at which to begin using data.</param>
1267 <param name="count">The number of bytes in the array to use as data.</param>
1268 <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
1269 <returns>The ECDSA signature for the specified data.</returns>
1270 <exception cref="T:System.ArgumentNullException"><paramref name="data">data</paramref> is <see langword="null"></see>.</exception>
1271 <exception cref="T:System.ArgumentException"><paramref name="hashAlgorithm">hashAlgorithm</paramref>.<see cref="System.Security.Cryptography.HashAlgorithmName.Name"></see> is <see langword="null"></see> or <see cref="System.String.Empty"></see>.</exception>
1272 <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="offset">offset</paramref> is less than zero.
1274 <paramref name="count">count</paramref> is less than zero.
1276 <paramref name="offset">offset</paramref> + <paramref name="count">count</paramref> – 1 results in an index that is beyond the upper bound of <paramref name="data">data</paramref>.</exception>
1278 <member name="M:System.Security.Cryptography.ECDsa.SignHash(System.Byte[])">
1279 <summary>Generates a digital signature for the specified hash value.</summary>
1280 <param name="hash">The hash value of the data that is being signed.</param>
1281 <returns>A digital signature that consists of the given hash value encrypted with the private key.</returns>
1282 <exception cref="T:System.ArgumentNullException">The <paramref name="hash">hash</paramref> parameter is <see langword="null"></see>.</exception>
1284 <member name="M:System.Security.Cryptography.ECDsa.ToXmlString(System.Boolean)">
1285 <param name="includePrivateParameters"></param>
1288 <member name="M:System.Security.Cryptography.ECDsa.TryHashData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Int32@)">
1289 <param name="data"></param>
1290 <param name="destination"></param>
1291 <param name="hashAlgorithm"></param>
1292 <param name="bytesWritten"></param>
1295 <member name="M:System.Security.Cryptography.ECDsa.TrySignData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Int32@)">
1296 <param name="data"></param>
1297 <param name="destination"></param>
1298 <param name="hashAlgorithm"></param>
1299 <param name="bytesWritten"></param>
1302 <member name="M:System.Security.Cryptography.ECDsa.TrySignHash(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@)">
1303 <param name="hash"></param>
1304 <param name="destination"></param>
1305 <param name="bytesWritten"></param>
1308 <member name="M:System.Security.Cryptography.ECDsa.VerifyData(System.Byte[],System.Byte[],System.Security.Cryptography.HashAlgorithmName)">
1309 <summary>Verifies that a digital signature is valid by calculating the hash value of the specified data using the specified hash algorithm and comparing it to the provided signature.</summary>
1310 <param name="data">The signed data.</param>
1311 <param name="signature">The signature data to be verified.</param>
1312 <param name="hashAlgorithm">The hash algorithm used to create the hash value of the data.</param>
1313 <returns><see langword="true"></see> if the signature is valid; otherwise, <see langword="false"></see>.</returns>
1314 <exception cref="T:System.ArgumentNullException"><paramref name="data">data</paramref> is <see langword="null"></see>.
1316 <paramref name="signature">signature</paramref> is <see langword="null"></see>.</exception>
1317 <exception cref="T:System.ArgumentException"><paramref name="hashAlgorithm">hashAlgorithm</paramref>.<see cref="System.Security.Cryptography.HashAlgorithmName.Name"></see> is <see langword="null"></see> or <see cref="System.String.Empty"></see>.</exception>
1319 <member name="M:System.Security.Cryptography.ECDsa.VerifyData(System.IO.Stream,System.Byte[],System.Security.Cryptography.HashAlgorithmName)">
1320 <summary>Verifies that a digital signature is valid by calculating the hash value of the specified stream using the specified hash algorithm and comparing it to the provided signature.</summary>
1321 <param name="data">The signed data.</param>
1322 <param name="signature">The signature data to be verified.</param>
1323 <param name="hashAlgorithm">The hash algorithm used to create the hash value of the data.</param>
1324 <returns><see langword="true"></see> if the signature is valid; otherwise, <see langword="false"></see>.</returns>
1325 <exception cref="T:System.ArgumentNullException"><paramref name="data">data</paramref> is <see langword="null"></see>.
1327 <paramref name="signature">signature</paramref> is <see langword="null"></see>.</exception>
1328 <exception cref="T:System.ArgumentException"><paramref name="hashAlgorithm">hashAlgorithm</paramref>.<see cref="System.Security.Cryptography.HashAlgorithmName.Name"></see> is <see langword="null"></see> or <see cref="System.String.Empty"></see>.</exception>
1330 <member name="M:System.Security.Cryptography.ECDsa.VerifyData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Security.Cryptography.HashAlgorithmName)">
1331 <param name="data"></param>
1332 <param name="signature"></param>
1333 <param name="hashAlgorithm"></param>
1336 <member name="M:System.Security.Cryptography.ECDsa.VerifyData(System.Byte[],System.Int32,System.Int32,System.Byte[],System.Security.Cryptography.HashAlgorithmName)">
1337 <summary>Verifies that a digital signature is valid by calculating the hash value of the data in a portion of a byte array using the specified hash algorithm and comparing it to the provided signature.</summary>
1338 <param name="data">The signed data.</param>
1339 <param name="offset">The starting index at which to compute the hash.</param>
1340 <param name="count">The number of bytes to hash.</param>
1341 <param name="signature">The signature data to be verified.</param>
1342 <param name="hashAlgorithm">The hash algorithm used to create the hash value of the data.</param>
1343 <returns><see langword="true"></see> if the signature is valid; otherwise, <see langword="false"></see>.</returns>
1344 <exception cref="T:System.ArgumentNullException"><paramref name="data">data</paramref> is <see langword="null"></see>.
1346 <paramref name="signature">signature</paramref> is <see langword="null"></see>.</exception>
1347 <exception cref="T:System.ArgumentException"><paramref name="hashAlgorithm">hashAlgorithm</paramref>.<see cref="System.Security.Cryptography.HashAlgorithmName.Name"></see> is <see langword="null"></see> or <see cref="System.String.Empty"></see>.</exception>
1348 <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="offset">offset</paramref> is less than zero.
1350 <paramref name="count">count</paramref> is less than zero.
1352 <paramref name="offset">offset</paramref> + <paramref name="count">count</paramref> – 1 results in an index that is beyond the upper bound of <paramref name="data">data</paramref>.</exception>
1354 <member name="M:System.Security.Cryptography.ECDsa.VerifyHash(System.Byte[],System.Byte[])">
1355 <summary>Verifies a digital signature against the specified hash value.</summary>
1356 <param name="hash">The hash value of a block of data.</param>
1357 <param name="signature">The digital signature to be verified.</param>
1358 <returns><see langword="true"></see> if the hash value equals the decrypted signature; otherwise, <see langword="false"></see>.</returns>
1360 <member name="M:System.Security.Cryptography.ECDsa.VerifyHash(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
1361 <param name="hash"></param>
1362 <param name="signature"></param>
1365 <member name="T:System.Security.Cryptography.ECDiffieHellmanPublicKey">
1366 <summary>Provides an abstract base class from which all <see cref="T:System.Security.Cryptography.ECDiffieHellmanCngPublicKey"></see> implementations must inherit.</summary>
1368 <member name="M:System.Security.Cryptography.ECDiffieHellmanPublicKey.#ctor">
1369 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ECDiffieHellmanPublicKey"></see> class.</summary>
1371 <member name="M:System.Security.Cryptography.ECDiffieHellmanPublicKey.#ctor(System.Byte[])">
1372 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ECDiffieHellmanPublicKey"></see> class.</summary>
1373 <param name="keyBlob">A byte array that represents an <see cref="T:System.Security.Cryptography.ECDiffieHellmanPublicKey"></see> object.</param>
1374 <exception cref="T:System.ArgumentNullException"><paramref name="keyBlob">keyBlob</paramref> is <see langword="null"></see>.</exception>
1376 <member name="M:System.Security.Cryptography.ECDiffieHellmanPublicKey.Dispose">
1377 <summary>Releases all resources used by the current instance of the <see cref="T:System.Security.Cryptography.ECDiffieHellman"></see> class.</summary>
1379 <member name="M:System.Security.Cryptography.ECDiffieHellmanPublicKey.Dispose(System.Boolean)">
1380 <summary>Releases the unmanaged resources used by the <see cref="T:System.Security.Cryptography.ECDiffieHellman"></see> class and optionally releases the managed resources.</summary>
1381 <param name="disposing"><see langword="true"></see> to release both managed and unmanaged resources; <see langword="false"></see> to release only unmanaged resources.</param>
1383 <member name="M:System.Security.Cryptography.ECDiffieHellmanPublicKey.ExportExplicitParameters">
1384 <summary>When overridden in a derived class, exports the explicit <see cref="T:System.Security.Cryptography.ECParameters"></see> for an <see cref="T:System.Security.Cryptography.ECCurve"></see> object.</summary>
1385 <returns>An object that represents the point on the curve for this key, using the explicit curve format.</returns>
1386 <exception cref="T:System.NotSupportedException">A derived class must override this method.</exception>
1388 <member name="M:System.Security.Cryptography.ECDiffieHellmanPublicKey.ExportParameters">
1389 <summary>When overridden in a derived class, exports the named or explicit <see cref="T:System.Security.Cryptography.ECParameters"></see> for an <see cref="T:System.Security.Cryptography.ECCurve"></see> object.</summary>
1390 <returns>An object that represents the point on the curve for this key.</returns>
1391 <exception cref="T:System.NotSupportedException">A derived class must override this method.</exception>
1393 <member name="M:System.Security.Cryptography.ECDiffieHellmanPublicKey.ToByteArray">
1394 <summary>Serializes the <see cref="T:System.Security.Cryptography.ECDiffieHellmanPublicKey"></see> key BLOB to a byte array.</summary>
1395 <returns>A byte array that contains the serialized Elliptic Curve Diffie-Hellman (ECDH) public key.</returns>
1397 <member name="M:System.Security.Cryptography.ECDiffieHellmanPublicKey.ToXmlString">
1398 <summary>Serializes the <see cref="T:System.Security.Cryptography.ECDiffieHellmanPublicKey"></see> public key to an XML string.</summary>
1399 <returns>An XML string that contains the serialized Elliptic Curve Diffie-Hellman (ECDH) public key.</returns>
1401 <member name="T:System.Security.Cryptography.ECDiffieHellman">
1402 <summary>Provides an abstract base class that Elliptic Curve Diffie-Hellman (ECDH) algorithm implementations can derive from. This class provides the basic set of operations that all ECDH implementations must support.</summary>
1404 <member name="M:System.Security.Cryptography.ECDiffieHellman.#ctor">
1405 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.ECDiffieHellman"></see> class.</summary>
1407 <member name="M:System.Security.Cryptography.ECDiffieHellman.Create">
1408 <summary>Creates a new instance of the default implementation of the Elliptic Curve Diffie-Hellman (ECDH) algorithm.</summary>
1409 <returns>A new instance of the default implementation of this class.</returns>
1411 <member name="M:System.Security.Cryptography.ECDiffieHellman.Create(System.Security.Cryptography.ECCurve)">
1412 <summary>Creates a new instance of the default implementation of the Elliptic Curve Diffie-Hellman (ECDH) algorithm with a new public/private key-pair generated over the specified curve.</summary>
1413 <param name="curve">The curve to use to generate a new public/private key-pair.</param>
1414 <returns>A new instance of the default implementation of the Elliptic Curve Diffie-Hellman (ECDH) algorithm.</returns>
1415 <exception cref="T:System.Security.Cryptography.CryptographicException"><paramref name="curve">curve</paramref> does not validate.</exception>
1417 <member name="M:System.Security.Cryptography.ECDiffieHellman.Create(System.Security.Cryptography.ECParameters)">
1418 <summary>Creates a new instance of the default implementation of the Elliptic Curve Diffie-Hellman (ECDH) algorithm with the key described by the specified <see cref="T:System.Security.Cryptography.ECParameters"></see> object.</summary>
1419 <param name="parameters">The parameters for the elliptic curve cryptography (ECC) algorithm.</param>
1420 <returns>A new instance of the default implementation of the Elliptic Curve Diffie-Hellman (ECDH) algorithm.</returns>
1421 <exception cref="T:System.Security.Cryptography.CryptographicException"><paramref name="parameters">parameters</paramref> does not validate.</exception>
1423 <member name="M:System.Security.Cryptography.ECDiffieHellman.Create(System.String)">
1424 <summary>Creates a new instance of the specified implementation of the Elliptic Curve Diffie-Hellman (ECDH) algorithm.</summary>
1425 <param name="algorithm">The name of an implementation of the ECDH algorithm.</param>
1426 <returns>A new instance of the specified implementation of this class. If the specified algorithm name does not map to an ECDH implementation, this method returns <see langword="null"></see>.</returns>
1427 <exception cref="T:System.ArgumentNullException">The <paramref name="algorithm">algorithm</paramref> parameter is <see langword="null"></see>.</exception>
1429 <member name="M:System.Security.Cryptography.ECDiffieHellman.DeriveKeyFromHash(System.Security.Cryptography.ECDiffieHellmanPublicKey,System.Security.Cryptography.HashAlgorithmName)">
1430 <summary>Derives bytes that can be used as a key using a hash function, given another party&#39;s public key and hash algorithm&#39;s name.</summary>
1431 <param name="otherPartyPublicKey">The other party&#39;s public key.</param>
1432 <param name="hashAlgorithm">The hash algorithm to use to derive the key material.</param>
1433 <returns>The key material from the key exchange with the other party’s public key.</returns>
1435 <member name="M:System.Security.Cryptography.ECDiffieHellman.DeriveKeyFromHash(System.Security.Cryptography.ECDiffieHellmanPublicKey,System.Security.Cryptography.HashAlgorithmName,System.Byte[],System.Byte[])">
1436 <summary>When implemented in a derived class, derives bytes that can be used as a key using a hash function, given another party&#39;s public key, hash algorithm&#39;s name, a prepend value and an append value.</summary>
1437 <param name="otherPartyPublicKey">The other party&#39;s public key.</param>
1438 <param name="hashAlgorithm">The hash algorithm to use to derive the key material.</param>
1439 <param name="secretPrepend">A value to prepend to the derived secret before hashing.</param>
1440 <param name="secretAppend">A value to append to the derived secret before hashing.</param>
1441 <returns>The key material from the key exchange with the other party’s public key.</returns>
1442 <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
1444 <member name="M:System.Security.Cryptography.ECDiffieHellman.DeriveKeyFromHmac(System.Security.Cryptography.ECDiffieHellmanPublicKey,System.Security.Cryptography.HashAlgorithmName,System.Byte[])">
1445 <summary>Derives bytes that can be used as a key using a Hash-based Message Authentication Code (HMAC).</summary>
1446 <param name="otherPartyPublicKey">The other party&#39;s public key.</param>
1447 <param name="hashAlgorithm">The hash algorithm to use to derive the key material.</param>
1448 <param name="hmacKey">The key for the HMAC.</param>
1449 <returns>The key material from the key exchange with the other party’s public key.</returns>
1451 <member name="M:System.Security.Cryptography.ECDiffieHellman.DeriveKeyFromHmac(System.Security.Cryptography.ECDiffieHellmanPublicKey,System.Security.Cryptography.HashAlgorithmName,System.Byte[],System.Byte[],System.Byte[])">
1452 <summary>When implemented in a derived class, derives bytes that can be used as a key using a Hash-based Message Authentication Code (HMAC).</summary>
1453 <param name="otherPartyPublicKey">The other party&#39;s public key.</param>
1454 <param name="hashAlgorithm">The hash algorithm to use to derive the key material.</param>
1455 <param name="hmacKey">The key for the HMAC.</param>
1456 <param name="secretPrepend">A value to prepend to the derived secret before hashing.</param>
1457 <param name="secretAppend">A value to append to the derived secret before hashing.</param>
1458 <returns>The key material from the key exchange with the other party’s public key.</returns>
1459 <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
1461 <member name="M:System.Security.Cryptography.ECDiffieHellman.DeriveKeyMaterial(System.Security.Cryptography.ECDiffieHellmanPublicKey)">
1462 <summary>Derives bytes that can be used as a key, given another party&#39;s public key.</summary>
1463 <param name="otherPartyPublicKey">The other party&#39;s public key.</param>
1464 <returns>The key material from the key exchange with the other party’s public key.</returns>
1466 <member name="M:System.Security.Cryptography.ECDiffieHellman.DeriveKeyTls(System.Security.Cryptography.ECDiffieHellmanPublicKey,System.Byte[],System.Byte[])">
1467 <summary>When implemented in a derived class, derives bytes that can be used as a key using a Transport Layer Security (TLS) Pseudo-Random Function (PRF) derivation algorithm.</summary>
1468 <param name="otherPartyPublicKey">The other party&#39;s public key.</param>
1469 <param name="prfLabel">The ASCII-encoded PRF label.</param>
1470 <param name="prfSeed">The 64-byte PRF seed.</param>
1471 <returns>The key material from the key exchange with the other party’s public key.</returns>
1472 <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
1474 <member name="M:System.Security.Cryptography.ECDiffieHellman.ExportExplicitParameters(System.Boolean)">
1475 <summary>When overridden in a derived class, exports either the public or the public and private key information using the explicit curve form from a working <see cref="T:System.Security.Cryptography.ECDiffieHellman"></see> key to an <see cref="T:System.Security.Cryptography.ECParameters"></see> structure so that it can be passed to the <see cref="M:System.Security.Cryptography.ECDiffieHellman.ImportParameters(System.Security.Cryptography.ECParameters)"></see> method.</summary>
1476 <param name="includePrivateParameters"><see langword="true"></see> to include private parameters; otherwise, <see langword="false"></see>.</param>
1477 <returns>An object that represents the point on the curve for this key, using the explicit curve format.</returns>
1478 <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
1480 <member name="M:System.Security.Cryptography.ECDiffieHellman.ExportParameters(System.Boolean)">
1481 <summary>When overridden in a derived class, exports either the public or the public and private key information from a working <see cref="T:System.Security.Cryptography.ECDiffieHellman"></see> key to an <see cref="T:System.Security.Cryptography.ECParameters"></see> structure so that it can be passed to the <see cref="M:System.Security.Cryptography.ECDiffieHellman.ImportParameters(System.Security.Cryptography.ECParameters)"></see> method.</summary>
1482 <param name="includePrivateParameters"><see langword="true"></see> to include private parameters; otehrwise, <see langword="false"></see> to include public parameters only.</param>
1483 <returns>An object that represents the point on the curve for this key. It can be passed to the <see cref="M:System.Security.Cryptography.ECDiffieHellman.ImportParameters(System.Security.Cryptography.ECParameters)"></see> method.</returns>
1484 <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
1486 <member name="M:System.Security.Cryptography.ECDiffieHellman.FromXmlString(System.String)">
1487 <param name="xmlString"></param>
1489 <member name="M:System.Security.Cryptography.ECDiffieHellman.GenerateKey(System.Security.Cryptography.ECCurve)">
1490 <summary>When overridden in a derived class, generates a new ephemeral public/private key pair for the specified curve.</summary>
1491 <param name="curve">The curve used to generate an ephemeral public/private key pair.</param>
1492 <exception cref="T:System.Security.Cryptography.CryptographicException"><paramref name="curve">curve</paramref> does not validate.</exception>
1493 <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
1495 <member name="M:System.Security.Cryptography.ECDiffieHellman.ImportParameters(System.Security.Cryptography.ECParameters)">
1496 <summary>When overridden in a derived class, imports the specified parameters for an <see cref="T:System.Security.Cryptography.ECCurve"></see> as an ephemeral key into the current <see cref="T:System.Security.Cryptography.ECDiffieHellman"></see> object.</summary>
1497 <param name="parameters">The curve&#39;s parameters to import.</param>
1498 <exception cref="T:System.Security.Cryptography.CryptographicException"><paramref name="parameters">parameters</paramref> does not validate.</exception>
1499 <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
1501 <member name="P:System.Security.Cryptography.ECDiffieHellman.KeyExchangeAlgorithm">
1502 <summary>Gets the name of the key exchange algorithm.</summary>
1503 <returns>The name of the key exchange algorithm.</returns>
1505 <member name="P:System.Security.Cryptography.ECDiffieHellman.PublicKey">
1506 <summary>Gets the public key that is being used by the current Elliptic Curve Diffie-Hellman (ECDH) instance.</summary>
1507 <returns>The public part of the ECDH key pair that is being used by this <see cref="T:System.Security.Cryptography.ECDiffieHellman"></see> instance.</returns>
1509 <member name="P:System.Security.Cryptography.ECDiffieHellman.SignatureAlgorithm">
1510 <summary>Gets the name of the signature algorithm.</summary>
1511 <returns>Always <see langword="null"></see>.</returns>
1513 <member name="M:System.Security.Cryptography.ECDiffieHellman.ToXmlString(System.Boolean)">
1514 <param name="includePrivateParameters"></param>
1517 <member name="T:System.Security.Cryptography.ECCurve">
1518 <summary>Represents an elliptic curve.</summary>
1520 <member name="F:System.Security.Cryptography.ECCurve.A">
1521 <summary>The first coefficient for an explicit curve. A for short Weierstrass, Montgomery, and Twisted Edwards curves.</summary>
1524 <member name="F:System.Security.Cryptography.ECCurve.B">
1525 <summary>The second coefficient for an explicit curve. B for short Weierstrass and d for Twisted Edwards curves.</summary>
1528 <member name="F:System.Security.Cryptography.ECCurve.Cofactor">
1529 <summary>The cofactor of the curve.</summary>
1532 <member name="M:System.Security.Cryptography.ECCurve.CreateFromFriendlyName(System.String)">
1533 <summary>Creates a named curve using the specified friendly name of the identifier.</summary>
1534 <param name="oidFriendlyName">The friendly name of the identifier.</param>
1535 <returns>An object representing the named curve.</returns>
1536 <exception cref="T:System.ArgumentNullException"><paramref name="oidFriendlyName">oidFriendlyName</paramref> is <see langword="null"></see>.</exception>
1538 <member name="M:System.Security.Cryptography.ECCurve.CreateFromOid(System.Security.Cryptography.Oid)">
1539 <summary>Creates a named curve using the specified <see cref="T:System.Security.Cryptography.Oid"></see> object.</summary>
1540 <param name="curveOid">The object identifier to use.</param>
1541 <returns>An object representing the named curve.</returns>
1543 <member name="M:System.Security.Cryptography.ECCurve.CreateFromValue(System.String)">
1544 <summary>Creates a named curve using the specified dotted-decimal representation of the identifier.</summary>
1545 <param name="oidValue">The dotted number of the identifier.</param>
1546 <returns>An object representing the named curve.</returns>
1547 <exception cref="T:System.ArgumentNullException"><paramref name="oidValue">oidValue</paramref> is <see langword="null"></see>.</exception>
1549 <member name="F:System.Security.Cryptography.ECCurve.CurveType">
1550 <summary>Identifies the composition of the <see cref="T:System.Security.Cryptography.ECCurve"></see> object.</summary>
1553 <member name="F:System.Security.Cryptography.ECCurve.G">
1554 <summary>The generator, or base point, for operations on the curve.</summary>
1557 <member name="F:System.Security.Cryptography.ECCurve.Hash">
1558 <summary>The name of the hash algorithm which was used to generate the curve coefficients (<see cref="F:System.Security.Cryptography.ECCurve.A"></see> and <see cref="F:System.Security.Cryptography.ECCurve.B"></see>) from the <see cref="F:System.Security.Cryptography.ECCurve.Seed"></see> under the ANSI X9.62 generation algorithm. Applies only to explicit curves.</summary>
1561 <member name="P:System.Security.Cryptography.ECCurve.IsCharacteristic2">
1562 <summary>Gets a value that indicates whether the curve type indicates an explicit characteristic 2 curve.</summary>
1563 <returns><see langword="true"></see> if the curve is an explicit characteristic 2 curve; <see langword="false"></see> if the curve is a named characteristic 2, prime, or implicit curve.</returns>
1565 <member name="P:System.Security.Cryptography.ECCurve.IsExplicit">
1566 <summary>Gets a value that indicates whether the curve type indicates an explicit curve (either prime or characteristic 2).</summary>
1567 <returns><see langword="true"></see> if the curve is an explicit curve (either prime or characteristic 2); <see langword="false"></see> if the curve is a named or implicit curve.</returns>
1569 <member name="P:System.Security.Cryptography.ECCurve.IsNamed">
1570 <summary>Gets a value that indicates whether the curve type indicates a named curve.</summary>
1571 <returns><see langword="true"></see> if the curve is a named curve; <see langword="false"></see> if the curve is an implict or an explicit curve (either prime or characteristic 2).</returns>
1573 <member name="P:System.Security.Cryptography.ECCurve.IsPrime">
1574 <summary>Gets a value that indicates whether the curve type indicates an explicit prime curve.</summary>
1575 <returns><see langword="true"></see> if the curve is an explicit prime curve; <see langword="false"></see> if the curve is a named prime, characteristic 2 or implicit curves.</returns>
1577 <member name="P:System.Security.Cryptography.ECCurve.Oid">
1578 <summary>Gets the identifier of a named curve.</summary>
1579 <returns>The identifier of a named curve.</returns>
1581 <member name="F:System.Security.Cryptography.ECCurve.Order">
1582 <summary>The order of the curve. Applies only to explicit curves.</summary>
1585 <member name="F:System.Security.Cryptography.ECCurve.Polynomial">
1586 <summary>The curve polynomial. Applies only to characteristic 2 curves.</summary>
1589 <member name="F:System.Security.Cryptography.ECCurve.Prime">
1590 <summary>The prime specifying the base field. Applies only to prime curves.</summary>
1593 <member name="F:System.Security.Cryptography.ECCurve.Seed">
1594 <summary>The seed value for coefficient generation under the ANSI X9.62 generation algorithm. Applies only to explicit curves.</summary>
1597 <member name="M:System.Security.Cryptography.ECCurve.Validate">
1598 <summary>Validates the integrity of the current curve. Throws a <see cref="T:System.Security.Cryptography.CryptographicException"></see> exception if the structure is not valid.</summary>
1599 <exception cref="T:System.Security.Cryptography.CryptographicException">The curve parameters are not valid for the current curve type.</exception>
1601 <member name="T:System.Security.Cryptography.ECCurve.NamedCurves">
1602 <summary>Represents a factory class for creating named curves.</summary>
1604 <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP160r1">
1605 <summary>Gets a brainpoolP160r1 named curve.</summary>
1606 <returns>A brainpoolP160r1 named curve.</returns>
1608 <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP160t1">
1609 <summary>Gets a brainpoolP160t1 named curve.</summary>
1610 <returns>A brainpoolP160t1 named curve.</returns>
1612 <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP192r1">
1613 <summary>Gets a brainpoolP192r1 named curve.</summary>
1614 <returns>A brainpoolP192r1 named curve.</returns>
1616 <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP192t1">
1617 <summary>Gets a brainpoolP192t1 named curve.</summary>
1618 <returns>A brainpoolP192t1 named curve.</returns>
1620 <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP224r1">
1621 <summary>Gets a brainpoolP224r1 named curve.</summary>
1622 <returns>A brainpoolP224r1 named curve.</returns>
1624 <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP224t1">
1625 <summary>Gets a brainpoolP224t1 named curve.</summary>
1626 <returns>A brainpoolP224t1 named curve.</returns>
1628 <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP256r1">
1629 <summary>Gets a brainpoolP256r1 named curve.</summary>
1630 <returns>A brainpoolP256r1 named curve.</returns>
1632 <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP256t1">
1633 <summary>Gets a brainpoolP256t1 named curve.</summary>
1634 <returns>A brainpoolP256t1 named curve.</returns>
1636 <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP320r1">
1637 <summary>Gets a brainpoolP320r1 named curve.</summary>
1638 <returns>A brainpoolP320r1 named curve.</returns>
1640 <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP320t1">
1641 <summary>Gets a brainpoolP320t1 named curve.</summary>
1642 <returns>A brainpoolP320t1 named curve.</returns>
1644 <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP384r1">
1645 <summary>Gets a brainpoolP384r1 named curve.</summary>
1646 <returns>A brainpoolP384r1 named curve.</returns>
1648 <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP384t1">
1649 <summary>Gets a brainpoolP384t1 named curve.</summary>
1650 <returns>A brainpoolP384t1 named curve.</returns>
1652 <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP512r1">
1653 <summary>Gets a brainpoolP512r1 named curve.</summary>
1654 <returns>A brainpoolP512r1 named curve.</returns>
1656 <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.brainpoolP512t1">
1657 <summary>Gets a brainpoolP512t1 named curve.</summary>
1658 <returns>A brainpoolP512t1 named curve.</returns>
1660 <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.nistP256">
1661 <summary>Gets a nistP256 named curve.</summary>
1662 <returns>A nistP256 named curve.</returns>
1664 <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.nistP384">
1665 <summary>Gets a nistP384 named curve.</summary>
1666 <returns>A nistP384 named curve.</returns>
1668 <member name="P:System.Security.Cryptography.ECCurve.NamedCurves.nistP521">
1669 <summary>Gets a nistP521 named curve.</summary>
1670 <returns>A nistP521 named curve.</returns>
1672 <member name="T:System.Security.Cryptography.ECCurve.ECCurveType">
1673 <summary>Indicates how to interpret the data contained in an <see cref="T:System.Security.Cryptography.ECCurve"></see> object.</summary>
1675 <member name="F:System.Security.Cryptography.ECCurve.ECCurveType.Characteristic2">
1676 <summary>The curve parameters represent a characteristic 2 curve.</summary>
1679 <member name="F:System.Security.Cryptography.ECCurve.ECCurveType.Implicit">
1680 <summary>No curve data is interpreted. The caller is assumed to know what the curve is.</summary>
1683 <member name="F:System.Security.Cryptography.ECCurve.ECCurveType.Named">
1684 <summary>The curve parameters represent a named curve.</summary>
1687 <member name="F:System.Security.Cryptography.ECCurve.ECCurveType.PrimeMontgomery">
1688 <summary>The curve parameters represent a prime curve with the formula B*y^2 = x^3 + A*x^2 + x.</summary>
1691 <member name="F:System.Security.Cryptography.ECCurve.ECCurveType.PrimeShortWeierstrass">
1692 <summary>The curve parameters represent a prime curve with the formula y^2 = x^3 + A*x + B in the prime field P.</summary>
1695 <member name="F:System.Security.Cryptography.ECCurve.ECCurveType.PrimeTwistedEdwards">
1696 <summary>The curve parameters represent a prime curve with the formula A*x^2 + y^2 = 1 + B*x^2*y^2 in the prime field P.</summary>
1699 <member name="T:System.Security.Cryptography.DSASignatureFormatter">
1700 <summary>Creates a Digital Signature Algorithm (<see cref="T:System.Security.Cryptography.DSA"></see>) signature.</summary>
1702 <member name="M:System.Security.Cryptography.DSASignatureFormatter.#ctor">
1703 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.DSASignatureFormatter"></see> class.</summary>
1705 <member name="M:System.Security.Cryptography.DSASignatureFormatter.#ctor(System.Security.Cryptography.AsymmetricAlgorithm)">
1706 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.DSASignatureFormatter"></see> class with the specified key.</summary>
1707 <param name="key">The instance of the Digital Signature Algorithm (<see cref="T:System.Security.Cryptography.DSA"></see>) that holds the key.</param>
1708 <exception cref="T:System.ArgumentNullException"><paramref name="key">key</paramref> is <see langword="null"></see>.</exception>
1710 <member name="M:System.Security.Cryptography.DSASignatureFormatter.CreateSignature(System.Byte[])">
1711 <summary>Creates the Digital Signature Algorithm (<see cref="T:System.Security.Cryptography.DSA"></see>) PKCS #1 signature for the specified data.</summary>
1712 <param name="rgbHash">The data to be signed.</param>
1713 <returns>The digital signature for the specified data.</returns>
1714 <exception cref="T:System.ArgumentNullException"><paramref name="rgbHash">rgbHash</paramref> is <see langword="null"></see>.</exception>
1715 <exception cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException">The OID is <see langword="null"></see>.
1717 The DSA key is <see langword="null"></see>.</exception>
1719 <member name="M:System.Security.Cryptography.DSASignatureFormatter.SetHashAlgorithm(System.String)">
1720 <summary>Specifies the hash algorithm for the Digital Signature Algorithm (<see cref="T:System.Security.Cryptography.DSA"></see>) signature formatter.</summary>
1721 <param name="strName">The name of the hash algorithm to use for the signature formatter.</param>
1722 <exception cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException">The <paramref name="strName">strName</paramref> parameter does not map to the <see cref="System.Security.Cryptography.SHA1"></see> hash algorithm.</exception>
1724 <member name="M:System.Security.Cryptography.DSASignatureFormatter.SetKey(System.Security.Cryptography.AsymmetricAlgorithm)">
1725 <summary>Specifies the key to be used for the Digital Signature Algorithm (<see cref="T:System.Security.Cryptography.DSA"></see>) signature formatter.</summary>
1726 <param name="key">The instance of <see cref="T:System.Security.Cryptography.DSA"></see> that holds the key.</param>
1727 <exception cref="T:System.ArgumentNullException"><paramref name="key">key</paramref> is <see langword="null"></see>.</exception>
1729 <member name="T:System.Security.Cryptography.DSASignatureDeformatter">
1730 <summary>Verifies a Digital Signature Algorithm (<see cref="T:System.Security.Cryptography.DSA"></see>) PKCS#1 v1.5 signature.</summary>
1732 <member name="M:System.Security.Cryptography.DSASignatureDeformatter.#ctor">
1733 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.DSASignatureDeformatter"></see> class.</summary>
1735 <member name="M:System.Security.Cryptography.DSASignatureDeformatter.#ctor(System.Security.Cryptography.AsymmetricAlgorithm)">
1736 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.DSASignatureDeformatter"></see> class with the specified key.</summary>
1737 <param name="key">The instance of Digital Signature Algorithm (<see cref="T:System.Security.Cryptography.DSA"></see>) that holds the key.</param>
1738 <exception cref="T:System.ArgumentNullException"><paramref name="key">key</paramref> is <see langword="null"></see>.</exception>
1740 <member name="M:System.Security.Cryptography.DSASignatureDeformatter.SetHashAlgorithm(System.String)">
1741 <summary>Specifies the hash algorithm for the Digital Signature Algorithm (<see cref="T:System.Security.Cryptography.DSA"></see>) signature deformatter.</summary>
1742 <param name="strName">The name of the hash algorithm to use for the signature deformatter.</param>
1743 <exception cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException">The <paramref name="strName">strName</paramref> parameter does not map to the <see cref="System.Security.Cryptography.SHA1"></see> hash algorithm.</exception>
1745 <member name="M:System.Security.Cryptography.DSASignatureDeformatter.SetKey(System.Security.Cryptography.AsymmetricAlgorithm)">
1746 <summary>Specifies the key to be used for the Digital Signature Algorithm (<see cref="T:System.Security.Cryptography.DSA"></see>) signature deformatter.</summary>
1747 <param name="key">The instance of <see cref="T:System.Security.Cryptography.DSA"></see> that holds the key.</param>
1748 <exception cref="T:System.ArgumentNullException"><paramref name="key">key</paramref> is <see langword="null"></see>.</exception>
1750 <member name="M:System.Security.Cryptography.DSASignatureDeformatter.VerifySignature(System.Byte[],System.Byte[])">
1751 <summary>Verifies the Digital Signature Algorithm (<see cref="T:System.Security.Cryptography.DSA"></see>) signature on the data.</summary>
1752 <param name="rgbHash">The data signed with rgbSignature.</param>
1753 <param name="rgbSignature">The signature to be verified for rgbHash.</param>
1754 <returns><see langword="true"></see> if the signature is valid for the data; otherwise, <see langword="false"></see>.</returns>
1755 <exception cref="T:System.ArgumentNullException"><paramref name="rgbHash">rgbHash</paramref> is <see langword="null"></see>.
1757 <paramref name="rgbSignature">rgbSignature</paramref> is <see langword="null"></see>.</exception>
1758 <exception cref="T:System.Security.Cryptography.CryptographicUnexpectedOperationException">The DSA key is missing.</exception>
1760 <member name="T:System.Security.Cryptography.DSAParameters">
1761 <summary>Contains the typical parameters for the <see cref="T:System.Security.Cryptography.DSA"></see> algorithm.</summary>
1763 <member name="F:System.Security.Cryptography.DSAParameters.Counter">
1764 <summary>Specifies the counter for the <see cref="T:System.Security.Cryptography.DSA"></see> algorithm.</summary>
1767 <member name="F:System.Security.Cryptography.DSAParameters.G">
1768 <summary>Specifies the <see langword="G"></see> parameter for the <see cref="T:System.Security.Cryptography.DSA"></see> algorithm.</summary>
1771 <member name="F:System.Security.Cryptography.DSAParameters.J">
1772 <summary>Specifies the <see langword="J"></see> parameter for the <see cref="T:System.Security.Cryptography.DSA"></see> algorithm.</summary>
1775 <member name="F:System.Security.Cryptography.DSAParameters.P">
1776 <summary>Specifies the <see langword="P"></see> parameter for the <see cref="T:System.Security.Cryptography.DSA"></see> algorithm.</summary>
1779 <member name="F:System.Security.Cryptography.DSAParameters.Q">
1780 <summary>Specifies the <see langword="Q"></see> parameter for the <see cref="T:System.Security.Cryptography.DSA"></see> algorithm.</summary>
1783 <member name="F:System.Security.Cryptography.DSAParameters.Seed">
1784 <summary>Specifies the seed for the <see cref="T:System.Security.Cryptography.DSA"></see> algorithm.</summary>
1787 <member name="F:System.Security.Cryptography.DSAParameters.X">
1788 <summary>Specifies the <see langword="X"></see> parameter for the <see cref="T:System.Security.Cryptography.DSA"></see> algorithm.</summary>
1791 <member name="F:System.Security.Cryptography.DSAParameters.Y">
1792 <summary>Specifies the <see langword="Y"></see> parameter for the <see cref="T:System.Security.Cryptography.DSA"></see> algorithm.</summary>
1795 <member name="T:System.Security.Cryptography.DSA">
1796 <summary>Represents the abstract base class from which all implementations of the Digital Signature Algorithm (<see cref="T:System.Security.Cryptography.DSA"></see>) must inherit.</summary>
1798 <member name="M:System.Security.Cryptography.DSA.#ctor">
1799 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.DSA"></see> class.</summary>
1801 <member name="M:System.Security.Cryptography.DSA.Create">
1802 <summary>Creates the default cryptographic object used to perform the asymmetric algorithm.</summary>
1803 <returns>A cryptographic object used to perform the asymmetric algorithm.</returns>
1805 <member name="M:System.Security.Cryptography.DSA.Create(System.Int32)">
1806 <summary>Creates a new ephemeral DSA key with the specified key size.</summary>
1807 <param name="keySizeInBits">The key size, in bits.</param>
1808 <returns>A new ephemeral DSA key with the specified key size.</returns>
1809 <exception cref="T:System.Security.Cryptography.CryptographicException"><paramref name="keySizeInBits">keySizeInBits</paramref> is different than <see cref="System.Security.Cryptography.AsymmetricAlgorithm.KeySize"></see>.</exception>
1811 <member name="M:System.Security.Cryptography.DSA.Create(System.Security.Cryptography.DSAParameters)">
1812 <summary>Creates a new ephemeral DSA key with the specified DSA key parameters.</summary>
1813 <param name="parameters">The parameters for the <see cref="T:System.Security.Cryptography.DSA"></see> algorithm.</param>
1814 <returns>A new ephemeral DSA key.</returns>
1816 <member name="M:System.Security.Cryptography.DSA.Create(System.String)">
1817 <summary>Creates the specified cryptographic object used to perform the asymmetric algorithm.</summary>
1818 <param name="algName">The name of the specific implementation of <see cref="T:System.Security.Cryptography.DSA"></see> to use.</param>
1819 <returns>A cryptographic object used to perform the asymmetric algorithm.</returns>
1821 <member name="M:System.Security.Cryptography.DSA.CreateSignature(System.Byte[])">
1822 <summary>When overridden in a derived class, creates the <see cref="T:System.Security.Cryptography.DSA"></see> signature for the specified data.</summary>
1823 <param name="rgbHash">The data to be signed.</param>
1824 <returns>The digital signature for the specified data.</returns>
1826 <member name="M:System.Security.Cryptography.DSA.ExportParameters(System.Boolean)">
1827 <summary>When overridden in a derived class, exports the <see cref="T:System.Security.Cryptography.DSAParameters"></see>.</summary>
1828 <param name="includePrivateParameters"><see langword="true"></see> to include private parameters; otherwise, <see langword="false"></see>.</param>
1829 <returns>The parameters for <see cref="T:System.Security.Cryptography.DSA"></see>.</returns>
1831 <member name="M:System.Security.Cryptography.DSA.FromXmlString(System.String)">
1832 <summary>Reconstructs a <see cref="T:System.Security.Cryptography.DSA"></see> object from an XML string.</summary>
1833 <param name="xmlString">The XML string to use to reconstruct the <see cref="T:System.Security.Cryptography.DSA"></see> object.</param>
1834 <exception cref="T:System.ArgumentNullException">The <paramref name="xmlString">xmlString</paramref> parameter is <see langword="null"></see>.</exception>
1835 <exception cref="T:System.Security.Cryptography.CryptographicException">The format of the <paramref name="xmlString">xmlString</paramref> parameter is not valid.</exception>
1837 <member name="M:System.Security.Cryptography.DSA.HashData(System.IO.Stream,System.Security.Cryptography.HashAlgorithmName)">
1838 <summary>When overridden in a derived class, computes the hash value of a specified binary stream by using a specified hashing algorithm.</summary>
1839 <param name="data">The binary stream to hash.</param>
1840 <param name="hashAlgorithm">The algorithm to use to hash the data.</param>
1841 <returns>The hashed data.</returns>
1842 <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
1844 <member name="M:System.Security.Cryptography.DSA.HashData(System.Byte[],System.Int32,System.Int32,System.Security.Cryptography.HashAlgorithmName)">
1845 <summary>When overridden in a derived class, computes the hash value of a specified portion of a byte array by using a specified hashing algorithm.</summary>
1846 <param name="data">The data to be hashed.</param>
1847 <param name="offset">The index of the first byte in data that is to be hashed.</param>
1848 <param name="count">The number of bytes to hash.</param>
1849 <param name="hashAlgorithm">The algorithm to use to hash the data.</param>
1850 <returns>The hashed data.</returns>
1851 <exception cref="T:System.NotImplementedException">A derived class must override this method.</exception>
1853 <member name="M:System.Security.Cryptography.DSA.ImportParameters(System.Security.Cryptography.DSAParameters)">
1854 <summary>When overridden in a derived class, imports the specified <see cref="T:System.Security.Cryptography.DSAParameters"></see>.</summary>
1855 <param name="parameters">The parameters for <see cref="T:System.Security.Cryptography.DSA"></see>.</param>
1857 <member name="M:System.Security.Cryptography.DSA.SignData(System.Byte[],System.Int32,System.Int32,System.Security.Cryptography.HashAlgorithmName)">
1858 <summary>Computes the hash value of a portion of the specified byte array using the specified hash algorithm and signs the resulting hash value.</summary>
1859 <param name="data">The input data for which to compute the hash.</param>
1860 <param name="offset">The offset into the array at which to begin using data.</param>
1861 <param name="count">The number of bytes in the array to use as data.</param>
1862 <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
1863 <returns>The DSA signature for the specified data.</returns>
1864 <exception cref="T:System.ArgumentNullException"><paramref name="data">data</paramref> is <see langword="null"></see>.</exception>
1865 <exception cref="T:System.ArgumentException"><paramref name="hashAlgorithm">hashAlgorithm</paramref>.<see cref="System.Security.Cryptography.HashAlgorithmName.Name"></see> is <see langword="null"></see> or <see cref="System.String.Empty"></see>.</exception>
1866 <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="offset">offset</paramref> is less than zero.
1868 <paramref name="count">count</paramref> is less than zero.
1870 <paramref name="offset">offset</paramref> + <paramref name="count">count</paramref> – 1 results in an index that is beyond the upper bound of <paramref name="data">data</paramref>.</exception>
1872 <member name="M:System.Security.Cryptography.DSA.SignData(System.Byte[],System.Security.Cryptography.HashAlgorithmName)">
1873 <summary>Computes the hash value of the specified byte array using the specified hash algorithm and signs the resulting hash value.</summary>
1874 <param name="data">The input data for which to compute the hash.</param>
1875 <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
1876 <returns>The DSA signature for the specified data.</returns>
1877 <exception cref="T:System.ArgumentNullException"><paramref name="data">data</paramref> is <see langword="null"></see>.</exception>
1878 <exception cref="T:System.ArgumentException"><paramref name="hashAlgorithm">hashAlgorithm</paramref>.<see cref="System.Security.Cryptography.HashAlgorithmName.Name"></see> is <see langword="null"></see> or <see cref="System.String.Empty"></see>.</exception>
1880 <member name="M:System.Security.Cryptography.DSA.SignData(System.IO.Stream,System.Security.Cryptography.HashAlgorithmName)">
1881 <summary>Computes the hash value of the specified stream using the specified hash algorithm and signs the resulting hash value.</summary>
1882 <param name="data">The input stream for which to compute the hash.</param>
1883 <param name="hashAlgorithm">The hash algorithm to use to create the hash value.</param>
1884 <returns>The DSA signature for the specified data.</returns>
1885 <exception cref="T:System.ArgumentNullException"><paramref name="data">data</paramref> is <see langword="null"></see>.</exception>
1886 <exception cref="T:System.ArgumentException"><paramref name="hashAlgorithm">hashAlgorithm</paramref>.<see cref="System.Security.Cryptography.HashAlgorithmName.Name"></see> is <see langword="null"></see> or <see cref="System.String.Empty"></see>.</exception>
1888 <member name="M:System.Security.Cryptography.DSA.ToXmlString(System.Boolean)">
1889 <summary>Creates and returns an XML string representation of the current <see cref="T:System.Security.Cryptography.DSA"></see> object.</summary>
1890 <param name="includePrivateParameters"><see langword="true"></see> to include private parameters; otherwise, <see langword="false"></see>.</param>
1891 <returns>An XML string encoding of the current <see cref="T:System.Security.Cryptography.DSA"></see> object.</returns>
1893 <member name="M:System.Security.Cryptography.DSA.TryCreateSignature(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Int32@)">
1894 <param name="hash"></param>
1895 <param name="destination"></param>
1896 <param name="bytesWritten"></param>
1899 <member name="M:System.Security.Cryptography.DSA.TryHashData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Int32@)">
1900 <param name="data"></param>
1901 <param name="destination"></param>
1902 <param name="hashAlgorithm"></param>
1903 <param name="bytesWritten"></param>
1906 <member name="M:System.Security.Cryptography.DSA.TrySignData(System.ReadOnlySpan{System.Byte},System.Span{System.Byte},System.Security.Cryptography.HashAlgorithmName,System.Int32@)">
1907 <param name="data"></param>
1908 <param name="destination"></param>
1909 <param name="hashAlgorithm"></param>
1910 <param name="bytesWritten"></param>
1913 <member name="M:System.Security.Cryptography.DSA.VerifyData(System.Byte[],System.Byte[],System.Security.Cryptography.HashAlgorithmName)">
1914 <summary>Verifies that a digital signature is valid by calculating the hash value of the specified data using the specified hash algorithm and comparing it to the provided signature.</summary>
1915 <param name="data">The signed data.</param>
1916 <param name="signature">The signature data to be verified.</param>
1917 <param name="hashAlgorithm">The hash algorithm used to create the hash value of the data.</param>
1918 <returns><see langword="true"></see> if the digital signature is valid; otherwise, <see langword="false"></see>.</returns>
1919 <exception cref="T:System.ArgumentNullException"><paramref name="data">data</paramref> is <see langword="null"></see>.
1921 <paramref name="signature">signature</paramref> is <see langword="null"></see>.</exception>
1922 <exception cref="T:System.ArgumentException"><paramref name="hashAlgorithm">hashAlgorithm</paramref>.<see cref="System.Security.Cryptography.HashAlgorithmName.Name"></see> is <see langword="null"></see> or <see cref="System.String.Empty"></see>.</exception>
1924 <member name="M:System.Security.Cryptography.DSA.VerifyData(System.IO.Stream,System.Byte[],System.Security.Cryptography.HashAlgorithmName)">
1925 <summary>Verifies that a digital signature is valid by calculating the hash value of the specified stream using the specified hash algorithm and comparing it to the provided signature.</summary>
1926 <param name="data">The signed data.</param>
1927 <param name="signature">The signature data to be verified.</param>
1928 <param name="hashAlgorithm">The hash algorithm used to create the hash value of the data.</param>
1929 <returns><see langword="true"></see> if the digital signature is valid; otherwise, <see langword="false"></see>.</returns>
1930 <exception cref="T:System.ArgumentNullException"><paramref name="data">data</paramref> is <see langword="null"></see>.
1932 <paramref name="signature">signature</paramref> is <see langword="null"></see>.</exception>
1933 <exception cref="T:System.ArgumentException"><paramref name="hashAlgorithm">hashAlgorithm</paramref>.<see cref="System.Security.Cryptography.HashAlgorithmName.Name"></see> is <see langword="null"></see> or <see cref="System.String.Empty"></see>.</exception>
1935 <member name="M:System.Security.Cryptography.DSA.VerifyData(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte},System.Security.Cryptography.HashAlgorithmName)">
1936 <param name="data"></param>
1937 <param name="signature"></param>
1938 <param name="hashAlgorithm"></param>
1941 <member name="M:System.Security.Cryptography.DSA.VerifyData(System.Byte[],System.Int32,System.Int32,System.Byte[],System.Security.Cryptography.HashAlgorithmName)">
1942 <summary>Verifies that a digital signature is valid by calculating the hash value of the data in a portion of a byte array using the specified hash algorithm and comparing it to the provided signature.</summary>
1943 <param name="data">The signed data.</param>
1944 <param name="offset">The starting index at which to compute the hash.</param>
1945 <param name="count">The number of bytes to hash.</param>
1946 <param name="signature">The signature data to be verified.</param>
1947 <param name="hashAlgorithm">The hash algorithm used to create the hash value of the data.</param>
1948 <returns><see langword="true"></see> if the digital signature is valid; otherwise, <see langword="false"></see>.</returns>
1949 <exception cref="T:System.ArgumentNullException"><paramref name="data">data</paramref> is <see langword="null"></see>.
1951 <paramref name="signature">signature</paramref> is <see langword="null"></see>.</exception>
1952 <exception cref="T:System.ArgumentException"><paramref name="hashAlgorithm">hashAlgorithm</paramref>.<see cref="System.Security.Cryptography.HashAlgorithmName.Name"></see> is <see langword="null"></see> or <see cref="System.String.Empty"></see>.</exception>
1953 <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="offset">offset</paramref> is less than zero.
1955 <paramref name="count">count</paramref> is less than zero.
1957 <paramref name="offset">offset</paramref> + <paramref name="count">count</paramref> – 1 results in an index that is beyond the upper bound of <paramref name="data">data</paramref>.</exception>
1959 <member name="M:System.Security.Cryptography.DSA.VerifySignature(System.Byte[],System.Byte[])">
1960 <summary>When overridden in a derived class, verifies the <see cref="T:System.Security.Cryptography.DSA"></see> signature for the specified data.</summary>
1961 <param name="rgbHash">The hash of the data signed with rgbSignature.</param>
1962 <param name="rgbSignature">The signature to be verified for rgbData.</param>
1963 <returns><see langword="true"></see> if <paramref name="rgbSignature">rgbSignature</paramref> matches the signature computed using the specified hash algorithm and key on <paramref name="rgbHash">rgbHash</paramref>; otherwise, <see langword="false"></see>.</returns>
1965 <member name="M:System.Security.Cryptography.DSA.VerifySignature(System.ReadOnlySpan{System.Byte},System.ReadOnlySpan{System.Byte})">
1966 <param name="hash"></param>
1967 <param name="signature"></param>
1970 <member name="T:System.Security.Cryptography.DES">
1971 <summary>Represents the base class for the Data Encryption Standard (DES) algorithm from which all <see cref="T:System.Security.Cryptography.DES"></see> implementations must derive.</summary>
1973 <member name="M:System.Security.Cryptography.DES.#ctor">
1974 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.DES"></see> class.</summary>
1976 <member name="M:System.Security.Cryptography.DES.Create">
1977 <summary>Creates an instance of a cryptographic object to perform the Data Encryption Standard (<see cref="T:System.Security.Cryptography.DES"></see>) algorithm.</summary>
1978 <returns>A cryptographic object.</returns>
1980 <member name="M:System.Security.Cryptography.DES.Create(System.String)">
1981 <summary>Creates an instance of a cryptographic object to perform the specified implementation of the Data Encryption Standard (<see cref="T:System.Security.Cryptography.DES"></see>) algorithm.</summary>
1982 <param name="algName">The name of the specific implementation of <see cref="T:System.Security.Cryptography.DES"></see> to use.</param>
1983 <returns>A cryptographic object.</returns>
1985 <member name="M:System.Security.Cryptography.DES.IsSemiWeakKey(System.Byte[])">
1986 <summary>Determines whether the specified key is semi-weak.</summary>
1987 <param name="rgbKey">The secret key to test for semi-weakness.</param>
1988 <returns><see langword="true"></see> if the key is semi-weak; otherwise, <see langword="false"></see>.</returns>
1989 <exception cref="T:System.Security.Cryptography.CryptographicException">The size of the <paramref name="rgbKey">rgbKey</paramref> parameter is not valid.</exception>
1991 <member name="M:System.Security.Cryptography.DES.IsWeakKey(System.Byte[])">
1992 <summary>Determines whether the specified key is weak.</summary>
1993 <param name="rgbKey">The secret key to test for weakness.</param>
1994 <returns><see langword="true"></see> if the key is weak; otherwise, <see langword="false"></see>.</returns>
1995 <exception cref="T:System.Security.Cryptography.CryptographicException">The size of the <paramref name="rgbKey">rgbKey</paramref> parameter is not valid.</exception>
1997 <member name="P:System.Security.Cryptography.DES.Key">
1998 <summary>Gets or sets the secret key for the Data Encryption Standard (<see cref="T:System.Security.Cryptography.DES"></see>) algorithm.</summary>
1999 <returns>The secret key for the <see cref="T:System.Security.Cryptography.DES"></see> algorithm.</returns>
2000 <exception cref="T:System.ArgumentNullException">An attempt was made to set the key to <see langword="null"></see>.</exception>
2001 <exception cref="T:System.ArgumentException">An attempt was made to set a key whose length is not equal to <see cref="System.Security.Cryptography.SymmetricAlgorithm.BlockSizeValue"></see>.</exception>
2002 <exception cref="T:System.Security.Cryptography.CryptographicException">An attempt was made to set a weak key (see <see cref="System.Security.Cryptography.DES.IsWeakKey(System.Byte[])"></see>) or a semi-weak key (see <see cref="System.Security.Cryptography.DES.IsSemiWeakKey(System.Byte[])"></see>).</exception>
2004 <member name="T:System.Security.Cryptography.DeriveBytes">
2005 <summary>Represents the abstract base class from which all classes that derive byte sequences of a specified length inherit.</summary>
2007 <member name="M:System.Security.Cryptography.DeriveBytes.#ctor">
2008 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.DeriveBytes"></see> class.</summary>
2010 <member name="M:System.Security.Cryptography.DeriveBytes.Dispose">
2011 <summary>When overridden in a derived class, releases all resources used by the current instance of the <see cref="T:System.Security.Cryptography.DeriveBytes"></see> class.</summary>
2013 <member name="M:System.Security.Cryptography.DeriveBytes.Dispose(System.Boolean)">
2014 <summary>When overridden in a derived class, releases the unmanaged resources used by the <see cref="T:System.Security.Cryptography.DeriveBytes"></see> class and optionally releases the managed resources.</summary>
2015 <param name="disposing"><see langword="true"></see> to release both managed and unmanaged resources; <see langword="false"></see> to release only unmanaged resources.</param>
2017 <member name="M:System.Security.Cryptography.DeriveBytes.GetBytes(System.Int32)">
2018 <summary>When overridden in a derived class, returns pseudo-random key bytes.</summary>
2019 <param name="cb">The number of pseudo-random key bytes to generate.</param>
2020 <returns>A byte array filled with pseudo-random key bytes.</returns>
2022 <member name="M:System.Security.Cryptography.DeriveBytes.Reset">
2023 <summary>When overridden in a derived class, resets the state of the operation.</summary>
2025 <member name="T:System.Security.Cryptography.RC2">
2026 <summary>Represents the base class from which all implementations of the <see cref="T:System.Security.Cryptography.RC2"></see> algorithm must derive.</summary>
2028 <member name="M:System.Security.Cryptography.RC2.#ctor">
2029 <summary>Initializes a new instance of <see cref="T:System.Security.Cryptography.RC2"></see>.</summary>
2031 <member name="M:System.Security.Cryptography.RC2.Create">
2032 <summary>Creates an instance of a cryptographic object to perform the <see cref="T:System.Security.Cryptography.RC2"></see> algorithm.</summary>
2033 <returns>An instance of a cryptographic object.</returns>
2034 <exception cref="T:System.Reflection.TargetInvocationException">The algorithm was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.</exception>
2036 <member name="M:System.Security.Cryptography.RC2.Create(System.String)">
2037 <summary>Creates an instance of a cryptographic object to perform the specified implementation of the <see cref="T:System.Security.Cryptography.RC2"></see> algorithm.</summary>
2038 <param name="AlgName">The name of the specific implementation of <see cref="T:System.Security.Cryptography.RC2"></see> to use.</param>
2039 <returns>An instance of a cryptographic object.</returns>
2040 <exception cref="T:System.Reflection.TargetInvocationException">The algorithm described by the <paramref name="algName">algName</paramref> parameter was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.</exception>
2042 <member name="P:System.Security.Cryptography.RC2.EffectiveKeySize">
2043 <summary>Gets or sets the effective size of the secret key used by the <see cref="T:System.Security.Cryptography.RC2"></see> algorithm in bits.</summary>
2044 <returns>The effective key size used by the <see cref="T:System.Security.Cryptography.RC2"></see> algorithm.</returns>
2045 <exception cref="T:System.Security.Cryptography.CryptographicException">The effective key size is invalid.</exception>
2047 <member name="F:System.Security.Cryptography.RC2.EffectiveKeySizeValue">
2048 <summary>Represents the effective size of the secret key used by the <see cref="T:System.Security.Cryptography.RC2"></see> algorithm in bits.</summary>
2051 <member name="P:System.Security.Cryptography.RC2.KeySize">
2052 <summary>Gets or sets the size of the secret key used by the <see cref="T:System.Security.Cryptography.RC2"></see> algorithm in bits.</summary>
2053 <returns>The size of the secret key used by the <see cref="T:System.Security.Cryptography.RC2"></see> algorithm.</returns>
2054 <exception cref="T:System.Security.Cryptography.CryptographicException">The value for the RC2 key size is less than the effective key size value.</exception>
2056 <member name="T:System.Security.Cryptography.RandomNumberGenerator">
2057 <summary>Represents the abstract class from which all implementations of cryptographic random number generators derive.</summary>
2059 <member name="M:System.Security.Cryptography.RandomNumberGenerator.#ctor">
2060 <summary>Initializes a new instance of <see cref="T:System.Security.Cryptography.RandomNumberGenerator"></see>.</summary>
2062 <member name="M:System.Security.Cryptography.RandomNumberGenerator.Create">
2063 <summary>Creates an instance of the default implementation of a cryptographic random number generator that can be used to generate random data.</summary>
2064 <returns>A new instance of a cryptographic random number generator.</returns>
2066 <member name="M:System.Security.Cryptography.RandomNumberGenerator.Create(System.String)">
2067 <summary>Creates an instance of the specified implementation of a cryptographic random number generator.</summary>
2068 <param name="rngName">The name of the random number generator implementation to use.</param>
2069 <returns>A new instance of a cryptographic random number generator.</returns>
2071 <member name="M:System.Security.Cryptography.RandomNumberGenerator.Dispose">
2072 <summary>When overridden in a derived class, releases all resources used by the current instance of the <see cref="T:System.Security.Cryptography.RandomNumberGenerator"></see> class.</summary>
2074 <member name="M:System.Security.Cryptography.RandomNumberGenerator.Dispose(System.Boolean)">
2075 <summary>When overridden in a derived class, releases the unmanaged resources used by the <see cref="T:System.Security.Cryptography.RandomNumberGenerator"></see> and optionally releases the managed resources.</summary>
2076 <param name="disposing"><see langword="true"></see> to release both managed and unmanaged resources; <see langword="false"></see> to release only unmanaged resources.</param>
2078 <member name="M:System.Security.Cryptography.RandomNumberGenerator.Fill(System.Span{System.Byte})">
2079 <param name="data"></param>
2081 <member name="M:System.Security.Cryptography.RandomNumberGenerator.GetBytes(System.Byte[])">
2082 <summary>When overridden in a derived class, fills an array of bytes with a cryptographically strong random sequence of values.</summary>
2083 <param name="data">The array to fill with cryptographically strong random bytes.</param>
2085 <member name="M:System.Security.Cryptography.RandomNumberGenerator.GetBytes(System.Span{System.Byte})">
2086 <param name="data"></param>
2088 <member name="M:System.Security.Cryptography.RandomNumberGenerator.GetBytes(System.Byte[],System.Int32,System.Int32)">
2089 <summary>Fills the specified byte array with a cryptographically strong random sequence of values.</summary>
2090 <param name="data">The array to fill with cryptographically strong random bytes.</param>
2091 <param name="offset">The index of the array to start the fill operation.</param>
2092 <param name="count">The number of bytes to fill.</param>
2093 <exception cref="T:System.ArgumentNullException"><paramref name="data">data</paramref> is <see langword="null"></see>.</exception>
2094 <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="offset">offset</paramref> or <paramref name="count">count</paramref> is less than 0</exception>
2095 <exception cref="T:System.ArgumentException"><paramref name="offset">offset</paramref> plus <paramref name="count">count</paramref> exceeds the length of <paramref name="data">data</paramref>.</exception>
2097 <member name="M:System.Security.Cryptography.RandomNumberGenerator.GetNonZeroBytes(System.Byte[])">
2098 <summary>When overridden in a derived class, fills an array of bytes with a cryptographically strong random sequence of nonzero values.</summary>
2099 <param name="data">The array to fill with cryptographically strong random nonzero bytes.</param>
2101 <member name="M:System.Security.Cryptography.RandomNumberGenerator.GetNonZeroBytes(System.Span{System.Byte})">
2102 <param name="data"></param>
2104 <member name="T:System.Security.Cryptography.PKCS1MaskGenerationMethod">
2105 <summary>Computes masks according to PKCS #1 for use by key exchange algorithms.</summary>
2107 <member name="M:System.Security.Cryptography.PKCS1MaskGenerationMethod.#ctor">
2108 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.PKCS1MaskGenerationMethod"></see> class.</summary>
2110 <member name="M:System.Security.Cryptography.PKCS1MaskGenerationMethod.GenerateMask(System.Byte[],System.Int32)">
2111 <summary>Generates and returns a mask from the specified random seed of the specified length.</summary>
2112 <param name="rgbSeed">The random seed to use for computing the mask.</param>
2113 <param name="cbReturn">The length of the generated mask in bytes.</param>
2114 <returns>A randomly generated mask whose length is equal to the <paramref name="cbReturn">cbReturn</paramref> parameter.</returns>
2116 <member name="P:System.Security.Cryptography.PKCS1MaskGenerationMethod.HashName">
2117 <summary>Gets or sets the name of the hash algorithm type to use for generating the mask.</summary>
2118 <returns>The name of the type that implements the hash algorithm to use for computing the mask.</returns>
2120 <member name="T:System.Security.Cryptography.MD5">
2121 <summary>Represents the abstract class from which all implementations of the <see cref="T:System.Security.Cryptography.MD5"></see> hash algorithm inherit.</summary>
2123 <member name="M:System.Security.Cryptography.MD5.#ctor">
2124 <summary>Initializes a new instance of <see cref="T:System.Security.Cryptography.MD5"></see>.</summary>
2126 <member name="M:System.Security.Cryptography.MD5.Create">
2127 <summary>Creates an instance of the default implementation of the <see cref="T:System.Security.Cryptography.MD5"></see> hash algorithm.</summary>
2128 <returns>A new instance of the <see cref="T:System.Security.Cryptography.MD5"></see> hash algorithm.</returns>
2129 <exception cref="T:System.Reflection.TargetInvocationException">The algorithm was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.</exception>
2131 <member name="M:System.Security.Cryptography.MD5.Create(System.String)">
2132 <summary>Creates an instance of the specified implementation of the <see cref="T:System.Security.Cryptography.MD5"></see> hash algorithm.</summary>
2133 <param name="algName">The name of the specific implementation of <see cref="T:System.Security.Cryptography.MD5"></see> to use.</param>
2134 <returns>A new instance of the specified implementation of <see cref="T:System.Security.Cryptography.MD5"></see>.</returns>
2135 <exception cref="T:System.Reflection.TargetInvocationException">The algorithm described by the <paramref name="algName">algName</paramref> parameter was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.</exception>
2137 <member name="T:System.Security.Cryptography.MaskGenerationMethod">
2138 <summary>Represents the abstract class from which all mask generator algorithms must derive.</summary>
2140 <member name="M:System.Security.Cryptography.MaskGenerationMethod.#ctor">
2141 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.MaskGenerationMethod"></see> class.</summary>
2143 <member name="M:System.Security.Cryptography.MaskGenerationMethod.GenerateMask(System.Byte[],System.Int32)">
2144 <summary>When overridden in a derived class, generates a mask with the specified length using the specified random seed.</summary>
2145 <param name="rgbSeed">The random seed to use to compute the mask.</param>
2146 <param name="cbReturn">The length of the generated mask in bytes.</param>
2147 <returns>A randomly generated mask whose length is equal to the <paramref name="cbReturn">cbReturn</paramref> parameter.</returns>
2149 <member name="T:System.Security.Cryptography.IncrementalHash">
2150 <summary>Provides support for computing a hash or Hash-based Message Authentication Code (HMAC) value incrementally across several segments.</summary>
2152 <member name="P:System.Security.Cryptography.IncrementalHash.AlgorithmName">
2153 <summary>Gets the name of the algorithm being performed. HMAC algorithms are prepended with &quot;HMAC&quot; to distinguish them from an unkeyed digest.</summary>
2154 <returns>The name of the algorithm being performed.</returns>
2156 <member name="M:System.Security.Cryptography.IncrementalHash.AppendData(System.Byte[])">
2157 <summary>Appends the specified data to the data already processed in the hash or HMAC.</summary>
2158 <param name="data">The data to process.</param>
2159 <exception cref="T:System.ArgumentNullException"><paramref name="data">data</paramref> is <see langword="null"></see>.</exception>
2160 <exception cref="T:System.ObjectDisposedException">The <see cref="System.Security.Cryptography.IncrementalHash"></see> object has already been disposed.</exception>
2162 <member name="M:System.Security.Cryptography.IncrementalHash.AppendData(System.ReadOnlySpan{System.Byte})">
2163 <param name="data"></param>
2165 <member name="M:System.Security.Cryptography.IncrementalHash.AppendData(System.Byte[],System.Int32,System.Int32)">
2166 <summary>Appends the specified number of bytes from the specified data, starting at the specified offset, to the data already processed in the hash or Hash-based Message Authentication Code (HMAC).</summary>
2167 <param name="data">The data to process.</param>
2168 <param name="offset">The offset into the byte array from which to begin using data.</param>
2169 <param name="count">The number of bytes to use from data.</param>
2170 <exception cref="T:System.ArgumentNullException"><paramref name="data">data</paramref> is <see langword="null"></see>.</exception>
2171 <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="count">count</paramref> or <paramref name="offset">offset</paramref> is negative.
2173 <paramref name="count">count</paramref> is larger than the length of <paramref name="data">data</paramref>.</exception>
2174 <exception cref="T:System.ArgumentException">The sum of <paramref name="offset">offset</paramref> and <paramref name="count">count</paramref> is larger than the data length.</exception>
2175 <exception cref="T:System.ObjectDisposedException">The <see cref="System.Security.Cryptography.IncrementalHash"></see> object has already been disposed.</exception>
2177 <member name="M:System.Security.Cryptography.IncrementalHash.CreateHash(System.Security.Cryptography.HashAlgorithmName)">
2178 <summary>Creates an <see cref="T:System.Security.Cryptography.IncrementalHash"></see> for the specified algorithm.</summary>
2179 <param name="hashAlgorithm">The name of the hash algorithm to perform.</param>
2180 <returns>An <see cref="T:System.Security.Cryptography.IncrementalHash"></see> instance ready to compute the hash algorithm specified by <paramref name="hashAlgorithm">hashAlgorithm</paramref>.</returns>
2181 <exception cref="T:System.ArgumentException"><paramref name="hashAlgorithm">hashAlgorithm</paramref>.<see cref="System.Security.Cryptography.HashAlgorithmName.Name"></see> is <see langword="null"></see> or an empty string.</exception>
2182 <exception cref="T:System.Security.Cryptography.CryptographicException"><paramref name="hashAlgorithm">hashAlgorithm</paramref> is not a known hash algorithm.</exception>
2184 <member name="M:System.Security.Cryptography.IncrementalHash.CreateHMAC(System.Security.Cryptography.HashAlgorithmName,System.Byte[])">
2185 <summary>Creates an <see cref="T:System.Security.Cryptography.IncrementalHash"></see> for the Hash-based Message Authentication Code (HMAC) algorithm using the specified hash algorithm and key.</summary>
2186 <param name="hashAlgorithm">The name of the hash algorithm to perform within the HMAC.</param>
2187 <param name="key">The secret key for the HMAC. The key can be of any length, but a key longer than the output size of the specified hash algorithm will be hashed to derive a correctly-sized key. Therefore, the recommended size of the secret key is the output size of the specified hash algorithm.</param>
2188 <returns>An instance of the <see cref="T:System.Security.Cryptography.IncrementalHash"></see> class ready to compute the specified hash algorithm.</returns>
2189 <exception cref="T:System.ArgumentNullException"><paramref name="key">key</paramref> is <see langword="null"></see>.</exception>
2190 <exception cref="T:System.ArgumentException"><paramref name="hashAlgorithm">hashAlgorithm</paramref>.<see cref="System.Security.Cryptography.HashAlgorithmName.Name"></see> is <see langword="null"></see> or an empty string.</exception>
2191 <exception cref="T:System.Security.Cryptography.CryptographicException"><paramref name="hashAlgorithm">hashAlgorithm</paramref> is not a known hash algorithm.</exception>
2193 <member name="M:System.Security.Cryptography.IncrementalHash.Dispose">
2194 <summary>Releases the resources used by the current instance of the <see cref="T:System.Security.Cryptography.IncrementalHash"></see> class.</summary>
2196 <member name="M:System.Security.Cryptography.IncrementalHash.GetHashAndReset">
2197 <summary>Retrieves the hash or Hash-based Message Authentication Code (HMAC) for the data accumulated from prior calls to the <see cref="M:System.Security.Cryptography.IncrementalHash.AppendData(System.Byte[])"></see> method, and resets the object to its initial state.</summary>
2198 <returns>The computed hash or HMAC.</returns>
2199 <exception cref="T:System.ObjectDisposedException">The <see cref="System.Security.Cryptography.IncrementalHash"></see> object has already been disposed.</exception>
2201 <member name="M:System.Security.Cryptography.IncrementalHash.TryGetHashAndReset(System.Span{System.Byte},System.Int32@)">
2202 <param name="destination"></param>
2203 <param name="bytesWritten"></param>
2206 <member name="T:System.Security.Cryptography.HMACSHA512">
2207 <summary>Computes a Hash-based Message Authentication Code (HMAC) using the <see cref="T:System.Security.Cryptography.SHA512"></see> hash function.</summary>
2209 <member name="M:System.Security.Cryptography.HMACSHA512.#ctor">
2210 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACSHA512"></see> class with a randomly generated key.</summary>
2212 <member name="M:System.Security.Cryptography.HMACSHA512.#ctor(System.Byte[])">
2213 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACSHA512"></see> class with the specified key data.</summary>
2214 <param name="key">The secret key for <see cref="T:System.Security.Cryptography.HMACSHA512"></see> encryption. The key can be any length. However, the recommended size is 128 bytes. If the key is more than 128 bytes long, it is hashed (using SHA-512) to derive a 128-byte key. If it is less than 128 bytes long, it is padded to 128 bytes.</param>
2215 <exception cref="T:System.ArgumentNullException">The <paramref name="key">key</paramref> parameter is <see langword="null"></see>.</exception>
2217 <member name="M:System.Security.Cryptography.HMACSHA512.Dispose(System.Boolean)">
2218 <param name="disposing"></param>
2220 <member name="M:System.Security.Cryptography.HMACSHA512.HashCore(System.ReadOnlySpan{System.Byte})">
2221 <param name="source"></param>
2223 <member name="M:System.Security.Cryptography.HMACSHA512.HashCore(System.Byte[],System.Int32,System.Int32)">
2224 <param name="rgb"></param>
2225 <param name="ib"></param>
2226 <param name="cb"></param>
2228 <member name="M:System.Security.Cryptography.HMACSHA512.HashFinal">
2231 <member name="P:System.Security.Cryptography.HMACSHA512.HashSize">
2234 <member name="M:System.Security.Cryptography.HMACSHA512.Initialize">
2237 <member name="P:System.Security.Cryptography.HMACSHA512.Key">
2240 <member name="P:System.Security.Cryptography.HMACSHA512.ProduceLegacyHmacValues">
2241 <summary>Provides a workaround for the .NET Framework 2.0 implementation of the <see cref="T:System.Security.Cryptography.HMACSHA512"></see> algorithm, which is inconsistent with the .NET Framework 2.0 Service Pack 1 implementation.</summary>
2242 <returns><see langword="true"></see> to enable .NET Framework 2.0 Service Pack 1 applications to interact with .NET Framework 2.0 applications; otherwise, <see langword="false"></see>.</returns>
2244 <member name="M:System.Security.Cryptography.HMACSHA512.TryHashFinal(System.Span{System.Byte},System.Int32@)">
2245 <param name="destination"></param>
2246 <param name="bytesWritten"></param>
2249 <member name="T:System.Security.Cryptography.HMACSHA384">
2250 <summary>Computes a Hash-based Message Authentication Code (HMAC) using the <see cref="T:System.Security.Cryptography.SHA384"></see> hash function.</summary>
2252 <member name="M:System.Security.Cryptography.HMACSHA384.#ctor">
2253 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACSHA384"></see> class by using a randomly generated key.</summary>
2255 <member name="M:System.Security.Cryptography.HMACSHA384.#ctor(System.Byte[])">
2256 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACSHA384"></see> class by using the specified key data.</summary>
2257 <param name="key">The secret key for <see cref="T:System.Security.Cryptography.HMACSHA384"></see> encryption. The key can be any length. However, the recommended size is 128 bytes. If the key is more than 128 bytes long, it is hashed (using SHA-384) to derive a 128-byte key. If it is less than 128 bytes long, it is padded to 128 bytes.</param>
2258 <exception cref="T:System.ArgumentNullException">The <paramref name="key">key</paramref> parameter is <see langword="null"></see>.</exception>
2260 <member name="M:System.Security.Cryptography.HMACSHA384.Dispose(System.Boolean)">
2261 <param name="disposing"></param>
2263 <member name="M:System.Security.Cryptography.HMACSHA384.HashCore(System.ReadOnlySpan{System.Byte})">
2264 <param name="source"></param>
2266 <member name="M:System.Security.Cryptography.HMACSHA384.HashCore(System.Byte[],System.Int32,System.Int32)">
2267 <param name="rgb"></param>
2268 <param name="ib"></param>
2269 <param name="cb"></param>
2271 <member name="M:System.Security.Cryptography.HMACSHA384.HashFinal">
2274 <member name="P:System.Security.Cryptography.HMACSHA384.HashSize">
2277 <member name="M:System.Security.Cryptography.HMACSHA384.Initialize">
2280 <member name="P:System.Security.Cryptography.HMACSHA384.Key">
2283 <member name="P:System.Security.Cryptography.HMACSHA384.ProduceLegacyHmacValues">
2284 <summary>Provides a workaround for the .NET Framework 2.0 implementation of the <see cref="T:System.Security.Cryptography.HMACSHA384"></see> algorithm, which is inconsistent with the .NET Framework 2.0 Service Pack 1 implementation of the algorithm.</summary>
2285 <returns><see langword="true"></see> to enable .NET Framework 2.0 Service Pack 1 applications to interact with .NET Framework 2.0 applications; otherwise, <see langword="false"></see>.</returns>
2287 <member name="M:System.Security.Cryptography.HMACSHA384.TryHashFinal(System.Span{System.Byte},System.Int32@)">
2288 <param name="destination"></param>
2289 <param name="bytesWritten"></param>
2292 <member name="T:System.Security.Cryptography.HMACSHA256">
2293 <summary>Computes a Hash-based Message Authentication Code (HMAC) by using the <see cref="T:System.Security.Cryptography.SHA256"></see> hash function.</summary>
2295 <member name="M:System.Security.Cryptography.HMACSHA256.#ctor">
2296 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACSHA256"></see> class with a randomly generated key.</summary>
2298 <member name="M:System.Security.Cryptography.HMACSHA256.#ctor(System.Byte[])">
2299 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACSHA256"></see> class with the specified key data.</summary>
2300 <param name="key">The secret key for <see cref="T:System.Security.Cryptography.HMACSHA256"></see> encryption. The key can be any length. However, the recommended size is 64 bytes. If the key is more than 64 bytes long, it is hashed (using SHA-256) to derive a 64-byte key. If it is less than 64 bytes long, it is padded to 64 bytes.</param>
2301 <exception cref="T:System.ArgumentNullException">The <paramref name="key">key</paramref> parameter is <see langword="null"></see>.</exception>
2303 <member name="M:System.Security.Cryptography.HMACSHA256.Dispose(System.Boolean)">
2304 <param name="disposing"></param>
2306 <member name="M:System.Security.Cryptography.HMACSHA256.HashCore(System.ReadOnlySpan{System.Byte})">
2307 <param name="source"></param>
2309 <member name="M:System.Security.Cryptography.HMACSHA256.HashCore(System.Byte[],System.Int32,System.Int32)">
2310 <param name="rgb"></param>
2311 <param name="ib"></param>
2312 <param name="cb"></param>
2314 <member name="M:System.Security.Cryptography.HMACSHA256.HashFinal">
2317 <member name="P:System.Security.Cryptography.HMACSHA256.HashSize">
2320 <member name="M:System.Security.Cryptography.HMACSHA256.Initialize">
2323 <member name="P:System.Security.Cryptography.HMACSHA256.Key">
2326 <member name="M:System.Security.Cryptography.HMACSHA256.TryHashFinal(System.Span{System.Byte},System.Int32@)">
2327 <param name="destination"></param>
2328 <param name="bytesWritten"></param>
2331 <member name="T:System.Security.Cryptography.HMACSHA1">
2332 <summary>Computes a Hash-based Message Authentication Code (HMAC) using the <see cref="T:System.Security.Cryptography.SHA1"></see> hash function.</summary>
2334 <member name="M:System.Security.Cryptography.HMACSHA1.#ctor">
2335 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACSHA1"></see> class with a randomly generated key.</summary>
2337 <member name="M:System.Security.Cryptography.HMACSHA1.#ctor(System.Byte[])">
2338 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACSHA1"></see> class with the specified key data.</summary>
2339 <param name="key">The secret key for <see cref="T:System.Security.Cryptography.HMACSHA1"></see> encryption. The key can be any length, but if it is more than 64 bytes long it is hashed (using SHA-1) to derive a 64-byte key. Therefore, the recommended size of the secret key is 64 bytes.</param>
2340 <exception cref="T:System.ArgumentNullException">The <paramref name="key">key</paramref> parameter is <see langword="null"></see>.</exception>
2342 <member name="M:System.Security.Cryptography.HMACSHA1.#ctor(System.Byte[],System.Boolean)">
2343 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACSHA1"></see> class with the specified key data and a value that specifies whether to use the managed version of the SHA1 algorithm.</summary>
2344 <param name="key">The secret key for <see cref="T:System.Security.Cryptography.HMACSHA1"></see> encryption. The key can be any length, but if it is more than 64 bytes long, it is hashed (using SHA-1) to derive a 64-byte key. Therefore, the recommended size of the secret key is 64 bytes.</param>
2345 <param name="useManagedSha1"><see langword="true"></see> to use the managed implementation of the SHA1 algorithm (the <see cref="T:System.Security.Cryptography.SHA1Managed"></see> class); <see langword="false"></see> to use the unmanaged implementation (the <see cref="T:System.Security.Cryptography.SHA1CryptoServiceProvider"></see> class).</param>
2347 <member name="M:System.Security.Cryptography.HMACSHA1.Dispose(System.Boolean)">
2348 <param name="disposing"></param>
2350 <member name="M:System.Security.Cryptography.HMACSHA1.HashCore(System.ReadOnlySpan{System.Byte})">
2351 <param name="source"></param>
2353 <member name="M:System.Security.Cryptography.HMACSHA1.HashCore(System.Byte[],System.Int32,System.Int32)">
2354 <param name="rgb"></param>
2355 <param name="ib"></param>
2356 <param name="cb"></param>
2358 <member name="M:System.Security.Cryptography.HMACSHA1.HashFinal">
2361 <member name="P:System.Security.Cryptography.HMACSHA1.HashSize">
2364 <member name="M:System.Security.Cryptography.HMACSHA1.Initialize">
2367 <member name="P:System.Security.Cryptography.HMACSHA1.Key">
2370 <member name="M:System.Security.Cryptography.HMACSHA1.TryHashFinal(System.Span{System.Byte},System.Int32@)">
2371 <param name="destination"></param>
2372 <param name="bytesWritten"></param>
2375 <member name="T:System.Security.Cryptography.HMACMD5">
2376 <summary>Computes a Hash-based Message Authentication Code (HMAC) by using the <see cref="T:System.Security.Cryptography.MD5"></see> hash function.</summary>
2378 <member name="M:System.Security.Cryptography.HMACMD5.#ctor">
2379 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACMD5"></see> class by using a randomly generated key.</summary>
2381 <member name="M:System.Security.Cryptography.HMACMD5.#ctor(System.Byte[])">
2382 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.HMACMD5"></see> class by using the specified key.</summary>
2383 <param name="key">The secret key for <see cref="T:System.Security.Cryptography.HMACMD5"></see> encryption. The key can be any length, but if it is more than 64 bytes long it will be hashed (using SHA-1) to derive a 64-byte key. Therefore, the recommended size of the secret key is 64 bytes.</param>
2384 <exception cref="T:System.ArgumentNullException">The <paramref name="key">key</paramref> parameter is <see langword="null"></see>.</exception>
2386 <member name="M:System.Security.Cryptography.HMACMD5.Dispose(System.Boolean)">
2387 <param name="disposing"></param>
2389 <member name="M:System.Security.Cryptography.HMACMD5.HashCore(System.ReadOnlySpan{System.Byte})">
2390 <param name="source"></param>
2392 <member name="M:System.Security.Cryptography.HMACMD5.HashCore(System.Byte[],System.Int32,System.Int32)">
2393 <param name="rgb"></param>
2394 <param name="ib"></param>
2395 <param name="cb"></param>
2397 <member name="M:System.Security.Cryptography.HMACMD5.HashFinal">
2400 <member name="P:System.Security.Cryptography.HMACMD5.HashSize">
2403 <member name="M:System.Security.Cryptography.HMACMD5.Initialize">
2406 <member name="P:System.Security.Cryptography.HMACMD5.Key">
2409 <member name="M:System.Security.Cryptography.HMACMD5.TryHashFinal(System.Span{System.Byte},System.Int32@)">
2410 <param name="destination"></param>
2411 <param name="bytesWritten"></param>
2414 <member name="T:System.Security.Cryptography.RijndaelManaged">
2415 <summary>Accesses the managed version of the <see cref="T:System.Security.Cryptography.Rijndael"></see> algorithm. This class cannot be inherited.</summary>
2417 <member name="M:System.Security.Cryptography.RijndaelManaged.#ctor">
2418 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.RijndaelManaged"></see> class.</summary>
2419 <exception cref="T:System.InvalidOperationException">This class is not compliant with the FIPS algorithm.</exception>
2421 <member name="P:System.Security.Cryptography.RijndaelManaged.BlockSize">
2424 <member name="M:System.Security.Cryptography.RijndaelManaged.CreateDecryptor">
2427 <member name="M:System.Security.Cryptography.RijndaelManaged.CreateDecryptor(System.Byte[],System.Byte[])">
2428 <summary>Creates a symmetric <see cref="T:System.Security.Cryptography.Rijndael"></see> decryptor object with the specified <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key"></see> and initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV"></see>).</summary>
2429 <param name="rgbKey">The secret key to be used for the symmetric algorithm. The key size must be 128, 192, or 256 bits.</param>
2430 <param name="rgbIV">The IV to be used for the symmetric algorithm.</param>
2431 <returns>A symmetric <see cref="T:System.Security.Cryptography.Rijndael"></see> decryptor object.</returns>
2432 <exception cref="T:System.ArgumentNullException">The <paramref name="rgbKey">rgbKey</paramref> parameter is <see langword="null"></see>.
2434 The <paramref name="rgbIV">rgbIV</paramref> parameter is <see langword="null"></see>.</exception>
2435 <exception cref="T:System.Security.Cryptography.CryptographicException">The value of the <see cref="System.Security.Cryptography.SymmetricAlgorithm.Mode"></see> property is not <see cref="System.Security.Cryptography.CipherMode.ECB"></see>, <see cref="System.Security.Cryptography.CipherMode.CBC"></see>, or <see cref="System.Security.Cryptography.CipherMode.CFB"></see>.</exception>
2437 <member name="M:System.Security.Cryptography.RijndaelManaged.CreateEncryptor">
2440 <member name="M:System.Security.Cryptography.RijndaelManaged.CreateEncryptor(System.Byte[],System.Byte[])">
2441 <summary>Creates a symmetric <see cref="T:System.Security.Cryptography.Rijndael"></see> encryptor object with the specified <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key"></see> and initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV"></see>).</summary>
2442 <param name="rgbKey">The secret key to be used for the symmetric algorithm. The key size must be 128, 192, or 256 bits.</param>
2443 <param name="rgbIV">The IV to be used for the symmetric algorithm.</param>
2444 <returns>A symmetric <see cref="T:System.Security.Cryptography.Rijndael"></see> encryptor object.</returns>
2445 <exception cref="T:System.ArgumentNullException">The <paramref name="rgbKey">rgbKey</paramref> parameter is <see langword="null"></see>.
2447 The <paramref name="rgbIV">rgbIV</paramref> parameter is <see langword="null"></see>.</exception>
2448 <exception cref="T:System.Security.Cryptography.CryptographicException">The value of the <see cref="System.Security.Cryptography.SymmetricAlgorithm.Mode"></see> property is not <see cref="System.Security.Cryptography.CipherMode.ECB"></see>, <see cref="System.Security.Cryptography.CipherMode.CBC"></see>, or <see cref="System.Security.Cryptography.CipherMode.CFB"></see>.</exception>
2450 <member name="M:System.Security.Cryptography.RijndaelManaged.GenerateIV">
2451 <summary>Generates a random initialization vector (<see cref="P:System.Security.Cryptography.SymmetricAlgorithm.IV"></see>) to be used for the algorithm.</summary>
2453 <member name="M:System.Security.Cryptography.RijndaelManaged.GenerateKey">
2454 <summary>Generates a random <see cref="P:System.Security.Cryptography.SymmetricAlgorithm.Key"></see> to be used for the algorithm.</summary>
2456 <member name="P:System.Security.Cryptography.RijndaelManaged.IV">
2459 <member name="P:System.Security.Cryptography.RijndaelManaged.Key">
2462 <member name="P:System.Security.Cryptography.RijndaelManaged.KeySize">
2465 <member name="P:System.Security.Cryptography.RijndaelManaged.LegalKeySizes">
2468 <member name="P:System.Security.Cryptography.RijndaelManaged.Mode">
2471 <member name="P:System.Security.Cryptography.RijndaelManaged.Padding">
2474 <member name="T:System.Security.Cryptography.Rijndael">
2475 <summary>Represents the base class from which all implementations of the <see cref="T:System.Security.Cryptography.Rijndael"></see> symmetric encryption algorithm must inherit.</summary>
2477 <member name="M:System.Security.Cryptography.Rijndael.#ctor">
2478 <summary>Initializes a new instance of <see cref="T:System.Security.Cryptography.Rijndael"></see>.</summary>
2480 <member name="M:System.Security.Cryptography.Rijndael.Create">
2481 <summary>Creates a cryptographic object to perform the <see cref="T:System.Security.Cryptography.Rijndael"></see> algorithm.</summary>
2482 <returns>A cryptographic object.</returns>
2483 <exception cref="T:System.Reflection.TargetInvocationException">The algorithm was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.</exception>
2485 <member name="M:System.Security.Cryptography.Rijndael.Create(System.String)">
2486 <summary>Creates a cryptographic object to perform the specified implementation of the <see cref="T:System.Security.Cryptography.Rijndael"></see> algorithm.</summary>
2487 <param name="algName">The name of the specific implementation of <see cref="T:System.Security.Cryptography.Rijndael"></see> to create.</param>
2488 <returns>A cryptographic object.</returns>
2489 <exception cref="T:System.Reflection.TargetInvocationException">The algorithm described by the <paramref name="algName">algName</paramref> parameter was used with Federal Information Processing Standards (FIPS) mode enabled, but is not FIPS compatible.</exception>
2491 <member name="T:System.Security.Cryptography.Rfc2898DeriveBytes">
2492 <summary>Implements password-based key derivation functionality, PBKDF2, by using a pseudo-random number generator based on <see cref="T:System.Security.Cryptography.HMACSHA1"></see>.</summary>
2494 <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.#ctor(System.String,System.Byte[])">
2495 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Rfc2898DeriveBytes"></see> class using a password and salt to derive the key.</summary>
2496 <param name="password">The password used to derive the key.</param>
2497 <param name="salt">The key salt used to derive the key.</param>
2498 <exception cref="T:System.ArgumentException">The specified salt size is smaller than 8 bytes or the iteration count is less than 1.</exception>
2499 <exception cref="T:System.ArgumentNullException">The password or salt is <see langword="null"></see>.</exception>
2501 <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.#ctor(System.String,System.Int32)">
2502 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Rfc2898DeriveBytes"></see> class using the password and salt size to derive the key.</summary>
2503 <param name="password">The password used to derive the key.</param>
2504 <param name="saltSize">The size of the random salt that you want the class to generate.</param>
2505 <exception cref="T:System.ArgumentException">The specified salt size is smaller than 8 bytes.</exception>
2506 <exception cref="T:System.ArgumentNullException">The password or salt is <see langword="null"></see>.</exception>
2508 <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.#ctor(System.Byte[],System.Byte[],System.Int32)">
2509 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Rfc2898DeriveBytes"></see> class using a password, a salt, and number of iterations to derive the key.</summary>
2510 <param name="password">The password used to derive the key.</param>
2511 <param name="salt">The key salt used to derive the key.</param>
2512 <param name="iterations">The number of iterations for the operation.</param>
2513 <exception cref="T:System.ArgumentException">The specified salt size is smaller than 8 bytes or the iteration count is less than 1.</exception>
2514 <exception cref="T:System.ArgumentNullException">The password or salt is <see langword="null"></see>.</exception>
2516 <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.#ctor(System.String,System.Byte[],System.Int32)">
2517 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Rfc2898DeriveBytes"></see> class using a password, a salt, and number of iterations to derive the key.</summary>
2518 <param name="password">The password used to derive the key.</param>
2519 <param name="salt">The key salt used to derive the key.</param>
2520 <param name="iterations">The number of iterations for the operation.</param>
2521 <exception cref="T:System.ArgumentException">The specified salt size is smaller than 8 bytes or the iteration count is less than 1.</exception>
2522 <exception cref="T:System.ArgumentNullException">The password or salt is <see langword="null"></see>.</exception>
2524 <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.#ctor(System.String,System.Int32,System.Int32)">
2525 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Rfc2898DeriveBytes"></see> class using a password, a salt size, and number of iterations to derive the key.</summary>
2526 <param name="password">The password used to derive the key.</param>
2527 <param name="saltSize">The size of the random salt that you want the class to generate.</param>
2528 <param name="iterations">The number of iterations for the operation.</param>
2529 <exception cref="T:System.ArgumentException">The specified salt size is smaller than 8 bytes or the iteration count is less than 1.</exception>
2530 <exception cref="T:System.ArgumentNullException">The password or salt is <see langword="null"></see>.</exception>
2531 <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="iterations">iterations</paramref> is out of range. This parameter requires a non-negative number.</exception>
2533 <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.#ctor(System.Byte[],System.Byte[],System.Int32,System.Security.Cryptography.HashAlgorithmName)">
2534 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Rfc2898DeriveBytes"></see> class using the specified password, salt, number of iterations and the hash algorithm name to derive the key.</summary>
2535 <param name="password">The password to use to derive the key.</param>
2536 <param name="salt">The key salt to use to derive the key.</param>
2537 <param name="iterations">The number of iterations for the operation.</param>
2538 <param name="hashAlgorithm">The hash algorithm to use to derive the key.</param>
2539 <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="saltSize">saltSize</paramref> is less than zero.</exception>
2540 <exception cref="T:System.ArgumentException">The <see cref="System.Security.Cryptography.HashAlgorithmName.Name"></see> property of <paramref name="hashAlgorithm">hashAlgorithm</paramref> is either <see langword="null"></see> or <see cref="System.String.Empty"></see>.</exception>
2541 <exception cref="T:System.Security.Cryptography.CryptographicException">Hash algorithm name is invalid.</exception>
2543 <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.#ctor(System.String,System.Byte[],System.Int32,System.Security.Cryptography.HashAlgorithmName)">
2544 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Rfc2898DeriveBytes"></see> class using the specified password, salt, number of iterations and the hash algorithm name to derive the key.</summary>
2545 <param name="password">The password to use to derive the key.</param>
2546 <param name="salt">The key salt to use to derive the key.</param>
2547 <param name="iterations">The number of iterations for the operation.</param>
2548 <param name="hashAlgorithm">The hash algorithm to use to derive the key.</param>
2549 <exception cref="T:System.ArgumentException">The <see cref="System.Security.Cryptography.HashAlgorithmName.Name"></see> property of <paramref name="hashAlgorithm">hashAlgorithm</paramref> is either <see langword="null"></see> or <see cref="System.String.Empty"></see>.</exception>
2550 <exception cref="T:System.Security.Cryptography.CryptographicException">Hash algorithm name is invalid.</exception>
2552 <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.#ctor(System.String,System.Int32,System.Int32,System.Security.Cryptography.HashAlgorithmName)">
2553 <summary>Initializes a new instance of the <see cref="T:System.Security.Cryptography.Rfc2898DeriveBytes"></see> class using the specified password, salt size, number of iterations and the hash algorithm name to derive the key.</summary>
2554 <param name="password">The password to use to derive the key.</param>
2555 <param name="saltSize">The size of the random salt that you want the class to generate.</param>
2556 <param name="iterations">The number of iterations for the operation.</param>
2557 <param name="hashAlgorithm">The hash algorithm to use to derive the key.</param>
2558 <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="saltSize">saltSize</paramref> is less than zero.</exception>
2559 <exception cref="T:System.ArgumentException">The <see cref="System.Security.Cryptography.HashAlgorithmName.Name"></see> property of <paramref name="hashAlgorithm">hashAlgorithm</paramref> is either <see langword="null"></see> or <see cref="System.String.Empty"></see>.</exception>
2560 <exception cref="T:System.Security.Cryptography.CryptographicException">Hash algorithm name is invalid.</exception>
2562 <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.CryptDeriveKey(System.String,System.String,System.Int32,System.Byte[])">
2563 <summary>Derives a cryptographic key from the <see cref="T:System.Security.Cryptography.Rfc2898DeriveBytes"></see> object.</summary>
2564 <param name="algname">The algorithm name for which to derive the key.</param>
2565 <param name="alghashname">The hash algorithm name to use to derive the key.</param>
2566 <param name="keySize">The size of the key, in bits, to derive.</param>
2567 <param name="rgbIV">The initialization vector (IV) to use to derive the key.</param>
2568 <returns>The derived key.</returns>
2569 <exception cref="T:System.Security.Cryptography.CryptographicException">The <paramref name="keySize">keySize</paramref> parameter is incorrect.
2571 The cryptographic service provider (CSP) cannot be acquired.
2573 The <paramref name="algname">algname</paramref> parameter is not a valid algorithm name.
2575 The <paramref name="alghashname">alghashname</paramref> parameter is not a valid hash algorithm name.</exception>
2577 <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.Dispose(System.Boolean)">
2578 <summary>Releases the unmanaged resources used by the <see cref="T:System.Security.Cryptography.Rfc2898DeriveBytes"></see> class and optionally releases the managed resources.</summary>
2579 <param name="disposing"><see langword="true"></see> to release both managed and unmanaged resources; <see langword="false"></see> to release only unmanaged resources.</param>
2581 <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.GetBytes(System.Int32)">
2582 <summary>Returns the pseudo-random key for this object.</summary>
2583 <param name="cb">The number of pseudo-random key bytes to generate.</param>
2584 <returns>A byte array filled with pseudo-random key bytes.</returns>
2585 <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="cb">cb</paramref> is out of range. This parameter requires a non-negative number.</exception>
2587 <member name="P:System.Security.Cryptography.Rfc2898DeriveBytes.HashAlgorithm">
2590 <member name="P:System.Security.Cryptography.Rfc2898DeriveBytes.IterationCount">
2591 <summary>Gets or sets the number of iterations for the operation.</summary>
2592 <returns>The number of iterations for the operation.</returns>
2593 <exception cref="T:System.ArgumentOutOfRangeException">The number of iterations is less than 1.</exception>
2595 <member name="M:System.Security.Cryptography.Rfc2898DeriveBytes.Reset">
2596 <summary>Resets the state of the operation.</summary>
2598 <member name="P:System.Security.Cryptography.Rfc2898DeriveBytes.Salt">
2599 <summary>Gets or sets the key salt value for the operation.</summary>
2600 <returns>The key salt value for the operation.</returns>
2601 <exception cref="T:System.ArgumentException">The specified salt size is smaller than 8 bytes.</exception>
2602 <exception cref="T:System.ArgumentNullException">The salt is <see langword="null"></see>.</exception>