DKIM(DomainKeys Identified Mail)이란?
DKIM은 DomainKeys Identified Mail의 약자로, 발송하는 모든 메시지에 암호화 서명을 첨부하는 이메일 인증 방식이에요. 이 서명을 통해 수신 서버는 이메일이 실제로 발신 도메인의 승인을 받았는지, 그리고 전송 중에 내용이 변경되지 않았는지 확인할 수 있어요.
정의
DomainKeys Identified Mail(DKIM)은 SPF, DMARC와 함께 현대 이메일 인증을 떠받치는 세 가지 축 중 하나예요. SPF가 메시지가 승인된 서버에서 왔는지를 확인한다면, DKIM은 조금 다른 두 가지를 확인해요. 발신 도메인을 관리하는 쪽이 그 메시지를 승인했는지, 그리고 발송 이후 누구도 메시지를 변조하지 않았는지예요.
DKIM은 이를 공개 키 암호화로 구현해요. 발신 도메인은 메일 인프라에 개인 키를 비밀로 보관하고, 이에 대응하는 공개 키는 누구나 읽을 수 있도록 DNS(Domain Name System)에 게시해요. 도메인이 메시지를 보낼 때 메일 서버는 개인 키로 이메일의 특정 부분에 대한 디지털 서명을 만들고, 이 서명을 숨겨진 헤더로 메시지에 추가해요. 메시지가 도착하면 수신 서버는 DNS에서 공개 키를 가져와 서명을 확인해요. 공개 키로 검증되는 서명은 개인 키를 가진 쪽만 만들 수 있으므로, DKIM 검사를 통과했다면 메시지가 진짜이고 변조되지 않았다는 확실한 근거가 돼요.
작동 방식
DKIM은 한 쌍의 암호화 키를 사용해요. 도메인용 개인 키를 생성해 발신 메일 시스템에 안전하게 보관하고, 이에 대응하는 공개 키는 DNS TXT 레코드로 게시해요. 이 레코드는 셀렉터라는 라벨로 만든 특별한 위치, 즉 selector._domainkey.yourdomain.com 형식의 위치에 있어요. 셀렉터 덕분에 한 도메인이 여러 키를 동시에 게시할 수 있어서, 발송 서비스마다 별도 키를 할당하거나 시간이 지나며 키를 안전하게 교체할 때 유용해요.
도메인이 메시지를 보낼 때 메일 서버는 이메일의 어느 부분을 보호할지 선택해요. 여기에는 항상 메시지 본문과 선택된 헤더 필드가 포함되며, 보통 From, To, Subject, Date 등이 들어가요. 서버는 본문의 해시와 선택한 헤더 전체의 해시를 계산한 뒤, 개인 키로 이 데이터에 서명해 서명값을 만들어요. 이 모든 내용은 DKIM-Signature라는 새 헤더에 기록되어 메시지에 추가돼요. 이 헤더에는 서명 도메인(d= 태그), 셀렉터(s= 태그), 서명된 헤더 목록(h= 태그), 본문 해시(bh= 태그), 그리고 서명 자체(b= 태그)가 담겨요.
수신 측에서는 서버가 DKIM-Signature 헤더를 읽고 도메인과 셀렉터를 확인한 뒤, DNS에서 일치하는 공개 키 레코드를 조회해요. 그런 다음 h=에 나열된 헤더를 그대로 사용해 본문 해시와 헤더 해시를 다시 계산하고, 공개 키로 b=의 서명이 다시 계산한 데이터와 일치하는지 확인해요. 올바른 개인 키가 사용되었고 서명된 내용이 전송 중에 바뀌지 않았다면 서명이 검증되어 DKIM을 통과해요. 서명된 헤더나 본문이 조금이라도 수정되면 해시가 맞지 않아 검사에 실패해요. 실무적으로 중요한 점은, 서명은 명시적으로 나열된 헤더만 보호하며 중간 메일 시스템이 서명된 부분을 바꾸지 않는 한에서만 유효하다는 거예요.
이메일 도달률에 중요한 이유
DKIM은 메일박스 제공업체에게 강력하고 지속적인 신뢰 신호예요. 꾸준히 유효한 DKIM 서명은 실제 도메인이 메일 뒤에 있고 그에 대한 책임을 질 의사가 있다는 것을 보여 주며, 이는 메일이 받은편지함에 도달하는 데 도움이 돼요. 그만큼 중요한 점은 DKIM에 SPF에는 없는 특성이 있다는 거예요. 서명이 연결 서버에 의존하지 않고 메시지 안에 담겨 이동하기 때문에, SPF는 메시지가 전달(포워딩)되면 자주 깨지는 반면 DKIM은 대개 유지돼요. 그래서 복잡한 전송 경로에서는 두 검사 중 DKIM이 더 견고해요.
DKIM은 DMARC의 구성 요소이기도 해요. DMARC는 SPF나 DKIM 중 하나가 통과하고 그 결과가 화면에 보이는 From 도메인과 정렬될 때 통과하므로, 올바르게 DKIM 서명된 메시지는 DMARC 정렬로 가는 확실한 경로가 돼요. Google과 Yahoo의 2024년 발신자 요구사항 이후, 대량 발신자는 SPF와 DKIM 모두로 인증해야 하며 유효한 DKIM 서명이 없는 메일은 필터링되거나 거부될 가능성이 훨씬 높아요. 올바르게 구성된 DKIM은 이제 권장 사항을 넘어, 대규모로 이메일을 보내는 모든 곳의 기본 요건이 되었어요.
VeriMails의 처리 방식
DKIM과 이메일 검증은 서로 다른 방향에서 도달률을 지키며, 건강한 이메일 운영에는 둘 다 필요해요. DKIM은 보내는 메시지를 인증해 수신 서버에 메일이 진짜이고 변조되지 않았음을 증명해요. 이메일 검증은 받는 대상을 정리해 리스트의 모든 주소가 실제로 존재하고 도달 가능한지 확인해요. 리스트가 깨끗하지 않으면 인증을 해도 반송이 생기고, 인증이 없으면 리스트가 깨끗해도 신뢰하기 어려워 보이기 때문에 두 가지는 짝을 이뤄 작동해요.
VeriMails는 이 둘 중 수신자 쪽에 집중해요. 제출한 모든 주소는 구문 검증, MX 및 DNS 조회, 실시간 SMTP 핸드셰이크, 캐치올 감지, 일회용 주소 감지, 역할 기반 주소 감지를 거쳐요. 이를 통해 반송을 일으켜 DKIM, SPF, DMARC 레코드가 지키려는 평판을 해칠 유효하지 않은 주소를 걸러내요. 인증 쪽도 돕기 위해 VeriMails는 키 쌍과 게시해야 할 DNS 레코드를 만들어 주는 무료 DKIM 생성기를 제공해요. REST API나 대량 CSV 업로드로 리스트를 검증할 수 있고, 캠페인 결정에 바로 쓸 수 있는 명확한 도달 가능성 분류를 받아요. 검증은 이메일당 $0.0019부터 시작하며, 10,000 크레딧에 $19, 연간 플랜은 연간 결제 시 월 $12.50부터예요. 모든 계정은 신용카드 없이 만료되지 않는 무료 크레딧 100개로 시작해요.
자주 묻는 질문
관련 용어
VeriMails 무료로 써 보기
가입하면 무료 크레딧 100개를 드려요. 신용카드는 필요 없어요. 오늘 바로 이메일 검증을 시작해 보세요.
무료로 시작하기