Well, because of what you're trusting.
- "I want to connect to IP X"
- What IP X is is defined by your ISP. You can probably have a trust model here (ISP X cannot reassign IPs from ISP Y) but people don't usually dial IPs like phone numbers, and if they are, then just get them to dial a public key (only 4x longer!) and you're
- done
- future proof if the IP changes
- Whereas DNS is about names.
- Part of that is name to IP, but many names can map to one IP and vice versa, and IPs change
- Really it's about names for agents, who have a key
- So DNS solves the problem of mapping human readable name => ephemeral agent ID
- How do I trust that it's the right agent though?
- I need cryptography! But it's exactly the same situation I want from DNS, except that here I only trust the root server.