static void CheckCertificateCanBeUsedForSigning (X509Certificate certificate)
{
var flags = certificate.GetKeyUsageFlags ();
if (flags != X509KeyUsageFlags.None && (flags & SecureMimeContext.DigitalSignatureKeyUsageFlags) == 0)
throw new ArgumentException ("The certificate cannot be used for signing.");
}