В VPN - протоколе WireGuard почти все параметры статичны и уязвимы для систем DPI, поэтому на его основе создали протокол AmneziaWG (
репризиторий), где заменили практически все статичные параметры на рандомные для каждого пользователя. Необходимо доработать AmneziaWG, чтобы сделать его еще более защищенным перед системами DPI.
Требуется:
(a) Исправить проблему с Fixed cookie message length, который составляет ровно 64 bytes. Необходимо доработать протокол AmneziaWG, чтобы cookie message содержал в начале либо в конце мусорные байты (так же необходимо продумать, куда их записывать, в начало или конец). Продумать варианты со статическим кол-вом мусорных байтов, размер которых будет задаваться через конфиг, или алгоритмом, который будет формировать мусор динамического размера. После реализации необходимо протестировать протокол в условиях потери пакетов.
(b) Исправить проблему с 16 zero bytes at the end of initiation and response messages (MAC2)
(c) Исследовать и исправить проблему с периодичностью keepalive
(d) Исследовать проблему с plain text счетчиком пакетов протокола WireGuard
(e) Спроектировать и реализовать алгоритм, по которому заголовки init, response и data пакетов будут динамическими.