امنیت و رمزگذاری ایمیل
رمزگذاری/رمزگشایی پیامها
Aspose.Email امکان رمزگذاری و رمزگشایی پیامهای ایمیل با استفاده از X509Certificates را فراهم میکند. این مقاله نشان میدهد چگونه یک پیام موجود یا جدید میتواند بارگذاری و با استفاده از MailMessage. این Encrypt() و Decrypt() متدها یک MailMessage شیء برای اثرات اعمال شده و لازم است هنگام رمزگذاری/رمزگشایی پیامها به آن توجه شود. رمزگذاری و رمزگشایی پیامها شامل مراحل زیر است:
- ایجاد پیام جدید یا بارگذاری پیام موجود
- یک گواهی رمزگذاری را با استفاده از شیء X509Certificate بارگذاری کنید
- پیام را با استفاده از گواهی رمزگذاری کنید
- ارسال پیام یا ذخیرهسازی آن
- رمزگشایی پیام برحسب نیاز
کد نمونه زیر نشان میدهد چگونه پیامها را رمزنگاری و رمزگشایی کنید.
تأیید رمزگذاری پیام
Aspose.Email MailMessage کلاس به شما امکان میدهد بررسی کنید که آیا پیام رمزگذاری شده است یا خیر. The IsEncryptedویژگیٔ MailMessage به شما اجازه میدهد این را همانطور که در نمونه کد زیر نشان داده شده است، بررسی کنید.
بررسی امضای ایمیلهای ایمن
این SecureEmailManager کلاس به شما اجازه میدهد امضای اشیاء MailMessage ایمن را بررسی کنید.
این SmimeResult کلاس نتایج بررسی را ذخیره میکند.
متدهای زیر از SecureEmailManager کلاس و یک کد نمونه به شما امکان پردازش یک امضا را میدهند:
- SecureEmailManager.CheckSignature(MailMessage msg) متد.
- SecureEmailManager.CheckSignature(MailMessage msg, X509Certificate2 certificateForDecrypt) متد.
- SecureEmailManager.CheckSignature(MailMessage msg, X509Certificate2 certificateForDecrypt, X509Store store) متد.
var eml = MailMessage.Load(fileName);
var result = new SecureEmailManager().CheckSignature(eml);
var certFileName = "cert.pfx";
var cert = new X509Certificate2(certFileName, "pass");
var eml = MailMessage.Load(fileName);
var store = new X509Store();
store.Open(OpenFlags.ReadWrite);
store.Add(cert);
store.Close();
var result = new SecureEmailManager().CheckSignature(eml, cert, store);
امضای ایمیلها با DKIM
توجه: این ویژگی فقط برای نسخههای کتابخانهای که هدف .NET Framework هستند در دسترس است. نسخههای هدفدار .NET Core این ویژگی را ندارند.
Aspose.Email امکان امضای ایمیل با DKIM (DomainKeys Identified Mail) را فراهم میکند. این به سازمان اجازه میدهد مسئولیت یک پیام در مسیر انتقال را بر عهده گیرد (اطلاعات بیشتر). DKIM یک امضای دیجیتال به سرصفحههای پیام ایمیل اضافه میکند که میتواند توسط دریافتکنندگان تأیید شود. کلید عمومی فرستنده به دریافتکننده امکان میدهد تأیید کند که امضا با محتوای پیام مطابقت دارد. The DKIMSign متد از MailMessage کلاس برای تنظیم اطلاعات رمزنگاری و امضا برای امضای پیام استفاده میشود. کد نمونه زیر نشان میدهد چگونه ایمیلها را با DKIM امضا کنید.
var eml = new MailMessage("sender@gmail.com", "receiver@gmail.com", "Some subject", "Some body text");
string privateKeyFile = "key2.pem";
RSACryptoServiceProvider rsa = PemReader.GetPrivateKey(privateKeyFile);
DKIMSignatureInfo signInfo = new DKIMSignatureInfo("test", "somedomain.com");
var signedEml = eml.DKIMSign(rsa, signInfo);