Possibly one for @aarongable ...
I know dns-persist-01 isn't even in staging yet ... I'm thinking about how I might use it with IP address certs as I'm lucky enough to have an ISP that not only gives me static IPs but also delegates the appropriate bits in-addr.arpa and ip6.arpa.
I'm trying to get my head around dns-persist-01's policy=wildcard handling and how far up (or down) the tree it works.
My reading of it is that if you've set up a record at _validation-persist.example.com that includes "policy=wildcard", that is meant to authorise requests for example.com, *.example.org, www.example.org and so on. According to section 5.1 of the draft though, it would also authorise a name such as server.dept.example.org, which wouldn't be covered by a certificate for *.example.org.
However the draft only seems to refer to checking for a _v-p record at the authorisation domain name, and not at any higher level, so I don't immediately see how a wildcard authorisation would ever be checked.
If I'm asking for a certificate for server.dept.example.org, is the CA going to start by looking for _validation-persist.server.dept.example.org, then if it doesn't find that, will it remove leading components of the requested domain name in the same way as when looking for CAA records?
If so, at what point does it stop? Does it go all the way up to (but not including) the PSL domain (so checking _v-p.server.dept.example.org, _v-p.dept.example.org and _v-p.example.org), or does it only check the requested domain and with the first leading component removed (ie _v-p.server.dept.example.org, _v-p.dept.example.org)?
If the intent is to take the first approach, it seems to me that there's some potential nastiness in that an ISP who had 192.0.0.0/16 could then set up a record at _v-p.0.192.in-addr.arpa with policy=wildcard that would then allow them to request certificates for any IP address in that range, unless there was an authorisation record "closer" to the customer's own IP. That being said, I don't think that's exposing any new risks.
Obviously you could put your own record in at the top of your delegation, and that would indicate you wanted to authorise your account and not the ISP's. I suppose then if you wanted to prohibit dns-persist-01 being used you could create a record with a junk issuer-domain-name, eg "no.dnsp01.here; accounturi=null". (If the ISP spoofs NXDOMAIN for TXT records in zones they've delegated to you then you have bigger issues, see above.)
The second approach (limiting the search to the requested domain name and with the first leading component removed) feels more in keeping with the semantics of a wildcard certificate, but one immediately obvious downside is that it would make wildcard dns-persist-01 impractical for IPv6 reverse zones. It would also not be consistent with the search process for CAA records.
When I started writing this I was fairly sure I preferred the idea of limiting how far up the tree you looked, but the more I think about it the more I'm leaning towards allowing a search all the way up to (but not including) the PSL domain.
I hope I've made that clear. Please let me know if any of it doesn't make sense and I'll try to clarify!
Thanks!