áááźáŹááąá¸ááŽá WireGuard áĄáŹááŻáśá ááŻááşáážáŻááťáŹá¸á á˝áŹááᯠáá˝á˛ááąáŹááşáááşá áĄáážááşáážáŹá áááşá¸áááş áááşá¸áááŻáˇááźáŹá¸áá˝ááş áĄáá áşá ááşá ááş âááźááşáá˝ááˇáşâ áá áşááŻááźá áşáááşá VPN áááŻááŤááąáááˇáş áááşáááąáŹááş ááąáŹááşá¸áá˛áˇááŹá¸á ááťá˝ááşááąáŹáş ááąáˇááŹáá˝áąáˇáážáááťááşáááťááŻáˇááᯠáá˝áąá¸áá˝áąá¸ááźáŽá¸ áĄááąáŹááşáĄáááşááąáŹáşáážáŻááᯠááźááşáááşááŻáśá¸áááşááťááşááŤáááşá WireGuardIPsec ááᯠáĄá áŹá¸áááŻá¸áááˇáş ááźáąáážááşá¸ááťááş áááŻááşáá˛áˇ áĄááźáąáŹááşá¸áááşá¸ááᯠáážááşá¸ááźáááŻáˇ OpenVPN.
ááŽááąáŹááşá¸ááŤá¸áážáŹ ááťá˝ááşááąáŹáş ááášááŹááŽáááťááŻáˇááᯠááźáąáážááşá¸ááąá¸ááťááşááŤáááş [ WireGuard]á ááŻááşáá˛áˇá áááşááᏠáážááşááŤáááşá ááŤááźáąáŹááˇáş áááşáááşáááş ááŤáážáááŻááş ááąáŹáşáᎠáá áşáá˝ááşááž áááťáąáŹáşáááąá¸áá°á¸áááŻáááş áĄááŻáĄááťáááşááŤáá˛á ááťá˝ááşááąáŹáˇáşáá˛áˇ áážáŻááşáá˝áąá¸ááąáá˛áˇ áĄáá˝áąá¸áá˝áąááᯠááźááşáááşááąá¸áá˛áˇáĄáá˝ááş Peter áááŻáááşá¸ ááťáąá¸áá°á¸áááşááŤáááşá
ááąáŹáˇááşáá˛ááąá¸ááŹá¸áá°áá˝áąááᯠáĄáááąááťááşáááŻáˇá ááťá˝ááşááąáŹáˇáşáááşáá˝ááşááťááş áááŻááşááŤáá°á¸á WireGuardáá°áááŻáˇáá˛áˇ ááźááŻá¸áááşá¸áĄáŹá¸ááŻááşáážáŻáá˝áą ááŤáážáááŻááş áĄááźáśááŹááşáá˝áąááᯠáááşáááŻá¸áááźááşááŤáá°á¸á áá°áááŻáˇáá˛áˇ ááŻááşááŻááşá áĄááŻááşááźá áşááąááąáááˇáş ááťá˝ááşááąáŹáşáááŻááşáááŻááşáááąáŹáˇ ááááˇáşáĄááźáąáĄááąáá˛áˇ ááŻáśá¸ááá˝á˛ááźáŹá¸áá˛áˇ áĄááŹáá áşááŻáĄááźá áş áááşááźááŹá¸áááşáááŻáˇ ááŻáśááźááşááŤáááş - IPsec áá˛áˇ áĄá áŹá¸áááŻá¸áážáŻáĄááźá áş áááşááźááŹá¸ááźáŽá¸ OpenVPNááááşááąáŹáˇ áĄáᯠááážáááąáŹáˇááŤáá°á¸á
áážááşááťááşáĄááąáá˛áˇ ááŽáááŻááąááŹááťááŹá¸áážáŻáĄáá˝ááş ááŹáááşáá°áážáŻáááŻááŹááᯠáááşááźáąáŹááťááşááŤáááş WireGuard áááşá¸áááŻáˇááᯠáááąáŹááťááşáááŻááşáááŻááş áááŻáˇáááŻááş áááşá¸áááŻáááşááŽá¸áá°ááťáŹá¸ áááŻááşáᲠááááşá¸áááŻáˇááąáŹ ááŽááŽááŹááťáŹá¸á áááşááąáŹááşááźáááşá
áááźáŹááąá¸ááŽá áĄááááĄááźáąáŹááşá¸áĄááŹáážááˇáş áááşáááşá Linux ááááşá¸ááąáŹááşá¸ ááááşááážáááŤáá°á¸á ááąáŹáˇááşáá˛ááşá ááťáąáŹáˇááŤá¸áá˝áŹá¸áĄáąáŹááş ááŻááşááŹá¸áá˛áˇ ááźáŽá¸ááŹá¸áá˛áˇ ááááŻáááşáᏠáĄáŹá¸áááşá¸ááťááşáá˝áąáĄááźáąáŹááşá¸ ááťá˝ááşááąáŹáşáááŻáˇááᯠááźáąáŹááźáá˛áˇááźáŽá¸ Linus Torvalds áá˛áˇ ááąáŹáşááźááťááşá developer áá áşááąáŹááşáá˛áˇ áĄááŻáśá¸áááşáá˛áˇ ááŹááŹá ááŹá¸áá˛áˇ ááźáąáŹááááş áááŻááşá¸á ááŻááşá¸ááźáŽá¸ ááťááşá¸á ááŹááąáŹááşá¸áá˝ááşá¸ááŤáááşá áĄááťáááşáááŹá¸áá˝á˛áá° ááŤáážáááŻááş level-0 network stack áá˝áąááááşá¸ glossy ááášááááşá¸áá˝áąáĄáá˝ááş áážááşá¸áážááşá¸áááşá¸áááşá¸ ááąáŤááşá¸á ááşáá˝áą áááŻááşááŤáá°á¸á ááźáŽá¸ááąáŹáˇ... WireGuard.
á áŹáá˝ááşááąáŤáşáá˝ááşá áĄáŹá¸ááŻáśá¸ááąáŹááşá¸áááş- á áááşáážáŻááşáážáŹá¸áá˝ááşáááşá¸áááŹáĄáá áşá
ááŤááąáááˇáş áĄá˛ááŤááᯠáááşá¸áááşá¸áááŻá
áąáˇá
ááşááźááˇáşááĄáąáŹááşá
Đ˘ĐľŃ Đ˝Đ¸ŃĐľŃĐşĐ°Ń Đ´ĐžĐşŃПонŃаŃĐ¸Ń WireGuard
á¤ááąáŹááşá¸ááŤá¸áááŻáĄááźáąááśáááşá áááŹá¸áááşá áŹáá˝ááşá áŹáááşá¸ WireGuardJason Donenfeld ááąá¸ááŹá¸áá˛áˇááźáŽá¸á áááşá¸áá˝ááş áááąáŹáááŹá¸á áááşáá˝ááşááťááşáážááˇáş áááşá¸áááŹáááŻááşáᏠáĄááąáŹááşáĄáááşááąáŹáşáážáŻááᯠáážááşá¸ááźááŹá¸áááş [WireGuard] áĄááááĄáŹá¸ááźááˇáş Linux.
áááá áŹááźáąáŹááşá¸áá˝ááş áááşááááş-
WireGuard [âŚ] áĄááŻáśá¸ááźáŻáážáŻááá ášá áĄááťáŹá¸á áŻáá˝ááş IPsec áážá áşááŻááŻáśá¸ááᯠáĄá áŹá¸áááŻá¸áááş áááşáá˝ááşáááˇáşáĄááźááş áĄááźáŹá¸áá°ááźááŻááşááťáŹá¸ááąáŹ user-space áážááˇáş/áááŻáˇáááŻááş TLS-based ááźáąáážááşá¸ááťááşááťáŹá¸áá˛áˇáááŻáˇááąáŹ OpenVPNáááŻáááŻááąá¸áááşá¸á áááŻáááŻááááąáŹááşááźáŽá¸ áĄááŻáśá¸ááźáŻááá˝ááşáá° [ááááááŹ] ááźá áşááźááşá¸á
ááŻááşááŤáááşá áááşá¸áááŹáĄáá áşáĄáŹá¸ááŻáśá¸áá˛áˇ áĄááááĄáŹá¸ááŹááťááşáááąáŹáˇ áá°áááŻáˇáá˛áˇ áĄáŹá¸ááŹááťááşááŤáá˛á áááŻá¸áážááşá¸ [áážáąá¸ááááşááťáŹá¸áážááˇáş áážááŻááşá¸áážááş]á ááŤááąáááˇáş VPN áááşá¸ááźá áşáááˇáşáááşá ááááąáŹááşááźáŽá¸ ááąá¸áááşá¸ááŤáááşá.
ááŤááᯠááąáŹááşáá áşááŻá ááŹáá˛á
á¤áááşáážáŹ áááşáááŻáĄááşááąáŹáĄááŹáááŻááşááźáąáŹááşá¸ [VPN ááž] ááŻáááŻááŤáá áááşáááş á¤ááąááŹáá˝ááş áááşáážáŻááźááşá¸ááᯠáĄááŻáśá¸áááşáááŻááşááŤáááşá áááŻáˇááąáŹáşá áááŻáááŻáˇááąáŹáĄááŻááşááťáŹá¸ááᯠáĄááźáŹá¸ááąáŹ áĽáááşáááŻááşááąáŤááşá¸áááşá¸áááŹáĄáá˝ááş áááşáážááşááŹá¸ááźáąáŹááşá¸ ááťá˝ááşáŻááşáááááźáŻááááŤáááşá
áĄáááşááąáŹáşááźá፠áááŻá¸ááŹá¸ááťááşá á áááşáááşá áŹá¸á ááŹáĄááąáŹááşá¸ááŻáśá¸áážáŹ á áŹáááşáááşá¸áááŹá¸ááťáŹá¸ááž ááťá áşááťá°áážáŻááŹá¸áááˇáş âááá ášá áĄááťáŹá¸á áŻáá˝ááşâ áá°ááąáŹ á ááŹá¸ááŻáśá¸ááťáŹá¸ááźááˇáş áááşáážáááąáááşá áááŻáˇááźáąáŹááˇáş á¤ááąáŹááşá¸ááŤá¸áá˝ááş á¤ááąáŤáˇááážáŻááźááˇáş áááşááŽá¸ááŹá¸ááąáŹ áááźáááşááááşáážáŻááťáŹá¸ááźáąáŹááˇáş ááťá˝ááşáŻááşáááŻáˇ áĄááŻáśá¸áááşáá˝áŹá¸ááááˇáş ááąááŹááźá áşáááşá

ááźá áşááŹáážáŹááŹá¸á WireGuard ááťá˝ááşáŻááşá [IPsec] site-to-site VPN ááᯠáĄá áŹá¸áááŻá¸ááąááŤáááŹá¸á
áááŻááşááŤá Ciscoá Juniper áážááˇáş áĄááźáŹá¸ááŻáášáááŽááťáŹá¸áá˛áˇáááŻáˇááąáŹ ááąáŹááşá¸ááťáá°ááźáŽá¸ááťáŹá¸áááş áááşá¸áááŻáˇá ááŻááşááŻááşááťáŹá¸áĄáá˝ááş áááşá¸ááᯠáááşáá°áááş áĄáá˝ááˇáşáĄáááşá¸ ááŻáśá¸áááážáááŤá WireGuardáĄááąá¸áááźáŽá¸áááŻáĄááşááťááşááážááááş áá°áááŻáˇáᏠ"ááźááşáá˝áŹá¸áá˛áˇáááŹá¸áá˝áąááąáŤáş ááŻááşááááş" ááźááŤáá°á¸á ááąáŹááşáááŻááşá¸áážáŹ áá°áááŻáˇáá˛áˇááŻááşááŻááşáá˝áąááᯠáááŹá¸ááąáŤáşáážáŹ áááşáááşáááŻááşááźááşá¸ááážááááŻááşáá˛áˇ áĄááźáąáŹááşá¸áááşá¸áĄááťááŻáˇááᯠáá˝áąá¸áá˝áąá¸ááŤáááşá WireGuardáá°áááŻáˇ ááŻááşááťááşáááşááąáŹááşáážá
áážááşáááşáááŻááşááŤáˇáááŹá¸á WireGuard ááťá˝ááşááąáŹáˇáşáá˛áˇ RoadWarrior ááᯠáááşááąáŹáˇááşáááą ááąááŹá ááşááŹáááŻ?
áááŻááşáá°á¸á áĄááŻáĄááťáááşáážáŹ WireGuard á¤áá˛áˇáááŻáˇááąáŹáĄááŹáááŻáá˝ááˇáşáááş áĄááąá¸ááźáŽá¸ááąáŹáĄááşášááŤáááşááťáŹá¸á á˝áŹ áááŻáĄááşááąááŤáááşá áĽáááŹáĄáŹá¸ááźááˇáşá áááşá¸áááş tunnel server áááşáá˝ááş dynamic IP address ááťáŹá¸ááᯠáĄááŻáśá¸áááźáŻáááŻááşáᲠá¤áá áşááŻáááşá¸ááźááˇáş á¤ááŻááşááŻááşáĄáá˝ááş áĄááŻáśá¸ááźáŻáážáŻááá ášá áá áşááŻááŻáśá¸ááᯠááťááşááźáŹá¸á áąááŤáááşá
IPFire ááᯠDSL áááŻáˇáááŻááş ááąáááşááşááťáááşáááşáážáŻááťáŹá¸áá˛áˇáááŻáˇááąáŹ á áťáąá¸ááąáŤááąáŹáĄááşááŹáááşáááˇáşááşááťáŹá¸áĄáá˝ááş áĄááŻáśá¸ááźáŻááąáˇáážááááşá áááşá¸áááş áĄááźááşáááŻááşáᏠááááŻáĄááşááąáŹ áĄááąá¸á áŹá¸ áááŻáˇáááŻááş áĄáááşá áŹá¸ ááŻááşáááşá¸ááťáŹá¸áĄáá˝ááş áĄáááášááŹááşáážááááşá [ááŹááŹááźááşáá°ááśááž áážááşááťááş- áááşáá˝ááşááąá¸ááášááá˝ááş ááŻáážáŹá¸áážááˇáş áĄááťááŻáˇááąáŹ CIS áááŻááşááśááťáŹá¸áááş ááťá˝ááşáŻááşáááŻáˇááá˝ááşáááşááťáŹá¸ááᯠááąáŹááşáááŻááşá¸áá˝ááş á áááşáááşááąáŹááşáá˛áˇááźáŽá¸ Ethernet áážááˇáş fiber optic áá˝ááşáááşááťáŹá¸ áá˝ááşá¸ááŹá¸ááŹááąáŹááźáąáŹááˇáş ááťá˝ááşáŻááşáááŻáˇáááş áĽááąáŹááážááˇáş áĄááąáááááşáááŻáˇáááş áĄáážááşá¸ááąá¸ááąááźáąáŹááşá¸ áááąáˇááŤáážááˇáşá á áśáážáŻááşá¸áĄáááŻááşá¸ ááźááşáááşááąáŹááşááᏠáááŻáá˝ááşáááşá EU áááŻáˇáááŻááş USA á áá°ááŽááąáŹáááŻááşááśááťáŹá¸áá˝ááş xDSL áááąáŹáˇááşáááşá¸áĄááŻáśá¸ááźáŻáážáŻááᯠ3-5 Mbps áĄááźááşáážáŻááşá¸ááźááˇáş áĄááŻáśá¸ááźáŻáááŻááşáááşáážáŹ ááąáá°ááťá áśáážáŻááşá¸ááźá áşááąáá˛ááźá áşááźáŽá¸ fiber optic ááťáááşáááşáážáŻáááş ááťá˝ááşáŻááşáááŻáˇáá áśáážáŻááşá¸áĄá áááşáá˝áąáˇáááťááąáŹ áá˝áąááźáąá¸áĄááťááŻáˇááᯠááŻááşááťááŤáááşá áááŻáˇááźáąáŹááˇáşá ááąáŹááşá¸ááŤá¸ááąá¸ááŹá¸áá°áááş DSL áááŻáˇáááŻááş ááąáááşááźááŻá¸ááťáááşáááşáážáŻáĄáŹá¸ á áśáĄááźá áşááźáąáŹáááŻáááşá áážáąá¸ááąááşááááŻááşááąá] áááŻáˇááąáŹáşá DSLá ááąáááşá LTE (áážááˇáş áĄááźáŹá¸ááźááŻá¸áá˛áˇáĄááŻáśá¸ááźáŻáážáŻáááşá¸áááşá¸ááťáŹá¸) áá˝ááş áááşááźá˝ááąáŹ IP ááááşá áŹááťáŹá¸áážááááşá ááŻááşááŤáááşá áá áşááŤáááśáážáŹ áááźáŹáá áááźáąáŹááşá¸áá˛ááąáááˇáş ááźáąáŹááşá¸áá˛áááşááŤáááşá
áááąáŹááťááşáá˝á˛áá°á áážáááŤáááşá "wg-áááŻááşá¸ááá áş"á¤ááťááŻáˇáá˝ááşá¸ááťááşááᯠááťáąáŹáşáá˝ážáŹá¸áááş userspace daemon ááᯠááąáŤááşá¸áááˇáşáááşá áĄáááşáá˝ááşááąáŹáşááźááŹá¸ááąáŹáĄááŻáśá¸ááźáŻáá°áĄááźáąáĄááąáĄáá˝ááşááźáŽá¸ááŹá¸ááąáŹááźáżááŹáážáŹ dynamic IPv6 ááááşá áŹáááŻáááŻáááŻáááŻá¸áá˝áŹá¸á áąáááşá
ááźááˇáşááźá°á¸áá°ááĄááźááşáĄáá á¤áĄááŹáĄáŹá¸ááŻáśá¸áááş áĄáá˝ááşááąáŹááşá¸áá˝ááşááŻáśáááąáŤáşááąá ááŽáááŻááşá¸áááşáážááşá¸ááťááşááťáŹá¸áá˛áážáá áşááŻáážáŹ ááááŻáááŻááąáŹááᯠáááŻá¸áážááşá¸áááˇáşáážááşá¸ááąá áąáááşááźá áşáááşá
ááśáááąáŹááşá¸á á˝áŹááźááˇáşá á¤áĄááŹáĄáŹá¸ááŻáśá¸áááş áĄáážááşááááşáááş áááŻá¸áážááşá¸áá˝ááşá¸ááźáŽá¸ ááááááźá áşááŹááźáŽááźá áşááąáŹááźáąáŹááˇáş á¤ááŽáááŻááşá¸áá áşááŻááŻáśá¸ááᯠáááşáá˝áąáˇáĄááŻáśá¸ááźáŻáááŻááşá áąáááşáĄáá˝ááş áĄáááŻááąáŹáˇááşáá˛ááᯠáĄááŻáśá¸ááźáŻááááşááźá áşááŤáááşá
WireGuard áĄááŻáśá¸ááźáŻááᏠáĄá˛ááŽááąáŹááşáá˝ááşááŹá¸á
áááŻááşááąá¸ááŤáá°á¸á ááťá˝ááşááąáŹáş áĄá˛ááŤááᯠáááźáąáŹááŤáá°á¸á WireGuard áááşá¸áááş áĄáážááşáážá áşááŻááźáŹá¸áážá tunneling áĄáá˝ááş ááąáŹááşá¸áá˝ááşááąáŹ áĄá áŹá¸áááŻá¸áá áşáᯠáááşááąáŹáˇááž áááźá áşáááŻááşááąáŹáşáááşá¸á ááąáŹááąáŹáááşáá˝ááş áááşá¸áááş ááźá áşááŹáááş áááşáá˝ááşááŹá¸áááˇáş ááŻááşááŻááşá alpha ááŹá¸áážááşá¸áá áşááŻáᏠááźá áşáááşá
ááŤááąáááˇáş áá°ááááş ááŹááŻááşááąáá˛á IPsec áááş áĄáážááşááááş ááááşá¸ááááşá¸áááş áĄáá˝ááşáááşáá˛ááŤáááŹá¸á
ááááŹáááşáážáŹá¸áááşáááŻááşá IPsec ááąáŹááşá¸ááťáá°áááş áááşá¸áááŻá ááşá¸á áŹá¸ááŹá¸ááźáŽá¸ IPFire áá˛áˇáááŻáˇ áĄááşááŹááąáˇá áşáá áşááŻáážááˇáşáĄáá° áááşá¸áááŻáˇáááŻááşááŻááşááᯠáááşáááŻáˇáááşá
IPsec áá˝ááş VPN áážááŻááşááąáŤááşá¸áá áşááŻááᯠá áá áşáááˇáşáá˝ááşá¸áááşá áááşáááˇáşáá˝ááşá¸ááááˇáş ááąááŹááŤá¸á áŻáś áááŻáĄááşáááş- áááşááĄááťáŹá¸ááźááşáá°áááŻááş IP ááááşá áŹá áááşááśááážááááˇáşááŤááŽá áĄááťáŹá¸áá°áážáŹ IP ááááşá áŹá áááşáĄááťáŹá¸ááźááşáá°áááĄáąáŹááş ááźáŻááŻááşáááŻáááˇáş áá˝ááşáááşáá˝á˛ááťáŹá¸ ᤠVPN ááťáááşáááşáážáŻáážááˇáş ááźááŻáááşááťážááąááŹá¸ááąáŹááŽá¸á áááŻáˇááźáąáŹááˇáşá VPN ááᯠáááá áşáááŻááşá¸áĄáá˝ááşá¸ á áá áşáááˇáşáá˝ááşá¸ááźáŽá¸ áááşáááˇáşááąáŹááşá¸ááťáá°áážááˇáşáááᯠáá˝á˛áááşáĄááŻáśá¸ááźáŻáááŻááşááŤáááşá
ááśáááąáŹááşá¸á á˝áŹááźááˇáşá á¤ááŹááşáááşá¸áĄáá˝ááş ááźá˝ááşá¸ááťááşáĄáááşá¸áááşáážáááŤáááşá OpenBSD á ááşáááŻáˇ IPsec áážááááˇáş áážááŻááşááąáŤááşá¸áá°á¸áááş ááźááŻá¸á áŹá¸áá°áááŻááşá¸ ááťá˝ááşáŻááşááźáąáŹááąáááˇáşáĄááŹááᯠááááŤáááşá áááŻááźáŽá¸ ááŹááťááşá ááŹááąáŹááşá¸áá˛áˇ áĽáááŹáážá áşááŻáážáááŤáááşá ááŤááąáááˇáş ááááşááąáŹáˇ IPsec áááŻáĄááŻáśá¸ááźáŻáááŻáˇáĄáá˝ááş ááąáŹááşáááşááąáŹááşá¸áá˝ááşáá˛áˇ áĄááąáˇáĄááťááˇáşáá˝áą áĄááťáŹá¸ááźáŽá¸áážáááŤááąá¸áááşá
ááááŻáááŻááąáŹ áážáŻááşáá˝áąá¸áážáŻáĄááźáąáŹááşá¸
áĄááŻáśá¸ááźáŻáá°áááş ááááŻáááŻááąáŹá áážáŻááşáá˝áąá¸áážáŻáĄáá˝ááş á ááŻá¸ááááşá ááŹááááŻááŤá
áĄáááşá ááťá˝ááşáŻááşáááŻáˇáááş ááŻáśá¸á á˝á˛áá°á áĄáážááşááááş á ááŻá¸ááááşá ááŹááźá áşááąáááˇáş ááášááŹáá˝ááş ááąáááŻááşáá˛áˇááŤáá ááťá˝ááşáŻááşáááŻáˇáááş áá˝ááşáá˛áˇááąáŹ áááşáážá áşááťáąáŹáşá áááşááŽá¸ááŹá¸ááąáŹ SIPá H.323á FTP áážááˇáş NAT áážááˇáş ááąáŹááşá¸á á˝áŹáááŻááşááąáŹááşáááŻááşááąáŹ áĄááźáŹá¸ááááŻáááŻááąáŹááťáŹá¸ááᯠáááşáážáŹá¸áááŻááşááźáŽááźá áşáááşá
IPsec áááş ááŹááźáąáŹááˇáş áááŻáážáŻááşáá˝áąá¸áááŹáá˛áááŻáá˛áˇ áĄááźáąáŹááşá¸áááşá¸áá˝áą áážáááŤáááşá WireGuardáááşá¸áááş áĄááťáŹá¸ááźáŽá¸áááŻá ááŻááşááąáŹááşááŤáááşá áĽáááŹáĄáŹá¸ááźááˇáşá áááşá¸áááş áĄááŻáśá¸ááźáŻáá°ááťáŹá¸ááᯠlogin/password áááŻáˇáááŻááş EAP ááŤááąáŹ SIM áááşááᯠáĄááŻáśá¸ááźáŻá áĄááąáŹááşáĄááŹá¸ááźáááşá áĄáá áşááťáŹá¸áááşáááˇáşáááş áááŻá¸ááťá˛áˇááŹá¸ááąáŹá á˝ááşá¸áááşáážááááşá cryptographic primitives.
ááźáŽá¸ááąáŹáˇ áážáŹ WireGuard á፠ááážáááŤáá°á¸á
ááźáŽá¸ááąáŹáˇ ááŤá áááŻáááŻááŹáááąáŹáˇ WireGuard áá áşááťáááşááťáááşáážáŹ cryptographic primitives áá áşááŻáᯠáĄáŹá¸áááşá¸áá˝áŹá¸ááźááşá¸ áááŻáˇáááŻááş ááŻáśá¸ááááááŻááşáá˝áŹá¸ááźááşá¸ááźáąáŹááˇáş áááşá¸áááş ááťáážáŻáśá¸áá˝áŹá¸áááşááźá áşáááşá áááşá¸áááŹáááŻááşááŹá áŹáá˝ááşá áŹáááşá¸áááąá¸ááŹá¸áá°á á¤áááŻáˇááąáŹáşááźááŹá¸áááş-
áááŻáááŻáˇáááááźáŻáááťááŻá¸áááşáááş WireGuard ááŻááşáážááşá áá áşáá˝ááş ááŻáśááźááşáážáŻáá˝ááşáá˛ááźááşá¸á áááşá¸á ááŻááşáážááşá áá áşááťáŹá¸áážááˇáş ááááŻáááŻááąáŹááťáŹá¸áá˝ááş áááşáá˝ááşááťááşáážááážá ááźáąáŹááşá¸áá˝ááşááźááşáá˝ááşááážáááźááşá¸á áĄááźáąááś primitive ááťáŹá¸áá˝ááş ááźááşá¸áááşááąáŹ áĄáŹá¸áááşá¸ááťááşááťáŹá¸ááᯠáá˝áąáˇáážáááŤá endpoint áĄáŹá¸ááŻáśá¸ááᯠáĄááşááááşááŻááşáááş áááŻáĄááşáááşááźá áşáááşá SSL/TLS áĄáŹá¸áááşá¸ááťááşááťáŹá¸ áĄáááşáááźááş áá˝ážááşá¸áááŻá¸ááąáážáŻááž ááźááááˇáşáĄáááŻááşá¸ encryption ááźáąáŹááşá¸áá˝ááşááźááşáá˝ááşáážááážáŻáááş áááŻáĄá፠ááááááŹáᏠááźááˇáşáááşááŹááŤáááşá
ááąáŹááşááŻáśá¸á áŹááźáąáŹááşá¸áááąáŹáˇ ááŻáśá¸ááážááşááŤáááşá
áĄááŻáśá¸ááźáŻááááˇáş ááŻááşáážááşááźááşá¸áĄááąáŤáş áááąáŹáá°ááŽáážáŻááážáááźááşá¸áááş IKE áážááˇáş TLS áá˛áˇáááŻáˇááąáŹ ááááŻáááŻááąáŹááťáŹá¸ááᯠááźá áşá áąáááşá йОНоо áážáŻááşáá˝áąá¸áááşá áážáŻááşáá˝áąá¸áá˝ááşá¸áááŹá¸á ááŻááşááŤáááşá áĄáŹá¸áááşá¸ááťááşááťáŹá¸áááş TLS/SSL áá˝ááşáĄááąáŹáşááąá¸áá˝áąáˇáááźáŽá¸ áááşá¸áááŻáˇáĄáá˝ááş áĄááźáŹá¸áá˝áąá¸ááťááşá ááŹááážáááŤá
ááááˇáşááźáżááŹááťáŹá¸ááᯠááťá áşááťá°áážáŻááźááşá¸á
ááášááŹáá áşáážááşá¸áážáŹ production client ááá áážááá˛áˇ VPN server áá áşááŻáážááááşáááŻáˇ ááźááşááąáŹááşááźááˇáşááŤá ááŤá áĄááąáŹáşááąá¸ ááŻáśáážááşáĄááŻáśá¸ááźáŻáážáŻááá ášá ááŤá encryption ááᯠááźáąáŹááşá¸áá˛áááŻáˇ áááŻáĄááşáááş update ááᯠcopy áĄáŹá¸ááŻáśá¸áᎠpush ááŻááşáááŤáááşá WireGuard á¤áááşááąáŹáˇááşááťáŹá¸á á áááşááŻááşá¸ááťáŹá¸ á áááşáááŻáˇáá˝ááşá áá áşááźááŻááşáááşáááşá¸ áááŻáˇááąáŹááş á áŹááŹá¸áĄáááŻááşá¸ áááźá áşáááŻááşááŤáá°á¸á áááŻáááŻáˇááŻááşááąáŹááşáááş á áŽááśáááˇáşáá˝á˛áá°ááťáŹá¸áááş áááŻáĄááşááąáŹáá˝á˛áˇá ááşá¸ááŻáśááťáŹá¸ááᯠáĄááŻáśá¸ááźáŻáááş áááąáŤááşá¸ááťáŹá¸á á˝áŹ ááźáŹáááşááźá áşááźáŽá¸ áááŻáááŻáˇááąáŹááźá áşáááşááᯠáááşáážáŹá¸áááş áĄáááşáĄáááşáááşá¸á áŹá¸ ááŻáášáááŽáá áşááŻáĄáá˝ááş áážá áşááąáŤááşá¸ááťáŹá¸á á˝áŹ áĄááťáááşáá°ááááşááźá áşááŤáááşá
IPsec áážááˇáş OpenVPN cipher negotiation feature ááᯠááąá¸ááŤá ááŤááźáąáŹááˇáş ááááŹáĄáá˝ááşá¸áážáŹ encryption áĄáá áşááᯠenable ááŻááşááźáŽá¸ááąáŹááşá áĄááąáŹááşá¸ááááşá¸ áĄááŻááşááŻááşááŤááááˇáşáááşá ááŤá áááşáážá client áá˝áąááᯠversion áĄáá áşááᯠupgrade ááŻááşáááŻááşááŤáááşá update ááŻááşááźáŽá¸ááŹáá˛áˇ vulnerable encryption ááᯠdisable ááŻááşááŤá ááŤááŤáá˛á ááźáŽá¸ááŤááźáŽá áĄáśáˇááźá ááŹááŤáá˛á ááźáŽá¸ááąáŹáˇ áááˇáş client áá˝áąá áááááąáŹááşáááŹá¸ááááŤáá°á¸á
áááşá¸áááş áĄáážááşááááşáá˝ááş ááźáŽá¸ááŹá¸ááąáŹ ááźááˇáşááťááşáážáŻááťáŹá¸áĄáá˝ááş áĄáá˝ááşáĄááźá áşááťáŹá¸ááąáŹ ááá ášá áá áşááŻááźá áşááźáŽá¸ OpenVPN ááŽáĄáá˝ááş áĄáááşáĄáá˛áááťááŻáˇ ááźáŻáśáá˝áąáˇááąáááŤáááşá Backward compatibility á áĄááąá¸ááźáŽá¸ááŤáááşá áĄáŹá¸áááşá¸áá˛áˇ encryption áááŻááŻáśá¸ááąáááˇáşáááşá¸ áá°áĄááąáŹáşááťáŹá¸ááťáŹá¸áĄáá˝ááş ááŤá áá°áááŻáˇáá˛áˇááŻááşáááşá¸ááᯠááááşáá áşáááŻáˇ áĄááźáąáŹááşá¸ááźááťááşáááŻááşááŤáá°á¸á ááŹáááŻáˇáá˛áááŻááąáŹáˇ áá°áááŻáˇáá˛áˇáĄááŻááşáá˝áąááᯠáááŻááşáááŻááşááŹááźáąáŹááˇáş client ááŹááąáŤááşá¸ááťáŹá¸á á˝áŹááᯠáŁá áŞááźá áşá áąáááŻáˇááŤá
áĄáá˝á˛áˇ WireGuard áááşá¸á protocol ááᯠáááŻáááŻáááŻá¸áážááşá¸áĄáąáŹááş ááźáŻááŻááşááŹá¸ááąáŹáşáááşá¸ áááşá¸áááŻáˇá tunnel á peer áážá áşáŚá¸á ááŻáśá¸ááᯠáĄáááşáááźááş ááááşá¸ááťáŻááşáááŻááşá á˝ááşá¸ááážááá°ááťáŹá¸áĄáá˝ááş ááŻáśá¸áááááˇáşááąáŹáşááŤá ááťá˝ááşááąáŹáˇáşáĄáá˝áąáˇáĄááźáŻáśáĄá ááŤá áĄááźá áşáĄááťáŹá¸ááŻáśá¸ áĄááźáąáĄááąááŤá

