ความปลอดภัยและการเข้ารหัสอีเมล

เข้ารหัส/ถอดรหัสข้อความ

Aspose.Email มีความสามารถในการเข้ารหัสและถอดรหัสข้อความอีเมลโดยใช้ X509Certificates บทความนี้แสดงวิธีโหลดและเข้ารหัสข้อความที่มีอยู่หรือใหม่โดยใช้ MailMessage. ส่วน Encrypt() และ Decrypt() เมธอดคืนค่า MailMessage อ็อบเจกต์สำหรับผลที่นำไปใช้และต้องระมัดระวังขณะเข้ารหัส/ถอดรหัสข้อความ การเข้ารหัสและถอดรหัสข้อความประกอบด้วยขั้นตอนต่อไปนี้:

  1. สร้างข้อความใหม่หรือโหลดข้อความที่มีอยู่
  2. โหลดใบรับรองการเข้ารหัสโดยใช้วัตถุ X509Certificate
  3. เข้ารหัสข้อความโดยใช้ใบรับรอง
  4. ส่งข้อความหรือบันทึกมัน
  5. ถอดรหัสข้อความตามต้องการ

โค้ดตัวอย่างต่อไปนี้แสดงวิธีเข้ารหัสและถอดรหัสข้อความ.

ตรวจสอบการเข้ารหัสข้อความ

Aspose.Email MailMessage คลาสที่ให้คุณตรวจสอบว่าข้อความถูกเข้ารหัสหรือไม่. The IsEncryptedคุณสมบัติของ MailMessage ทำให้คุณตรวจสอบสิ่งนี้ตามที่แสดงในตัวอย่างโค้ดต่อไปนี้.

การตรวจสอบลายเซ็นอีเมลที่ปลอดภัย

นี้ SecureEmailManager คลาสที่ทำให้คุณตรวจสอบลายเซ็นของวัตถุ MailMessage ที่ปลอดภัย.

นี้ SmimeResult คลาสเก็บผลลัพธ์ของการตรวจสอบ.

เมธอดต่อไปนี้ของ SecureEmailManager คลาสและตัวอย่างโค้ดจะทำให้คุณสามารถประมวลผลลายเซ็นได้:

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);