เชิงเทคนิค · คำตอบพร้อมแหล่งอ้างอิง

DKIM (DomainKeys Identified Mail) คืออะไร

DKIM เป็นวิธียืนยันตัวตนอีเมลที่ให้ผู้ส่งลงลายเซ็นเข้ารหัสบนเฮดเดอร์ของอีเมล ลายเซ็นนี้พิสูจน์ว่าอีเมลได้รับอนุญาตจากเจ้าของโดเมนและเนื้อหาข้อความไม่ถูกแก้ไขระหว่างการส่ง เซิร์ฟเวอร์ปลายทางตรวจสอบลายเซ็นด้วยคีย์สาธารณะที่เผยแพร่ในเรคคอร์ด DNS ของผู้ส่ง

กระบวนการทำงาน

DKIM ทำงานบนโครงสร้างพื้นฐานคีย์สาธารณะ เซิร์ฟเวอร์ผู้ส่งใช้คีย์ส่วนตัวสร้างลายเซ็นดิจิทัลของเฮดเดอร์บางรายการและเนื้อหาข้อความ แล้วแนบลายเซ็นมากับอีเมลเป็นเฮดเดอร์ DKIM-Signature เซิร์ฟเวอร์เมลปลายทางดึงโดเมนและ selector จากเฮดเดอร์นี้ ค้นหาคีย์สาธารณะที่ตรงกันจากเรคคอร์ด DNS แล้วถอดรหัสลายเซ็นเพื่อตรวจสอบค่าแฮชของเนื้อหาข้อความ

ความสำคัญต่อผู้ส่ง

DKIM เพิ่มความน่าเชื่อถือที่ SPF ทำได้ไม่ครบด้วยตัวเอง เพราะยังคงใช้ได้เมื่ออีเมลถูกส่งต่อ SPF ตรวจสอบ IP ผู้ส่ง ขณะที่ DKIM ตรวจสอบตัวข้อความ จึงช่วยป้องกันการปลอมแปลงและลดโอกาสที่ผู้ให้บริการรายใหญ่จะจัดข้อความเป็นสแปม DKIM เป็นข้อกำหนดเบื้องต้นของการใช้ DMARC และ BIMI ซึ่งอาศัย DKIM alignment ในการยืนยันตัวตนผู้ส่ง

หมายเหตุการใช้งานจริงและข้อผิดพลาด

ความล้มเหลวที่พบบ่อยเกิดขึ้นเมื่อหมุนเวียนคีย์ส่วนตัวโดยไม่อัปเดตคีย์สาธารณะใน DNS หรือเมื่อ mail relay แก้ไขเนื้อหาหรือเฮดเดอร์หลังลงลายเซ็น ทำให้ค่าแฮชเข้ารหัสไม่ตรงกัน ผู้ส่งควรใช้ selector เพื่อจัดการคีย์หลายชุดสำหรับบริการต่าง ๆ คุณใช้เครื่องมือฟรีของ SendHQ (https://sendhq.cc/tools) เพื่อตรวจสอบการตั้งค่า DNS ปัจจุบันได้

ตัวอย่างที่เป็นรูปธรรม

ผู้ส่งตั้งค่า selector ชื่อ google เรคคอร์ด DNS ที่ selector._domainkey.example.com มีคีย์สาธารณะอยู่ เมื่อส่งอีเมล เฮดเดอร์ DKIM-Signature จะระบุ s=google และ d=example.com ผู้รับจะค้นหาเรคคอร์ด TXT ที่เส้นทาง DNS นั้นเพื่อหาคีย์ที่ใช้ตรวจสอบลายเซ็น

DKIM และ DMARC Alignment

เพื่อให้ DMARC ผ่าน โดเมนในลายเซ็น DKIM ต้อง align กับโดเมนในเฮดเดอร์ From เรียกว่า DKIM alignment หากลายเซ็นถูกต้องแต่โดเมนไม่ตรงกับที่อยู่ From การตรวจสอบ DKIM จะผ่านแต่การตรวจสอบ DMARC จะไม่ผ่าน ซึ่งอาจทำให้เกิดปัญหาการส่งถึงตามนโยบายที่กำหนด

คำถามที่ทีมมักถาม

DKIM เข้ารหัสเนื้อหาอีเมลหรือไม่

ไม่ DKIM ไม่ได้เข้ารหัสเนื้อหาเพื่อความเป็นส่วนตัว แต่สร้างแฮชเข้ารหัสเพื่อรับรองความสมบูรณ์และความถูกต้อง ผู้รับจึงยืนยันตัวผู้ส่งได้ แต่ข้อความยังคงอ่านได้

จะเกิดอะไรขึ้นหากลายเซ็น DKIM ไม่ถูกต้อง

ลายเซ็นที่ไม่ถูกต้องอาจทำให้อีเมลถูกทำเครื่องหมายเป็นสแปมหรือถูกปฏิเสธทั้งหมด เพราะบ่งชี้ว่าข้อความอาจถูกแก้ไขหรือผู้ส่งไม่ได้รับอนุญาต

มีคีย์ DKIM หลายชุดได้หรือไม่

ได้ เมื่อใช้ selector ที่ต่างกัน คุณมีคีย์ DKIM หลายชุดสำหรับบริการส่งต่าง ๆ หรือหมุนเวียนคีย์ได้โดยไม่ขัดจังหวะการส่งอีเมล

แหล่งข้อมูลหลัก