diff --git a/xml/System.Security.Cryptography.Pkcs/Pkcs8PrivateKeyInfo.xml b/xml/System.Security.Cryptography.Pkcs/Pkcs8PrivateKeyInfo.xml
index dccd67a5792..bdb8bf46fc2 100644
--- a/xml/System.Security.Cryptography.Pkcs/Pkcs8PrivateKeyInfo.xml
+++ b/xml/System.Security.Cryptography.Pkcs/Pkcs8PrivateKeyInfo.xml
@@ -15,7 +15,7 @@
- To be added.
+ Enables the inspection of and creation of PKCS#8 PrivateKeyInfo and EncryptedPrivateKeyInfo values. This class cannot be inherited.
To be added.
@@ -38,12 +38,31 @@
- To be added.
- To be added.
- To be added.
- To be added.
- To be added.
- To be added.
+ The Object Identifier (OID) identifying the asymmetric algorithm this key is for.
+ The BER-encoded algorithm parameters associated with this key, or to omit algorithm parameters when encoding.
+ The algorithm-specific encoded private key.
+ to store and without making a defensive copy; otherwise, . The default is .
+ Initializes a new instance of the class.
+
+
+
+ The parameter is .
+ The parameter is not , empty, or a single BER-encoded value.
+
+
+
@@ -63,8 +82,8 @@
System.Security.Cryptography.Oid
- To be added.
- To be added.
+ Gets the Object Identifier (OID) value identifying the algorithm this key is for.
+ The Object Identifier (OID) value identifying the algorithm this key is for.
To be added.
@@ -85,8 +104,8 @@
System.Nullable<System.ReadOnlyMemory<System.Byte>>
- To be added.
- To be added.
+ Gets a memory value containing the BER-encoded algorithm parameters associated with this key.
+ A memory value containing the BER-encoded algorithm parameters associated with this key, or if no parameters were present.
To be added.
@@ -107,8 +126,8 @@
System.Security.Cryptography.CryptographicAttributeObjectCollection
- To be added.
- To be added.
+ Gets the modifiable collection of attributes for this private key.
+ The modifiable collection of attributes to encode with the private key.
To be added.
@@ -132,10 +151,13 @@
- To be added.
- To be added.
- To be added.
+ The private key to represent in a PKCS#8 PrivateKeyInfo.
+ Exports a specified key as a PKCS#8 PrivateKeyInfo and returns its decoded interpretation.
+ The decoded interpretation of the exported PKCS#8 PrivateKeyInfo.
To be added.
+ The parameter is .
+
+
@@ -159,12 +181,24 @@
- To be added.
- To be added.
- To be added.
- To be added.
- To be added.
- To be added.
+ The data to interpret as a PKCS#8 PrivateKeyInfo value.
+ When this method returns, contains a value that indicates the number of bytes read from . This parameter is treated as uninitialized.
+ to store without making a defensive copy; otherwise, . The default is .
+ Reads the provided data as a PKCS#8 PrivateKeyInfo and returns an object view of the contents.
+ An object view of the contents decoded as a PKCS#8 PrivateKeyInfo.
+
+
+
+ The contents of the parameter were not successfully decoded as a PKCS#8 PrivateKeyInfo.
@@ -189,13 +223,34 @@
- To be added.
- To be added.
- To be added.
- To be added.
- To be added.
- To be added.
+ The bytes to use as a password when decrypting the key material.
+ The data to read as a PKCS#8 EncryptedPrivateKeyInfo structure in the ASN.1-BER encoding.
+ When this method returns, contains a value that indicates the number of bytes read from . This parameter is treated as uninitialized.
+ Decrypts the provided data using the provided byte-based password and decodes the output into an object view of the PKCS#8 PrivateKeyInfo.
+ An object view of the contents decrypted decoded as a PKCS#8 PrivateKeyInfo.
+
+
+
+ The password is incorrect.
+
+-or-
+
+The contents of indicate the Key Derivation Function (KDF) to apply is the legacy PKCS#12 KDF, which requires -based passwords.
+
+-or-
+
+The contents of do not represent an ASN.1-BER-encoded PKCS#8 EncryptedPrivateKeyInfo structure.
+
@@ -219,12 +274,23 @@
- To be added.
- To be added.
- To be added.
- To be added.
- To be added.
- To be added.
+ The password to use when decrypting the key material.
+ The bytes of a PKCS#8 EncryptedPrivateKeyInfo structure in the ASN.1-BER encoding.
+ When this method returns, contains a value that indicates the number of bytes read from . This parameter is treated as uninitialized.
+ Decrypts the provided data using the provided character-based password and decodes the output into an object view of the PKCS#8 PrivateKeyInfo.
+ An object view of the contents decrypted decoded as a PKCS#8 PrivateKeyInfo.
+
+
+
+
@@ -245,9 +311,10 @@
- To be added.
- To be added.
+ Encodes the property data of this instance as a PKCS#8 PrivateKeyInfo and returns the encoding as a byte array.
+ A byte array representing the encoded form of the PKCS#8 PrivateKeyInfo.
To be added.
+
@@ -270,11 +337,21 @@
- To be added.
- To be added.
- To be added.
- To be added.
- To be added.
+ The bytes to use as a password when encrypting the key material.
+ The password-based encryption (PBE) parameters to use when encrypting the key material.
+ Produces a PKCS#8 EncryptedPrivateKeyInfo from the property contents of this object after encrypting with the specified byte-based password and encryption parameters.
+ A byte array containing the encoded form of the PKCS#8 EncryptedPrivateKeyInfo.
+
+
+
+ indicates that should be used, which requires -based passwords.
+
@@ -297,11 +374,19 @@
- To be added.
- To be added.
- To be added.
- To be added.
- To be added.
+ The password to use when encrypting the key material.
+ The password-based encryption (PBE) parameters to use when encrypting the key material.
+ Produces a PKCS#8 EncryptedPrivateKeyInfo from the property contents of this object after encrypting with the specified character-based password and encryption parameters.
+ A byte array containing the encoded form of the PKCS#8 EncryptedPrivateKeyInfo.
+
+
+
+
@@ -321,8 +406,8 @@
System.ReadOnlyMemory<System.Byte>
- To be added.
- To be added.
+ Gets a memory value that represents the algorithm-specific encoded private key.
+ A memory value that represents the algorithm-specific encoded private key.
To be added.
@@ -347,11 +432,12 @@
- To be added.
- To be added.
- To be added.
- To be added.
+ The byte span to receive the PKCS#8 PrivateKeyInfo data.
+ When this method returns, contains a value that indicates the number of bytes written to . This parameter is treated as uninitialized.
+ Attempts to encode the property data of this instance as a PKCS#8 PrivateKeyInfo, writing the results into a provided buffer.
+ if is big enough to receive the output; otherwise, .
To be added.
+
@@ -376,13 +462,22 @@
- To be added.
- To be added.
- To be added.
- To be added.
- To be added.
- To be added.
- To be added.
+ The bytes to use as a password when encrypting the key material.
+ The password-based encryption (PBE) parameters to use when encrypting the key material.
+ The byte span to receive the PKCS#8 EncryptedPrivateKeyInfo data.
+ When this method returns, contains a value that indicates the number of bytes written to . This parameter is treated as uninitialized.
+ Attempts to produce a PKCS#8 EncryptedPrivateKeyInfo from the property contents of this object after encrypting with the specified byte-based password and encryption parameters, writing the results into a provided buffer.
+ if is big enough to receive the output; otherwise, .
+
+
+
+
@@ -407,14 +502,22 @@
- To be added.
- To be added.
- To be added.
- To be added.
- To be added.
- To be added.
- To be added.
+ The password to use when encrypting the key material.
+ The password-based encryption (PBE) parameters to use when encrypting the key material.
+ The byte span to receive the PKCS#8 EncryptedPrivateKeyInfo data.
+ When this method returns, contains a value that indicates the number of bytes written to . This parameter is treated as uninitialized.
+ Attempts to produce a PKCS#8 EncryptedPrivateKeyInfo from the property contents of this object after encrypting with the specified character-based password and encryption parameters, writing the result into a provided buffer.
+ if is big enough to receive the output; otherwise, .
+
+
+
+
-
\ No newline at end of file
+