Skip to content

Instantly share code, notes, and snippets.

@AbhishekGhosh
Forked from roycewilliams/CAA-adoption-notes.md
Last active June 14, 2017 07:25
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save AbhishekGhosh/65209f0f60045db95c42534d795d8b2c to your computer and use it in GitHub Desktop.
Save AbhishekGhosh/65209f0f60045db95c42534d795d8b2c to your computer and use it in GitHub Desktop.
CAA-adoption-notes.md

CAA Adoption Notes

CA/B mandate

The CA/Browser Forum has voted to mandate that CAs must start checking CAA records to control certificate issuance (to verify what CAs are allowed to issue certificates for a domain) by September 8th, 2017.

https://blog.qualys.com/ssllabs/2017/03/13/caa-mandated-by-cabrowser-forum

Full language of the ballot is here.

For domain holders, not using CAA records implicitly allows any registrar to issue certificates for your domain (as long as their registration requirements are met).

Support by CAs

See https://sslmate.com/labs/caa/ for latest status of which CAs support CAA records. That page also has an introduction to CAA records, and a CAA record generator.

Support by DNS servers and hosting providers

CAA supported

CAA support requested (vote!)

CAA not yet supported, but planned

CAA not yet supported, status unknown

CAA support status unknown (can you help?)

  • Afilias
  • BuddyNS
  • CDNetworks (BIND?)
  • Digital Ocean
  • DNS Made Easy
  • GeoScaling
  • No-IP
  • NS1
  • PointHQ
  • UltraDNS
  • Verisign
  • ZoneEdit

Domain support

RFC 3597 syntax

  • RFC 3597 syntax (to add raw support for a new RR type even if not natively supported):

example.com. TYPE257 \# 8 000569737375653B

  • One-liner to convert from RFC 3597 to human-readable format (credit: Gervase Markham here, works with all raw RFC3457 TYPExxx records)

dig +short -t TYPE257 google.com | perl -nE '@x = split(); say map(chr, map { hex } ($x[2] =~ m/../g ))'

  • One-liner to convert from plain text to RFC 3597 format (credit: Henri in this thread):

perl -e '$_=shift;s/(.|\n)/printf("%02lx", ord $1)/eg;' 'your-text'

  • Linux one-liner:

echo -n 'your text' | xxd -p

Other references

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment