DNSCrypt - DNSCrypt

DNSCrypt je síťový protokol, který ověřuje a šifruje provoz systému DNS ( Domain Name System ) mezi počítačem uživatele a rekurzivními servery jmen . Původně jej navrhli Frank Denis a Yecheng Fu.

Ačkoli existuje více klientských a serverových implementací, protokol nebyl nikdy navržen pro IETF ( Internet Engineering Task Force ) prostřednictvím RFC ( Request for Comments ).

DNSCrypt obaluje neupravený provoz DNS mezi klientem a překladačem DNS v kryptografické konstrukci, aby detekoval padělání. Ačkoli neposkytuje zabezpečení typu end-to-end, chrání místní síť před útoky typu man-in-the-middle .

Rovněž zmírňuje amplifikační útoky na bázi UDP tím, že vyžaduje, aby otázka byla alespoň tak velká jako odpovídající odpověď. DNSCrypt tedy pomáhá předcházet útokům na zesílení DNS .

Rozvinutí

Image
dnscrypt-proxy, klient DNSCrypt běžící na Linuxu

Kromě soukromého nasazení protokol DNSCrypt přijalo několik veřejných překladačů DNS, drtivou většinu tvoří členové sítě OpenNIC a také služby virtuální privátní sítě (VPN).

OpenDNS (nyní součást Cisco ) oznámila 6. prosince 2011 první veřejnou službu DNS podporující DNSCrypt, krátce poté CloudNS Australia.

Dne 29. března 2016 společnost Yandex oznámila podporu protokolu DNSCrypt na svých veřejných serverech DNS a také v prohlížeči Yandex .

Dne 14. října 2016 přidala služba AdGuard do svého filtračního modulu DNS službu DNSCrypt, aby se uživatelé mohli přesunout od svých poskytovatelů internetových služeb na vlastní servery DNS nebo vlastní servery DNS společnosti AdGuard za účelem ochrany soukromí online a blokování reklam .

10. září 2018 oznámila nezisková veřejná rekurzivní služba resolveru Quad9 podporu pro DNSCrypt.

Další servery, které podporují zabezpečený protokol, jsou uvedeny v seznamu tvůrců DNSCrypt.

Protokol

DNSCrypt lze použít buď přes UDP, nebo přes TCP . V obou případech je jeho výchozí port 443 . Přestože se protokol zásadně liší od HTTPS , oba typy služeb využívají stejný port . Přestože jsou DNS přes HTTPS a DNSCrypt možné na stejném portu, musí stále běžet samostatně na různých serverech. Dvě serverové aplikace nelze spustit současně na stejném serveru, pokud obě využívají ke komunikaci stejný port; i když multiplexní přístup je teoreticky možný.

Místo toho , aby se klient spoléhal na důvěryhodné certifikační autority běžně vyskytující se ve webových prohlížečích, musí výslovně důvěřovat veřejnému podpisovému klíči zvoleného poskytovatele. Tento veřejný klíč se používá k ověření sady certifikátů načtených pomocí konvenčních dotazů DNS. Tyto certifikáty obsahují krátkodobé veřejné klíče používané pro výměnu klíčů a také identifikátor šifrovací sady, která se má použít. Klientům se doporučuje generovat nový klíč pro každý dotaz, zatímco serverům se doporučuje střídat krátkodobé páry klíčů každých 24 hodin.

Protokol DNSCrypt lze také použít pro řízení přístupu nebo účetnictví, a to přijetím pouze předdefinované sady veřejných klíčů. Toho mohou komerční služby DNS využít k identifikaci zákazníků, aniž by museli spoléhat na IP adresy.

Dotazy a odpovědi jsou šifrovány pomocí stejného algoritmu a vyplněny na násobek 64 bajtů, aby se zabránilo úniku velikostí paketů. Přes UDP, když by odpověď byla větší než otázka, která k němu vedla, může server odpovědět krátkým paketem, jehož bit TC (zkrácený) byl nastaven. Klient by pak měl opakovat pomocí TCP a zvýšit odsazení následných dotazů.

Verze 1 a 2 protokolu používají algoritmus X25519 pro výměnu klíčů, EdDSA pro podpisy a X Salsa20 - Poly1305 nebo X ChaCha20 -Poly1305 pro ověřené šifrování.

Od roku 2020 neexistují žádné známé chyby v protokolu DNSCrypt ani praktické útoky proti jeho kryptografickým konstrukcím.

Anonymizovaný DNSCrypt

Anonymizovaný DNSCrypt je rozšíření protokolu navržené v roce 2019 za účelem dalšího zlepšení soukromí DNS.

Místo přímé reakce na klienty může resolver fungovat jako transparentní proxy pro jiný resolver, skrývající IP skutečného klienta před druhým. Anonymizovaný DNSCrypt je lehká alternativa k proxy serverům Tor a SOCKS, speciálně navržená pro provoz DNS.

Nasazení anonymizovaného DNSCryptu bylo zahájeno v říjnu 2019 a přijetí protokolu bylo rychlé, přičemž 40 DNS relé bylo nastaveno jen dva týdny po veřejné dostupnosti klientských a serverových implementací.

Viz také

Reference

externí odkazy