С 99% вероятностью это означает, что yt-dlp решил использовать своё собственное хранилище сертификатов (certifi) вместо системного. Согласно документации, можно переключиться на системное хранилище опцией --compat-options no-certifi (и разработчику утилиты реально стоит добавить для неё галочку где-нибудь), а использовать небезопасную no_check_certificate здесь абсолютно не нужно
Кто-то здесь очень заинтересован в создании угрозы безопасности для пользователя, раз минусует меня и плюсует пользователя, который выступает за снижение безопасности. Не минусуй втихую, расскажи, почему ты считаешь, что снижение безопасности и поддержка MitM-атак это хорошо?
Если сертификат подменяет администратор (корпоративной) сети или антивирус (привет, Касперский), то guide должен быть предоставлен этим самым администратором сети или разработчиком антивируса.
Если сертификат подменяет неизвестно кто, то значит компьютер или сеть уже взломаны и их надо лечить от вирусов/хакеров.
Если сертификат подменяет сам пользователь, то он сам прекрасно знает, что и зачем он делает.
Ни один из этих случаев не является областью ответственности разработчика утилиты — он не должен делать ничего, в том числе не должен давать guide и не должен добавлять заведомо небезопасные опции
В любом ВАШЕМ живом проекте. К счастью, в нормальных проектах такую дичь не пишут, а если кто попытается написать — больно надают по рукам на код-ревью)
Я тоже повёлся на этот кликбейт вчера, но рисование в спектрограмме не имеет никакого отношения к PNG, а оценка в 176 КБ чисто теоретическая с кучей допущений
У RSA длинные ключи только потому, что они должны быть простыми числами с особыми свойствами, которых среди этих 4 килобит относительно немного. Нынче модно заменять RSA на какой-нибудь Ed25519, у которого такой особенности нет и у которого 256-битного ключа достаточно, чтобы обеспечить безопасность, сравнимую с 4096-битным RSA (собственно, если я правильно понимаю, в OMEMO используется как раз Ed25519)
Я попробовал, и мне не понравилось. Клиенты тормозные, через нестабильный интернет-канал все работает просто отвратительно, а сам сервер просто неповоротливый и укладывает не слишком богатый на процессор и память VPS даже всего с парой клиентов.
Как постоянный пользователь матрикса подтверждаю это всё
То ли здесь забыто слово «недоделанных», то ли спорно: у меня есть проекты, которые завершены, а также проекты, которые просто работают, и по этим причинам не требуют обновлений (один из проектов провисел с одним коммитом больше четырёх лет, при этом успешно работая на проде все эти годы (значит это уже не pet?); висел бы и дальше, если бы я не решил таки бампнуть зависимости)
Системное программирование на то и системное, что изначально никакой стандартной библиотеки в принципе не существует. Если используется стандартная библиотека (та, которая про файлы, потоки, ввод-вывод и вот это вот всё), значит используется API готовой операционной системы — а это уже вполне прикладное программирование (к моему примеру с системным вызовом write это тоже относится).
В других языках вроде ведь всё примерно то же самое. Когда вы делаете Hello World на том же C, вы не забываете к размеру бинарника прибавить размер libc для честного сравнения? А сколько плясок с бубном потребуется, чтобы сделать Hello World на C без libc?
У системного программирования и подходы к программированию совсем другие, вот например минимальный бинарник размером 1.7 КБ (наверняка можно меньше, но я сам не умею)
Код по ссылке ничего не делает, но я попытался добавить системный вызов write, чтобы бинарник был не совсем пустой:
let s = b"Hello, world!\n";
unsafe {
syscalls::syscall!(syscalls::Sysno::write, 1, s.as_ptr(), s.len()).unwrap();
}
Почему я должен захотеть перейти на него с Aegis? В сравнительной табличке про него тактично забыли
Вася и Петя
С 99% вероятностью это означает, что yt-dlp решил использовать своё собственное хранилище сертификатов (certifi) вместо системного. Согласно документации, можно переключиться на системное хранилище опцией
--compat-options no-certifi
(и разработчику утилиты реально стоит добавить для неё галочку где-нибудь), а использовать небезопаснуюno_check_certificate
здесь абсолютно не нужноКто-то здесь очень заинтересован в создании угрозы безопасности для пользователя, раз минусует меня и плюсует пользователя, который выступает за снижение безопасности. Не минусуй втихую, расскажи, почему ты считаешь, что снижение безопасности и поддержка MitM-атак это хорошо?
Если сертификаты подмениваются — конечно не работает, любой браузер завопит вам ошибку безопасности при подмене
Некомпетентность пользователя тоже не является областью ответственности утилиты или её разработчика
Если сертификат подменяет администратор (корпоративной) сети или антивирус (привет, Касперский), то guide должен быть предоставлен этим самым администратором сети или разработчиком антивируса.
Если сертификат подменяет неизвестно кто, то значит компьютер или сеть уже взломаны и их надо лечить от вирусов/хакеров.
Если сертификат подменяет сам пользователь, то он сам прекрасно знает, что и зачем он делает.
Ни один из этих случаев не является областью ответственности разработчика утилиты — он не должен делать ничего, в том числе не должен давать guide и не должен добавлять заведомо небезопасные опции
В любом ВАШЕМ живом проекте. К счастью, в нормальных проектах такую дичь не пишут, а если кто попытается написать — больно надают по рукам на код-ревью)
Я тоже повёлся на этот кликбейт вчера, но рисование в спектрограмме не имеет никакого отношения к PNG, а оценка в 176 КБ чисто теоретическая с кучей допущений
Я, питонист с ~15-летним опытом, смотрю на это, и у меня какая-то агрессия и зубы скрипят
У RSA длинные ключи только потому, что они должны быть простыми числами с особыми свойствами, которых среди этих 4 килобит относительно немного. Нынче модно заменять RSA на какой-нибудь Ed25519, у которого такой особенности нет и у которого 256-битного ключа достаточно, чтобы обеспечить безопасность, сравнимую с 4096-битным RSA (собственно, если я правильно понимаю, в OMEMO используется как раз Ed25519)
В посте написано:
Как постоянный пользователь матрикса подтверждаю это всё
В оригинале там «network layer», а переводчик, видимо, играл с синонимами и проиграл
Зачем? У меня личный сервер на ejabberd уже лет пятнадцать, из настроек всего один yaml-файлик, erlang до сих пор не знаю
То ли здесь забыто слово «недоделанных», то ли спорно: у меня есть проекты, которые завершены, а также проекты, которые просто работают, и по этим причинам не требуют обновлений (один из проектов провисел с одним коммитом больше четырёх лет, при этом успешно работая на проде все эти годы (значит это уже не pet?); висел бы и дальше, если бы я не решил таки бампнуть зависимости)
Но зачем усложнять себе жизнь и брать делфи и питон, если можно взять просто питон?
Сам yt-dlp написан на питоне, так что использовать что-то отличное от питона нелогично
Тем более сабж не дёргает консольную утилиту, а плотно взаимодействует с библиотекой напрямую
Технические проблемы нужно решать, а не безальтернативно подвергать пользователя опасности
Ну не, выбор кодеков — вещь достаточно важная, чтобы без неё GUI оказывался для меня бесполезным
Мне как-то не очень понятны ваши претензии:
Системное программирование на то и системное, что изначально никакой стандартной библиотеки в принципе не существует. Если используется стандартная библиотека (та, которая про файлы, потоки, ввод-вывод и вот это вот всё), значит используется API готовой операционной системы — а это уже вполне прикладное программирование (к моему примеру с системным вызовом write это тоже относится).
В других языках вроде ведь всё примерно то же самое. Когда вы делаете Hello World на том же C, вы не забываете к размеру бинарника прибавить размер libc для честного сравнения? А сколько плясок с бубном потребуется, чтобы сделать Hello World на C без libc?
У системного программирования и подходы к программированию совсем другие, вот например минимальный бинарник размером 1.7 КБ (наверняка можно меньше, но я сам не умею)
Код по ссылке ничего не делает, но я попытался добавить системный вызов write, чтобы бинарник был не совсем пустой: