The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Разработчики openSUSE развивают zssh, реализацию SSH на языке Zig

17.11.2025 22:55

Разработчики дистрибутива openSUSE представили проект zssh, в котором предпринята попытка реализации протокола SSH на языке Zig. Реализация включает код для разбора протокола и работы со связанными с SSH примитивами, такими как ключи, сертификаты и механизм обмена сообщениями с ssh-agent. Реализации алгоритмов шифрования заимствованы из существующих библиотек. Код проекта распространяется под лицензией GPLv3.

В качестве целей проекта заявлено создание SSH-стека на языке Zig, легко расширяемого для проведения экспериментов и исследований, например, связанных с тестированием постквантовых алгоритмов шифрования и расширением протокола. Проект изначально развивается с оглядкой на возможность использования вместе с различными криптографическими библиотеками, такими как libcrypto и leancrypto.

  1. Главная ссылка к новости (https://news.opensuse.org/2025...)
  2. OpenNews: Выпуск языка программирования Zig 0.11.0
  3. OpenNews: SSH-бэкдор, установленный при взломе kernel.org, два года оставался незамеченным
  4. OpenNews: Представлен SSH3, вариант протокола SSH, использующий HTTP/3
  5. OpenNews: Компания Cloudflare опубликовала opkssh для аутентификации в SSH через OpenID Connect
  6. OpenNews: Уязвимость в SSH-сервере из Erlang/OTP, допускающая удалённое выполнение кода
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/64272-ssh
Ключевые слова: ssh, zig
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (103) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.10, penetrator (?), 00:06, 18/11/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –5 +/
    нам действительно нужно что-то лучшее чем OpenSSH?
     
     
  • 2.44, User (??), 06:22, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +7 +/
    Ээээ... Да? В текущем, как и в любом другом проекте с подобной длины историей - слишком много legacy и функциональных возможностей, входящих за пределы первоначального назначения наросло.
     
     
  • 3.60, Аноним (60), 08:42, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    с sudo на doas перешли уже?
     
     
  • 4.69, Frestein (ok), 10:00, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Шило на мыло.
     
  • 4.71, User (??), 10:04, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > с sudo на doas перешли уже?

    На sudo-rs жи ). И да, аж вот целая ubuntu ).
    А doas чот подозрительные васяны делали, ну их )

     
  • 4.73, Аноним (73), 10:21, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    На run0.
     
  • 3.61, penetrator (?), 08:54, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    видишь ли SSH2 описывается спецификациями RFC4251–4254, т.е. ты не можешь убрать "функциональных возможностей", если они они есть в стандарте, т.е. zssh будет повторять все те же функции, иначе это уже не SSH

    что касается кода, все сильно зависит от того как он изначально написан, вот ты зумерок, смог бы провести презентацию, в которой бы описал бы проблемы "legacy" в оригинальном коде? я допустим не стал бы на себя брать такую работу и ответственность

    и одно известно точно, что чем больше времени потрачено на проект, чем больше его популярность и проверка сообществом, тем больше вероятность того, что его код был вычитан и выверен не единожды, т.е. чем больше ты работаешь над своим кодом, чем чаще ты возвращаешься к нему со свежим взглядом, тем больше ты его улучшаешь, и OpenSSH прошел проверку временем

    а SUSE тем временем придумала Agama, когда в попытках преодолеть ограничения действующего инсталлера, она убила хорошо работающее решение, не дала ничерта взамен, модель данных для автоматизации примерно таже, но теперь у нас JSON вместо XML, а так все то же самое.. это отдельная тема, не будем в подробности лезть, но для примера сойдет

    так откуда у тебя уверенность, что zssh не будет очередной сомнительной идеей?

     
     
  • 4.70, User (??), 10:02, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > видишь ли SSH2 описывается спецификациями RFC4251–4254, т.е. ты не можешь убрать
    > "функциональных возможностей", если они они есть в стандарте, т.е. zssh будет
    > повторять все те же функции, иначе это уже не SSH

    Ну вот какими RFC описываются SFTP и SCP?
    А собственная реализация сертификатов от SSH из драфта вышла? А вот тебе её прям зачем-то _НАДО_ реализовывать?
    А вот поддержка socks-прокси в SSH спецификациях есть? А VPN? Ну, тот который с -w?

    > что касается кода, все сильно зависит от того как он изначально написан,
    > вот ты зумерок, смог бы провести презентацию, в которой бы описал
    > бы проблемы "legacy" в оригинальном коде? я допустим не стал бы
    > на себя брать такую работу и ответственность

    Ну посмотри на поддерживаемые ОС и архитектуры - и выкинь все по-с-дохшее, предполагаю что не ошибешься.

    > и одно известно точно, что чем больше времени потрачено на проект, чем
    > больше его популярность и проверка сообществом, тем больше вероятность того, что
    > его код был вычитан и выверен не единожды, т.е. чем больше
    > ты работаешь над своим кодом, чем чаще ты возвращаешься к нему
    > со свежим взглядом, тем больше ты его улучшаешь, и OpenSSH прошел
    > проверку временем

    Тут не поспоришь. Но что выгодней - длительный срок жизни с "чисткой" ошибок или существенно более современная кодовая база меньшего размера - вопрос дискуссионный.

    > а SUSE тем временем придумала Agama, когда в попытках преодолеть ограничения действующего
    > инсталлера, она убила хорошо работающее решение, не дала ничерта взамен, модель
    > данных для автоматизации примерно таже, но теперь у нас JSON вместо
    > XML, а так все то же самое.. это отдельная тема, не
    > будем в подробности лезть, но для примера сойдет

    Ну да - обёртка над ruby'шным yast тут конечно очень актуальный пример...

    > так откуда у тебя уверенность, что zssh не будет очередной сомнительной идеей?

     
     
  • 5.74, penetrator (?), 10:38, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Ну вот какими RFC описываются SFTP и SCP?

    Расширения для SSH2 вполне вписываются в стандарт. А само оно вот описывается здесь: https://datatracker.ietf.org/doc/html/draft-ietf-secsh-filexfer-13

    > А собственная реализация сертификатов от SSH из драфта вышла? А вот тебе её прям зачем-то _НАДО_ реализовывать?

    https://www.ietf.org/ietf-ftp/internet-drafts/draft-miller-ssh-cert-06.html

    Wi-Fi6 Wi-Fi7 был тоже в драфте, а клепались устройства и чипы. И мне SSH без расширений как чемодан без ручки.

    > Ну посмотри на поддерживаемые ОС и архитектуры - и выкинь все по-с-дохшее, предполагаю что не ошибешься.

    Так в том то и дело, что одни предположения, т.е. если я поднимаю вопросы, то ты безапеляционно сыпешь утверждениями - чувствуешь разницу?

    Давай покажи мне "поддерживаемые ОС и архитектуры": https://github.com/openssh/openssh-portable

    > Ну да - обёртка над ruby'шным yast тут конечно очень актуальный пример...

    Идеальный пример, кодовая база плохая (не в SSH, но по твоей теории и в SSH), она плохо интегрируется, они не могут вынести это в либу, все понятно, НО ЧТО ОНИ ДАЛИ ВЗАМЕН? и теперь перечитывай мой оригинальный абзац про Agama (где я пишу что они убили то что хорошо работало для конечного использования, а не про то как оно написано). Так вот где гарантия что zssh будет решением, а не такой же поделкой? Ну сломают они все, и их сервер не будет совместим практически ни с одним клиентом (к примеру, я не утверждаю). Вот я и спрашиваю, а зачем? Если это будет в лучших традициях SUSE, когда мы все сломаем, а новое построим наполовину. Притом а надо ли "чинить", в случае с YaST хотя бы понятно, чем они руководствовались.

    И если меня спросить а во что я верю больше, в эволюцию проверенного решения или в новое решение с сомнительным менеджементом, ну ответ очевиден.

     
     
  • 6.78, User (??), 11:51, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ну, т е есть протухший в 2007 году _draft_, ага Еще один _draft_, но посвежее... большой текст свёрнут, показать
     
     
  • 7.94, penetrator (?), 13:19, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    RFC 6187 - покрывает только X.509v3 Certificates for Secure Shell Authentication

    Это всего лишь новая версия сертификатов, которая может быть не сделана еще в кодовой базе, в чем твой аргумент? Как это относится к тому что было сказано ранее?

    6187 описывает то что работает с тем самым драфтом, т.е без SSH драфта, 6187 нужен ровно на 0 процентных пунктов

    ты вот воду мутишь, флудишь, а к чему ты апелируешь - хз, вообще вне контекста

    > Ну так у тебя ж openssh никто и не отбирает, нет? У меня вот - нет.

    ну так и как это связано с контекстом? я ему посыл - что стандарты в драфте очень частое явление, и в оборудовании и в вебе и в прочих сферах, что реализации на базе этих стандартов ценны и часто становятся эталоном, а он мне про то, что у меня не забирают OpenSSH, ну спасибо, капитан

    > Э? Это вот если по коду не ходить.

    а ты сходи открой ssh.c и поищи где именно такая совместимость убивает качество внутри ssh.c?

    > Но вопрос был "нужно ли нам что-то лучшее, чем openssh", а не "могут ли эти конкретные товарищи это "более луДшее" обеспечить"?

    Т.е. я писал это тоже вне контекста? А не потому, что нам предлагается альтернатива, которая должна быть чем-то лучше OpenSSH? Наверное если бы статья звучала как 2.5 покемона собираются там что-то поэкспереметинровать на тему SSH используя малоприменимый язык программирования, и все это не должно иметь большой импакт на сообщество, мы всего лишь хотим:
        Have a working implementation of the ssh protocol in Zig.
        Be flexible, as to allow for hacking of the protocol (i.e. testing PQC algorithms).
        Be agnostic of cryptography libraries (i.e. libcrypto, leancrypto).
    и можно добавить
        Have a fun.

    то наверное я бы и не стал ничего коментировать.

     
     
  • 8.96, User (??), 13:38, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Оу Ну, восстанавливаем логику дискуссии 1 Ты пишешь, что не понятно, нужно ли... большой текст свёрнут, показать
     
  • 7.118, Аноним (118), 19:21, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    То что драфтам много лет совсем не означает, что функционал ими описываемый и в опенссаш реализованный вдруг стал лишним. Тот же scp вполне активно использую, т.к. удобен и проверен временем. Зачем городить очередное васяноподелие без поддержки поивычных фич, если оригинал с ними работает как надо, я не понимаю. Это сродни переписыванию пабочтх инструментов на другой раст... язык просто потому что кому-то делать нечего и новых идей нет.
     
     
  • 8.119, User (??), 20:13, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А почему бы туда вот еще о, открывашку для бутылок не встроить ИДЕЯ Может ... текст свёрнут, показать
     
  • 2.46, G0Dzilla (??), 07:03, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Нужно. Но вот где найти это лучше?
     
  • 2.68, Frestein (ok), 10:00, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Поддержка XDG wont-fix. Еще вопросы?
     

  • 1.11, Аноним (11), 00:24, 18/11/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Синтаксис конечно отвратный (как и в расте), но намного более современный чем ржавчина.
    Если уж и переписывать, то на нём.
     
     
  • 2.29, Чтото знающий (?), 02:20, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >но намного более современный чем ржавчина

    А что это означает? На всякий случай, вдруг вы не знает, Zig не решает проблемы при работе с памятью, а Rust - решает (кроме утечек). Это и есть, по-вашему, более современный синтаксис?

     
     
  • 3.37, Аноним (37), 04:19, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    А какая связь между способом выражения кода программы и менеджементом памяти?
     
     
  • 4.117, Алексей (??), 19:19, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    потому что у такого переписывания должна быть цель кроме собственно переписывания. При переписывании на Rust ты бонусом получаешь отсуствие многих типов критических уязвимостей. На Zig?
     
  • 2.90, Аноним (90), 13:02, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >Синтаксис конечно отвратный (как и в расте)

    Борцун с синтаксисом как всегда не осилил язык, и по этому его не критикует.

     

  • 1.12, Аноним (12), 00:53, 18/11/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Судя по описанию, ZIG выглядит гораздо лучше ржавчины и go хотябы тем что компиится из C, а не бустрапится. Да и название не имеет негативный смысл. В последних выпусках Lunduke доходиво объяснил, что такое Rust. Последние новости от Ubuntu только дополняют картину.
     
     
  • 2.18, Аноним (-), 01:27, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • –5 +/
    > Судя по описанию, ZIG выглядит гораздо лучше ржавчины

    Угу, только по описанию.

    > Lunduke доходиво объяснил, что такоеRust

    Ad Free, Big Tech Free, Non-Woke, Audience Supported.
    Т.е нющеброд без поддержки серьезных компаний?
    Явно серьезный аргумент))

     
     
  • 3.25, 12yoexpert (ok), 01:56, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    не paywall-free
     
  • 3.123, Аноним (123), 08:12, 19/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >Big Tech Free

    То есть прямо говорят что на него не стоит тратить время тк для карьеры не полезно 🗿

     
  • 2.91, Аноним (90), 13:04, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >Судя по описанию, ZIG выглядит гораздо лучше ржавчины и go хотябы тем что компиится из C, а не бустрапится.

    Слова ыксперда. А отладочные символы в нём откуда, неуж-то из сишной лапши, в которую он оттранслировался?

     
  • 2.95, Facemaker (?), 13:31, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Зачем сравнивать языки с явно разными областями применения? Популярно говоря, Go — убийца Джавы, Rust — C++, а Zig — C. Почитайте статьи Алексея Кладова: https://matklad.github.io/2025/08/09/zigs-lovely-syntax.html
     
     
  • 3.121, Аноним (121), 21:58, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Почитайте статьи Алексея Кладова

    Кто это?

     
  • 2.107, Аноним (107), 16:13, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Lunduke

    Лол

     
  • 2.132, Zulu (?), 13:55, 19/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Никогда о нем не слышал. Загуглил, открыл его Youtube.

    * Linus torvalds and communism
    * Python is DEI

    закрыл таб

     

  • 1.16, Аноним (16), 01:12, 18/11/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Радует, что кто-то из гигантов обратил внимание.
    Я конечно предпочёл бы развитие Hare, но Zig тоже лучше, чем rust.
     
     
  • 2.30, Чтото знающий (?), 02:23, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Хуже, на самом деле, если говорить о потенциальных ошибках при работе с памятью. А зачем он нужен (Zig), если таких гарантий не предоставляет?
     
     
  • 3.33, aname (?), 03:00, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Так ты тоже никаких гарантий при работе с памятью не предоставляешь
     
  • 3.58, Аноним (121), 08:28, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Это не ты там выше писал, что Zig хуже, потому что у него синтаксис не даёт гарантий безопасной работы с памятью?
     
  • 2.124, Аноним (123), 08:14, 19/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >кто-то из гигантов обратил внимание
    >гигантов

    Looks inside... SUSE 🤷🏻‍♂️

     

  • 1.19, Аноним (19), 01:29, 18/11/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Дружно поприветствуем разработчика!
     
  • 1.23, Аноним (23), 01:41, 18/11/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +8 +/
    Выше комментаторы то и дело сравнивают zig и раст. Но zig вообще не далеко ушел от си. Я бы даже сказал, что это и есть си, только внешне удобство поменяли. Под капотом одно и то же. Память вручную выделять, вручную освобождать. Нет сборщика мусора. Все принципиально тоже самое

    Переписанная с си на зиг программа ничего не поменяет. Ни в производительности ни в безопасности. Переписывание ради переписывания

     
     
  • 2.26, 12yoexpert (ok), 01:57, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Переписывание ради переписывания

    это-таки как раз про раст

     
     
  • 3.31, Чтото знающий (?), 02:26, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Сразу видно "эксперта". Rust решает проблемы при работе с памятью. Ради этого переписывать на этот ЯП имеет смысл. А Zig по сути, никаких проблем не решает. Зачем он тогда нужен?
     
     
  • 4.35, Аноним (35), 03:35, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Зиг решает проблему UB. А раст решает? Без спецификации точно решает. Нет спецификации - нет UB.
     
     
  • 5.42, 12yoexpert (ok), 05:22, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    UB - не проблема
     
  • 5.53, Shellpeck (?), 08:04, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Скорее, NIH...
     
  • 4.41, 12yoexpert (ok), 05:21, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Rust решает проблемы при работе с памятью

    ложь, дальше не читал

     
     
  • 5.47, Вася Пупкин (?), 07:03, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Гугл недавно специально для тебя отчёты опубликовал с обновлёнными пруфами
     
     
  • 6.52, Аноним (52), 08:02, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Гугл недавно специально для тебя отчёты опубликовал с обновлёнными пруфами

    Где признался, что сдался, переписывать все.

    Далее придумал причину почему он не "не может", а "не хочет" переписывать то что есть.

     
  • 6.56, 12yoexpert (ok), 08:26, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    а в сбербанке заставляют всех ставть касперского, в том числе в дочерних компаниях

    угадай с трёх раз, почему

     
  • 4.51, Аноним (51), 07:47, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Решает, но не всё, а заявляется что как будто бы все.
     
     
  • 5.85, анон (?), 12:40, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    вот именно... всё что делает раст - стелит соломку для тех, кто городит джунгли указателей. Если замена аллокатора в дебаг сборке + доп. флаги компиляции + статический анализатор не отлавливают 99+% ошибок с памятью, то тебе никакой раст не поможет - с таким подходом к разработке тебе и останется только и делать что переписывать чужое.
     
     
  • 6.114, Аноним (23), 17:20, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Раст как раз таки поможет:)
     
  • 2.50, Аноним (50), 07:29, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Zig паразитирует на волне сиубийства. Он пытается убедить мимокрокодилов, что проблемы сишки, требующие создания нового языка - это проблемы поверхностные (вроде синтаксиса), а по сути в 1972 всё сделали верно. Так он уворачивается от решения сложных проблем и получает поддержку культистов, которым только дай намёки на ООП поискоренять.

    Итоги: в GNU C имеется более полноценная поддержка RAII, чем в Zig (см. лаконичный _cleanup_free_ в systemd вместо defer отдельной строчкой).

     
     
  • 3.97, Кошкажена (?), 13:55, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > это проблемы поверхностные (вроде синтаксиса)

    Проблемы то есть. Прочитайте https://www.adacore.com/uploads/books/pdf/Safe_And_Secure-Russian.pdf первую главу. Но их можно решить статическим анализатором.

     
  • 3.98, Кошкажена (?), 13:59, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Итоги: в GNU C имеется более полноценная поддержка RAII

    Она делается через атрибуты, которые вешаются только на функцию. Чтобы это было похоже на defer, то нужно макросами обкладываться. Ну или нужна поддержка анонимных функций, чего нет.

     
     
  • 4.104, Аноним (50), 14:38, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Чтобы это было похоже на defer, то нужно макросами обкладываться

    Я: пора пересаживаться со стула на кресло (на полноценный RAII как в C++ или Rust, без зиговского неосиляторства)
    Ты: Чтобы стул стал похож на табуретку, нужно отпилить спинку или садиться боком

     
     
  • 5.105, Кошкажена (?), 14:50, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >> Чтобы это было похоже на defer, то нужно макросами обкладываться
    > на полноценный RAII как в C++ или Rust, без зиговского неосиляторства

    В С++ есть аналог defer как раз таки для цели позвать код без создания класса под него.

     
     
  • 6.116, Аноним (50), 17:54, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Его нет 1 и defer слабее RAII, но язык позволяет его сделать В отличие от Zig,... большой текст свёрнут, показать
     
  • 4.108, Аноним (108), 16:47, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    В C завозят defer.
     
  • 3.99, Кошкажена (?), 14:01, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > (см. лаконичный _cleanup_free_ в systemd вместо defer отдельной строчкой).

    Ну вот в systemd свой cleanup, в ядре линукса свой, в другом проекте еще какой-то, а в zig из коробки есть и он один и тот же в любой билиотеке. В этом плюс коробочного решения. Даже в std в с++ уже добавили, хотя решение аля defer пишется просто и на самом деле есть во многих библиотеках.

     
  • 2.62, Кошкажена (?), 08:57, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Нет сборщика мусора

    А в расте есть что-ли? Только не надо про arc.

     
     
  • 3.84, Медведь (ok), 12:39, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Самое смешное, что в раннем дизайне ржи GC имелся. Выкинули ради боровов.
     

  • 1.24, Аноним (24), 01:45, 18/11/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Тут прекрасно всё. От самой идеи сделать "реализацию протокола SSH на языке Zig" за целый один хакатон, до выбора наиболее маргинального хостинга кода, где его никто никогда не найдёт.
     
     
  • 2.27, Аноним (27), 01:57, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    а не маргинальный хостинг кода это какой? тот что от фирмы microsoft?
     
     
  • 3.34, Аноним (24), 03:02, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    По определению, тот, которым пользуется большинство. На текущий момент это Гитхаб.
     
     
  • 4.36, Аноним (27), 03:50, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    ок, лучше пользоваться немаргинальным гитхаб от фиры microsoft, потому что им пользуется большинство
     
     
  • 5.111, Аноним (24), 17:00, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Если тебе нужно привлечь бесплатных разработчиков в проект — да, таки лучше. Если нужно просто интересно провести время, можно пользоваться чем угодно.
     
  • 2.65, пох. (?), 09:24, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Все правильно, подальше, подальше, чтоб не нашли.

    Замена openshit конечно давно нужна, но не от этих альтернативно-одаренных же ж.

     

  • 1.32, ятупойтролль (ok), 02:53, 18/11/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    посмотрел я этот zig, это какой-то новый вид извращений. не думаю, что zssh будет поддерживаться дольше, чем этим занимается автор.
     
     
  • 2.54, Аноним (52), 08:04, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Суда по новости, он не для поддержки, а для экспериментов.
     
  • 2.63, Кошкажена (?), 09:00, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > посмотрел я этот zig, это какой-то новый вид извращений

    Поконкретнее, пожалуйста.

     

  • 1.43, Oleg (??), 06:06, 18/11/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Уважаемые эксперты, объясните дилетанту, зачем переписывать вполне работающие программы на новых языках? Вон переписали в Ubuntu часть утилит на Rust и оказалось, что они не то что стали безошибочными, а банально не имеют стандартного функционала. Так в чем профит?
     
     
  • 2.55, Аноним (52), 08:05, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Данный конкретный случай - что бы не испортить экспериментами нормальную библиотеку.
     
  • 2.57, Пыщь (?), 08:28, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    У многих из переписанных на коррозийный язык под шумок сменяется лицензия на более удобную для использования крупным пизнецом.
     
     
  • 3.81, Анонимище (?), 12:02, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Серьезные господа из списка Forbes и без этого найдут способ как проигнорировать законы если очень захочется (история с тренировкой нейронок на пиратском контенте тому пример), копилефт может максимум помочь держать в узде проприетарные импульсы среднего бизнеса
     
     
  • 4.125, Bottle (?), 10:09, 19/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Серьёзные господа финансируют фрибздунов, чтобы плейстейшоны и нефтликсы работали, а не теряли гешефт при публикации исходников.
     
  • 2.67, Аноним (67), 09:54, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Бэкдоры, сэр. В случае с Rust существует один единственный компилятор.
     
     
  • 3.82, Анонимище (?), 12:04, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    ... и потом вся эта многоходовочка по переписыванию кучи софта порушится если написать второй компилятор. Хороший план, надежный как швейцарские часы /s
     
     
  • 4.115, Аноним (115), 17:35, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Не напишешь новый компилятор. rustc - это и есть текущий набор стандартов, и любое изменение в корявости выходящего наружу кода моментально бегут поправлять в документации.
     
  • 2.83, Анонимище (?), 12:21, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    ИМХО:

    Начну издалека. В принципе, чем плоха ситуация когда нет исходников? Тем что уж слишком сложен машиный код (или ассемблер) для чтения и изменения, по крайней мере для большинства программистов. По той же причине плох намерено обуфицированый исходный код. Отсюда приходим к откровению, что код на низкоуровневом языке и имеющий анти-паттерны может в пределе мало отличаться от блоба.

    Низкоуровые языки это зло с которым приходится мириться если железо недостаточно быстрое. Но вот прекрасное будущее настало, железо уже достаточно быстрое, значит можно переписать код на более высокоуровневом языке. В результате есть надежда на получение клона проекта, но с более внятным кодом, который больше людей смогут читаться и изменять

     
     
  • 3.88, анон (?), 13:00, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > более внятным кодом, который больше людей смогут читаться и изменять

    Поэтому мы выберем язык, на котором пишут полтора человека (его определённо поймут больше людей, чем код на си).

    Мне кажется, что переписать программу и сделать её более внятной/быстрой/поддерживаемой реально только если ты сам работал над тем, что сейчас переписываешь и можешь держать в голове весь функционал, который тебе предстоит сделать, чтобы заранее избежать все грабли и костыли, которые были неизбежны при первом написании. И другой язык тут не поможет. (но и не то что бы прям навредит, если ты в нём разбираешься, я думаю)

     
     
  • 4.93, Анонимище (?), 13:10, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >его определённо поймут больше людей, чем код на си

    Да, без тени иронии. Языки одного уровня очень похожи. Если человек изначально знает язык такого же уровня как Zig, то привыкание к новому синктатическому сахару должно произойти достаточно быстро

     
     
  • 5.128, анон (?), 11:10, 19/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > ...значит можно переписать код на более высокоуровневом языке
    > Языки одного уровня очень похожи

    ну ты либо крестик сними, либо штаны надень.

     
     
  • 6.129, Анонимище (?), 11:44, 19/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Zig уровнем повыше чем Си будет. Это конечно не Питон, но уже выше чем Си
     
  • 2.87, Аноним (90), 12:56, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >зачем переписывать вполне работающие программы на новых языках?

    Затем, что они не работают, очевидно же. Если для вас наличие трудноуловимых багов, а так же тонны CVE не являются аргументом, то для вас ничто не будет аргументом.
    >и оказалось, что они не то что стали безошибочными

    Фантазии про безошибочность - это ваши фантазии. Гарантии, предоставляемые растом давным давно известны. Если кто-то не может прочитать эти гарантии, и понять, к чему они применимы, то это только его беда. А то развелось растохетйтеров, которые сами же и не знают раста.

     
     
  • 3.126, Bottle (?), 10:09, 19/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А почему нельзя программы обложить тестами и формальной верификацией? Религия запрещает?
     
     
  • 4.130, Анонимище (?), 11:46, 19/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Зачем идти более трудозатратным путем когда сам язык программирования может часть работы проделать за разработчиков?
     

  • 1.45, Аноним (45), 06:48, 18/11/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    >В качестве целей проекта заявлено создание SSH-стека на языке Zig, легко расширяемого для проведения экспериментов и исследований, например, связанных с тестированием посткватновых алгоритмов шифрования

    передайте этим сказочным, что в ssh уже 100 лет в обед как есть посткванты, ничего переписывать не нужно.

     
  • 1.49, Вася Пупкин (?), 07:09, 18/11/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Как эксперимент конечно пусть играются, но идея в корне сомнительна. В таких критичных приложениях крайне важна корректность, соответственно максимальная защита от любых ошибок(в том числе с памятью)
     
     
  • 2.59, Аноним (59), 08:42, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Не существует языка, который в полной мере закрывал бы все потребности.
     
     
  • 3.77, Аноним (73), 11:47, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ada/SPARK?
     
  • 2.66, пох. (?), 09:26, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ага, НАЧИНАЙТЕ переписывать на хрусте!

    (до сих пор не пойму, почему кто-то еще не пилит на этом хороший и фкуссный грант. А то и два.)

     

  • 1.72, Аноним (73), 10:17, 18/11/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Зачем изобретать "лучший Си", когда Си уже является лучшим? <donk/>

    Более безопасные языки уже существуют, а что насчёт более "точных"? Си является абстракцией PDP-11 над современными системами с многоуровневым параллелизмом (на уровне инструкций, ядер, процессоров) и многоуровневой памятью (L1i, L1d, L2, L3, L4, ОЗУ), иногда гетерогенными.

    По-настоящему низкоуровневому языку не нужен сложный компилятор.

     
     
  • 2.89, Аноним (90), 13:00, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >Зачем изобретать "лучший Си", когда Си уже является лучшим?

    Вы имеете в виду лучшим в плане непродуманности?
    >Си является абстракцией PDP-11

    Вот беда, PDP-11 давным давно вышли из употребления.
    >и многоуровневой памятью (L1i, L1d, L2, L3, L4, ОЗУ)

    Ха, ха, ха. Язык с поддержкой кеша, ничуть не лучше кучи других языков. Вы юморист?
    >По-настоящему низкоуровневому языку не нужен сложный компилятор.

    Нужен и ещё как. Нужна как минимум поддержка зависимых и афинных типов.

    Пользуясь случаем, хочу задать вам, как апологету си вопрос: зачем вам нужно отсутствие гигиенических макросов, возможность выхода за границы массива, возможность потерять нулевой терминатор в строке? Для каких практических целей вам это нужно?

     
     
  • 3.120, Аноним (121), 21:03, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Я не тот аноним, но могу ответить

    >  возможность потерять нулевой терминатор в строке?

    А строки прям всегда обязаны быть NULL-терминированы? В GCC даже придумали __attribute__((nonstring)) для этого

    > возможность выхода за границы массива

    Возможность делать что угодно быть должна. Например, я знаю что там где заканчивается массив у меня начинается следующий и это именно то, что мне и надо. Страницы памяти могут объединяться в фолианты. Тут можно дофига примеров придумать где это не просто нужно, а только так и можно реализовать задуманное.

    > отсутствие гигиенических макросов

    что-то на индусском

     
     
  • 4.131, Аноним (50), 13:07, 19/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Только вот оптимизирующий компилятор будет рассуждать исходя из того, что ты не ... большой текст свёрнут, показать
     
  • 2.106, Аноним (50), 15:08, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Кто за это заплатит Обмазывайтесь интринсиками, ассемблерными вставками, жалуйт... большой текст свёрнут, показать
     

  • 1.79, Анонен (?), 11:57, 18/11/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Хороший язык. Даже в Redox начали драйвера с Rust на Zig переписывать.
     
     
  • 2.102, Кошкажена (?), 14:26, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Хороший язык. Даже в Redox начали драйвера с Rust на Zig переписывать.

    Можете ссылку дать?

     

  • 1.80, крокодил мимо.. (-), 12:00, 18/11/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    pq в openssh с версии 3.5 .. когда выкидывают легаси - получается libressl. плюс boringssl, gnutls, wolf, matrix и т.п.. и вот это.. на вкус и цвет выбираем любимые cve..
     
  • 1.86, Аноним (90), 12:53, 18/11/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Закапывайте. Zig до сих пор не имеет стабильной версии, а значит, в абсолютно любой момент может перестать компилировать уже существующие программы.
     
     
  • 2.110, пох. (?), 16:55, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    все норм - зигхайльссх еще несуществующая программа, ее не перестанет.

     
  • 2.113, Аноним (113), 17:07, 18/11/2025 [^] [^^] [^^^] [ответить]  
  • +/
    О, ужас!
    Вот это новость для авторов zssh. Придется таки сворачивать проект.
     

  • 1.109, пох. (?), 16:54, 18/11/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    в общем инсталлятор они уже допереписали (нет) и срочно нужна новая имитация бурной деятельности, а то споснор может подумать что можно перестать им платить.

     
  • 1.122, Аноним (122), 00:30, 19/11/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    ssh over http/3 вот что нужно развивать
     
  • 1.127, Аноним (127), 10:41, 19/11/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Мда, стандартная библиотека, экосистема, UTF-8 на уровне языка...Рождён мертвым.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2025 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру