Provides enumered values for e-mail digital signature algorithm. SHA256 is recommended.
[Visual Basic] Public Enum SignatureHashAlgorithmType
[C#] public enum SignatureHashAlgorithmType
[C++] __value public enum SignatureHashAlgorithmType
[JScript] public enum SignatureHashAlgorithmType
Members
Members name | Description |
SHA1 | Uses RSA\SHA1 hash algorithm. |
SHA256 | Uses RSA\SHA256 hash algorithm. |
SHA384 | Uses RSA\SHA384 hash algorithm. |
SHA512 | Uses RSA\SHA512 hash algorithm. |
MD5 | Uses RSA\MD5 hash algorithm. |
Example
[Visual Basic, C#] The following example demonstrates how to load certificate to sign email content with EASendMail SMTP Component. To get the full samples of EASendMail, please refer to Samples section.
[VB - Sign Email with Certificate] Try Dim oMail As SmtpMail = New SmtpMail("TryIt") oMail.From = New MailAddress("test@emailarchitect.net") ' Find certificate by email adddress in My Personal Store. ' The certificate can be imported by *.pfx file like this: ' oMail.From.Certificate.Load("c:\test.pfx", "pfxpassword", Certificate.CertificateKeyLocation.CRYPT_USER_KEYSET) ' Once the certificate is loaded to From, the email content will be signed automatically oMail.From.Certificate.FindSubject(oMail.From.Address, Certificate.CertificateStoreLocation.CERT_SYSTEM_STORE_CURRENT_USER, "My") ' Use sha256 hash algorithm oMail.SignatureHashAlgorithm = SignatureHashAlgorithmType.SHA256 Catch exp As Exception Console.WriteLine("No sign certificate found for sender email: {0}", exp.Message) End Try
[C# - Sign Email with Certificate] try { SmtpMail oMail = new SmtpMail("TryIt"); oMail.From = "test@adminsystem.com"; // Find certificate by email adddress in My Personal Store. // The certificate can be also imported by *.pfx file like this: // oMail.From.Certificate.Load("c:\\test.pfx", "pfxpassword", Certificate.CertificateKeyLocation.CRYPT_USER_KEYSET); // Once the certificate is loaded to From, the email content will be signed automatically oMail.From.Certificate.FindSubject(oMail.From.Address, Certificate.CertificateStoreLocation.CERT_SYSTEM_STORE_CURRENT_USER, "My"); // Use sha256 hash algorithm oMail.SignatureHashAlgorithm = SignatureHashAlgorithmType.SHA256; } catch (Exception exp) { Console.WriteLine("No sign certificate found {0}", exp.Message); }
You can use SignatureHashAlgorithm property to set signature algorithm to MD5, SHA1, SHA256, SHA384 or SHA512.
RSASSA-PSS Signature
If you need to use RSASSA-PSS signature scheme, you need a special version of EASendMail, please have a look at
this topic:
RSASSA-PSS + RSA-OAEP Encryption with SHA256
See Also