src/Assemblies/Core/System.Security.Cryptography.Pkcs.xml

<?xml version="1.0"?>
<doc>
    <assembly>
        <name>System.Security.Cryptography.Pkcs</name>
    </assembly>
    <members>
        <member name="M:System.Security.Cryptography.Pkcs.EnvelopedCms.Decode(System.ReadOnlySpan{System.Byte})">
            <summary>
              Decodes the provided data as a CMS/PKCS#7 EnvelopedData message.
            </summary>
            <param name="encodedMessage">
              The data to decode.
            </param>
            <exception cref="T:System.Security.Cryptography.CryptographicException">
              The <paramref name="encodedMessage"/> parameter was not successfully decoded.
            </exception>
        </member>
        <member name="P:System.HexConverter.CharToHexLookup">
            <summary>Map from an ASCII char to its hex value, e.g. arr['b'] == 11. 0xFF means it's not a hex digit.</summary>
        </member>
        <member name="P:System.SR.Arg_EmptyOrNullString_Named">
            <summary>The `{0}` string cannot be empty or null.</summary>
        </member>
        <member name="P:System.SR.Arg_RankMultiDimNotSupported">
            <summary>Only single dimensional arrays are supported for the requested action.</summary>
        </member>
        <member name="P:System.SR.Argument_EncodeDestinationTooSmall">
            <summary>The destination is too small to hold the encoded value.</summary>
        </member>
        <member name="P:System.SR.Argument_InvalidOffLen">
            <summary>Offset and length were out of bounds for the array or count is greater than the number of elements from index to the end of the source collection.</summary>
        </member>
        <member name="P:System.SR.Argument_InvalidOidValue">
            <summary>The OID value was invalid.</summary>
        </member>
        <member name="P:System.SR.Argument_InvalidValue">
            <summary>Value was invalid.</summary>
        </member>
        <member name="P:System.SR.ArgumentOutOfRange_Index">
            <summary>Index was out of range. Must be non-negative and less than the size of the collection.</summary>
        </member>
        <member name="P:System.SR.ArgumentOutOfRange_NeedPosNum">
            <summary>Positive number required.</summary>
        </member>
        <member name="P:System.SR.Cryptography_AlgKdfRequiresChars">
            <summary>The KDF for algorithm '{0}' requires a char-based password input.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Asn_EnumeratedValueRequiresNonFlagsEnum">
            <summary>ASN.1 Enumerated values only apply to enum types without the [Flags] attribute.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Asn_NamedBitListRequiresFlagsEnum">
            <summary>Named bit list operations require an enum with the [Flags] attribute.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Asn_NamedBitListValueTooBig">
            <summary>The encoded named bit list value is larger than the value size of the '{0}' enum.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Asn_UniversalValueIsFixed">
            <summary>Tags with TagClass Universal must have the appropriate TagValue value for the data type being read or written.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Asn_UnusedBitCountRange">
            <summary>Unused bit count must be between 0 and 7, inclusive.</summary>
        </member>
        <member name="P:System.SR.Cryptography_AsnWriter_EncodeUnbalancedStack">
            <summary>Encode cannot be called while a Sequence or SetOf is still open.</summary>
        </member>
        <member name="P:System.SR.Cryptography_AsnWriter_PopWrongTag">
            <summary>Cannot pop the requested tag as it is not currently in progress.</summary>
        </member>
        <member name="P:System.SR.Cryptography_BadHashValue">
            <summary>The hash value is not correct.</summary>
        </member>
        <member name="P:System.SR.Cryptography_BadSignature">
            <summary>Invalid signature.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_CannotDetermineSignatureAlgorithm">
            <summary>Could not determine signature algorithm for the signer certificate.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_IncompleteCertChain">
            <summary>The certificate chain is incomplete, the self-signed root authority could not be determined.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_Invalid_Originator_Identifier_Choice">
            <summary>Invalid originator identifier choice {0} found in decoded CMS.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_Invalid_Subject_Identifier_Type">
            <summary>The subject identifier type {0} is not valid.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_InvalidMessageType">
            <summary>Invalid cryptographic message type.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_InvalidSignerHashForSignatureAlg">
            <summary>SignerInfo digest algorithm '{0}' is not valid for signature algorithm '{1}'.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_Key_Agree_Date_Not_Available">
            <summary>The Date property is not available for none KID key agree recipient.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_MessageNotEncrypted">
            <summary>The CMS message is not encrypted.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_MessageNotSigned">
            <summary>The CMS message is not signed.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_MissingAuthenticatedAttribute">
            <summary>The cryptographic message does not contain an expected authenticated attribute.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_NoCounterCounterSigner">
            <summary>Only one level of counter-signatures are supported on this platform.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_NoRecipients">
            <summary>The recipients collection is empty. You must specify at least one recipient. This platform does not implement the certificate picker UI.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_NoSignerCert">
            <summary>No signer certificate was provided. This platform does not implement the certificate picker UI.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_NoSignerCertSilent">
            <summary>No signer certificate was provided.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_NoSignerAtIndex">
            <summary>The signed cryptographic message does not have a signer for the specified signer index.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_RecipientNotFound">
            <summary>The enveloped-data message does not contain the specified recipient.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_RecipientType_NotSupported">
            <summary>The recipient type '{0}' is not supported for encryption or decryption on this platform.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_Sign_Empty_Content">
            <summary>Cannot create CMS signature for empty content.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_Sign_No_Signature_First_Signer">
            <summary>CmsSigner has to be the first signer with NoSignature.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_SignerNotFound">
            <summary>Cannot find the original signer.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_Signing_RequiresPrivateKey">
            <summary>A certificate with a private key is required.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_Ktri_RSARequired">
            <summary>An RSA key is required to decrypt for a RecipientInfo with a KeyTransport recipient type.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_Recipient_RSARequired_RSAPaddingModeSupplied">
            <summary>An RSA certificate is required for a CmsRecipient when used with RSAEncryptionPadding.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_TrustFailure">
            <summary>Certificate trust could not be established. The first reported error is: {0}</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_UnknownAlgorithm">
            <summary>Unknown algorithm '{0}'.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_UnknownKeySpec">
            <summary>Unable to determine the type of key handle from this keyspec {0}.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_WrongKeyUsage">
            <summary>The certificate is not valid for the requested usage.</summary>
        </member>
        <member name="P:System.SR.Cryptography_NotValidPublicOrPrivateKey">
            <summary>Key is not a valid public or private key.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Pkcs12_CannotProcessEncryptedSafeContents">
            <summary>This operation is not valid on an encrypted or enveloped Pkcs12SafeContents.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Pkcs12_CertBagNotX509">
            <summary>The Pkcs12CertBag contents are not an X.509 certificate.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Pkcs12_PfxIsSealed">
            <summary>The Pkcs12Builder can no longer be modified because one of the Seal methods was already invoked.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Pkcs12_PfxMustBeSealed">
            <summary>One of the Seal methods must be invoked on the Pkcs12Builder before invoking an Encode method.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Pkcs12_SafeContentsIsEncrypted">
            <summary>Cannot enumerate the contents of an encrypted or enveloped Pkcs12SafeContents.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Pkcs12_SafeContentsIsReadOnly">
            <summary>New Pkcs12SafeBag values cannot be added to a Pkcs12SafeContents that was read from existing data.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Pkcs12_WrongModeForDecrypt">
            <summary>This decryption operation applies to 'Pkcs12ConfidentialityMode.{0}', but the target object is in 'Pkcs12ConfidentialityMode.{1}'.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Pkcs12_WrongModeForVerify">
            <summary>This verification operation applies to 'Pkcs12IntegrityMode.{0}', but the target object is in 'Pkcs12IntegrityMode.{1}'.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Pkcs_InvalidSignatureParameters">
            <summary>Invalid signature paramters.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Pkcs8_EncryptedReadFailed">
            <summary>The EncryptedPrivateKeyInfo structure was decoded but was not successfully interpreted, the password may be incorrect.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Pkcs9_AttributeMismatch">
            <summary>The parameter should be a PKCS 9 attribute.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Pkcs9_MultipleSigningTimeNotAllowed">
            <summary>Cannot add multiple PKCS 9 signing time attributes.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Pkcs_PssParametersMissing">
            <summary>PSS parameters were not present.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Pkcs_PssParametersHashMismatch">
            <summary>This platform requires that the PSS hash algorithm ({0}) match the data digest algorithm ({1}).</summary>
        </member>
        <member name="P:System.SR.Cryptography_Pkcs_PssParametersMgfHashMismatch">
            <summary>This platform does not support the MGF hash algorithm ({0}) being different from the signature hash algorithm ({1}).</summary>
        </member>
        <member name="P:System.SR.Cryptography_Pkcs_PssParametersMgfNotSupported">
            <summary>Mask generation function '{0}' is not supported by this platform.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Pkcs_PssParametersSaltMismatch">
            <summary>PSS salt size {0} is not supported by this platform with hash algorithm {1}.</summary>
        </member>
        <member name="P:System.SR.Cryptography_TimestampReq_BadNonce">
            <summary>The response from the timestamping server did not match the request nonce.</summary>
        </member>
        <member name="P:System.SR.Cryptography_TimestampReq_BadResponse">
            <summary>The response from the timestamping server was not understood.</summary>
        </member>
        <member name="P:System.SR.Cryptography_TimestampReq_Failure">
            <summary>The timestamping server did not grant the request. The request status is '{0}' with failure info '{1}'.</summary>
        </member>
        <member name="P:System.SR.Cryptography_TimestampReq_NoCertFound">
            <summary>The timestamping request required the TSA certificate in the response, but it was not found.</summary>
        </member>
        <member name="P:System.SR.Cryptography_TimestampReq_UnexpectedCertFound">
            <summary>The timestamping request required the TSA certificate not be included in the response, but certificates were present.</summary>
        </member>
        <member name="P:System.SR.InvalidOperation_DuplicateItemNotAllowed">
            <summary>Duplicate items are not allowed in the collection.</summary>
        </member>
        <member name="P:System.SR.InvalidOperation_WrongOidInAsnCollection">
            <summary>AsnEncodedData element in the collection has wrong Oid value: expected = '{0}', actual = '{1}'.</summary>
        </member>
        <member name="P:System.SR.PlatformNotSupported_CryptographyPkcs">
            <summary>System.Security.Cryptography.Pkcs is only supported on Windows platforms.</summary>
        </member>
        <member name="P:System.SR.Cryptography_AlgorithmNotSupported">
            <summary>Algorithm '{0}' is not supported on this platform.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Der_Invalid_Encoding">
            <summary>ASN1 corrupted data.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Invalid_IA5String">
            <summary>The string contains a character not in the 7 bit ASCII character set.</summary>
        </member>
        <member name="P:System.SR.Cryptography_UnknownAlgorithmIdentifier">
            <summary>The algorithm identified by '{0}' is unknown, not valid for the requested usage, or was not handled.</summary>
        </member>
        <member name="P:System.SR.Cryptography_UnknownHashAlgorithm">
            <summary>'{0}' is not a known hash algorithm.</summary>
        </member>
        <member name="P:System.SR.Cryptography_WriteEncodedValue_OneValueAtATime">
            <summary>The input to WriteEncodedValue must represent a single encoded value with no trailing data.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_NoAttributeFound">
            <summary>Attribute not found.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_NoCertificateFound">
            <summary>Certificate not found.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_CertificateAlreadyInCollection">
            <summary>Certificate already present in the collection.</summary>
        </member>
        <member name="P:System.SR.Cryptography_Cms_InvalidSymmetricKey">
            <summary>The key in the enveloped message is not valid or could not be decoded.</summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.AllowNullAttribute">
            <summary>Specifies that null is allowed as an input even if the corresponding type disallows it.</summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.DisallowNullAttribute">
            <summary>Specifies that null is disallowed as an input even if the corresponding type allows it.</summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.MaybeNullAttribute">
            <summary>Specifies that an output may be null even if the corresponding type disallows it.</summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.NotNullAttribute">
            <summary>Specifies that an output will not be null even if the corresponding type allows it. Specifies that an input argument was not null when the call returns.</summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute">
            <summary>Specifies that when a method returns <see cref="P:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute.ReturnValue"/>, the parameter may be null even if the corresponding type disallows it.</summary>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute.#ctor(System.Boolean)">
            <summary>Initializes the attribute with the specified return value condition.</summary>
            <param name="returnValue">
            The return value condition. If the method returns this value, the associated parameter may be null.
            </param>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute.ReturnValue">
            <summary>Gets the return value condition.</summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute">
            <summary>Specifies that when a method returns <see cref="P:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute.ReturnValue"/>, the parameter will not be null even if the corresponding type allows it.</summary>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute.#ctor(System.Boolean)">
            <summary>Initializes the attribute with the specified return value condition.</summary>
            <param name="returnValue">
            The return value condition. If the method returns this value, the associated parameter will not be null.
            </param>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute.ReturnValue">
            <summary>Gets the return value condition.</summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.NotNullIfNotNullAttribute">
            <summary>Specifies that the output will be non-null if the named parameter is non-null.</summary>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.NotNullIfNotNullAttribute.#ctor(System.String)">
            <summary>Initializes the attribute with the associated parameter name.</summary>
            <param name="parameterName">
            The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null.
            </param>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.NotNullIfNotNullAttribute.ParameterName">
            <summary>Gets the associated parameter name.</summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.DoesNotReturnAttribute">
            <summary>Applied to a method that will never return under any circumstance.</summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute">
            <summary>Specifies that the method will not return if the associated Boolean parameter is passed the specified value.</summary>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute.#ctor(System.Boolean)">
            <summary>Initializes the attribute with the specified parameter value.</summary>
            <param name="parameterValue">
            The condition parameter value. Code after the method will be considered unreachable by diagnostics if the argument to
            the associated parameter matches this value.
            </param>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute.ParameterValue">
            <summary>Gets the condition parameter value.</summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute">
            <summary>Specifies that the method or property will ensure that the listed field and property members have not-null values.</summary>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute.#ctor(System.String)">
            <summary>Initializes the attribute with a field or property member.</summary>
            <param name="member">
            The field or property member that is promised to be not-null.
            </param>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute.#ctor(System.String[])">
            <summary>Initializes the attribute with the list of field and property members.</summary>
            <param name="members">
            The list of field and property members that are promised to be not-null.
            </param>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute.Members">
            <summary>Gets field or property member names.</summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute">
            <summary>Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition.</summary>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.#ctor(System.Boolean,System.String)">
            <summary>Initializes the attribute with the specified return value condition and a field or property member.</summary>
            <param name="returnValue">
            The return value condition. If the method returns this value, the associated parameter will not be null.
            </param>
            <param name="member">
            The field or property member that is promised to be not-null.
            </param>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.#ctor(System.Boolean,System.String[])">
            <summary>Initializes the attribute with the specified return value condition and list of field and property members.</summary>
            <param name="returnValue">
            The return value condition. If the method returns this value, the associated parameter will not be null.
            </param>
            <param name="members">
            The list of field and property members that are promised to be not-null.
            </param>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.ReturnValue">
            <summary>Gets the return value condition.</summary>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.Members">
            <summary>Gets field or property member names.</summary>
        </member>
        <member name="T:System.Runtime.Versioning.OSPlatformAttribute">
            <summary>
            Base type for all platform-specific API attributes.
            </summary>
        </member>
        <member name="T:System.Runtime.Versioning.TargetPlatformAttribute">
            <summary>
            Records the platform that the project targeted.
            </summary>
        </member>
        <member name="T:System.Runtime.Versioning.SupportedOSPlatformAttribute">
             <summary>
             Records the operating system (and minimum version) that supports an API. Multiple attributes can be
             applied to indicate support on multiple operating systems.
             </summary>
             <remarks>
             Callers can apply a <see cref="T:System.Runtime.Versioning.SupportedOSPlatformAttribute" />
             or use guards to prevent calls to APIs on unsupported operating systems.
            
             A given platform should only be specified once.
             </remarks>
        </member>
        <member name="T:System.Runtime.Versioning.UnsupportedOSPlatformAttribute">
            <summary>
            Marks APIs that were removed in a given operating system version.
            </summary>
            <remarks>
            Primarily used by OS bindings to indicate APIs that are only available in
            earlier versions.
            </remarks>
        </member>
        <member name="T:System.Runtime.Versioning.SupportedOSPlatformGuardAttribute">
             <summary>
             Annotates a custom guard field, property or method with a supported platform name and optional version.
             Multiple attributes can be applied to indicate guard for multiple supported platforms.
             </summary>
             <remarks>
             Callers can apply a <see cref="T:System.Runtime.Versioning.SupportedOSPlatformGuardAttribute" /> to a field, property or method
             and use that field, property or method in a conditional or assert statements in order to safely call platform specific APIs.
            
             The type of the field or property should be boolean, the method return type should be boolean in order to be used as platform guard.
             </remarks>
        </member>
        <member name="T:System.Runtime.Versioning.UnsupportedOSPlatformGuardAttribute">
             <summary>
             Annotates the custom guard field, property or method with an unsupported platform name and optional version.
             Multiple attributes can be applied to indicate guard for multiple unsupported platforms.
             </summary>
             <remarks>
             Callers can apply a <see cref="T:System.Runtime.Versioning.UnsupportedOSPlatformGuardAttribute" /> to a field, property or method
             and use that field, property or method in a conditional or assert statements as a guard to safely call APIs unsupported on those platforms.
            
             The type of the field or property should be boolean, the method return type should be boolean in order to be used as platform guard.
             </remarks>
        </member>
        <member name="P:Internal.Cryptography.DecryptorPal.RecipientInfos">
             <summary>
             Return the managed representation of the recipients.
            
             .NET Framework compat: Unlike the desktop, we compute this once and then latch it. Since both RecipientInfo and RecipientInfoCollection are immutable objects, this should be
             a safe optimization to make.
             </summary>
        </member>
        <member name="M:Internal.Cryptography.DecryptorPal.TryDecrypt(System.Security.Cryptography.Pkcs.RecipientInfo,System.Security.Cryptography.X509Certificates.X509Certificate2,System.Security.Cryptography.AsymmetricAlgorithm,System.Security.Cryptography.X509Certificates.X509Certificate2Collection,System.Security.Cryptography.X509Certificates.X509Certificate2Collection,System.Exception@)">
            <summary>
            Attempt to decrypt the CMS using the specified "cert". If successful, return the ContentInfo that contains the decrypted content. If unsuccessful, return null and set "exception"
            to a valid Exception object. Do not throw the exception as EnvelopedCms will want to continue decryption attempts against other recipients. Only if all the recipients fail to
            decrypt will then EnvelopedCms throw the exception from the last failed attempt.
            </summary>
        </member>
        <member name="M:Internal.Cryptography.PkcsHelpers.Resize(System.Byte[],System.Int32)">
            <summary>
            This is not just a convenience wrapper for Array.Resize(). In DEBUG builds, it forces the array to move in memory even if no resize is needed. This should be used by
            helper methods that do anything of the form "call a native api once to get the estimated size, call it again to get the data and return the data in a byte[] array."
            Sometimes, that data consist of a native data structure containing pointers to other parts of the block. Using such a helper to retrieve such a block results in an intermittent
            AV. By using this helper, you make that AV repro every time.
            </summary>
        </member>
        <member name="M:Internal.Cryptography.PkcsHelpers.TryFindMatchingCertificate(System.Security.Cryptography.X509Certificates.X509Certificate2Collection,System.Security.Cryptography.Pkcs.SubjectIdentifier)">
            <summary>
            .NET Framework compat: We do not complain about multiple matches. Just take the first one and ignore the rest.
            </summary>
        </member>
        <member name="M:Internal.Cryptography.PkcsHelpers.ToSkiBytes(System.String)">
             <summary>
             Asserts on bad or non-canonicalized input. Input must come from trusted sources.
            
             Subject Key Identifier is string-ized as an upper case hex string. This format is part of the public api behavior and cannot be changed.
             </summary>
        </member>
        <member name="M:Internal.Cryptography.PkcsHelpers.ToSerialBytes(System.String)">
             <summary>
             Asserts on bad or non-canonicalized input. Input must come from trusted sources.
            
             Serial number is string-ized as a reversed upper case hex string. This format is part of the public api behavior and cannot be changed.
             </summary>
        </member>
        <member name="M:Internal.Cryptography.PkcsHelpers.UpperHexStringToByteArray(System.String)">
            <summary>
            Asserts on bad input. Input must come from trusted sources.
            </summary>
        </member>
        <member name="M:Internal.Cryptography.PkcsHelpers.UpperHexCharToNybble(System.Char)">
            <summary>
            Asserts on bad input. Input must come from trusted sources.
            </summary>
        </member>
        <member name="M:Internal.Cryptography.PkcsHelpers.CreateBestPkcs9AttributeObjectAvailable(System.Security.Cryptography.Oid,System.Byte[])">
            <summary>
            Useful helper for "upgrading" well-known CMS attributes to type-specific objects such as Pkcs9DocumentName, Pkcs9DocumentDescription, etc.
            </summary>
        </member>
        <member name="M:Internal.Cryptography.PkcsPal.Encrypt(System.Security.Cryptography.Pkcs.CmsRecipientCollection,System.Security.Cryptography.Pkcs.ContentInfo,System.Security.Cryptography.Pkcs.AlgorithmIdentifier,System.Security.Cryptography.X509Certificates.X509Certificate2Collection,System.Security.Cryptography.CryptographicAttributeObjectCollection)">
            <summary>
            Encrypt and encode a CMS. Return value is the RFC-compliant representation of the CMS that can be transmitted "on the wire."
            </summary>
        </member>
        <member name="M:Internal.Cryptography.PkcsPal.Decode(System.ReadOnlySpan{System.Byte},System.Int32@,System.Security.Cryptography.Pkcs.ContentInfo@,System.Security.Cryptography.Pkcs.AlgorithmIdentifier@,System.Security.Cryptography.X509Certificates.X509Certificate2Collection@,System.Security.Cryptography.CryptographicAttributeObjectCollection@)">
            <summary>
            Decode an encoded CMS.
               Call RecipientInfos on the returned pal object to get the recipients.
               Call TryDecrypt() on the returned pal object to attempt a decrypt for a single recipient.
            </summary>
        </member>
        <member name="M:Internal.Cryptography.PkcsPal.GetEncodedMessageType(System.ReadOnlySpan{System.Byte})">
            <summary>
            Implements the ContentInfo.GetContentType() behavior.
            </summary>
        </member>
        <member name="M:Internal.Cryptography.PkcsPal.AddCertsFromStoreForDecryption(System.Security.Cryptography.X509Certificates.X509Certificate2Collection)">
            <summary>
            EnvelopedCms.Decrypt() looks for qualifying certs from the "MY" store (as well as any "extraStore" passed to Decrypt()).
            This method encapsulates exactly what a particular OS considers to be "the MY store."
            </summary>
        </member>
        <member name="M:Internal.Cryptography.PkcsPal.CreateRecipientsNotFoundException">
            <summary>
            If EnvelopedCms.Decrypt() fails to find any matching certs for any recipients, it throws CryptographicException(CRYPT_E_RECIPIENT_NOT_FOUND) on Windows.
            This method encapsulates what other OS's decide to throw in this situation.
            </summary>
        </member>
        <member name="M:Internal.Cryptography.PkcsPal.CreateRecipientInfosAfterEncryptException">
            <summary>
            If you call RecipientInfos after an Encrypt(), the framework throws CryptographicException(CRYPT_E_INVALID_MSG_TYPE) on Windows.
            This method encapsulates what other OS's decide to throw in this situation.
            </summary>
        </member>
        <member name="M:Internal.Cryptography.PkcsPal.CreateDecryptAfterEncryptException">
            <summary>
            If you call Decrypt() after an Encrypt(), the framework throws CryptographicException(CRYPT_E_INVALID_MSG_TYPE) on Windows.
            This method encapsulates what other OS's decide to throw in this situation.
            </summary>
        </member>
        <member name="M:Internal.Cryptography.PkcsPal.CreateDecryptTwiceException">
            <summary>
            If you call Decrypt() after a Encrypt(), the framework throws CryptographicException(CRYPT_E_INVALID_MSG_TYPE) on Windows.
            This method encapsulates what other OS's decide to throw in this situation.
            </summary>
        </member>
        <member name="M:Internal.Cryptography.PkcsPal.GetSubjectKeyIdentifier(System.Security.Cryptography.X509Certificates.X509Certificate2)">
            <summary>
            Retrieve the certificate's subject key identifier value.
            </summary>
        </member>
        <member name="M:Internal.Cryptography.PkcsPal.GetPrivateKeyForSigning``1(System.Security.Cryptography.X509Certificates.X509Certificate2,System.Boolean)">
            <summary>
            Retrieve a private key object for the certificate to use with signing.
            </summary>
        </member>
        <member name="M:Internal.Cryptography.PkcsPal.GetPrivateKeyForDecryption``1(System.Security.Cryptography.X509Certificates.X509Certificate2,System.Boolean)">
            <summary>
            Retrieve a private key object for the certificate to use with decryption.
            </summary>
        </member>
        <member name="P:Internal.Cryptography.PkcsPal.Instance">
            <summary>
            Get the one instance of PkcsPal.
            </summary>
        </member>
    </members>
</doc>