Click or drag to resize
MimeKit

MimeMessageSignAndEncryptAsync(CryptographyContext, DigestAlgorithm, CancellationToken) Method

Asynchronously sign and encrypt the message to the sender and all of the recipients using the specified cryptography context and the specified digest algorithm.

Namespace: MimeKit
Assembly: MimeKit (in MimeKit.dll) Version: 4.7.1
Syntax
C#
public Task SignAndEncryptAsync(
	CryptographyContext ctx,
	DigestAlgorithm digestAlgo,
	CancellationToken cancellationToken = default
)

Parameters

ctx  CryptographyContext
The cryptography context.
digestAlgo  DigestAlgorithm
The digest algorithm.
cancellationToken  CancellationToken  (Optional)
The cancellation token.

Return Value

Task
An asynchronous task context.
Exceptions
ExceptionCondition
ArgumentNullExceptionctx is null.
ArgumentException An unknown type of cryptography context was used.
ArgumentOutOfRangeException The digestAlgo was out of range.
InvalidOperationException

The Body has not been set.

-or-

No sender has been specified.

-or-

No recipients have been specified.

NotSupportedException The digestAlgo is not supported.
OperationCanceledException The operation was canceled via the cancellation token.
CertificateNotFoundException A certificate could not be found for the signer or one or more of the recipients.
PrivateKeyNotFoundException The private key could not be found for the sender.
PublicKeyNotFoundException The public key could not be found for one or more of the recipients.
Remarks

If either of the Resent-Sender or Resent-From headers are set, then the message will be signed using the Resent-Sender (or first mailbox in the Resent-From) address as the signer address, otherwise the Sender or From address will be used instead.

Likewise, if either of the Resent-Sender or Resent-From headers are set, then the message will be encrypted to all of the addresses specified in the Resent headers (Resent-Sender, Resent-From, Resent-To, Resent-Cc, and Resent-Bcc), otherwise the message will be encrypted to all of the addresses specified in the standard address headers (Sender, From, To, Cc, and Bcc).

See Also