Что: 77002b8c0c2ee7bf0840141f8d972f63672f4d92 Когда: 2023-09-05 17:20:53+03:00 ------------------------------------------------------------------------ Темы: crypto ------------------------------------------------------------------------ Посмотрел на протокол shadowsocks https://www.hindawi.com/journals/scn/2022/4862571/ https://github.com/shadowsocks/shadowsocks-org/wiki/Protocol https://github.com/Shadowsocks-NET/shadowsocks-specs https://habr.com/ru/news/758786/ https://habr.com/ru/news/758638/ https://habr.com/ru/news/758556/ Новости и статьи на Хабре завалены тем, что у нас могут быть заблокированы ресурсы где есть информация по настройке обходов блокировок. Большинство это приравнивает ко всем VPN технологиям. Чаще всего упоминают shadowsocks, говоря что он прям основной основной инструмент для работы в условиях GFW. Ну решил посмотреть что у него за протокол то. Оказалось, что он просто простой препростой: это тупо симметричное шифрование, без handshake-ов, где с каждым пакетом прикладывается соль/IV/рандом. То есть это прям ничего кроме шифрования, почти сплошной шум. Ведь совсем недавно я тоже задавался вопросом есть ли решения просто для шумовой обфускации UDP пакетов и написал свой udpobfs (552979396ad8de1f3bbeb409f1c2a65f7446806b). То что shadowsocks до боли простой -- одобряю. Что это не какой-то очередной монстр пытающийся то так, то сяк в кошки-мышки играть и притворяться то TLS, то DTLS, то SRTP -- тоже нравится. Да и говорят что в Китае это прекрасно работает -- чего извращаться то с мимикрией под другие протоколы? Возможно просто у кого какой опыт и, судя по комментариям, там от города к городу, от провайдера к провайдеру всё по разному в плане DPI и работоспособности. Но что мне больше всего понравилось: мой udpobfs гораздо меньше overhead имеет! Не просто так я старался не добавлять лишние байтики. Но у меня переиспользование PSK очень не хорошо будет -- поэтому предполагается рядом наличие SSH-like канала через который ключ будет синхронизирован. В shadowsocks так как "IV" с каждым пакетом отправляется, то не такая большая проблема. В оригинальном SS протоколе всё плохо с replay защитой. Сделали SS-2022 версию, где для выработки ключа даже новомодный BLAKE3 применяется и AEAD шифры (что всё хорошо конечно же). У меня в udpobfs replay защиты нет, но на уровне моей программы, ибо просто было лень писать. Но в протоколе есть последовательные номера, поэтому ничто не мешает и её реализовать. Ну а главное отличие: SS явно передаёт адреса/id-каналов: то есть там прям мультиплексирование множества соединений возможно. Я же явно ничего подобного и не хотел делать, ибо предполагается полноценный VPN под слоем обфускации, где и PFS, и replay, и защита, и аутентификация и маршрутизация/мультиплексирование/whatever. ------------------------------------------------------------------------ оставить комментарий: mailto:comment@blog.stargrave.org?subject=Re:%20%D0%9F%D0%BE%D1%81%D0%BC%D0%BE%D1%82%D1%80%D0%B5%D0%BB%20%D0%BD%D0%B0%20%D0%BF%D1%80%D0%BE%D1%82%D0%BE%D0%BA%D0%BE%D0%BB%20shadowsocks%20%2877002b8c0c2ee7bf0840141f8d972f63672f4d92%29 ------------------------------------------------------------------------ Сгенерирован: SGBlog 0.34.0