ááąá¸áááşá¸á
ááŤááąáááˇáş áĄááŻáśá¸ááźáŻááąáá˛áˇ ááŽá áááşáááşá áŹá¸á ááŹááąáŹááşá¸áá˛áˇ ááŻááşáážááşá áá áşáĄáá áşá ááŹáá˛á WireGuard?
WireGuard áááşá¸áááş key exchange áĄáá˝ááş Curve25519á encryption áĄáá˝ááş ChaCha20 áážááˇáş data authentication áĄáá˝ááş Poly1305 áááŻáĄááŻáśá¸ááźáŻáááşá áááşá¸áááş key hashes áĄáá˝ááş SipHash áážááˇáş hashing áĄáá˝ááş BLAKE2 áááŻáááşá¸ááąáŹááşááśáˇááąá¸áááşá
ChaCha20-Poly1305 ááᯠIPsec áĄáá˝ááş á áśáááşáážááşááŹá¸ááźáŽá¸ OpenVPN (TLS áážáá áşáááˇáş)á
Daniel Bernstein ááᯠáááźáŹáááĄááŻáśá¸ááźáŻááźáááşáážáŹ áááşáážáŹá¸ááŤáááşá BLAKE2 áááş SHA-3 áážááˇáş áááşáá°ááźááşá¸ááźáąáŹááˇáş áĄáááŻááşáááźááşá¸ ááážáááąáŹ SHA-2 áááŻááşáááşáááŻáˇ BLAKE á áááşááśáá°ááźá áşáááşá SHA-2 áá˝á˛áá˝áŹá¸ááŤáá BLAKE áááŻáááşá¸ áĄááąá¸áĄáá°ááŻááşáááş áĄáá˝ááˇáşáĄáááşá¸ááąáŹááşá¸ áážáááŤáááşá
IPsec áážááˇáş OpenVPN SipHash ááᯠáááşá¸áááŽáááŻááşá¸ááźáąáŹááˇáş ááááŻáĄááşááŤá áááŻáˇááźáąáŹááˇáş áááşáážááá˝ááş áááşá¸áááŻáˇáážááˇáşáĄáá° áĄááŻáśá¸áááźáŻáááŻááşááąá¸áááˇáş áá áşááŻáááşá¸ááąáŹáĄááŹáážáŹ BLAKE2 ááźá áşááźáŽá¸ áááşá¸ááᯠá áśáááşáážááşáááşáĄáááᏠáĄááŻáśá¸ááźáŻáááŻááşááŤáááşá VPN ááťáŹá¸áááş HMAC ááᯠáááŹáááážáá áąáááş áĄááŻáśá¸ááźáŻááąáŹááźáąáŹááˇáş áááşá¸áááş áĄááááĄáŹá¸áááşá¸ááťááşáá áşáᯠáááŻááşááŤáá˛á áááşá¸áááş MD5 áážááˇáş áá˝á˛áááşáĄááŻáśá¸ááźáŻáááˇáşáĄááŤáá˝ááşáááş áááŻááşááŹááąáŹááźáąáážááşá¸ááťááşáá áşááŻáĄááźá áş áááşáážááşááśáááŤáááşá
ááŤááźáąáŹááˇáş VPN áĄáŹá¸ááŻáśá¸ááŽá¸ááŤá¸áᏠáá°ááŽáá˛áˇ cryptographic tool áá˝áąááᯠáĄááŻáśá¸ááźáŻááźáááşáááŻáˇ ááťá˝ááşááąáŹáş ááąáŹááşááťááşááťáá˛áˇááŤáááşá ááŤááźáąáŹááˇáş WireGuard ááąá¸áááŻáˇááąáŹááąááŹá ááŻááşáážááşááźááşá¸ áááŻáˇáááŻááş áááŹáááážááˇáşáááşáááşááŹááťážááş áááşáážááĄááźáŹá¸ááŻááşááŻááşááťáŹá¸áááş áááŻáááŻááŻáśááźáŻáśáážáŻ áááŻáˇáááŻááş ááťáąáŹáˇáááşá¸ááŻáśááźáŻáśáážáŻááážáááŤá
ááŤááąáááˇáşáááşá¸ ááŽáááąáŹááťááşáá˛áˇáááŹá¸áááşá áŹáá˝ááşá áŹáááşá¸áá˝áąáĄá áááááŹá¸ááááˇáşáĄááťááşá áĄááąá¸ááźáŽá¸ááŻáśá¸áááŻááşááŤáá°á¸á ááąáŹááşááŻáśá¸ááąáŹáˇ áĄááááĄááťááşá ááźááşáážáŻááşá¸ááŤá
WireGuard áĄááźáŹá¸ VPN ááźáąáážááşá¸ááťááşááťáŹá¸áááş áááŻááźááşááŤáááŹá¸á
áĄáááŻááťáŻáśá¸ááźáąáŹááááş áááŻááşáá°á¸á áááŻááźááşááŹáááŻááşáá°á¸á
ChaCha20 áááş ááąáŹáˇááşáá˛ááşáá˝ááş áĄááąáŹááşáĄáááşááąáŹáşáááş áááŻáááŻáá˝ááşáá°ááąáŹ stream cipher áá áşááŻááźá áşáááşá áááşá¸áááş áá áşááźáááşááťážááş áá áşáááşá¸áááşá¸ááźááˇáş á áŹáážááşááąá¸áááşá AES áá˛áˇáááŻáˇ ááááŻáááŻááąáŹááťáŹá¸ááᯠáá áşááźáááşááťážááş block 128 bits ááŻááşáážááşááŤá ááŹáˇááşáá˛ááśáˇáááŻá¸áážáŻááᯠáĄááąáŹááşáĄáááşááąáŹáşáááşáĄáá˝ááş ááááşá á ášá ááŹááťáŹá¸á á˝áŹ áááŻáĄááşáááşá áááŻáˇááźáąáŹááˇáş áááŻááźáŽá¸ááąáŹááááŻáááşááŹááťáŹá¸áááş AES-NIá áááşá¸ááᯠáĄáážáááşááźážááˇáşáááş ááŻááşáážááşááźááşá¸ááŻááşáááşá¸á ááşá ááŻááşáááşá¸ááąáŹááşááŹáĄááťááŻáˇááᯠááŻááşááąáŹááşááąá¸áááˇáş áá˝ážááşááźáŹá¸ááťááşáĄá áŻáśáĄáááşááŤáážááááşá
AES-NI áááş á áááşááŻááşá¸ááťáŹá¸áá˛áááŻáˇ áááşááąáŹáˇááž áááąáŹááşáááŻááşáᯠááťážáąáŹáşáááˇáşááŹá¸áááş [áááŻáˇááąáŹáş áááşá¸áááşâáááˇáşáážááşá¸ááźáąáĄáŹá¸ááźááˇáş ááźá áşáá˛áˇáááşá áážáŻááşá¸á] áááşá¸áĄáá˝ááş ChaCha20 ááᯠááąáŤáˇááŤá¸ááźáŽá¸ áááşáááŽááťá˝áąááŹáááˇáş áĄá áŹá¸áááŻá¸áá áşááťááŻá¸áĄááźá áş ááŽáá˝ááşáá˛áˇáááşá áááŻáˇááźáąáŹááˇáş áááąáˇ áááşáááşáá°áááŻááşááąáŹ á áááşááŻááşá¸áááŻááşá¸áá˝ááş AES áĄáážáááşáĄááŻááşáážááˇáş ChaCha20 áááş á¤ááŻááşáážááşá áá áşááźááˇáş ááŤááŤááŻáśá¸á á˝á˛áážáŻ áááşá¸ááŤá¸ááźáŽá¸ áááŻáááŻááźááşáááşá á˝áŹ áááşáááşáááŻááşáááşáá°ááąáŹ ááááşá¸ááťáŹá¸ áá˝ááşááąáŤáşááŹáááŻááşáááşá
áá˝ááşáá˛áˇááąáŹáážá áşáĄáááşá¸áááşáĄáá˝ááşá¸á áááşáá°áá˛áˇáááˇáş desktop/server ááááŻáááşááŹáááŻááşá¸áá˝ááş AES-NI áážáááźáąáŹááşá¸ ááááŹáááşáážáŹá¸ááŤáááşá
áááŻáˇááźáąáŹááˇáş AES áááş ChaCha20 áááş áĄááźáąáĄááąáááŻááşá¸áá˝ááş áááŻáááŻááąáŹááşá¸áá˝ááşá á˝áŹ ááŻááşááąáŹááşáááŻááşááááˇáşáááşáᯠááťážáąáŹáşáááˇáşááŤáááşá áááŹá¸áááşá áŹáá˝ááşá áŹáááşá¸ WireGuard AVX512 ááźáąáŹááˇáş ChaCha20-Poly1305 áááş AES-NI áááş á á˝ááşá¸ááąáŹááşáááşáááŻááąáŹááşá¸áááşáᯠááąáŹáşááźááŹá¸ááąáŹáşáááşá¸ ᤠinstruction set extension áááş ááááŻáááşááŹááźáŽá¸ááťáŹá¸áá˝ááşáᏠááážááááŻááşáááşááźá áşááźáŽá¸á áááşá¸áááş ááąá¸áááşááąáŹáážááˇáş áááŻáááŻááşá¸ááŹáˇááşáá˛ááťáŹá¸áĄáá˝ááş áĄááąáŹááşáĄáá°áááźáŻááŤá AES-NI ááźááˇáş áĄááźá˛áááşá¸áááŻááźááşáááşááźá áşáááşá
áá˝áśáˇááźááŻá¸áááŻá¸áááşáážáŻááŹááĄáá˝ááşá¸áážáŹ ááŤááᯠááźááŻáááşááźááşáááŻááşáááŹá¸áááŻáᏠááťá˝ááşááąáŹáşááąááťáŹááááá°á¸á WireGuardááŤááąáááˇáş ááŽááąáˇááąááşáážáŹ encryption áá áşááŻáááşá¸áá˛áˇ áááŻááşááŽááąáááşáááŻáá˛áˇáĄááťááşá áááşá¸áá˛áˇááŻááşááąáŹááşááťááşáĄááąáŤáş ááááşááąáŹááşá¸áá˛áˇáĄááťááŻá¸áááşááąáŹááşáážáŻááážááááŻááşáá˛áˇ áĄáŹá¸áááşá¸ááťááşáá áşááŻááźá áşááźáŽá¸ááŹá¸ááŤá
IPsec áááş áááˇáşááá ášá áĄáá˝ááş áĄááąáŹááşá¸ááŻáśá¸ááąáŹ ááŻááşáážááşá áá áşááᯠáá˝ááşáááşá á˝áŹ áá˝áąá¸ááťááşáááŻááşá áąááŤáááşá áĽáááŹáĄáŹá¸ááźááˇáşá áááşáááş VPN ááťáááşáááşáážáŻáážáá áşáááˇáş ááąáᏠ10 áá áşááŤáááŻááş áááŻáˇáááŻááş áááŻáˇáááşáááŻááąáŹ ááąááŹááťáŹá¸ááᯠáá˝ážá˛ááźáąáŹááşá¸áááŻááŤá áááşá¸áááş áááŻáĄááşááŤáááşá
ááąáŤááşá¸á ááşá¸áážáŻááźáżááŹááťáŹá¸ Linux
ááąáá˛áˇ WireGuard ááťá˝ááşááąáŹáş ááąááşáᎠencryption protocol ááᯠáá˝áąá¸ááťááşáá˛áˇááŤáááşá áĄá˛ááŤá ááźáżááŹáĄááťáŹá¸ááźáŽá¸ ááźá áşá áąááąááŤááźáŽá ááŤááźáąáŹááˇáş kernel á ááśáˇáááŻá¸ááąá¸áá˛áˇ áĄááŹáá˝áąáĄá áŹá¸ ááąáŤááşá¸á ááşáážáŻááᯠáĄááŻáśá¸ááźáŻááŤáááşá WireGuard á¤áá°áááşá¸áá ášá ááşá¸ááťáŹá¸ ááážáááźááşá¸ááźáąáŹááˇáş áážá áşááąáŤááşá¸ááťáŹá¸á á˝áŹ áá˝ážáąáˇáááŻááşá¸ááŹá¸áá˛áˇááááş Linux.
áááźáŹá¸ operating system áá˝áąáážáŹ áĄááźáąáĄááąá áááşáááŻáá˛áááŻáᏠááťá˝ááşááąáŹáş ááŻáśá¸áááąááťáŹáááááąáááˇáşá ááááşááąáŹáˇ ááá˝áŹááźáŹá¸ááŤáá°á¸á Linux.
áááşáá˝áąáˇááá áááşáááŻááťááŻá¸áá˛á
ááśáááąáŹááşá¸á á˝áŹáá˛á client á áá°áááŻáˇáĄáá˝ááş VPN ááťáááşáááşáážáŻáá áşáᯠáááşáážááşááąá¸áááŻáˇ ááąáŹááşá¸áááŻáááŻááşá¸á áá°áááŻáˇ ááąááşáááŽááąáŹáˇáá˛áˇ áĄááąáŹááşáĄááŹá¸áá˝áąáá˛áˇ ááŻááşáážááşá áá áşááᯠáĄááŻáśá¸ááźáŻááąáá˛áˇ ááźáżááŹááᯠááťá˝ááşááąáŹáş ááźáŻáśáá˝áąáˇáá˛áˇáááŤáááşá MD3 áážááˇáşáá˝á˛áááşááąáŹ 5DES áááş AES-256 áážááˇáş SHA1 áá˛áˇáááŻáˇ ááŹáááşáĄááąáˇáĄááťááˇáşááźá áşááąáá˛ááźá áşáááşá ááąáŹááşáá áşááŻá áááşá¸áááşá¸áááŻááąáŹááşá¸ááąáááˇáş ááŤá 2020 áážáŹ ááŻáśá¸áááˇáşáá˛áˇ áĄááŹáááŻááşááŤáá°á¸á
ááąáŹáˇáá˛áážááşáážáŻáĄáá˝ááş áĄááźá˛ RSA ááᯠáĄááŻáśá¸ááźáŻáááş - áážáąá¸áá˝áąá¸ááąáŹáşáááşá¸ ááŻáśááźáŻáśááąáŹ ááááááŹáá áşááŻááźá áşáááşá
ááťá˝ááşáŻááşáááąáŹááşáááşááťáŹá¸áááş áĄááąáŹááşáá˝ááşáĄáŹááŹáááŻááşááťáŹá¸á áĄááźáŹá¸áĄá ááŻá¸ááĄáá˝á˛áˇáĄá ááşá¸ááťáŹá¸áážááˇáş áĄáá˝á˛áˇáĄá ááşá¸ááťáŹá¸áážááˇáş áááşá ááşááąááźáŽá¸ ááášááŹáá áşáážááşá¸áážá ááŹáááşááťáŹá¸ááťáąáŹáşááźáŹá¸áááˇáş ááąáŹáşáááŻááąá¸áážááşá¸ááźáŽá¸ááťáŹá¸áážááˇáşáááşá¸ áááşá ááşááąááŤáááşá áááşá¸áááŻáˇáĄáŹá¸ááŻáśá¸áááş áá˝ááşáá˛áˇááąáŹáááşá áŻáážá áşááťáŹá¸á áááşááŽá¸ááŹá¸áááˇáş ááąáŹááşá¸áááŻáážáŻááŻáśá áśááᯠáĄááŻáśá¸ááźáŻááźááźáŽá¸ SHA-512 áááŻáĄááŻáśá¸ááźáŻáááş á á˝ááşá¸áááşáážáŹ áááŻá¸áážááşá¸á á˝áŹáááˇáşáá˝ááşá¸ááŹá¸ááźááşá¸ááážáááŤá áááşá¸áááŹáááŻá¸áááşáážáŻááᯠáá áşáááşá¸áááşá¸áá˛áˇ áááşááąáŹááşáážáŻáážááááşáááŻáᏠáážááşá¸áážááşá¸áááşá¸áááşá¸ áááźáąáŹáááŻááşááąáááˇáş ááąáŹáşáááŻááááşááŻááşáááşá¸á ááşááᯠáážáąá¸áá˝áąá¸á áąáááşáááŻáᏠááááŹááŤáááşá
IPsec áááş 2005 ááŻáážá áşááááşá¸á elliptic curves ááťáŹá¸ááᯠááźááşááá˝ááş ááśáˇáááŻá¸ááąá¸ááąáŹááźáąáŹááˇáş áááşá¸áááŻááźááşáááźááşá¸áážáŹ ááťá˝ááşáŻááşáĄáŹá¸ ááŹááťááşá áąááŤáááşá Curve25519 áááş áááŻáááŻáá áşáá˝ááşááźáŽá¸ áĄááŻáśá¸ááźáŻáááşáĄáá˝ááşáááşá¸ ááááŻááşááŤáááşá Camellia áážááˇáş ChaCha20 áá˛áˇáááŻáˇ AES á áĄááźáŹá¸áá˝áąá¸ááťááşá ááŹááťáŹá¸ áááşá¸áážáááŤáááşá áááŻáˇááąáŹáş áááşá¸áááŻáˇáĄáŹá¸ááŻáśá¸ááᯠCisco áážááˇáş áĄááźáŹá¸ááąáŹ áĄááąáŹááşá¸áĄáááşááŻááşáááşá¸ááźáŽá¸ááťáŹá¸ááž ááśáˇáááŻá¸ááąá¸áááşáááŻááşáááşáážáŹ áááşáážáŹá¸ááŤáááşá
ááźáŽá¸ááąáŹáˇ áá°áá˝áąá áĄá˛ááŤááᯠáĄáá˝ááˇáşááąáŹááşá¸áá°áááşá Cisco kits ááťáŹá¸á á˝áŹáážáááźáŽá¸ Cisco áážááˇáş áĄááŻááşááŻááşáááş ááŽáááŻááşá¸ááŻááşááŹá¸ááąáŹ kit ááťáŹá¸á á˝áŹáážááááşá áááşá¸áááŻáˇáááş á¤áĄáááŻááşá¸áá˝ááş á áťáąá¸áá˝ááşááąáŤááşá¸ááąáŹááşááťáŹá¸ááźá áşááźááźáŽá¸ áááşáááˇáşáááşá¸áá áşááŽáá˝ááşáážáŻááťááŻá¸áááŻááťáž á áááşááááşá áŹá¸ááŤá
ááŻááşáá˛áˇá [ááąáŹáşáááŻááááşááášááážáŹ] áĄááźáąáĄááąá áĄáááşá¸áááŻá¸áá˝áŹá¸ááŤáááşá ááŤááąáááˇáş ááŹááźáąáŹááˇáşáážááşá¸áááááąáááˇáş WireGuardááŻááşááŻááşáá°ááťáŹá¸áááş áááşá¸áááŻáˇáĄááŻáśá¸ááźáŻááąááąáŹ tools ááťáŹá¸áážááˇáş encryption áážááˇáşáááşáááşá á á˝ááşá¸ááąáŹááşáááşááźáżááŹááťáŹá¸ááᯠáááşááąáŹáˇááž áážáŹáá˝áąáá˝áąáˇáážááááŻááşáá˝ááşááážááááᯠIKEv2 áá˝ááşáááşá¸ ááźáżááŹáá áşá áŻáśáá áşááŹááᯠáá˝áąáˇááźááşáááŻááşáá˝ááşááážáá፠- áááŻáˇááźáąáŹááˇáş áááşá¸áááŻáˇáááş áĄááźáŹá¸áá˝áąá¸ááťááşá ááŹááťáŹá¸ááᯠáážáŹáá˝áąááąááźááşá¸áááŻááşááŤá
ááąáá°ááťáĄáŹá¸ááźááˇáş Cisco ááᯠá á˝ááˇáşáá˝ážááşáááŻáˇ á ááşá¸á áŹá¸áá°á¸ááŤáááŹá¸á
á áśáážáŻááşá¸ááťáŹá¸
áĄáᯠá áŹáá˝ááşá áŹáááşá¸áá˝áąáááą benchmark áá˝áąáᎠáááşáá˝áŹá¸ááźááĄáąáŹááşá WireGuardᤠ[á áŹáá˝ááşá áŹáááşá¸] áááş áááášááśáááşá¸ááťá áŹáááşá¸áááŻááşááąáŹáşáááşá¸á ááąáŹáˇááşáá˛ááąá¸ááŹá¸áá°ááťáŹá¸áááş áááŻáááŻáááášááśáááşá¸ááťááťááşá¸áááşáážáŻáá áşááŻáá°áááş áááŻáˇáááŻááş áááášááśáááşá¸ááťááťááşá¸áááşáážáŻááᯠá áśáážáŻááşá¸áá áşááŻáĄááźá áş áĄááŻáśá¸ááźáŻáááş ááťážáąáŹáşáááˇáşááŹá¸áá˛ááźá áşáááşá á áśáážáŻááşá¸ááťáŹá¸ááᯠááźááşáááşááŻááşááŻááşáááááŤá áĄááŻáśá¸ááááşááŤá ááŹááşáá˝á˛áááşá¸áá˝ááş ááážáááąáŹáĄá፠áááŻááááş áĄááŻáśá¸ááááşááŤá
á áŻááąá¸áážáŻáá˝ááş WireGuard áĄáá˝ááş Linux GSO (Generic Segmentation Offloading) ááᯠáĄááŻáśá¸ááźáŻááźááşá¸áĄáŹá¸ááźááˇáş áĄáŹá¸ááŹááťááşáá áşáᯠááážáááŤáááşá áááşá¸áááş client áĄáŹá¸ ááźáŽá¸ááŹá¸ááąáŹ 64-kilobyte packet áá áşááŻááᯠáááşááŽá¸ááźáŽá¸ single pass ááźááˇáş encrypt/decrypt ááŻááşáá˝ááˇáşááźáŻáááşá áááşá¸áááş cryptographic operations ááťáŹá¸áážááˇáş calls ááťáŹá¸ááᯠááŻááşááąáŹááşááźááşá¸á ááŻááşááťá ááááşááᯠááťážáąáŹáˇááťááąá¸áááşá áááşá VPN connection á throughput ááᯠáĄááźááˇáşááŻáśá¸ááźá áşá áąáááŻááŤá áááşá¸áááş ááąáŹááşá¸áá˝ááşááąáŹ áĄááźáśáĽáŹááşáá áşááŻááźá áşáááşá
áááŻáˇááąáŹáşá ááŻáśá¸á áśáĄáááŻááşá¸á áĄááźá áşáážááşáááş á¤ááťážááąáŹááş ááááŻá¸áážááşá¸ááŤá áááŻáá˛áˇáááŻáˇááąáŹ ááźáŽá¸ááŹá¸ááąáŹ áááşáááşááźáŽá¸ááᯠáá˝ááşáááş adapter áá áşááŻáááŻáˇ ááąá¸áááŻáˇááźááşá¸áááş áááşá¸áĄáŹá¸ ááąá¸áááşááąáŹ áááşáááşááťáŹá¸á á˝áŹáááŻáˇ ááźááşááąáŹááşáááş áááŻáĄááşáááşá ááŻáśáážááşááąá¸áááŻáˇáážáŻáĄáá˝ááşáĄá áŹá¸áážáŹ 1500 bytes ááźá áşáááşá áááŻáááŻáááşáážáŹá ááťá˝ááşáŻááşáááŻáˇá á§ááŹá 64 ááŽáááŻáááŻááşááᯠ45 áááşááşááťáŹá¸ (áĄááťááşáĄáááş 1240 bytes áážááˇáş IP header á 20 bytes) áááŻáˇ áááŻááşá¸ááźáŹá¸áááşááźá áşáááşá áááŻáˇááąáŹááşá áááşá¸áááŻáˇáááş áááźááŻááşáááşáááşá¸ ááąá¸áááŻáˇááááşááźá áşááąáŹááźáąáŹááˇáş áááşá¸áááŻáˇáááş áá˝ááşáááşáĄáááşááŹááĄááŻááşááᯠááŻáśá¸ááŻáśá¸ááááşáááŻáˇáá˝áŹá¸áááşááźá áşáááşá ááááşáĄááąááźááˇáşá áááşá¸áááş áŚá¸á áŹá¸ááąá¸áĄáááˇáşáááŻáˇ áŚá¸áááşáá˝áŹá¸áááşááźá áşááźáŽá¸ áĽáááŹáĄáŹá¸ááźááˇáş VoIP áá˛áˇáááŻáˇááąáŹ áááşááąáˇááşáťááťáŹá¸ááᯠáááşá¸á áŽááąááŤáááşá
áááŻáˇááźáąáŹááˇáş áá˛áááˇáşá á˝áŹ ááźáąáŹáááŻááŹá¸ááąáŹ ááźááˇáşááŹá¸ááąáŹ throughput WireGuardáĄááźáŹá¸áĄáááŽááąá¸áážááşá¸ááťáŹá¸á áá˝ááşáááşá á˝ááşá¸ááąáŹááşáááşááᯠáážáąá¸áá˝áąá¸á áąááźááşá¸ááźááˇáş áááşá¸ááᯠááážááááşá áááŻáˇáĄááźááş áĄáá˝á˛áˇáááş WireGuard ááźáŽá¸ááźáŽ áĄáááşááźáŻáá˛áˇáááş á¤áááşáážáŹ ááťá˝ááşáŻááşá ááąáŹááşááťááşááźá áşáááşá
ááŤááąáááˇáş áááşáá˝áŹá¸ááźááĄáąáŹááşá
áááşá¸áááŹáááŻááşááŹá áŹáá˝ááşá áŹáááşá¸ááťáŹá¸áá˝ááş á áśáááşáážááşááťááşááťáŹá¸áĄáá ááťáááşáááşáážáŻáááş 1011 Mbps áááźááşáááşá¸áážáŻáááŻááźááááşá
áĄáááşááźáŽá¸á ááŹá
áááşá¸áááş áĄáá°á¸áĄáááşááźáŽá¸á ááŹááąáŹááşá¸áááşáážáŹ Gigabit Ethernet ááťáááşáááşáážáŻáá áşááŻáááşá¸á áĄááźááˇáşááŻáśá¸ááŽáĄááŻááŽáááŻááşáᏠthroughput áážáŹ 966 Mbps ááźá áşááąáŹááźáąáŹááˇáş IP header áĄáá˝ááş 1500 bytes áĄááŻááş 20 bytesá UDP header áĄáá˝ááş 8 bytes áážááˇáş header áĄáá˝ááş 16 bytes áážáááąáŹááźáąáŹááˇáşááźá áşáááşá WireGuardencapsulated packet áá˛áážáŹ ááąáŹááşáááş IP header áá áşááŻáá˛áˇ TCP áá˛áážáŹ 20 bytes áážááşáá˛áˇ ááąáŹááşáá áşááŻáážááááşá ááŤááᯠááŽáĄááᯠbandwidth á áááşáááŹááŹáá˛á
ááźáŽá¸ááŹá¸ááąáŹááąáŹááşááťáŹá¸áážááˇáş GSO ááĄááťááŻá¸ááťáąá¸áá°á¸ááťáŹá¸ááźááˇáş áĄáááşáá˝ááşááźáąáŹáá˛áˇááąáŹ ááťá˝ááşáŻááşáááŻáˇáááş 9000 bytes áááąáŹááşáĄáá˝ááşáĄá áŹá¸áĄáá˝ááş ááŽáĄááŻááŽáĄááĄááťáŹá¸ááŻáśá¸áážáŹ 1014 Mbps ááźá áşááááˇáşáááşá áĄááťáŹá¸áĄáŹá¸ááźááˇáş áááŻáááŻáˇááąáŹ ááźááşáááşá¸áážáŻáááş ááźáŽá¸ááŹá¸ááąáŹáĄáááşáĄáá˛ááťáŹá¸áážááˇáş áááşá ááşááąááąáŹááźáąáŹááˇáş áááşáá˝áąáˇáá˝ááş áááážááááŻááşááŤá áááŻáˇááźáąáŹááˇáşá áĄááťááŻáˇááąáŹáá˝ááşáááşáĄáááşááŹááťáŹá¸áááŹááśáˇáááŻá¸ááąá¸áááˇáşááŽáĄááŻááŽáĄááĄááťáŹá¸ááŻáśá¸ 64 Mbps ááźááˇáş 1023 ááŽáááŻáááŻááşááťáŹá¸áááŻááźáŽá¸ááąáŹááąáŹááşááťáŹá¸áááŻáĄááŻáśá¸ááźáŻá á ááşá¸áááşáážáŻáááŻááŻááşááąáŹááşáá˛áˇááźáąáŹááşá¸ ááťá˝ááşáŻááşáá°ááááŻááşáááşá áááŻáˇááąáŹáş áááşá¸áááş áááşáá˝áąáˇáĄááźáąáĄááąááťáŹá¸áá˝ááş ááŻáśá¸ááĄááŻáśá¸ááźáŻáááááŤá áááŻáˇáááŻááş á ááşá¸áááşááŻáśáááşá¸ááťáŹá¸áĄáá˝ááşá¸áá˝ááşáᏠáááŻááşáááŻááşááťáááşáááşááŹá¸áááˇáş áá°ááŹáážá áşááŻááźáŹá¸áá˝ááşáᏠáĄááŻáśá¸ááźáŻáááŻááşáááşá
áááŻáˇááąáŹáş jumbo frames ááťáŹá¸ááᯠááŻáśá¸ááááśáˇáááŻá¸áááŻááşááąáŹ áĄááşááŹáááşááťáááşáááşáážáŻááᯠáĄááŻáśá¸ááźáŻá host áážá áşááŻááźáŹá¸áá˝ááş VPN tunnel ááᯠáááşáááˇáşáááŻáˇááąáŹááźáąáŹááˇáşá ááŻáśáááşá¸ááťáŹá¸ááąáŤáşáážááážáááąáŹááááşááᯠá áśáĄáážááşáĄááźá áş áá°áááááŤá áááşá¸áááş áááşáá˝áąáˇáááťááąáŹ ááŹááşáá˝á˛áááşá¸áĄáąáŹááşááźááşáážáŻáá áşááŻááźá áşááźáŽá¸ á á áşáážááşááąáŹáááŻááşáá˝á˛áĄááźáąáĄááąááťáŹá¸áá˝ááş áááźá áşáááŻááşáᲠáĄááŻáśá¸ááťááááááŻááşááŤá
ááąááŹá ááşááŹáážáŹáááŻááşááąááŹááąáŹááş 9000 bytes áááş áááŻááźáŽá¸áá˛áˇ frames áá˝áąááᯠáááźáąáŹááşá¸áááŻááşáá°á¸á
áááşáá˝áąáˇáááá˝ááş áĄááŻáśá¸ááťáááŻááşáážáŻáááŻááşáᏠá áśáááşáážááşááťááşááᯠááŻáśá¸áááťááŻá¸ááąáŹááşááźáŽá¸ ááťá˝ááşááąáŹáşáááşáááˇáşáĄáááŻááşá¸ "áááŻááşá¸ááŹááźááşá¸" ááąá¸ááŹá¸áá°áááş ááááŹáááşáážáŹá¸ááąáŹáĄááźáąáŹááşá¸ááźááťááşááťáŹá¸áĄáá˝ááş áá°áˇáááŻááşáá° ááąá¸ááąá¸áááşáááş áĄáááĄáážááşááźáŻááźááşá¸ááśáááŤáááşá

