Sergey Matveev [Fri, 29 Jun 2018 04:50:25 +0000 (07:50 +0300)]
Музыкальный тур в США -- испытание
http://www.hitkiller.com/satyricon-bolshe-ne-poedut-v-ameriku.html
Satyricon описывает что нужен год бумажной волокиты чтобы смочь
выступить с концертами в США.
Sergey Matveev [Fri, 29 Jun 2018 04:46:32 +0000 (07:46 +0300)]
Клавиатуры Apple -- хуже чем можно представить
https://habr.com/post/415591/
То что их современные клавиатуры не имеют кучи клавиш известно. То, что
по ним нужно ударять как в доску -- я на личном опыте ощутил (это прям
полная противоположность тактильным ощущениям, ты просто долбишь по
доске где ход клавиш отсутствует (для моей чувствительности пальцев)).
Но вот что от одной песчинки или соринки оно тривиально может вывести из
строя механизм до невозможности его исправить -- новое удивление. Но все
поклонники Apple которых я знаю -- всё-равно уверенно считают что это
лучшие клавиатуры которые есть (даже с "бабочками").
Sergey Matveev [Thu, 28 Jun 2018 18:36:55 +0000 (21:36 +0300)]
Completion в zsh -- выключил, не могу
Захотелось мне заиметь fuzzy path completion. Когда я могу набрать
s/r/r2s <tab> и мне оно раскроется до src/rik2utils/rik2sapi.py.
Несколько строчек и оно работает.
Но работает с включённой системой completion. Во-первых, compinit,
находящийся в .zshrc, визуально заметно тормозит запуск shell-а. Но
терпеть можно, хотя и не приятно, раз стало заметно.
Во-вторых, он перестал дополнять путь до файла для какой-нибудь команды
info. Я хотел открыть файл info прямо указав до него путь -- tab
дополняет только по info файлам в /usr/local/....
В идеале я бы хотел иметь только path-completion подключённый без всего
остального. Пытался переопределением fpath-а на директорию где только
нужные плагины. Не получилось, хотя больше часа потратит наверное. Так
что плюнул пока. Вот я точно убедился что мне эти дополнения не нужны,
ну совсем, бесят и тормозят.
В любом случае zsh однозначно стоит использования. Bash -- никогда (хотя
если на каком-нибудь RedHat-based сервере уже стоит из коробки, то нет
смысла сносить, конечно же), я уж предпочту tcsh, если не его, то mksh
какой-нибудь.
Sergey Matveev [Thu, 28 Jun 2018 04:51:30 +0000 (07:51 +0300)]
Начинаю погружаться в zsh, учить его приёмы
zsh использую очень давно, но мало чисто его мощных фич использую на
деле. Вчера отметил что уже в состоянии с ходу вводить: rm !-2:1:r
(удалить файл взятый из первого аргумента предпредыдущей команды, но
вырезанным расширением).
Или smth !!:gs/foo/bar (для того чтобы в предыдущей команды заменить
*все* foo на bar). ^foo^bar заменяет только первое вхождение. Раньше я
бы стрелочками нашёл команду в истории, нажав Ctrl-d запустил
vim-редактор для правки строки с командой и в нём бы сделал :s/foo/bar,
сохранил, вышел, выполнил.
Очень нравится короткая запись for-циклов вида for i (smth) {cmd...} или
for i (smth) cmd. Скриптовать (пока?) не собираюсь на этом, но в
интерактивном режиме много экономит времени.
Sergey Matveev [Tue, 26 Jun 2018 19:28:41 +0000 (22:28 +0300)]
Меломан ли я? Сам ещё не понял
За прошедшие несколько дней: познакомился с очень понравившимся новым
альбомом Marduk: black/death metal. Собрался пойти в этом году на
концерт Within Temptation: sympho metal/rock, а то что-то вот больше
стали нравится, плюс на подходе новый альбом, плюс в живую я так и не
ходил на них ни разу. В сентябре ещё планирую на Korpiklaani: финский
folk beer metal. Сегодня познакомился с новым альбомом Juno Reactor,
который тоже очень понравился (куда ближе к первым альбомом он, это
здорово, хотя ещё не ощутил есть ли хиты) и отметил что не прочь
полюбопытствовать сходить на их живое представление, хоть это и
psy-trance (фиг знает какой это жанр, не разбираюсь). На работе сегодня
же вспомнили про замечательную группу Кувалда (trash metal?) и я на
полном серьёзе хотел бы пойти на их концерт, жалею что не сделал этого
во время учёбы в институте, когда они приезжали. А на выходных в
очередной раз прослушивал два альбома Dolores O'Riordan (рок). Плюс
планирую (под настроение) сходить на Pain of Salvation (в конце года
приезжают): progressive rock.
Sergey Matveev [Tue, 26 Jun 2018 19:13:10 +0000 (22:13 +0300)]
Оказалось что про ZFS block pointer я знаю больше чем Chris
https://utcc.utoronto.ca/~cks/space/blog/solaris/ZFSBlockPointers
Огромная кладезь знаний по ZFS (да и многим другим вещам) мною была
найдена в блоге этого чувака. Каждый раз когда он пишет что-то про ZFS,
то расширяются мои горизонты понимая. Но не в этот раз: оказалось что
всё что там написано в этой статье про BP я уже знал. ZFS master! :-)
И об этих BP даже уже успел рассказать в ivi компании.
Sergey Matveev [Mon, 25 Jun 2018 07:05:54 +0000 (10:05 +0300)]
Marduk -- Viktoria (2018)
Скачал (в плохом качестве, для ознакомления) сабжевый альбом. Особо
ничего не ожидал. Но дико понравился! Хочется переслушивать. Ничего
нового в нём не появилось, но всё-равно хорошего качества.
Sergey Matveev [Sun, 24 Jun 2018 19:29:17 +0000 (22:29 +0300)]
Почему я использую zsh, а не bash или tcsh
Сегодня вспоминал причины почему же я зарёкся использовать bash и всегда
на рабочую машину ставлю zsh.
Я сидел много лет на tcsh -- отличнейший shell из которого bash много
спёр идей и всё-равно так и не дорос до его автоисправлений. Как
интерактивный shell, tcsh, на мой взгляд, лучше bash-а, не даром его в
FreeBSD делают по-умолчанию.
Я сидел много лет на bash. Не могу сказать что это не юзабельный. Вполне
себе годный shell если уже стоит (в некоторых дистрибутивах он из
коробки есть). Но предпочту не ставить его если есть mksh или tcsh (не
говоря уж о zsh).
Недостаток mksh и tcsh который часто бьёт: несовместимость. tcsh вообще
не POSIX shell -- для любого скрипта придётся запускать отдельный shell.
А скриптовать часть хочется прямо в командной строке. Находятся уроды
которые пишут именно на bash, с башизмами, не POSIX совместимые скрипты:
иногда приходится иметь дело с их скриптами и поэтому bash приходится
держать про запас для их запуска.
zsh полностью лишён всех этих недостатков и имеет массу достоинств.
Главное:
* он обратно-совместим с bash-ем. Точнее, говорят, что не везде, но я не
встречал скриптов с башизмами которые под ним не заработали бы. То
есть я могу держать и превосходный интерактивный shell и скриптовать в
нём (не на каком-нибудь csh-диалекте) и запускать скрипты
* он меньше по размеру и работает быстрее -- да, можно увидеть визуально
разницу при запуске скриптов или при работе completion системы (хотя в
zsh там просто другая архитектура)
Есть ли что-либо чего умеет bash, но не zsh? Я не слышал о таком. В zsh
колоссальное количество плюшек для удобства (типа =() команд,
возможности автоматического tee вида ">foo >bar", ">foo | ...", итд), но
не многие их знают и пользуются. Я тоже отношусь к их числу.
Какие же killer-фичи есть лично для меня?
* shared history между разными instance-ами zsh-а. Я параллельно могу
работать в нескольких shell-ах и у меня будет общая история между
ними. Особо тут комментировать нечего -- безумно удобно
* встроенный autopushd -- превращает cd команду в pushd. Просто так её
заалиасить нельзя -- много чего сломает. Для меня must-have
* очень привык к удобным алиасам включающих в себя pipe-перенаправление
* **-expansion путей до файлов. В bash только примитивная поддержка
* zmv команда, невероятно помогающая массово переименовывать файлы,
особенно актуально для музыкальных файлов. zsh стоит поставить и
запускать только хотя бы ради этой команды
* autocorrection, spellchecking для команды и путей к файлам. Было время
что я использовал tcsh в первую очередь только ради этих фич, вместо
bash. Сейчас я это всё отключил -- считаю что лучше уметь
редактировать строку эффективно, плюс были случаи когда где-то
опечатывался, мне суют вопрос с autocorrection, но я уже успеваю
ввести следующую команду или ввод для ожидаемой мной: в итоге
происходило то, чего никак не хотел
Я не проверял как работает vi-режим редактирования командной строки в
bash, но в zsh отлично, уже полтора года сижу на нём.
Список небольшой, но shell ОБЯЗАН быть удобным. Shell и текстовый
редактор это то, где проводится чуть ли не 100% времени и для чего
постоянно отдаются команды. Множество маленьких приятных мелочей zsh
перерастают в качественное удобство.
Хочу заметить что я НЕ заинтересован в возможностях zsh-а по богатому
дополнению всего и вся. 95% всех пользователей и поклонников zsh любят
его за его дополнения. Я считаю это не то что бесполезным, а скорее
вредным и развращающим. Плюс многое из completion-а требует чтения
сторонних файлов и если это происходит не мгновенно (для глаза), то
видна задержка которая лично меня выбешивает.
Очень многие любят в zsh возможности по настройке строки приглашения: и
на несколько строк и с выравниванием по правому краю -- я никогда не
видел пользы в этом, а только загромождение экрана. Мне например
нравится чтобы в строке приглашения был показан код возврата
выполнившейся команды -- в bash это можно было делать уродливым хаком, в
zsh сразу есть %? переменная: вот эти возможности prompt мне нравятся.
Сейчас вот поставил синтаксическую подсветку для zsh -- может быть это
будет ещё одна killer feature.
И я НИ капли не заинтересован в серьёзном программировании/скриптовании
на zsh (кроме плагинов/фич для использования в самом zsh). Я убеждён что
писать надо на POSIX shell, а если его не хватает, то использовать
полноценный язык программирования типа Perl, зачастую встраивающийся
даже в несколькомегабайтные сборки для домашних маршрутизаторов.
Sergey Matveev [Sun, 24 Jun 2018 19:11:55 +0000 (22:11 +0300)]
zsh syntax highlighting
https://github.com/zsh-users/zsh-syntax-highlighting
Очень интересная штука! Включил и пока очень доволен. Подсвечивает
различные части командной строки, причём налету, прямо во время ввода
(например когда вводится открывающая/закрывающие скобки).
Sergey Matveev [Sun, 24 Jun 2018 17:10:25 +0000 (20:10 +0300)]
Within Temptation неожиданно обрадовал снова
Оооочень давно я не ставил альбомы этой группы. Первые их альбомы мне не
очень нравились. Сейчас прослушал с последних до первых и мне они очень
нравятся! Всегда считал что Шарон мало работает голосом, лишь только
"воет" -- или во мне что-то поменялось или наушники делают своё дело, но
такого мнения сейчас нет.
Sergey Matveev [Sat, 23 Jun 2018 21:59:29 +0000 (00:59 +0300)]
Swap на ZFS
Swap вообще лучше конечно не делать на ZFS -- она имеет все фишки
которые будут только вредны для него. Но, не разбивать же диск на
партиции чтобы сделать swap, а остальное отдать под ZFS? Поэтому уж
лучше так, чем никак:
volblocksize по-умолчанию равен размеру страницы на SPARC-ах, но у меня
дурацкий x86. sync выключается чтобы как можно быстрее сбросить на диск
данные требующие выгрузки (swap на то и нужен). logbias заставляет писать
на диск напрямую, минуя SLOG, если он есть. primarycache заставляет не
кэшировать сами данные -- раз что-то свопится, то значит мало памяти,
как-раз её нужно на диск освобождать. Отключать кэш насовсем я не уверен
стоит ли -- всё же запросто может чтение, и тут метаданные уже есть,
которые занимают сильно меньше чем сами страницы.
Sergey Matveev [Sat, 23 Jun 2018 21:47:19 +0000 (00:47 +0300)]
Тук-тук шутка
https://en.wikipedia.org/wiki/Knock-knock_joke
Не раз в американских фильмах/мультфильмах (с ходу: Вам письмо, Симпсоны)
встречал эту шутку. Знаю что это является шуткой у них. Но так как
слышал только в переводе, то совершенно не понимал её. Только на статье
в Wikipedia понял игру слов. В переводе -- полный бред получается.
Sergey Matveev [Sat, 23 Jun 2018 21:42:47 +0000 (00:42 +0300)]
Codec2 и Opus
https://auphonic.com/blog/2018/06/01/codec2-podcast-on-floppy-disk/
Не слышал раньше про аудиокодек для речи Codec2. Впечатляющие результаты
показывает для сверхнизких скоростей! Подкасты я слушал только "Eaten By
A Grue" и они закончились, так что задач для Codec2 пока нет. Но буду
иметь в виду!
И ещё ссылка там же есть на сравнение Opus кодека:
https://auphonic.com/blog/2012/09/26/opus-revolutionary-open-audio-codec-podcasts-and-internet-audio/
А вот его я использую просто всюду и везде! Mumble для работы использует
его (хотя это не моя заслуга), вся музыка которую ношу на работу в Opus,
все видео которые я кодирую тоже внутри имеют Opus. Когда-то, конечно
же, был Vorbis, но уже просто смысла нет его использовать.
Opus сложный -- фактически два кодека в одном. Но уж больно хорошее
качество даёт (собственно, лучшее), да и с софтом то проблем вообще не
замечал. Just works.
Sergey Matveev [Sat, 23 Jun 2018 16:35:39 +0000 (19:35 +0300)]
Преимущества и недостатки ZFS
http://www.stargrave.org/ZFS-proscons.html
Так как нередко спрашивают "коротко: чем ZFS хороша?", то решил написать
вот такую статью с тройкой списков за/против, как я их вижу.
Sergey Matveev [Sat, 23 Jun 2018 10:40:13 +0000 (13:40 +0300)]
У всех современных клавиатур MacBook-ов серьёзные проблемы
https://www.apple.com/support/keyboard-service-program-for-macbook-and-macbook-pro/
А то я регулярно слышу о том что качество Apple железа хорошее.
http://xahlee.info/kbd/keyboards_Apple.html
но их клавиатуры это чуть ли не худшие из существующих.
Sergey Matveev [Sat, 23 Jun 2018 09:24:11 +0000 (12:24 +0300)]
UNIX wildcards gone wild
https://www.defensecode.com/public/DefenseCode_Unix_WildCards_Gone_Wild.txt
Статья описывающая хаки в именах файлов, которые могут быть применены
для совершенно нежданных действий типа удаления всего и вся, исполнения
произвольного кода. Всё основывается на wildcard-ах shell-а.
Sergey Matveev [Fri, 22 Jun 2018 07:43:17 +0000 (10:43 +0300)]
Web 1.0/2.0/3.0
https://www.tibetangeeks.com/technologies/web_development/faq-what_is_web_x.0.html
Скопирую сюда пояснения в разнице между абстрактными понятиями между Web:
Web 1.0
Retrieve information: "The Static Web"
Like going to a library.
"That Geocities and Hotmail era was all about read-only content and
static HTML websites. People preferred navigating the web through
link directories of Yahoo! and dmoz."
In web 1.0 we can: Read pages, explore a web site, but can't add
anything of our own. We can: search the site or the web itself for
information; sometimes fill out a form.
Examples: any basic website.
Web 2.0
Participate: "The Social Web", "Interactive Web"
Like a workshop, or a party.
"User-generated content and the read-write web. People are consuming
as well as contributing information through blogs or sites like
Flickr, YouTube, Digg, etc. The line dividing a consumer and content
publisher is increasingly getting blurred in the Web 2.0 era."
In web 2.0 we can: Interact with a website, not just read it.
Communicate with other users of a website, or even of different
websites. Interact with the website itself, and even change it.
Examples: FaceBook, Wikipedia, Flickr, Youtube, Digg. News sites
where we can leave comments and choose which kinds of news we want
to see.
Web 3.0
Personalize: "The Semantic Web" ("web of meaning")
Like having a personal web assistant.
"will be about semantic web (or the meaning of data),
personalization (e.g. iGoogle), intelligent search and behavioral
advertising among other things."
In web 3.0 we will: Search the web in a more intelligent way -- the
browser will retrieve information for us, and even offer suggestions
we may not have thought about while searching for information. See
"our own" web; a different person would see a different web.
Websites will appear to us according to how we use the web, what we
look at the most. We don't have to set our preferences, the web and
our browser will "see" our preferences by what we do.
Examples: Google and other searches, that give suggestions based on
what you type. News and information sites, that show articles based
on what you have already looked at.
То есть, Web 3.0 практически по определению это то, когда за вами
проводится активная слежка, сбор информации. Примером фактически
является только Google (ну возможно мелочь типа Yandex).
Sergey Matveev [Thu, 21 Jun 2018 19:00:16 +0000 (22:00 +0300)]
Крутейшие хакеры об ассемблере Go
https://habr.com/company/badoo/blog/317864/
Коллега заметила что ВСЕ они -- очкарики. Просто забавный факт.
Восхищаюсь Томпсоном... да и Пайком, да вообще все офигенно круты!
Читая статью, аж захотелось на ассемблере (но только под Go!) пописать
чего-нибудь.
Sergey Matveev [Thu, 21 Jun 2018 18:57:35 +0000 (21:57 +0300)]
iptables официально deprecated
http://www.opennet.ru/opennews/art.shtml?num=48814
И куча комментариев с обсуждением этого зоопарка. А, чисто по
случайности, я ведь пять минут назад читал tutorial по PF...
как же миры BSD и Linux отличаются!
Sergey Matveev [Wed, 20 Jun 2018 04:41:04 +0000 (07:41 +0300)]
OpenBSD отключает HyperThreading насильно
https://www.mail-archive.com/source-changes@openbsd.org/msg99141.html
Я это делал в BIOS-е когда это ещё не было модно :-). Мне действительно
нравятся подходы Тео Де Раадта -- не может быть никаких компромиссов в
данных вопросах безопасности и небольшого падения производительности.
Sergey Matveev [Sat, 16 Jun 2018 10:51:33 +0000 (13:51 +0300)]
Нашёл GPLv2 от Dell ноутбука
Пока убирался в квартире и выкидывал протухший хлам от оборудования, то
напоролся на полную распечатку GPLv2 шедшую вместе с Dell ноутбуком.
Сколько копий то наделано только ими одними!
Sergey Matveev [Fri, 15 Jun 2018 07:00:46 +0000 (10:00 +0300)]
Chrome запретит установку плагинов не одобренных Google-ом
https://tproger.ru/news/google-chrome-inline/
На Chrome мне в целом насрать конечно же -- закрытое проприетарное ПО,
что о нём говорить? Но меня удивляет как вот после подобных новостей
люди всё-равно считают Google корпорацией добра. Не, хуже безусловно
есть: Apple. Но когда вам разрешают использовать только то, что одобрила
корпорация... это вообще просто обычная черта проприетарного ПО.
Sergey Matveev [Fri, 15 Jun 2018 06:57:51 +0000 (09:57 +0300)]
www. домены -- де-факто
https://habr.com/post/413739/
Чтобы там не говорили модные хипстеры о том, что Интернет это Web
по-умолчанию и поэтому www. используют только старпёры, но даже
статистика говорит об обратном. Лично я приверженец доменов для WWW с
www. -- по одному домену сразу понятно чему предполагается размещаться
на данном ресурсе. Протокол уже давно не показывает этого: преобладающее
большинство протоколов используют в качестве транспорта HTTP и поэтому
"http://" ни о чём не говорит.
Sergey Matveev [Fri, 15 Jun 2018 06:55:48 +0000 (09:55 +0300)]
Microsoft требует глаз да глаз, творит недопустимое
http://www.opennet.ru/opennews/art.shtml?num=48778
В этом году слышал что Microsoft стала совсем другой -- мол теперь она
дружит с "open source" (а, с free software, интересно как?). Но а я
считаю что как и преступники, такие как Microsoft по сути не меняются:
пускай в open source, но они всё-равно запилят абсолютно недопустимые
действия, как вот например принудительная замена dash на bash без лишних
вопросов.
Sergey Matveev [Thu, 14 Jun 2018 07:01:32 +0000 (10:01 +0300)]
ZFS recordsize на разделе для торрентов
BitTorrent протокол использует 16 KiB размеры блоков при передаче. Есть
совет о том чтобы выставлять recordsize этого размера для раздела куда
качаются торренты. Как минимум это уменьшит фрагментацию, так как не
надо будет на каждый пришедший блок делать полную перезапись 128 KiB
блока, и уменьшит нагрузку по IOPS-ам.
Я так и делал. Но данные действительно делаются ОЧЕНЬ
фрагментированными. Многое что скачивается начинает читаться с диска со
скоростью не более 10 MB/s. Приходится перекопировать файл, чтобы
уменьшить фрагментацию. Так что перекопирование после скачивания в таком
случае -- обязательно! В aria2, к сожалению, из коробки возможности
сделать cp после скачивания и seed-ить из нового места не получится.
Наверное можно написать скрипт который приостановит seeding, сделает
копирование, переместит, продолжит seeding. Но ещё не смотрел всерьёз в
эту сторону.
Зато впервые ради эксперимента включил большие размеры блоков: recordsize=1M.
Sergey Matveev [Thu, 14 Jun 2018 06:47:37 +0000 (09:47 +0300)]
Заблуждения о GDPR
https://habr.com/post/414053/
Статья в целом высосана из пальца, но действительно я слышал много
подобных мифов о GDPR. Лично я считаю что GDPR крайне нужная штука.
В РФ уже и раньше двигались в сторону подобных законов, что есть
хорошо. В Европе GDPR пришёл внезапно, а не плавно как у нас и
поэтому так много о нём говорят.
Sergey Matveev [Wed, 13 Jun 2018 06:57:43 +0000 (09:57 +0300)]
Посмотрел фильм Детонатор
https://ru.wikipedia.org/wiki/%D0%94%D0%B5%D1%82%D0%BE%D0%BD%D0%B0%D1%82%D0%BE%D1%80_(%D1%84%D0%B8%D0%BB%D1%8C%D0%BC,_2004)
Где-то 3/4 фильма я наверное скучал, не захватывал. Под конец уже стало
получше, но всё-равно не было особо никакого восторга. Но вот на
следующий день, спустя время, всё вспоминал о нём и понял что он
понравился, раз остался в голове, не выходит! Поднимает вопросы
не часто возникающие у фантастов по теме перемещения во времени.
Sergey Matveev [Tue, 12 Jun 2018 10:21:55 +0000 (13:21 +0300)]
Посмотрел "Большой побег"
https://ru.wikipedia.org/wiki/%D0%92%D0%B5%D0%BB%D0%B8%D0%BA%D0%B8%D0%B9_%D0%BF%D0%BE%D0%B1%D0%B5%D0%B3
Очень понравился! Но на протяжении *всего* фильма (ну кроме конца) не
покидало ощущение что уж какие-то больно добрые все фрицы в этом лагере.
Прям нянчатся с этими офицерами, особенно не наказывая и давая огромную
волю на то чтобы работать. Собственно, из-за этого и прогорели. Только в
конце они наконец догадались расстрелять. Но, это уже, насколько понял,
Гестапо взяло дело в свои руки.
Sergey Matveev [Tue, 12 Jun 2018 09:44:25 +0000 (12:44 +0300)]
Gorguts -- Colored Sands
https://en.wikipedia.org/wiki/Colored_Sands
Долго не включал этот альбом, единственный упомянутый явно на моей
домашней странице. В жизни вообще меня впечатляли до мурашек только два
альбома: Nightwish - Once и этот Colored Sands.
Once... видимо потому-что был маленьким и такого богатого симфо-метала
не слышал раньше вот и впечатлил. Альбом я считаю неплохим и сейчас, но
по ощущениям он наравне с кучей остальных.
А вот Colored Sands до сих пор, с 2013-го года, доставляет немалое
удовольствие и восторг от гениальнейшей работы! Не забуду тот день когда
в полночь я его получил и начал слушать. С час я не отрывался от него
вообще -- просто надел наушники и слушал. В середине альбома есть
симфонический трэк "The Battle of Chamdo" после которого врывается
"Enemies of Compassion". С полминуты я был полностью поглощён
разнообразными чувствами. За несколько лет до этого, в YouTube Gorguts
выложили Unnamed трэк. Я его слушал, но спустя годы позабыл. На самом
деле это был сильно изменённый Enemies Of Compassion. Так вот когда этот
трэк на итоговом альбоме резко ворвался, то у меня сильнейшее, как
никогда, ощущение дежа вю и полная растерянность от того, что я не
понимаю где я мог его слышать раньше. Ведь явно я его не мог слышать
раньше -- альбом то только вышел. От Gorguts более десяти лет не было
(про Unnamed я просто позабыл) никаких вестей. Но тут сильнейшее
ощущение что я с ним знаком.
Лично для меня этот альбом идеален! В нём есть всё что (моя) душа
пожелает. Из оригинального состава со времён легендарного революционного
альбома Obscura остался только Люк Лемей. А присоединились, Kevin
Hufnagel и Colin Marston -- крутейшие убермузыканты с которыми уже был
знаком по Dysrhythmia. Если и есть музыка идеально вписывающаяся в
внутренний мир какого-то определённого человека, то у меня это
однозначно этот альбом!
Люк Лемей -- гений, создавший ещё и альбом Obscura, с которым знаком
каждый уважающий себя металлист.
Sergey Matveev [Tue, 12 Jun 2018 08:51:14 +0000 (11:51 +0300)]
Tim Pope не перестаёт удивлять, даже домашней страничкой
https://tpo.pe/
Казалось бы обычная страница. Но если стукнуться curl-ом, чтобы у
него был не броузерский User-Agent, то мы получим shell-скрипт,
видимо, развёртывающий домашнее рабочее окружение Тима.
Sergey Matveev [Mon, 11 Jun 2018 18:36:26 +0000 (21:36 +0300)]
Зоопарк firewall-ов в Linux
https://www.opennet.ru/opennews/art.shtml?num=38901
https://www.opennet.ru/opennews/art.shtml?num=48690
Я так давно пользовался iptables, что напрочь забыл (ну и задач не
попадалось) что оказывается они только IPv4 пакетов. А ещё есть
ip6tabkes, arptables, ebtables. Потом придумали nftables. А теперь вот
ещё и bpfilter. У меня даже мысли не возникало после многолетнего
использования ipfw (ipf слишком прост и не удовлетворяет даже мои
запросы, а PF... появился сильно позже ipfw) что в Linux такой зоопарк.
Впрочем так было в нём всегда. Аж страшно вспоминать что я с этим
мирился. ifconfig есть. Но для TUN/TAP: tunctl. Для bridge: bridgectl.
Для VLAN-ов: какая-то отдельная штука. Для bonding: ifenslave. Linux
(именно Linux) это помойка самого разностороннего кода. В *BSD системах
всё целостно. *Всё* что касается сетевых интерфейсов делается одной
командой ifconfig: VLAN, TUN/TAP, туннели, bridge, bond, IPv4/IPv6
адресация, итд.
ipfw firewall: IPv4, IPv6, TCP/UDP/SCTP, ICMP*, Ethernet, traffic
shaper/scheduler, NAT, NPTv6, NAT64, IPsec. Stateless и stateful режимы
работы. Всё в одном. Честно, PF не трогал -- может там ещё всё гораздо
лучше. Но оно в *удобном* одном интерфейсе, а не iptables от которого в
дрожь бросает в плане useability.
А в *BSD всё что касается статистик и мониторинга в удобных командах
знающих всё обо всём: fstat, gstat, ifmcstat, iostat, ipfstat, kldstat,
lockstat, netstat, nfsstat, plockstat, pmcstat, procstat, pstat,
sockstat, vmstat. Почти все они имеют возможность вывода как в
человекочитаемом, так и машиночитаемом виде. У почти всех есть
возможность повтора вывода, чтобы делать что-то типа мониторинга. В
Linux это были бы сплошь разрозненные утилиты с совершенно непохожим
интерфейсом, документацией и возможностями.
Аналогично касается конфигурирования: acpiconf, atmconfig, bsdconfig,
ifconfig, kldconfig, mdconfig, pciconf, usbconfig. sysctl в *BSD
системах делает *очень* многое. В Linux: есть и sysctl и /sys.
Sergey Matveev [Mon, 11 Jun 2018 17:01:59 +0000 (20:01 +0300)]
Гуманоиды в Королёве
https://www.ivi.ru/watch/gumanoidy_v_koroleve
Вот значит как внешний мир о королёвцах думает -- мы отдельный мир, где
внезапно могут появится гуманоиды :-). Я слышал что за МКАДом жизни нет.
О радиоактивных болотах Королёва. А теперь вот сериал имеется.
It's an interesting project. It mixes aspects of UUCP, Sendmail and
others with heightened security. The nice thing about it is support
for sneakernet, dead drop, and air gaps. The peer-to-peer crypto is
based on Noise, a framework highly recommended by cryptographers.
Самое главное что в нём заметили это то, что он поддерживает флоппинет,
dead drop-ы и air gaps, чего другие в принципе не предоставляют.
Sergey Matveev [Mon, 11 Jun 2018 08:18:19 +0000 (11:18 +0300)]
Посмотрел "23"
https://www.kinopoisk.ru/film/23-1998-79905/
Особенно на фоне всяких "Хакеров" -- отличный фильм! Упоминается
настоящий Chaos Computer Club, старые добрые модемы с BBS-like выходом.
Августа Диля я могу вспомнить только по роли в Бесславных Ублюдках и с
трудом я мог не представлять главного героя в форме СС. Играет отлично!
Sergey Matveev [Sun, 10 Jun 2018 19:44:13 +0000 (22:44 +0300)]
Зарелизиз NNCP 3.3
https://lists.cypherpunks.ru/pipermail/nncp-devel/2018-June/000071.html
Релиз в котором дореализовал то, что копилось продолжительное время в
голове.
* Во-первых, более высокоприоритетные файлы которые появились во время
передачи nncp-daemon-ом, будут помещены (если их запросили, конечно
же) в очереди в начало. Раньше обе системы осведомлялись и знали что
появился новый файл, пускай более высокоприоритетный, но он добавлялся
в конец очереди. Сейчас он будет помещён перед более
низкоприоритетными. Если мы качаем почтовые сообщения и пришло ещё
одно -- оно будет добавлено в конец почтовым, но в любом случае перед
обычными файлами. Раньше только переконнектом можно было заставить
прососаться более высокоприоритетные. Теперь они по сути прерывают
передачу, продолжая потом
* Во-вторых, появился простой packet rate limiter для протокола
синхронизации. Когда рукопожатие закончилось, то максимальное кол-во
пакетов в секунду можно регулировать -rxrate/-txrate опциями командной
строки и в YAML конфиге. Так как максимальный размер пакета это 64 KiB,
то можно это использовать для грубого traffic shaper
* В-третьих, уровни nice (приоритеты) можно теперь задавать не просто
числом от 1 до 255, а символьными алиасами: NORMAL, PRIORITY, BULK,
FLASH. Есть сокращения: N, P, B, F. К приоритету можно добавить дельту
в виде "+1", "-2". Допустимы значения от "-31" до "+32" (кроме BULK,
где только "+31"). Мне кажется это ближе к удобству как задавалось в
UUCP, но удобнее UUCP. Значения по-умолчанию теперь поменялись для
пакетов и FLASH уровень nice по-умолчанию не используется нигде
* Ну и наконец nncp-daemon смотрит на наличие .seen файлов. Возможно их
доставили каким-то сторонним способом (флешка например) и tossing уже
прошёл через них -- нужно сообщить удалённой стороне что всё уже
скачано
Sergey Matveev [Sun, 10 Jun 2018 11:02:37 +0000 (14:02 +0300)]
Как настроить пересылку корпоративной почты на личный адрес
https://te-st.ru/2018/06/08/how-to-set-up-the-forwarding-of-corporate-mail-to-your-personal-address/
Эта статья показывает два факта:
* то, что люди используют web-интерфейсы для работы почтой и поэтому
страдают, потому-что в каждом сервисе они отличаются. Действительно
получается что основная масса народа в принципе даже не знает что
почту, мягко говоря, стоит использовать через почтовый клиент. Решение
проблемы для многочисленных ящиков/серверов: почтовый клиент. Точка.
Но нет, статья предлагает просто пересылать в какой-то один
* то, что из-за подобных статей УЖАСНО страдает корпоративная
безопасность. У нас, на полном серьёзе, за это могли бы уволить, как
минимум отругать
Как же достала весь этот тупейший бред по поводу "удобства"! Сначала
люди просто выбрасывают удобный инструмент, при этом создаётся
неудобство, начинают избавляться от него совершенно безумными способами
(типа отправки рабочей корреспонденции на личный ящик -- как правило,
это просто настройка слива корпоративной/коммерческой тайны на сервера
недружественных государств).
В детстве все читали книгу "Вредные советы". И она была смешна,
потому-что все понимали что причины/доводы описанные к каждому совету --
несерьёзны. Статья о forwarding-е чистейший вредный совет, да вот беда
что люди тут уже не смеются.
Sergey Matveev [Fri, 8 Jun 2018 18:40:12 +0000 (21:40 +0300)]
PyGOST в научной деятельности
http://cyberrus.com/wp-content/uploads/2017/10/51-56-119-17_8.-%D0%9A%D0%BE%D0%BC%D0%B0%D1%80%D0%BE%D0%B2%D0%B0.pdf
Коллега показала внезапно найденную статью-работу аспирантов где они
используют PyGOST. Конечно ни на меня, ни на проект ссылок никаких не
дают. Лестно что оно засветилось, но всё же работа абсолютно
бессмысленная. Люди сравнивают производительность двух функций на pure
Python и делают вывод что 34.10-2012 может и хорош, но в разы медленнее.
Мне кажется я за час могу прооптимизировать код Стрибога и смысл работы
будет полностью аннулирован -- Стрибог будет быстрее 34.11-94.
Сравнивать надо программы где попытались выжать всё что только могли из
SIMD-расширений процессоров например или GPU. PyGOST вообще не старается
быть быстрым -- он старается быть простым и читабельным в коде.
Например Wikipedia (с соответствующими ссылками) говорит что Стрибог (а
значит и 34.10-2012 (256 бит)), как правило, быстрее старого хэша и даже
значительно: https://ru.wikipedia.org/wiki/%D0%93%D0%9E%D0%A1%D0%A2_%D0%A0_34.11-2012
Sergey Matveev [Fri, 8 Jun 2018 18:36:27 +0000 (21:36 +0300)]
Самые быстрые барабанщики в мире
http://www.hitkiller.com/samye-bystrye-barabanshhiki-na-svete.html
Когда я был маленьким, то к нам в город приехал передвижной цирк с
животными. Животных очень всегда любил и помню что попросил у
родителей денег на билет, пускай даже одному чтобы сходить. Больше
всего запомнился заяц, которому когда подносили барабан, то он
очень быстро лапками по нему молотил. Видео с рекордсменом
барабанщиком напомнило того зайца.
Sergey Matveev [Fri, 8 Jun 2018 18:25:24 +0000 (21:25 +0300)]
Новый вариант как испортить в очередной раз отношения на работе
То, что я способен посраться даже с теми, с кем, многим кажется,
невозможно -- факт известный. В ivi это как правило связано было с
качеством кода с которым я интегрируюсь, невыполненными сроками,
админской деятельностью. И инициатором являюсь я, потому-что нетерпелив
и имею, видимо, завышенные никому не нужные требования. А на днях возник
ещё один вариант порчи отношений, но уже стороннего человека ко мне:
если я что-то плохо объясняю, то он не переспрашивают, а просто говорит
"свали". В общем, в очередной раз подтверждается что излишняя инициатива
в чём-то помочь -- обернётся против.
Sergey Matveev [Fri, 8 Jun 2018 07:27:29 +0000 (10:27 +0300)]
Ответ Linux Foundation на покупку Github-а Microsoft
https://www.linux.org.ru/news/opensource/14269275
Больше всего меня удивило что кто-то считал, что приобретение Github-а
может как-то означать что Microsoft "завладеет" чьми-то кодом. Ужас
какой бред. Неужели таких людей было много и среди 250k+ мигрировавших
проектов именно такие? Именно для всего подобного и создаются
лицензионные соглашения, особенно которые copyleft. Лично у меня
неприязнь к Microsoft/Github только одна -- я уверен что они сделают
плохой useability, например даже для просмотра в обязательном порядке
требуя JS, как например Google делает в Google Groups. Доставка кода на
лету же сейчас модно и корпорации любят это.
Sergey Matveev [Thu, 7 Jun 2018 19:16:07 +0000 (22:16 +0300)]
Интереснейшая статья о том как транспортировать видео в сетях
https://habr.com/company/oleg-bunin/blog/413479/
RTMP, WebRTC, RTSP/RTP, HLS, DASH. Почему столько транспортов, их за и
против, где имеет смысл использовать. Очень понятно расписано.
Sergey Matveev [Wed, 6 Jun 2018 19:45:50 +0000 (22:45 +0300)]
Культурно образовывал молодую коллегу девушку
А то узнал что знакома с Покемонами (которых я не видел), но не знакома
с Мышами Рокерами с Марса (впрочем, я только название наверное и помню).
Пришлось познакомить с представителями порнограйгд и копрограйнд культуры:
* https://www.youtube.com/watch?v=BKNhwrYdQwg -- известными популярными
чехами SPASM
* https://www.youtube.com/watch?v=XzZzhJWxWhM -- не менее известными
чешскими копрограйндерами GUTALAX
* https://www.youtube.com/watch?v=G4QJoVuGLXg -- ярчайшими
представителями нашей порно/горграйнд столицы (Иваново) SEPTICOPYEMIA.
Пришлось объяснять ещё и что такое буккаке
* https://www.youtube.com/watch?v=l1zFkkqHkec -- футболками нашей
несравненной группы из Твери DUODILDO VIBRATOR, которых у меня было
масса, но все уже износились
* https://www.youtube.com/watch?v=QfXJhEaoN5k -- клёвыми японскими
one-man-band группами в виде NEEDLE CONTAMINATED PORK
Sergey Matveev [Wed, 6 Jun 2018 19:29:43 +0000 (22:29 +0300)]
Прочитал "Угонщиков" Терри Пратчетта
https://ru.wikipedia.org/wiki/%D0%A2%D1%80%D0%B8%D0%BB%D0%BE%D0%B3%D0%B8%D1%8F_%C2%AB%D0%9D%D0%BE%D0%BC%D1%8B%C2%BB
Первая книга из серии про номов. В целом получил удовольствие, но до
большинства книг Плоского мира ей далеко. Но уже начинал вторую книгу.
В Wikipedia увидел факт что действие происходит там же где и его книги
про Джонни Максвелла -- именно их я закончил читать перед этим.
Sergey Matveev [Tue, 5 Jun 2018 19:23:37 +0000 (22:23 +0300)]
OpenBSD workstation guide
https://begriffs.com/posts/2017-05-17-openbsd-workstation-guide.html
Очень хорошее рассмотрение того как сделать отличную рабочую станцию под
управлением OpenBSD. Лично для меня самое ценное из статьи: список софта
используемого под кучу разнообразных задач. Взял на заметку вот такой
вот календарь: https://calcurse.org/
Sergey Matveev [Tue, 5 Jun 2018 18:45:30 +0000 (21:45 +0300)]
Почта, почтовые рассылки, Github
https://begriffs.com/posts/2018-06-05-mailing-list-vs-github.html
Автор показывает что почтовые рассылки можно отлично использовать для
отправки патчей и их обсуждения без какого-либо дополнительного
громоздкого online софта типа Gitlab/Github/Gerrit.
Я пару лет назад сильно холиварил по этому поводу на работе. В ivi ревью
проводилось просто прямо в комментариях Redmine-а. Это было удобно,
вполне. На текущей работе используется Gerrit. Он мне не нравился с
первого раза и не нравится и сейчас. Лично я его не подниму -- глюкавая
тяжёлая вещь, которая, на мой взгляд, ничего не решит если люди в
состоянии использовать почтовый клиент.
Но... как уже написал, требует умения владения почтой. Сегодня мне один
человек сообщил что я первый кто не доволен HTML почтой с top-posting и
что вообще все всегда просят полностью цитировать письмо на которое дают
ответ. Прежде уйму времени видел как люди абсолютно полностью не следят
за тредами и если им нужно написать foo@bar.com-у, то они просто ищут
любое письмо от него и нажимают ответ, не меняя ни темы, и даже оставляя
прошлую цитату совершенно полностью не имеющую отношения к тому о чём
они будут писать. Одной коллеге видимо заметили что у неё все сообщения
это один большой тред -- так сегодня *каждое* сообщение было не связано
с предыдущими, In-Reply-To/References напрочь стал отсутствовать.
Такое ощущение что люди в принципе не приемлют работающего удобного
софта и технологий. Если его им дать, то они, как специально, найдут
массу способов превратить его в нечто неперевериваемое чтобы оправдать
переход на что-то очередное новенькое свежее и shiny. Всю жизнь все
читали сверху вниз (ну в нашем языке) последовательно, а потом решили:
давайте ответ помещать перед вопросом!? А давайте ещё вместо текста
посылать HTML документ? А ещё связывать все письма в одну цепочку. А ещё
все все все цитаты как снежный ком наращивать. И после этого конечно же
любой согласится что любое убожество типа IM-клиентов будет лучшим
средством коммуникации людей.
Точно так же как и технологии не относящиеся к коммуникациям: людям
пофиг что у них данные в принципе не в сохранности (а зачем тогда эти
данные им нужны, спрашивается?), зато шрифтики красивы. Я так и не понял
в какой момент произошла разсинхронизация между мной и всеми окружающими
меня людьми: вроде бы все начинали примерно с одних и тех же компьютеров,
операционных систем (MS-DOS, Windows), но потом что-то пошло не так.
Практически никакие дорожки в ИТ мире теперь не пересекаются между нами.
А многие дорожки стёрлись напрочь: современный пользователь, похоже,
даже не подозревает что между компьютерами в принципе возможно передать
данные в зашифрованном виде (я имею в виду действительно зашифрованном,
чтобы третье лицо не нарушило конфиденциальность, а не как в Telegram).
Безусловно и про меня у них аналогичные мысли :-), только прямо наоборот.
Некоторые обзывают пещерным человеком, но при этом когда хотят защитить
SOCK-прокси, считают простейший вариант в виде stunnel абсолютно
неприемлемым и переусложненным (я кстати так и не узнал а какой же
вариант будет нормальным? похоже... MTProxy!). Каждый убеждён что
обычному пользователю вообще не нужно иметь никаких данных хранимых на
компьютере -- это задача облаков, а всякие резервные копии, RAID (или
аналоги) это для упоротых людей.
Моя проблема только в одном -- я почему-то пытаюсь навязать своё мнение,
меряю людей по себе. У нас всех банально в корне совершенно разные
потребности, мировоззрение и ценности. Из серии "сытый голодного не
вразумит".
Sergey Matveev [Mon, 4 Jun 2018 19:35:00 +0000 (22:35 +0300)]
Тюнинг FreeBSD
Пошарив по поисковикам, вижу что tracker.cypherpunks.ru много где
упоминается среди списка BitTorrent трэкеров. Сегодня занялся тюнингом
ядерных параметров чтобы тысячи пакетов/сек работали без порождения 8сек
ping-ов.
В amd64 и современной FreeBSD все параметры которые рекомендуют
подкрутить: уже имеют огромнейшие значения. netstat -m говорит что в
память по сетевым подключениям я не упрусь никогда. По TCP вообще нет
никаких ожиданий в очередях: netstat -i. Похоже основной повлиявший
параметр это kern.ipc.somaxconn.
Sergey Matveev [Mon, 4 Jun 2018 17:53:58 +0000 (20:53 +0300)]
Github учётная запись удалена
Когда-то давно я уже вынес все свои репозитории с Github-а из-за его
terms of service. c79456c70ed4bfabf1fa05110bb1d71b3fcac398 b9d2f499f6f68e13cd82ccf7fa2ca37097942653 d800b73a50023c7ab15a16911b3c8cfedf86c841
Но учётная запись оставалась чтобы делать fork/pull request по мелочам,
заводить тикеты. А сегодня Github куплен Microsoft. Стопудово это
приведёт к тому, что страницы вряд ли будут открываться без скачивания к
себе закрытой программы. Пока ещё можно, то удалился полностью.
Sergey Matveev [Sun, 3 Jun 2018 10:59:11 +0000 (13:59 +0300)]
Королёв -- прекрасен!
На выходных часто пешком или общественным транспортом езжу то к
родителям, то к друзьям, то просто в магазин (закупиться тем, чего нет в
близлежащих). Это районы Болшево, Подлипки, Юбилейный, старые и новые
части города (новые это там, где раньше были только деревья или домики).
И вот глаз нарадоваться не может как же хорошо всё облагоустраивается из
года в год, улучшается. Полно людей, довольных, счастливых, семей,
велосипедистов, девушек красивых. Относительно регулярно какие-то
праздники устраиваются -- пускай магазинами, но всё-равно поднятие
настроение во всей округе. Так вот идёшь и тебе просто хорошо и
радостно. Особенно вспоминая места какие они были прежде. Я всегда любил
свой город, но он становится всё лучше и лучше. Да, когда он был закрыт
(и назывался Калининградом), у нас никаких не-русских на улицах не
встретишь, но, ничего страшного я считаю. Одно но: количество зелени
уменьшается, но ни в какое сравнение с тем как это происходит в Москве
например -- у нас очень зелёный город.
Sergey Matveev [Sun, 3 Jun 2018 08:11:19 +0000 (11:11 +0300)]
Посмотрел "Хакеры" и "Сеть"
О "Хакерах" упоминают относительно часто в разговорах, а я, не смотря на
то, что фильм 1995-го года, так и не посмотрел его. Решил исправить этот
недочёт. Я слышал что фильм с технической точки зрения так себе. Но, я
не ожидал что настолько. Один из худших фильмов которые я когда-либо
видел! А его техническая сторона... хоть как-то чтобы оно соприкасалось
с действительным миром компьютеров -- полнейшее срамнейшее говно. Мне
кажется фильм способен впечатлить 11-12 летних подростков, плохо
знакомых с компьютерами. Единственное что в нём было не бредово: эти
подростки мечтающе и заворожённо говорят о UNIX manual-ах (хотя, лично
я, в их возрасте уже банально использовал UNIX-like системы как основную
ОС). А всё остальное... мне даже стыдно как-то критиковать ибо такой
бред. И сама работа режиссёра мне не понравилась -- он явно пытается
вставлять трэки Prodigy чтобы типа показать активные действия, action,
но это вызывает только смех. Даже Матрица с её nmap-ом куда круче
выглядит по правдоподобности.
Но, пока читал про "Хакеров", наткнулся на упоминание "Сети" -- тоже
фильм 1995-го года с Сандрой Баллок. И тоже посмотрел. И вот это просто
небо и земля! Безусловно оно там конечно тоже наивно, но там хотя бы
показывают debugger-ы и поиск ветвлений в ассемблере, whois в IRC,
telnet, traceroute показывающий AS (автономные системы), триангуляцию
положения сотового телефона. Про этом можно забыть -- суть фильма в том,
что наши жизни дико зависят от нескольких байтах в базах данных
компьютеров и информация которой мы сорим в сетях достаточно чтобы
охмурить голову любому человеку. Казалось бы -- тема не нова. Но это
было в 1995-ом году! А сейчас прошло чуть ли не четверть века и всё
только ещё больше усугублено -- информацией люди сорят так, что с
точностью до часов можно предсказывать их шаги и вообще решения в жизни.
Вместо огромного количества разрозненных баз данных -- большинство людей
централизованно находится всего-лишь в нескольких (Faceboogle и Apple).
В один и тот же год выпустили два фильма на тему кракинга и вообще сетей
с компьютерами, но один вполне себе хорош и крут в плане реалистичности
(плюс Сандра на которую просто приятно смотреть), а другой... стыдоба и
откровенное дерьмо (плюс Анджелина Джоли на которую, лично мне, не очень
приятно смотреть). Но, "Хакеры" гораздо более известны и популярны
оказались.
Sergey Matveev [Sun, 3 Jun 2018 07:52:07 +0000 (10:52 +0300)]
Трэкбол vs мышки
http://xahlee.info/kbd/trackball_vs_mouse.html
После нескольких лет использования двух трэкболов, подтверждаю все его
преимущества описанные в статье. В FPS не поиграешь (хотя я на работе
как-то сделал на трэкболе двоих коллег в Q3, но я ж был "отцом" в этой
игре), зато во всём остальном трэкбол однозначно удобнее. Но приходится
регулярно протирать его от скапливающейся грязи.
А также есть ещё и список лучших трэкболов (по отзывам людей) на 2018-ый
год: http://xahlee.info/kbd/trackball.html
Kensington Expert Mouse который я использую присутствует и очень
рекомендую его, вместо какого-нибудь Logitech Marble. В Москве я его без
проблем находил (хотя Marble наверное самый доступный). Как минимум он
хорош своим scroll-колесом.
Sergey Matveev [Sat, 2 Jun 2018 14:37:57 +0000 (17:37 +0300)]
Зарелизил NNCP 3.2 с исправлением зависимости от баги в самом Go
https://lists.cypherpunks.ru/pipermail/nncp-devel/2018-June/000069.html
Использовал сегодня nncp-bundle команду для перелива одних данных.
Ничего не падает, но не работает. -debug говорит что корявый tar
заголовок встречает в потоке.
Оказалось что в Go 1.9 archive/tar библиотека не создавала валидные tar
архивы с длинными путями (более 100 символов). А я nncp-bundle код делал
рассматривая как-раз именно эти архивы. Более того, BSD tar успешно их
обрабатывал. В Go 1.10 они исправили багу в https://github.com/golang/go/issues/9683
и начали создавать корректные архивы которые уже nncp-bundle не в
состоянии был обработать.
В чём проблема? Мне необходимо в потоке байт (которые например льются с
CD-ROM, ленты, просто блочного устройства) искать так называемые NNCP
bundle-ы, которые чисто технически являются tar архивом с пакетами
сложенными в виде:
где (в данном конкретном случае):
* 2WHBV3TPZHDOZGUJEH563ZEK7M33J4UESRFO4PDKWD5KZNPROABQ -- получатель
* PKTJQKU5M62LF3IND7JTPIJB5A45FSSQ7TEP4SGGT26RW4WAE76A -- отправитель
* HKKECXX7PWZ6YCDMWU74BT6OYKDBZLKF25NI4S3LZ3CJ57WTVMAA -- шифрованный пакет
Всё это в Base32 и поэтому суммарная длина такого пути -- 163 символа.
Сократить это можно каким-нибудь Base64, но оно всё-равно будет длиннее
100 символов и менее удобно для использования человеком.
tar заголовок (USTAR и PAX) имеет фиксированные позиции для хранения
путей. Но в нём два поля: само имя файла и некий префикс который к нему
можно добавить. Длина имени файла ограничена сотней символов.
Для чего я добавлял NNCP/ директорию? Чтобы как-раз таки именно его
искать в потоке байт и пытаться интерпретировать последующие байты как
tar заголовок. Go 1.9 archive/tar библиотека не проверяла длину пути и
буквально просто засовывала эти 163 байта. Почему BSD tar это читал?
Видимо ориентировался по нулевым байтам каким-нибудь. Просто повезло.
Go 1.10 библиотека стала делать корректно: определяет длину пути и
разбивает его на части. Имя пакета (в моём случае) шло в имя файла, а
остальное отправлялось в середине заголовка в поле префикса. В итоге
"NNCP/" оказался где-то в середине заголовка и вся логика по поиску tar
заголовка ломалась. А искать название пакета я не могу потому-что это
псевдослучайная строка. Можно конечно усложнить сам код поиска и в
памяти, найдя NNCP/, "расчитывать" поток байт назад чтобы найти начало
заголовка.
Я решил более простым (с точки зрения кода) способом, но требующим чуть
больше места для хранения. Я просто добавляю перед каждым файлом "NNCP"
директорию в архив. Так как её длина маленькая, то она помещается
полностью в поле имени файла и находится в начале архива, как и прежде.
В коде я, как и прежде, ищу "NNCP", интерпретирую начиная с него байты
как tar заголовок, проверяю что это директория, дальше считываю
следующий заголовок, который уже должен быть файлом с NNCP пакетом.
То есть, теперь хранится вот так:
И, как известно, WhatsApp использует протоколы: Noise (атаснейшая штука,
отличнейший выбор), Signal (достойная вещь тоже для IM); FreeBSD и Erlang.
FreeBSD у них держит 2 миллиона TCP соединений на одной машине.
В одном из интервью их спросили почему не GNU/Linux?
http://uk.businessinsider.com/whatsapp-built-using-erlang-and-freebsd-2015-10
Linux is a beast of complexity. FreeBSD has the advantage of being a
single distribution with an extraordinarily good ports collection.
На одном из сайтов тоже ответили на вопрос почему не GNU/Linux?
https://www.quora.com/Why-did-WhatsApp-choose-FreeBSD-over-Linux
Linux is the only OS that excels in nothing.
Windows has better audio quality, better media support, and PC
gaming exists on Windows.
MacOS is productive, inspiring, and preferred by many developers.
FreeBSD is closer to MacOS than Linux is. There are less surprises
on deployment. FreeBSD is organized, stable, and secure. Linux
panics more often. Even leap seconds can crash Linux servers.
Linux is a mess. I remember how many issues I had on upgrading
(Debian, Ubuntu, Gentoo). Since my servers are on FreeBSD, I have
been having only seamless upgrades over 8 years. (No mess with the
bootloader config, no chaos in /etc)
и ещё про файловые системы и, особенно, btrfs:
Anyone who cares about their data would go for ZFS (with the
exception of those huge companies who can afford implementing their
own storage systems that have similar data-healing features).
The most pathetic FS ever developed is BTRFS. It’s a shame that they
still didn’t stop fooling the world about it. The companies behind
it are too large to admit the stupidity. No sane person would ever
put production data on BTRFS. XFS is usable, but has nothing of the
power of ZFS.
И вот во всём согласен что самое точное слово для Linux мира это "mess".
И то, что оно ничем не выделяется вообще -- в Linux ничего нет
выдающегося (ну кроме copyleft, за это действительно уважаю). Разве что
из коробки он хорошо будет работать на суперкомпьютерах и утилизировать
многопроцессорные системы. Даже чисто технологически GNU/Linux мир
крайне отстаёт: ZFS, DTrace, LXC его на десять лет позже Jails
появившийся, ад со звуковыми системами.
Sergey Matveev [Sat, 2 Jun 2018 12:33:27 +0000 (15:33 +0300)]
Из любопытства посмотрел статистику по входящему трафику
И у меня за прошлый месяц было более 11 TB скачано.
Сколько отдано -- Ростелекомовский кабинет не показывает.
Вспоминаю разговоры о том что "терабайта хватит всем",
плюс то, что через месяц закон Яровой должен вступить в силу.
Sergey Matveev [Sat, 2 Jun 2018 10:22:06 +0000 (13:22 +0300)]
Оказывается Downfall создал тот же автор что и Cat Lady
http://the-cat-lady.wikia.com/wiki/Downfall_-_A_Horror_Adventure_Game
https://en.wikipedia.org/wiki/The_Cat_Lady
Эти два квеста очень понравились и только сейчас увидел что их сделал
один и тот же автор. Достойнейшие творения! Хотя Downfall по началу
очень кажется отталкивающим наколенным поделием.
Sergey Matveev [Sat, 2 Jun 2018 09:17:43 +0000 (12:17 +0300)]
Разговоры о приобретении Github Microsoft-ом
http://www.businessinsider.com/2-billion-startup-github-could-be-for-sale-microsoft-2018-5
Если это всё же произойдёт, то будет конечно огромный удар по свободному
ПО, которое вовсю хостится на Github. Впрочем... лично я уже давно не
использую его и не рассматриваю как вариант:
Sergey Matveev [Sat, 2 Jun 2018 09:00:16 +0000 (12:00 +0300)]
Ryzen действительно виснет
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=225584
Никак не связанно с bdb46c4c59a780a8760b7a4dafcda88b13f8be6f, но чисто
случайно по совпадению увидел вот такой тикет где действительно на Ryzen
процессорах есть повисания. AMD -- в топку. Я просто как-то задумывался
а не посмотреть ли в сторону AMD процессоров.
Sergey Matveev [Sat, 2 Jun 2018 07:47:04 +0000 (10:47 +0300)]
Контактная информация calomel.org
https://calomel.org/calomel_at.html
Вот меня ещё называли задротом, но этот чувак переплёвывает.
* Если ваш RSS-reader не поддерживает ECDHE, ChaCha20/AES-256, ECDSA
256bit, то вы не сможете использовать его HTTPS. Вообще форсированно
вот так заботится о приватности/безопасности пользователей сайта, по
моему, чересчур. Это ж пользователю надо, а не самому сайту
* Явно написали что не принимают подарков, пожертвований, итд, показывая
что оно создаётся бескорыстно для блага. Это да, хорошо
* А чтобы узнать email адрес для связи, то надо выполнить echo | tr
код, что отсеивает всяких пользователей Windows. Это тоже здорово, тем
более что на сайте только по нормальным ОС есть информация, но
чересчур радикально :-)
* А когда я им отправил письмо, то их почтовый сервер отказался общаться
без TLS. Прям вот... TLS-lover-ы. С переездом отправляющего сервера на
VDS (потому-что сраный Ростелеком не предупреждает о том что PTR
запись он даёт только юридическим лицам) я, как оказалось, TLS вырубил
вообще. Ну сейчас в клиентском режиме без проверки сертификатов сделал.
Ибо особенно в SMTP вообще не вижу смысла в TLS особо
Sergey Matveev [Sat, 2 Jun 2018 07:38:32 +0000 (10:38 +0300)]
Intel vs AMD
https://utcc.utoronto.ca/~cks/space/blog/tech/MyIntelVsAMDView-2018
Опытный ИТ-шник рассказывает что, не смотря на его нелюбовь к Intel,
альтернативы в виде AMD всё-равно (даже не для сервера) нет. Это
относится и ко мне пока -- как бы я не не хотел видеть встроенный
компьютер с полноценной ОС Minix у себя в процессора, но пока нет
(возможно кроме arm64) возможности взять и купить что-то другое что
могло бы использоваться в качестве сервера за вменяемые деньги и 64-х
битное. Например БайкалТ1 за 40 тыс.руб. (f42b52ec88657b04454afac2da44353998bb0744)
32-х битный и поэтому никакой ZFS, ну и FreeBSD я думаю там не ахти
будет работать. AMD, как пишет автор, и больше жрёт и медленнее работает
и бывают просто повисания, нет стабильности из серии just works.
Sergey Matveev [Sat, 2 Jun 2018 07:36:02 +0000 (10:36 +0300)]
Предложение о едином стандарте обмена сообщениями
https://habr.com/post/412985/
Министр ФРГ предложила сделать yet another XMPP/Matrix стандарт. Прям
вот взять бы поп-корн и последить что же из этого получится. Корпорации
делают всё лишь бы никакой совместимости между ними не было.
Sergey Matveev [Sat, 2 Jun 2018 07:33:13 +0000 (10:33 +0300)]
drone.io из-за GDPR закрывает форум
https://discourse.drone.io/t/shutting-down-forum-gdpr/2297/13
Про сам сайт вообще никогда не слышал, но сама ситуация интересна.
Open-source (не знаю free software ли) проект где форум администрируется
одним человеком вынужден закрыться из-за бремени GDPR. Ведь и у нас до
такого дойдёт запросто. У нас уже есть конечно "законы о блоггерах", но
таких как я он не затрагивает. Но запросто появятся (что, с одной
стороны и хорошо) и аналогичные GDPR более жёсткие.
Sergey Matveev [Fri, 1 Jun 2018 21:31:30 +0000 (00:31 +0300)]
Network tuning and performance guide for FreeBSD
https://calomel.org/network_performance.html
https://calomel.org/freebsd_network_tuning.html
Отличнейшая статья актуальная не только для FreeBSD/OpenBSD систем!
* Дерьмовое дешёвое железо => фиговая производительность, не зависимо от
используемой ОС. Поэтому мой дешёвые Celeron встроенный на мать: так
не в состоянии выжать гигабит
* FreeBSD любит память. Она очень хорошо и активно её использует. В
отличии от Linux ядра, где полно памяти может постоянно простаивать. И
речь даже не о ZFS
* Там написано что OpenBSD не увидит памяти больше чем 3.1 GB. Не
разбирался почему, но, видимо ядро больше этого сегмента (из-за
ограничений/особенностей x86-архитектуры) не увидит. Это кстати прям
дико удручает в OpenBSD. Казалось бы замечательнейшая ОС, но...
вопросы SMP, вот памяти/производительности выглядят очень плачевно
* HyperThreading -- надо отрубать. Чего я делаю уже давно на всех
компьютерах
* OpenBSD, пишут, всё-равно себя ведёт как однопроцессорная система (в
сетевых задачах, firewall)
* Настройки ZFS могут в три (!!!) раза повысить скорость на чтение с
NVMe диска
Sergey Matveev [Fri, 1 Jun 2018 20:17:43 +0000 (23:17 +0300)]
Лавина UDP до моего BitTorrent tracker
Более двух суток на мой компьютер с BitTorrent tracker-ом идут тысячи
UDP пакетов/сек. Из-за этого (возможно потому-что оно ещё и поверх PPPoE
через netgraph mpd-ный) бооольшие проблемы со всем остальным трафиком.
ping до любых ресурсов занимает 7-8 сек!
Не знаю DoS ли это какой или внезапно кто-то стал активно использовать
мой трэкер, но пока проблему вроде решил просто traffic shaping-ом по
этому трафику.
Понравилось поведение NNCP при этом: из-за малого кол-ва round-trip-ов и
их малого размера, он быстро делает handshake и прокачивает пакеты.
Из-за колоссальных задержек связь (TCP) всё-равно обрывается, но после
переподсоединения успешно идёт докачка файлов/почты. monit генерировал
под сотни писем о том что всё плохо -- и сотни этих сообщений стабильно
проходили через NNCP по TCP. Хорошо он себя показал в действительно
паршивых условиях.
Sergey Matveev [Thu, 31 May 2018 04:24:21 +0000 (07:24 +0300)]
Умер гитарист Anal Cunt/Adolf Satan
http://www.hitkiller.com/byvshij-gitarist-anal-cunt-josh-martin-pogib-upav-s-eskalatora-torgovogo-centra.html
Как и недавно ушедший Сет Путнам -- фронтмен Anal Cunt:
http://www.hitkiller.com/umer-vokalist-anal-cunt-seth-putnam.html
Не скажу что это примерная классическая жизнь около-грайндкорных
последователей, но наверное нойзкорных.
Sergey Matveev [Tue, 29 May 2018 21:22:09 +0000 (00:22 +0300)]
Дурацкий hype с DNS over HTTPS
http://bitsup.blogspot.com/2018/05/the-benefits-of-https-for-dns.html
Я вот не понимаю нафига всё это использовать вместо DNSCrypt??? Как
минимум, DNSCrypt может работать поверх UDP -- никаких handshake-ов (ну,
кроме самого первого по согласованию эфемерных ключей). Криптография в
DNSCrypt -- ОЧЕНЬ простая и вполне себе грамотно сделанная (я не смог ни
к чему придраться, всё очень нравится). В DNS over TLS/HTTPS --
используется TLS: это ж сущий ад в плане сложности! DNS over DTLS -- ещё
куда не шло из-за UDP, но сложность... нет, не вариант. Единственный
вменяемый аргумент, на мой взгляд, который приводит статья: куча софта
умеет работать с HTTP. И... что? Из-за этого делать крайне не
эффективную реализацию? Неужели миру не надоели legacy протоколы из-за
которых дико просаживаются ресурсы? Неужели не надоела сложность?
Sergey Matveev [Mon, 28 May 2018 20:17:29 +0000 (23:17 +0300)]
Сходил на митап "Приватность и безопасность в Интернете"
https://te-st.ru/events/security-digital/
Материал конечно существенно отличается от того что даю я на криптопатях.
Про свободное ПО нет вообще ничего. Зато много screenshot-ов как настроить
одно или другое под Windows.
Sergey Matveev [Sun, 27 May 2018 20:11:33 +0000 (23:11 +0300)]
RetroAhoy -- Secret Of Monkey Island
https://www.youtube.com/watch?v=9F9ahZQ7oP0
Что-то типа документального фильма про историю adventure компьютерных
игр: от interactive fiction, до Monkey Island и Grim Fandango. Вовсю
включает реальные вставки настоящих игр (а не просто screenshot-ы). И,
после просмотра, я всё ж понимаю что ярый поклонник именно LucasArts
игр, а не Sierra. Ну а Monkey Island (1-2 части, хотя и 3-я мне нравится
очень)... лучшие квесты после Grim Fandango.
Под конец начали рассказывать про современных последователей
классических квестов. Я даже не подозревал что прям новые жанры, типа
"walking simulator" появились. Интересно звучит и выглядит.
Sergey Matveev [Sun, 27 May 2018 15:34:45 +0000 (18:34 +0300)]
Mutt: set hostname
Годами я мучился и страдал от того что в Mutt не выставил значение
hostname опции. Если она не выставлена, то Mutt при запуске делает
reverse DNS запрос чтобы узнать свой hostname предполагаемый. Если
DNS лежит/недоступен/медленный, то и запуск Mutt затягивается.
Sergey Matveev [Sun, 27 May 2018 14:54:53 +0000 (17:54 +0300)]
Тест: Как защитить себя в Сети?
https://te-st.ru/2018/05/18/test-digital-security/
Увидел тут вот такой тест. Я начал стараться не писать в свой блог
всякое негативное, но тут не сдержусь.
* Во-первых, тест запрашивает указать ссылку на профиль в ВК/FB. И это
обязательный пункт. Мне кажется, если человек его указал, значит
имеет, значит он уже не прошёл тест :-)
* На вопрос "что нужно сделать, чтобы защитить данные в сети?" есть
только один вариант который можно выбрать среди: "Подключить
двухфакторную для почты и соцсетей, использовать сложный разнообразный
пароль с помощью менеджера паролей", "Просто не вводите данные с
чужого компьютера". Видимо, намёк на первый пункт. Но а чем второй то
не угождает? По моему крайне актуален и правилен. Не порядок.
* "При покупке в Интернете на что стоит обратить внимание?". Вариант
который можно выбрать только один "На значок соединения слева от
адресной строки. Убедитесь, что работаете с сайтом по зашифрованному
соединению (HTTPS-протоколу)". Хм, и это всё??? Просто увидеть что
значок показывает что соединение по HTTPS?
* "Безопасно ли подключаться к бесплатному публичному wifi?". Среди
ответов есть "Безопасно, если просматривать только сайты по протоколу
HTTPS", "С VPN-сервисом можно просматривать любые сайты", "Ни в коем
случае нельзя подключаться". И можно выбрать несколько. Третий
очевидно не предполагается, поэтому среди правильных ответов первый и
второй. Я снова удручён что народ упорно считает что HTTPS это просто
безопасно и точка.
* "Как защитить данные, если ваш ноутбук окажется в чужих руках?".
Несколько вариантов ответов которые можно выбрать: "Установить пароль
на вход в BIOS", "Шифровать компьютер и делать регулярные бэкапы в
облако", "Не хранить данные на компьютере, только в облаке". Последний
вариант очевидно не правильный. Первый... вообще ни о чём, ни капли не
поможет. Остаётся похоже только вариант с бэкапом в облако... ужас,
просто ужас что хотят от людей и считают это безопасным.
Впрочем меня это всё радует тем, что если бы грамотность людей в плане
безопасности была хороша, то у таких как я было бы меньше работы, когда
речь о серьёзной безопасности, например государственных секретов. Но
люди не то, что не знают о безопасности, так они банально
дезинформированы, снова предоставляя почву для работы и зарабатывания
денег.
Sergey Matveev [Sun, 27 May 2018 14:48:06 +0000 (17:48 +0300)]
Обновил сертификат для DNSCrypt
К сожалению, не поставил в monitoring проверку на время протухания и
dnscrypt.cypherpunks.ru пролежал больше суток. DNS запись с обновлённым
сертификатом, скорее всего, прососётся только на следующий день.
Sergey Matveev [Sun, 27 May 2018 12:31:25 +0000 (15:31 +0300)]
Зарелизил NNCP 3.1
https://lists.cypherpunks.ru/pipermail/nncp-devel/2018-May/000066.html
Всего-лишь одна фича: через "-via -" можно сказать чтобы при посылке
пакета вообще не делался relay. Раньше, к сожалению, можно было разве
что закомментировать "via:" в конфигурационном файле, что неудобно.
Sergey Matveev [Sun, 27 May 2018 11:54:04 +0000 (14:54 +0300)]
Indigo2/Indy машины -- мой идеал как должен выглядеть компьютер
https://en.wikipedia.org/wiki/File:SGI_Indigo2_High_Impact_workstation,_next_to_an_SGI_Espressigo.jpg
На фотографии Indigo2, его родная клавиатура, мышь и... кофе-машина (Espressigo).
Всякие брэндовые компьютеры типа HP, IBM -- ничего не вызвают, не
цепляют глаз. Apple техника... среди неё наверное только PowerMac G5
хоть как-то был приятен глазу. А SGI... Indy, Indigo, Tezro -- даже
просто такая коробочка хороша на столе. Открывающая крышка для доступа к
оптическим или ленточным накопителям тоже хороша.
Только сейчас обратил внимание что для Sun Microsystems и SGI
компьютеров даются нормальные PC-совместимые механические клавиатуры. Не
как адский ублюжеский отстой в виде Apple-клавиатур: несовместимость и
полное унижение пользователей заставляя такое использовать для работы.
Для тех кто тыкает мышкой -- пойдёт любое говно (даже Apple). Но когда
речь именно о работе с клавиатурой, то SGI и Sun делали достойно,
потому-что действительно для работы. Плюс трёхкнопочные мышки, какие с
самого начала подразумевались к использованию в X11-системах (2-х
кнопочные в Windows, однокнопочные в Apple).
Sergey Matveev [Sat, 26 May 2018 14:28:34 +0000 (17:28 +0300)]
Зарелизил PyDERASN 3.8
https://lists.cypherpunks.ru/pipermail/pyderasn-devel/2018-May/000013.html
В 3.7 релизе я добавил полную поддержку декодирования BER. Но pprint для
BER заключался в метке "BER" для структур закодированных не в DER и в
вычитании длины из-за EOC-ов сопутствующих indefinite длинам (LENINDEF,
как я это везде в коде обзываю). Но например dumpasn1 и openssl asn1parse
явно выводят EOC тэги и явно показывают что длина была indefinite. Мне
эта идея понравилась и в текущем релизе я начал делать так же.
То что раньше pprint-илось вот так:
15-2 [0,0,1576]-4 . content: [0] EXPLICIT [UNIV 16] ANY
[...]
стало теперь таким:
15-2∞ [0,0,1576]∞ . content: [0] EXPLICIT [UNIV 16] ANY
[...]
1587 [1,1, 0] . content: BER EOC
1589 [1,1, 0] . content: EXPLICIT BER EOC
Sergey Matveev [Wed, 23 May 2018 12:09:49 +0000 (15:09 +0300)]
Можно ли соблюсти полную анонимность мобильного телефона: инструкция
https://piratemedia.net/mozhno-li-soblyusti-polnuyu-anonimnost-mobilnogo-telefona-instrukciya
Статья мне в принципе понравилась. Особо придраться ни к чему не могу.
Понравилось ещё:
Настоящие хакеры, чья свобода, а быть может, и жизнь, зависит от
анонимности, не пользуются мобильными телефонами в повседневной
жизни. Вообще не пользуются. Только одноразовые звонки, скайп и т. п.
Да и жизни "повседневной" у них нет. Вечная мгла, небытие. Нет
друзей, нет родных, нет привычек и "любимых" мест. Вот что такое
анонимность.
Про Skype и "хакеров" промолчу, но неплохо сказано про то, что такое
анонимность.
Sergey Matveev [Mon, 21 May 2018 07:46:04 +0000 (10:46 +0300)]
Как отучить Firefox самостоятельно лазить в Интернет
https://support.mozilla.org/en-US/kb/how-stop-firefox-making-automatic-connections
Огромная документация как отключить то одно, то другое. По факту
современный Firefox просто напичкан сливом данных. Особенно "радует"
телеметрия отправляемая на их сервера при запуске броузера.
Sergey Matveev [Mon, 21 May 2018 05:20:27 +0000 (08:20 +0300)]
На новом PyPI нельзя скачать .sig подпись пакета
https://pypi.org/project/pyderasn/
А раньше было можно. В какое же полнейшее говно превращается мир пакетов
Python. С переездом на CDN скачивать стало, мягко говоря, проблематично:
оно постоянно лежит. Потом они добавили хэши к URL-ам и просто так
ссылочку для скачивания уже не сделаешь. Сейчас вот ещё и .sig файлы
отсутствуют (не хочу сказать что я сильно жаждил их, но регрессия же
произошла).
Sergey Matveev [Sun, 20 May 2018 08:01:37 +0000 (11:01 +0300)]
Git протокол второй версии
http://www.opennet.ru/opennews/art.shtml?num=48622
Ну лично мне все эти фишки не интересны, но очевидно что огромным
репозиториям будут приятны. А вот в комментариях народ замечает что
докачки прерванного клонирования в Git нет. Действительно нет. Но вот
Linux красиво решает эту проблему через недельные bundle-ы репозитория:
https://www.kernel.org/cloning-linux-from-a-bundle.html
Так как bundle это обычный атомарный файл, то его можно с докачкой
осилить через HTTP транспорт. После распаковки уже используя родной
git-протокол докачать дельту.
Sergey Matveev [Sun, 20 May 2018 07:51:34 +0000 (10:51 +0300)]
Только недавно обратил внимание на clean команду GnuPG ключей
Я знал про minimize -- когда из ключа вычищаются все подписи и куча
метаинформации. Остаётся только самое необходимое чтобы передать ключ.
Когда я выкладываю свой публичный ключ на домашнюю страницу, то не хочу
такого вырезания. Однако есть ещё clean опция:
Compact (by removing all signatures except the selfsig)
any user ID that is no longer usable (e.g. revoked, or
expired). Then, remove any signatures that are not usable
by the trust calculations. Specifically, this removes
any signature that does not validate, any signature that
is superseded by a later signature, revoked signatures,
and signatures issued by keys that are not present on the
keyring.
И вот она уже полезна! Во-первых, когда меняются предпочтения в
шифровании, то добавляется новый подписанный блок. Можно проследить
изменение предпочтений владельца ключа со временем. Но вряд ли это кому
интересно. Во-вторых, когда UID отзывается, то кроме самого блока
отзыва, все остальные остаются, что тоже не много кому нужно. clean
как-раз позволяет их зачистить.
Sergey Matveev [Sun, 20 May 2018 07:28:01 +0000 (10:28 +0300)]
Выбор форматов для скачивания обычно не велик. Приходится перекодировать
Вот когда качаешь какой-нибудь видеоматериал, то частенько бывает выбор
не велик. Особенно фильмов. Или небольшого размера но в доисторическом
кодеке типа XviD что-нибудь, или в современном H.264 но огромного
размера потому-что кодируется 1920x1080. Лично мне места жалко на такое
качество, зачастую абсолютно ненужное. Но и небольшие 700-1.4GB файлы
не очень хорошо скомпрессированные тоже удручают.
Приходится качать "большую" версию и самостоятельно перегонять в форматы
получше. Во-первых, сбавлять разрешение. Во-вторых, делать нормализацию
звука. Уже как-то писал в 3762a9ca8cedd2862854584b7f182dfecfabb1e9 о том
какой скрипт для использую для переконвертирования. Для каждого контента
там бывают свои небольшие правки, но суть его уже не первый год остаётся
без изменений.
Sergey Matveev [Sun, 20 May 2018 07:09:22 +0000 (10:09 +0300)]
EFAIL postmortem
https://medium.com/@cipherpunk/efail-a-postmortem-4bef2cea4c08
Хорошая статья о EFAIL-е, OpenPGP мире. Всё написано очень хорошо и по
существу. А то надоела вся эта журналистская информация вводящая людей
в заблуждение.
Sergey Matveev [Sat, 19 May 2018 19:46:07 +0000 (22:46 +0300)]
PyDERASN экспериментальная поддержка BER
Обнаружилось что CMS сообщения создаваемые gpgsm (утилита для S/MIME из
состава GnuPG) делаются в BER кодировке и поэтому мой PyDERASN вообще не
в состоянии их отпарсить. Я вообще видел в стандарте что CMS это BER, но
вот в упор не замечал что там явно сказано почему это BER, что то, что
подписывается всё-равно в DER, и BER это не просто опечатка или
устаревший документ. Каждый раз читая эти стандарты обнаруживаешь что-то
новое.
В итоге решил попробовать добавить BER поддержку в процесс декодирования
PyDERASN-ом. Примерно один рабочий день, даже кое какие тесты есть, и
CMS-ки я могу полностью отпарсить без проблем. Похоже что завтра уже
будет релиз с BER поддержкой. Но укажу что экспериментальная -- не шибко
она будет протестирована пока. Кодировать в BER будет нельзя -- впрочем
DER является BER-ом, поэтому оно как-бы всё же в BER закодировано.
Sergey Matveev [Sat, 19 May 2018 15:16:30 +0000 (18:16 +0300)]
ZFS TRIM на Linux
https://habr.com/post/351932/
В комментариях говорят что TRIM в марте в Linux не работает для ZFS.
Лично я сам не проверял, но не удивлюсь. Нет, нет, в Linux мир я не
вернусь -- ну это ужас.
Sergey Matveev [Sat, 19 May 2018 09:37:53 +0000 (12:37 +0300)]
Работа с новобранцами -- испытание
Чуть больше месяца проработал и был что-то типа наставника у Python
junior-ов. Был бы выбор, то теперь предпочту не сталкиваться с таким
снова.
Во-первых, это отнимает очень много времени и я больше месяца толком
работой (своей) не занимался вообще и мы уже официально начали выходить
за все допустимые сроки -- хотя нас честно спрашивали осилим ли обучение
людей или нет. Во-вторых, отношение junior-ов под конец стало
удручающим: например то, что я в ревью писал больше месяца назад было
посчитано не нужным -- спустя месяц задают вопрос а не сделать ли нам
вот так, именно как я давно предлагал и что было отвергнуто. Если
малейшее недовольство проявляю, то сразу "я злой" и реально просто
вообще уходят, бросая сессию в которой работаем, позже обращаясь за
помощью уже к другому коллеги. *Любое* моё ревью интерпретируется как
сплошные придирки. Мол если делают коммит для ревью, то понимают что
"придёт Серёжа" и напридирается к их с душой сделанному коду.
Вот у коллеги получилось с ними работать, но он и сам говорил что имеет
опыт обучения людей. Я же только пока понял что людьми нельзя по
хорошему и по доброму -- обернётся стороной. Поэтому понимаю что когда
говорят что в армии по-хорошему не бывает: там надо сурово, не жалея --
так действительно будет работать, особенно когда задача обязана быть
сделана в нужные сроки. Безусловно это мой косяк что если они что-то не
понимают, то значит плохо донёс, раз у других при этом получается.
Скорее всего, потому-что я нетерпелив и мне проще сделать самому или
сразу сказать решение. В общем, не завидую учителям.
Sergey Matveev [Sat, 19 May 2018 09:25:25 +0000 (12:25 +0300)]
Вышел Vim 8.1
https://www.vim.org/vim-8.1-released.php
Обновился. Заметил только одно изменение: подсвечивает слова которые я
ищу сразу же. Ну и, похоже, это уже традиция: netrw плагин снова сломан,
так как проверка версии Vim написана некорректно.
https://github.com/vim/vim/releases/tag/v8.1.0001
Я вот удивляюсь: неужели его так мало кто использует что проверку
работоспособности не проводят?
Sergey Matveev [Thu, 17 May 2018 05:26:19 +0000 (08:26 +0300)]
Уязвимые EFAIL почтовые клиенты
Судя по этой таблице (конечно не полной), Mutt идеален и Claws. Я на
Mutt сижу уже больше десяти лет. А вот Claws меня порадовал тем, что
среди всех GUI клиентов которые я видел -- именно он мне нравился больше
всего. По-настоящему его никогда не использовал (GUI для почты? смеётесь?),
но я чуял что с ним всё хорошо!
TABLE OF VULNERABLE MAIL CLIENTS
| OS | Client | S/MIME | PGP |
| | | | -MDC | +MDC | SE |
|---------+-----------------+--------+------+------+-----|
| Windows | Outlook 2007 | yes | yes | yes | no |
| | Outlook 2010 | yes | no | no | no |
| | Outlook 2013 | user | no | no | no |
| | Outlook 2016 | user | no | no | no |
| | Win. 10 Mail | yes | – | – | – |
| | Win. Live Mail | yes | – | – | – |
| | The Bat! | user | no | no | no |
| | Postbox | yes | yes | yes | yes |
| | eM Client | yes | no | yes | no |
| | IBM Notes | yes | – | – | – |
| Linux | Thunderbird | yes | yes | yes | yes |
| | Evolution | yes | no | no | no |
| | Trojitá | yes | no | no | no |
| | KMail | user | no | no | no |
| | Claws | no | no | no | no |
| | Mutt | no | no | no | no |
| macOS | Apple Mail | yes | yes | yes | yes |
| | MailMate | yes | no | no | no |
| | Airmail | yes | yes | yes | yes |
| iOS | Mail App | yes | – | – | – |
| | Canary Mail | – | no | no | no |
| Android | K-9 Mail | – | no | no | no |
| | R2Mail2 | yes | no | yes | no |
| | MailDroid | yes | no | yes | no |
| | Nine | yes | – | – | – |
| Webmail | United Internet | – | no | no | no |
| | Mailbox.org | – | no | no | no |
| | ProtonMail | – | no | no | no |
| | Mailfence | – | no | no | no |
| | GMail | yes | – | – | – |
| Webapp | Roundcube | – | no | no | yes |
| | Horde IMP | user | no | yes | yes |
| | AfterLogic | – | no | no | no |
| | Rainloop | – | no | no | no |
| | Mailpile | – | no | no | no |
- = Encryption not supported
no = Not vulnerable
yes = Vulnerable
user = Vulnerable after user consent
-MDC = with stripped MDC, +MDC = with wrong MDC, SE = SE packets
Sergey Matveev [Tue, 15 May 2018 19:35:32 +0000 (22:35 +0300)]
Почему end-to-end шифрование невозможно в броузере (как и вся криптография)
https://secushare.org/end2end
https://rdist.root.org/2010/11/29/final-post-on-javascript-crypto/
Отличная подборка коротких фактов о попытке использовать криптографию в
броузере на JS. Решил полностью сюда скопировать:
Why don't you try end-to-end encryption in the web browser?
Because it is impossible to achieve, by design of the web, without
trusting your server or installing something on your machine.
Let's say your encryption application comes from your server. If you
have to trust your server anyway, why make a huge effort to try to
put it into the web browser?
You can't tell your web server, as it controls what you see in your
web browser, won't just make the web page transmit an unencrypted
version of whatever message you are reading or authoring, somewhere
you wouldn't want it to go. So the browser silently allows the
server administrator to watch over your messaging. You MUST trust
your server. It's inevitable.
The entire architecture of HTML and Javascript is intended to be so
flexible, that you cannot ensure the safety of crypto operations.
The existence of plenty of dedicated crypto APIs and libraries does
not solve this chicken/egg issue of trust: A web server can make it
look like everything is fine and you can't tell something is going
on behind your back.
Even the developers of Javascript crypto solutions admit it
themselves, that their tools are only useful if the server is
trustworthy: "A person getting access to your server can modify
Javascript code and public key of the receiver."
There's also the possibility for a man in the middle to insert
malicious Javascript designed to redirect copies of your unencrypted
messages elsewhere. Maybe even your passwords and private keys, so
he only needs to do this once. Thanks to the complete unreliability
of the X.509 certification infrastructure it is only a question of
money for a man in the middle to view or modify anything you send or
receive over HTTPS.
A web browser just isn't suited for 100% private communications as
it is built to do what the web server tells it to.
What if my website isn't coming from a server?
Then it can be okay. If the website you are using is actually
entirely installed on your device and all communication to the web
server is exclusively done via something like secushare, or in the
case of traditional web servers, via AJAX-like technologies over
encrypted HTTP, the way hellais does it for GlobaLeaks. Most
smartphone apps are somehow implemented that way: in the form of
"static" web applications that get downloaded to your phone and stay
there.
Unfortunately, for end users installing a serverless web interface
on the local computer is just as complicated as installing an actual
software package, so there is no advantage in choosing a work-around
if you could have a dedicated and properly designed end-to-end
communication tool without unnecessary drawbacks.
What about an add-on to my web browser?
One thing that is slightly easier to install than custom software is
a browser plugin like Cipherbox. Still, Cipherbox provides for a
quite simple attack vector: Once the message has been decrypted and
inserted into the HTML document, a drive-by Javascript can steal the
decrypted message and send it wherever you don't want it to be.
The only solution to truly provide end-to-end encryption in that
case is to have unencrypted data only appear in the custom user
interface of the add-on, never in the web page. That usually
destroys any intended usability and you can no longer say your
application is actually web-based. It is quite impractical and makes
it pointless to not use a dedicated and secure software package from
the very start. That's why there apparently doesn't exist any such
add-on.
In the case of secushare you of course get a lot more than just what
a browser add-on could offer, since a web browser wouldn't be able
to do sybil-attack resistant cryptographic routing, or other of the
magic described on this website, to dramatically improve your
privacy in communications.
The End-to-End-Encrypted Web is a myth.
It's a logical fallacy. A technical impossibility. A bad idea. A
very bad idea. But there's nothing as strong as a bad idea whose
time has come, so you will hear of this a while longer until
somebody hits their nose bleeding on it.
Sergey Matveev [Tue, 15 May 2018 04:30:51 +0000 (07:30 +0300)]
Как и ожидалось, пошли призывы отключать PGP
https://habr.com/company/pt/blog/358570/
https://tproger.ru/news/pgp-flaw/
И, опять же, как я и ожидал, ссылки при этом ведут постоянно на EFF.
Короче EFF -- уроды, подорвавшие безопасность и приватность
пользователей, от которых я такого не ожидал. Как вот в комментарии к
статье кто-то и написал:
А не вброс ли это, чтобы напугать хардкор-шифрующихся граждан и
заставить их отказаться от шифрования с помощью PGP?
PGP вообще с нами уже как четверть века, но люди понятия не имеют что
это и про что они вообще пишут. Где уязвимость и вообще что нужно
отключать. Оказывается шифрование почты, оказывается уязвимость в PGP,
оказывается его надо отключать.