การตรวจสอบว่าอีเมลที่ส่งมานั้นปลอดภัยหรือไม่มีหลายวิธีการ ซึ่งหนึ่งในกระบวนการที่ได้การยอมรับอย่างแพร่หลายก็คือ DomainKeys Identified Mail ในบทความนี้มาเรียนรู้กันว่า DKIM คืออะไร และทำงานอย่างไรกันแน่

DomainKeys Identified Mail(DKIM) คืออะไร?
DKIM คือหนึ่งในการอิมพลีเม้นต์ในหัวข้อ Email Authentication รูปแบบหนึ่ง ที่ช่วยในการตรวจสอบว่าอีเมลที่ส่งมามีการถูกแก้ไข เปลี่ยนแปลงหรือไม่ โดยอาศัยกลไกของ Digital Signature เพื่อทำการตรวจสอบค่า Hash ที่ถูกสร้างระหว่าง Public Key และ Private Key ว่าตรงกันหรือไม่ หากไม่ตรงกันก็แสดงว่าอีเมลนั้นอาจถูกแก้ไขเปลี่ยนแปลงมาแล้ว
กลไกการทำงานของ DKIM
การใช้งาน DKIM ท่านสามารถเลือก field ของข้อมูลได้ว่า จะนำส่วนใดเข้าร่วมในการตรวจสอบผ่านค่า hash ตั้งแต่ส่วนของ from, เนื้อหาภายใน(body), พาดหัว(subject) และอื่นๆ
ระบบอีเมลต้นทางจะสร้างค่า Hash ออกมาแนบไปกับการส่ง ซึ่งระบบอีเมลปลายทางจะต้องมีความสามารถในการตรวจสอบค่า Hash ด้วยการไปค้นหา Public key มาถอดรหัสเนื้อหากลับไปเป็นค่า Hash เพื่อเทียบกัน โดยหาได้จาก DKIM record หรือก็คือ DNS TXT record ตัวหนึ่งนั่นเอง
แต่เพื่อให้ทราบว่าผู้รับจะต้องไปหา TXT มาจากที่ไหนกันแน่ จะต้องอาศัยสิ่งหนึ่งที่เรียกว่า DKIM Selector ซึ่งจะเป็นบอกว่าจะไปหา Public Key ที่ไหน โดยค่านี้จะต้องถูกระบุในการตั้งค่า DKIM ที่ผู้รับจะมองเห็นค่านี้ผ่านตัวแปร s เช่น
DKIM-Signature: v=1; a=rsa; c=relaxed/relaxed; d=mydomain.com; s=s837fhs;
DKIM เพียงพอต่อการป้องกันอีเมลหรือไม่
DKIM เป็นเพียงกระบวนการที่ใช้ตรวจสอบให้ทราบได้ว่ามีการแก้ไขเนื้อหาข้อมูลอีเมลหรือไม่ แต่ไม่ได้ครอบคลุมป้องกันไปถึงการปลอมแปลงโดเมนอีเมลในส่วนของ ‘from’ เช่น ที่อยู่อีเมล ชื่อที่ปรากฏ และโดเมน ในขณะที่ Sender Policy Framework(SPF) จะช่วยหยุดยั้งอีเมลไม่หวังดีที่มาในนามโดเมนของผู้ส่ง
แต่ปัญหาคือระบบอีเมลอาจยังขาดมาตรฐานที่จะบังคับว่าอีเมลเซิร์ฟเวอร์หรือผู้ให้บริการอีเมลจะต้องปฏิบัติตัวอย่างไรเพื่อตอบสนองกับ DKIM และ SPF โดยสิ่งที่จะมีบทบาทสำคัญในท้ายที่สุดก็คือ DMARC ที่จะเป็นผู้ควบคุมให้เกิดการทำงานที่เข้าใจตรงกันระหว่างฝ่ายรับและส่งตลอดเส้นทาง