ááąáŹááşááŻáśá¸ ááťážáąáŹáşáááˇáşááťááş áĄáááşá¸áááşá¸
áĄáááŻá፠site ááᯠWireGuard áá˝ááşááááşááŹááťáŹá¸áĄááźáąáŹááşá¸ ááźáąáŹáááŻáážáŻááťáŹá¸á á˝áŹáážáááąááźáŽá¸ áááşá¸áááŻáˇáááş áĄáážááşááááş áĄáááşáĄááŹáĄáá˝ááş áááşáá˝ááşááŹá¸áááşááᯠáážááşá¸áážááşá¸áááşá¸áááşá¸ áááážáááŹááŤáááşá
áá˝á˛áˇá ááşá¸áážáŻááááŻáĄááşáᲠAmazon áá˝ááş áááşá¸áááŻáˇá cloud áá˛áˇáááŻáˇ ááźáŽá¸ááŹá¸ááąáŹ á áŻá ááşá¸áážáŻááááááŹááťáŹá¸ááźááˇáş áááşáááşáááŻááşááźáŽá¸ áááŻá¸áážááşá¸ááźáŽá¸ ááźááşáááşááąáŹ VPN áá áşááŻá áĄáá°á¸áááźááˇáşá Amazon áááş AVX512 áá˛áˇáááŻáˇ áĄá áąáŹáááŻááşá¸áá˝ááş ááťá˝ááşáŻááşááąáŹáşááźáá˛áˇáááˇáş ááąáŹááşááŻáśá¸ááąáŤáş ááŹáˇááşáá˛áĄááşášááŤáááşááťáŹá¸ááᯠáĄááŻáśá¸ááźáŻááŤáááşá á¤áĄááŹáááş áĄááŻááşááᯠáĄáážáááşááźážááˇáşáááşáážááˇáş x86 áááŻáˇáááŻááş áĄááźáŹá¸ááááŻááŹáážááˇáş ááťáááşáááşááźááşá¸áááźáŻáááş ááŻááşááąáŹááşáááşá
áááşá¸áááŻáˇáááş 9000 bytes áááşááťáąáŹáşáá˝ááşááąáŹ throughput áážááˇáş packet áĄáá˝ááşáĄá áŹá¸ááťáŹá¸ááᯠáĄááąáŹááşá¸ááŻáśá¸ááźá áşáĄáąáŹááşááźáŻááŻááşááąá¸áááşâáááşá¸áááŻáˇáááş container áááşáá˝ááşááąá¸á backup ááŻááşááąáŹááşááťááşááťáŹá¸á snapshot áááşááŽá¸ááźááşá¸ áááŻáˇáááŻááş container ááźááˇáşááťááşááźááşá¸áĄáá˝ááş ááźáŽá¸ááŹá¸ááąáŹ encapsulated frame ááťáŹá¸ááᯠááźá áşááąáŤáşá áąáááşá dynamic IP address ááťáŹá¸áááşááťážááş á á˝ááşá¸ááąáŹááşáááşááᯠáááşááąáŹááşáážáŻááážáááŤá WireGuard ááŤááąáŹáşááźáá˛áˇáá˛áˇ ááŹááşáááşá¸áá˛áˇááá ášá áážáŹá
ááąáŹááşá¸á á˝áŹááŽá¸áážáŻááşááźáá˛áˇáááşá áááşááźááşááąáŹ áĄááąáŹááşáĄáááşááąáŹáşáážáŻáážááˇáş áĄáá˝ááşááŤá¸áá˝ážáŹááźáŽá¸ áááŻá¸ááŹá¸ááŻááŽá¸ááŤá¸ ááááŻáááŻááąáŹá
ááŤááąáááˇáş áááşááŻáśá¸áááááşá¸ááťáŻááşááŹá¸áá˛áˇ ááąááŹá ááşááŹááźááşáá ááášááŹáĄáá˝ááş ááŻáśá¸áááááˇáşááąáŹáşááŤáá°á¸á áááşáĄáášáááŹááşáá°ááźáŽá¸ á áááşáĄááŻáśá¸ááźáŻáááşáááŻáááş WireGuardááŻááşáážááşááźááşá¸ protocol áá áşááŻááᯠááŽáááŻááşá¸áá˝á˛ááźááşá¸áážááˇáş áĄááąáŹááşáĄáááşááąáŹáşááźááşá¸áá˝ááş áááşáááş áĄáááşáááźááş áážááážááŻááşá¸áážáŻááťáŹá¸ ááźáŻááŻááşáááş áááŻáĄááşááŤáááşá
ááąáŹááşááťááş
ááťá˝ááşááąáŹáˇáşáĄáá˝ááş ááŽáááŻááąáŹááşááťááşááťáááŻáˇ ááááşááŤáá°á¸ WireGuard áĄáááşáááˇáşáááźá áşááąá¸áá°á¸á
áááşá¸ááᯠáážáááźáŽá¸ááŹá¸ ááźáąáážááşá¸ááťááşááťáŹá¸áážááˇáşáááşáááşáááˇáş ááźáżááŹáĄááťáŹá¸áĄááźáŹá¸áĄáá˝ááş ááąáŤáˇááŤá¸ááźááşáááşááąáŹ ááźáąáážááşá¸ááťááşáá áşááŻáĄááźá áş áááşáá˝ááşáá˛áˇáááşá ááśáááąáŹááşá¸á á˝áŹáá˛á á¤ááźáąáážááşá¸ááťááşááťáŹá¸ááᯠááážááááşáĄáá˝ááş áĄááŻáśá¸ááźáŻáá°áĄááťáŹá¸á áŻáážááˇáş áááşáááŻááşáááˇáş áĄááşášááŤáááşááťáŹá¸á á˝áŹááᯠá á˝ááˇáşáá˝ážááşáá˛áˇááááşá áááŻáˇááźáąáŹááˇáş IPsec ááᯠáĄá áŹá¸áááŻá¸áááááŤá OpenVPN.
áááŻááşáááşáĄáá˝ááş WireGuard áážááşááźááŻááşáááŻááşá á˝ááşá¸áážááááŻáˇáĄáá˝ááş áĄáááşá¸ááŻáśá¸ IP address configuration, routing áá˛áˇ DNS configuration áá˝áąááᯠáááˇáşáá˝ááşá¸áááŻáˇ áááŻáĄááşááŤáááşá ááŽáĄáá˝ááş encrypted channel áá˝áą áááŻáĄááşáᏠáááşáážáŹá¸ááŤáááşá
ááŻáśááźáŻáśááąá¸áááş ááťá˝ááşáŻááşá ááááşáááşá¸áŚá¸á áŹá¸ááąá¸ááźá áşááźáŽá¸ áááŻáĄááťáááşáá˝ááş IKE áááŻáˇáááŻááş TLS áááş áá áşáááşá¸áááşá¸ááźááˇáş áĄááąá¸áĄáá°ááśáááźááşá¸ áááŻáˇáááŻááş ááťááşááźáŹá¸áá˝áŹá¸ááźááşá¸ááźá áşáááşáᯠááťá˝ááşáŻááşááŻáśááźááşá ááŹáĄááźáąáŹááşá¸ááážáááŤá áááşá¸áááŻáˇáážá áşáŚá¸á ááŻáśá¸áá˝ááş ááąááşáᎠááŻááşáážááşá áá áşááᯠááśáˇáááŻá¸ááŹá¸ááźáŽá¸ áááşá¸áááŻáˇááᯠáááşá áŻáážá áşááťáŹá¸á á˝áŹááźáŹ ááŻááşááąáŹááşáážáŻááźááˇáş áááşááąááźáá˛áˇáááşá áá áşááŻááŻá áĄáá áşáááŻááąáŹáˇ áááŻááąáŹááşá¸áááşáááŻáˇ ááááŻáááŻááŤáá°á¸á
áááşááááşá¸ááťáŻááşáááŹá¸ááąáŹ ááźááşááĄáá˝á˛áˇáĄá ááşá¸ááťáŹá¸á áá°ááŹááťáŹá¸áážááˇáş áááşáá˝ááşááŹáá˝ááş áĄááźááşáĄáážááşááŻááşááąáŹááşáááŻááşáážáŻáááş áĄááąá¸ááźáŽá¸ááŤáááşá IPsec áááş áááşáá˝áąáˇá áśáážáŻááşá¸ááźá áşááźáŽá¸ ááąááŹáááŻááşá¸ááŽá¸ááŤá¸ááᯠááśáˇáááŻá¸ááąá¸ááŤáááşá áááşá¸áááş áĄááŻááşááŻááşááŤáááşá ááŽáĄááŻááŽáĄá áááşá¸áááş áááşáááŻáˇáááşáážáá áąááŹáá°á WireGuard ááąáŹááşáá˝ááş áááşá¸á áá˝á˛ááźáŹá¸ááąáŹ ááŹá¸áážááşá¸ááťáŹá¸áážááˇáşáááş ááááŹááááźá áşáááŻááşááŤá
ááťážááŻáˇáážááşá áŹáážááşááŹáá˝ááşáážáŻáážááşáááťážáááş áĄáážáąá¸áážááˇáşáĄááźááş áááŻáˇáááŻááş ááąáŹááşáááŻááşá¸áá˝ááş ááťááşáá˝áŹá¸ááąáŹááźáąáŹááˇáş áĄá áŹá¸áááŻá¸áááş áááŻáˇáááŻááş áĄááşááááşááŻááşááááşá
á¤áĄááťááşáĄáááşáĄáŹá¸ááŻáśá¸ááᯠááźááşá¸áááşááźááşá¸áážááˇáş áĄááŻáśá¸ááźáŻáááŻááąáŹ ááťááşáááşá¸ááášá WireGuard áááˇáşááťáááşáááşáááş iPhone áĄáááşááŻáśá¸áĄááŻááşá áŹá¸áá˝á˛áá áşááŻáááŻáˇ áá˝áŹá¸ááźááşá¸áááş áá˛áá˛áá˝ááş ááąáŤááşá¸á ááŻááşááąá áąáááş master class áá áşááŻááźá áşáááşá
source: www.habr.com
