Сам себе Телеграм

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

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

У вас обо­их сто­ит Линукс с уста­нов­лен­ным паке­том OpenSSL. Даль­ше чисто дело тех­ни­ки, и при­мер­но всё то же самое дела­ет и сам мес­сен­жер Теле­грам, про­сто сама рабо­та алго­рит­мов от тебя скры­та. Эда­кий Про­то­кол Диф­фи — Хелл­ма­на, толь­ко в пол­но­стью руч­ном режи­ме.

Твой собе­сед­ник дол­жен:

Создать пару публичных/приватных RSA клю­чей:
openssl genpkey -algorithm RSA -out private.key.pem -pkeyopt rsa_keygen_bits:4096

Выта­щить пуб­лич­ный ключ и запи­сать его в файл:
openssl rsa -pubout -in private.key.pem -out public.key.pem

При­слать содер­жи­мое public.key.pem (оно тек­сто­вое) тебе, напри­мер, обыч­ной поч­той (*). Раз­гла­ше­ние пуб­лич­но­го клю­ча нико­му ниче­го не даёт — для дешиф­ров­ки нуж­на его при­ват­ная часть.

Теперь тебе нуж­но зашиф­ро­вать дан­ные этим его при­слан­ным пуб­лич­ным клю­чом.

Схо­ду зашиф­ро­вать несим­мет­рич­ным алго­рит­мом RSA боль­шой файл, не раз­би­вая его на мел­кие кус­ки невоз­мож­но, коман­да
openssl rsautl -encrypt -inkey public.key.pem -pubin -in poutine.jpeg -out poutine.jpeg.enc
выда­ёт ошиб­ку о том, что раз­мер дан­ных слиш­ком боль­шой для дан­но­го клю­ча дли­ной 4096 бит. Но всё, что мень­ше 4096 — 11 бит, зашиф­ро­вать мож­но. Поэто­му дела­ют так: созда­ют ключ для сим­мет­рич­но­го шиф­ро­ва­ния, напри­мер, AES или Twofish — это уж кому что милее — им коди­ру­ют файл, а уже сам ключ несим­мет­рич­но шиф­ру­ют пуб­лич­ным клю­чом, и пере­да­ют его собе­сед­ни­ку в коди­ро­ван­ном виде вме­сте с дан­ны­ми.

Дела­ем слу­чай­ный ключ для сим­мет­рич­но­го шиф­ро­ва­ния:
openssl rand 256 -out symm.key

Шиф­ру­ем фото­гра­фию пути­на алго­рит­мом AES256 с этим клю­чом:
openssl enc -aes-256-cbc -salt -in poutine.jpeg -out poutine.jpeg.enc -pass file:./symm.key

Шиф­ру­ем сам ключ алго­рит­мом RSA:
openssl rsautl -encrypt -inkey public.key.pem -pubin -in symm.key -out symm.key.enc

Теперь у нас есть два шиф­ро­ван­ных фай­ла, в одном дан­ные, шиф­ро­ван­ные AES256, в дру­гом — шиф­ро­ван­ный ключ к AES256.

Что­бы послать это по обыч­ной почте, пере­ве­дём все бинар­ни­ки в текст коди­ров­кой Base64.

cat poutine.jpeg.enc | base64
cat symm.key.enc | base64

Текст при­сы­ла­ем наше­му собе­сед­ни­ку.

Фсе. Теперь ни одна живая душа, без вла­де­ния при­ват­ным клю­чом, не смо­жет ниче­го про­чи­тать. И всё дела­ет­ся эле­мен­тар­но, на колен­ке. В‑общем, «тер­ро­ри­стам», кото­рых яко­бы гоня­ет Рос­ком­ге­ста­по, бло­ки­ров­ка Теле­ги не пре­гра­да совер­шен­но. Ну, а стра­да­ют, как обыч­но, непри­част­ные.

PS: Един­ствен­ный спо­соб пере­дать госу­дар­ству клю­чи для дешиф­ров­ки сооб­ще­ний — это на эта­пе гене­ра­ции у кли­ен­та несим­мет­рич­ных клю­чей сли­вать при­ват­ную часть «кому надо». Т.е. это надо спе­цом встра­и­вать такую функ­цию в кли­ен­та. А кли­ент Теле­ги — опань­ки — опен­сорс­ный. Встав­ка подоб­ной функ­ци­о­наль­но­сти будет мгно­вен­но засе­че­на.

Поэто­му сам запрос на полу­че­ние клю­чей — нелеп и сме­хо­тво­рен. Я могу отдать толь­ко то, что у меня есть.

PPS: Нын­че мод­но нена­ви­деть Рос­ком­ге­ста­по за то, что они дела­ют. А меж тем пре­тен­зия не по адре­су. Кто создал Рос­ком­ге­ста­по? Кто при­нял зако­ны, по кото­рым он рабо­та­ет? Кто под­пи­сал эти зако­ны? И кто, вооб­ще, выбрал всех этих людей?

* В реаль­ных при­ме­не­ни­ях пуб­лич­ный ключ ещё допол­ни­тель­но под­пи­сы­ва­ет­ся цен­тром сер­ти­фи­ка­ции, кото­ро­му дове­ря­ют оба участ­ни­ка — ина­че сооб­ще­ния воз­мож­но пере­хва­тить, и клю­чи под­ме­нить, устро­ив ата­ку типа «Чело­век посе­ре­дине».

Про блокировку Телеги

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

Идея не моя, про­сто я на это насмот­рел­ся досы­та, когда ком­пью­тер­ные виру­сы пре­па­ри­ро­вал. Тех­но­ло­гия DGA (domain generation algorithm).

При запус­ке про­грам­ма сна­ча­ла пыта­ет­ся идти на свои основ­ные сер­ве­ры. ОК, допу­стим Рос­ком­ге­ста­по уже под­су­е­ти­лось, и забло­ки­ро­ва­ло их. Не про­бле­ма, вот у нас, напри­мер, сего­дня 16 апре­ля 2018 года. Соот­вет­ствен­но, идём на 2018Apr16.com, кото­рый вче­ра был преду­смот­ри­тель­но заре­ги­стри­ро­ван вла­дель­ца­ми мес­сен­же­ра. Зав­тра пой­дём на 2018Apr17.com и так далее. Это и есть алго­ритм. Рос­ком­ге­ста­пе при­дёт­ся каж­дый день отры­вать зад от сту­ла и бло­ки­ро­вать всё новые и новые сер­ве­ры.

Конеч­но, выше­опи­сан­ный при­мер очень при­ми­ти­вен и алго­ритм быст­ро вычис­ля­ет­ся. В реаль­но­сти алго­рит­мы намно­го более слож­ные, и име­на доме­нов намно­го более обскур­ны. Вот, напри­мер, такие домен­ные име­на исполь­зо­вал шиф­ро­валь­щик Locky:

bkadufmdyf[.pm]
kpvoxwgf[.pm]
fysck[.fr]
hsasjielgfkneh[.ru]
qquvjijtvatj[.in]
edmgbqygn[.de]
nbavfpb[.uk]
wyusb[.yt]

В нём, прав­да, алго­ритм гене­ра­ции доме­нов тоже не фон­тан. Но в Теле­ге сидят насто­я­щие про­грам­ми­сты, кото­рые уме­ют в крип­то­гра­фию, я верю, что они смо­гут при­ду­мать такой алго­ритм, кото­рый не смо­гут рас­ку­сить интер­нет-геста­пов­цы. Потом, кто ска­зал, что надо гене­ри­ро­вать ОДНО домен­ное имя? А две­сти тысяч еже­днев­но — не хоти­те? (абсо­лют­но реаль­ный слу­чай, вирус GameOver Zeus). Осо­бен­но учи­ты­вая, что на дан­ный момент про­це­ду­ра бло­ки­ров­ки рабо­та­ет в пол­но­стью руч­ном режи­ме, бло­ки­ро­вать 200 000 доме­нов лап­ка­ми, да ещё еже­днев­но… как гово­рит­ся, это пишет­ся с мяг­ким зна­ком. Пока вла­дель­цу бот­не­та Zeus всем миром не при­ще­ми­ли хвост, никто, ни ФБР, ни ЦРУ ниче­го сде­лать с самим виру­сом не мог­ли. Так побе­дим. Уда­чи.

Санкционный список Трампа

Пол­ный спи­сок китай­ской «запре­щён­ки»:

https://ustr.gov/sites/default/files/files/Press/Releases/301FRN.pdf

Вер­нее, конеч­но, это не запре­щён­ка, но цены на всё это пой­дут вверх. Изви­ни­те, но без мата не могу.

Я не знаю, как это затро­нет инду­стрию в целом, а для про­стых людей цены уве­ли­чат­ся на:

1. Ком­прес­со­ры для воз­ду­ха и пнев­ма­ти­че­ское обо­ру­до­ва­ние (пнев­мо­дре­ли, отбой­ные молот­ки)
2. Водо­греи
3. Неко­то­рые зап­ча­сти к авто­мо­би­лям (тур­би­ны, ката­ли­за­то­ры, гид­ро­транс­фор­ма­то­ры)
4. Посу­до­мой­ки, сушил­ки для одеж­ды
5. Лодоч­ные мото­ры и про­пел­ле­ры к ним
6. Сне­го­убо­роч­ные маши­ны, косил­ки, трак­то­ры, про­чее с/х обо­ру­до­ва­ние (куль­ти­ва­то­ры, боро­ны)
7. Игол­ки и машин­ки для шитья (серьёз­но, Дональд?)
8. Стан­ки свер­лиль­ные, токар­ные, фре­зер­ные, шли­фо­валь­ные, для гид­рав­ли­че­ской рез­ки и про­чие
9. Гид­рав­ли­че­ские прес­сы
10. Печат­ные пла­ты и обо­ру­до­ва­ние для про­из­вод­ства оных (то-есть, зака­зать за 25 монет 100 плат, как сей­час, уже вряд­ли сно­ва полу­чит­ся)
11. Бен­зо­пи­лы
12. Газо­вые горел­ки
14. Бето­но­ме­шал­ки
15. Под­шип­ни­ки
16. Элек­три­че­ские мото­ры посто­ян­но­го и пере­мен­но­го тока
17. Гене­ра­то­ры, транс­фор­ма­то­ры
18. Бата­рей­ки и неко­то­рые типы акку­му­ля­то­ров (никель-кад­мий, сви­нец)
19. Обо­ру­до­ва­ние для плаз­мен­ной рез­ки метал­ла, сва­роч­ные аппа­ра­ты, паяль­ни­ки (да ёптыть!)
20. Ком­пакт-дис­ки
21. Радио при­ё­мо-пере­дат­чи­ки (совсем уже оху­ели)
22. Мони­то­ры, теле­ви­зо­ры
23. Кон­ден­са­то­ры тан­та­ло­вые, кера­ми­че­ские, элек­тро­ли­ти­че­ские, пере­мен­ные и посто­ян­ные (да бля!)
24. Рези­сто­ры посто­ян­ные и пере­мен­ные (пипец)
25. Элек­три­че­ские защит­ные авто­ма­ты
26. Элек­три­че­ские разъ­ёмы, клем­мы, и т.п.
27. Лам­поч­ки нака­ли­ва­ния, дуго­вые, газо­раз­ряд­ные
28. Тран­зи­то­ры, тири­сто­ры, све­то­ди­о­ды, фото­тран­зи­сто­ры, и т.д. — прак­ти­че­ски все полу­про­вод­ни­ки
29. Изо­ли­ро­ван­ный про­вод
30. Все типы назем­но­го, вод­но­го, и воз­душ­но­го транс­пор­та
31. Опти­че­ские при­бо­ры, вклю­чая ору­жей­ные при­це­лы (NRA щас поедет гро­мить Вашинг­тон)
32. Гиро­ско­пы, ком­па­сы, и про­чее нави­га­ци­он­ное обо­ру­до­ва­ние
33. Даль­но­ме­ры, тео­до­ли­ты, и про­чие зем­ле­мер­ные при­чин­да­лы
34. Меди­цин­ское обо­ру­до­ва­ние (вклю­чая даже шпри­цы и иглы к ним)
35. Огне­стрель­ное ору­жие и зап­ча­сти к ним (это, впро­чем, уже дав­но было отве­де­но «за баню»)

Чем даль­ше читаю, тем груст­нее мне ста­но­вит­ся. Хер с ними, с тру­ба­ми для ядер­ных реак­то­ров, а вот паяль­ни­ки-то им чем поме­ша­ли? Кому швей­ные игол­ки так попе­рёк яиц вста­ли? Осо­бен­но пора­до­ва­ли пошли­ны на полу­про­вод­ни­ки, кон­ден­са­то­ры, и про­чие радио­де­та­ли — это будет серьёз­ный удар по все­му вооб­ще.

Мне кажет­ся, что в этой тор­го­вой войне мы напо­рем­ся на гораз­до более длин­ную пику, чем Китай. Китай заба­нит аме­ри­кан­ские мясо, оре­хи, фрук­ты — что, конеч­но, непри­ят­но, но на инду­стрию и инди­ви­ду­а­лов осо­бо не повли­я­ет. А этот спи­сок будет отбра­сы­вать ОЧЕНЬ длин­ную тень. Един­ствен­ный сце­на­рий, в кото­ром США может выиг­рать — это быст­рень­ко всё это заме­нить на про­дук­цию дру­гих стран.

Давайте хранить больше в облаке

Обал­деть. Кон­сти­ту­цию мож­но теперь выки­нуть — за нена­доб­но­стью.

Наши доро­гие зако­но­да­те­ли часто при­цеп­ля­ют вся­кую хер­ню к важ­ным бил­лям с целью их про­пих­нуть. Так и сей­час, при­це­пом к Бюд­жет­но­му Бил­лю (кото­рый надо было при­нять быст­ро) был при­нят акт CLOUD, кото­рый даёт орга­нам охра­ны пра­во­по­ряд­ка (как мест­ным, так и зару­беж­ным) доступ к дан­ным, хра­ни­мым в облач­ных сер­ви­сах, без осно­ва­ния и поста­нов­ле­ния судьи

https://www.bleepingcomputer.com/news/government/us-congress-passes-cloud-act-hidden-in-budget-spending-bill/

Так что, доро­гой %USERNAME%, все твои доку­мен­ты, кото­рые ты заки­нул на OneDrive или в Google Drive — теперь может взять и читать любой слу­жи­тель охра­ны пра­во­по­ряд­ка. На слу­чай, если у кого-то оста­лись какие-то иллю­зии.

Обал­ден­но, я счи­таю. Я изви­ня­юсь, но это у нас в Север­ной Корее тота­ли­тар­ное и поли­цей­ское госу­дар­ство? Точ­но? А может быть, оно уже за окном?

Вдогонку

Чисто повод заду­мать­ся.

Поче­му-то все школь­ные рас­стре­лы слу­чи­лись в госу­дар­ствен­ных шко­лах.

В част­ных шко­лах ни одно­го рас­стре­ла пока не было.

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

И ещё интересно

Уви­дим ли мы ситу­а­цию как с Вик­то­ром Аном, толь­ко раз­вёр­ну­тую на 180 гра­ду­сов? То-есть, не нач­нут ли рос­сий­ские спортс­ме­ны экс­трен­но при­ни­мать граж­дан­ства дру­гих стран, что­бы «хоть туш­кой, хоть чуче­лом», но высту­пить на Олим­пиа­де? И будет ли высту­пать, соб­ствен­но, сам Вик­тор Ан, и под каким фла­гом? Не пой­дёт ли на попят­ный — за Корею?

На злобу дня

Вооб­ще, вполне оче­вид­но, что спортс­ме­ны опре­де­лён­но­го уров­ня допинг жрут прак­ти­че­ски пого­лов­но. Рус­ские хоть и зани­ма­ют пер­вое место по коли­че­ству ото­бран­ных меда­лей, но на почёт­ном вто­ром — США. Так что жрут и аме­ри­кан­цы, и нор­ве­ги, и нем­цы, и рус­ские. Про­сто уро­вень раз­ви­тия спор­тив­ной фар­ма­ко­ло­гии в раз­ных стра­нах немно­го раз­ный — япон­цев, напри­мер, за зад­ни­цу ни разу не взя­ли.

Поэто­му если назы­вать лопа­ту лопа­той, то со всех стран мира съез­жа­ют­ся кар­точ­ные шуле­ры, и дела­ют вид, что игра­ют чест­но. Стран­но стро­ить оскорб­лён­ную невин­ность: если ты не пони­ма­ешь, что дости­же­ния тех же совре­мен­ных штан­ги­стов ТУПО НЕВОЗМОЖНЫ без допин­га, то ты дурак. А если пони­ма­ешь, и всё рав­но стро­ишь из себя цел­ку — то ты дву­лич­ная сво­лочь.

Я олим­пи­а­ду всё рав­но люб­лю смот­реть, если что. Ну, при­коль­но. Не допин­гом еди­ным. Одно­го допин­га для того, что­бы стать луч­шим, мало. Надо ещё тре­ни­ро­вать­ся как сума­сшед­ший и иметь сталь­ную волю. Про­сто я отдаю себе отчёт в том, что спорт тако­го уров­ня тянет за собой опре­де­лён­ные послед­ствия. Кто-то вооб­ще счи­та­ет, что такое смот­реть не надо. Что же, пре­крас­но пони­маю.

Побег из Северной Кореи

Видео само­го побе­га — отвал баш­ки. Как в кино.

«У сво­бо­ды мно­го труд­но­стей, и демо­кра­тия не без­упреч­на, но нам нико­гда не при­хо­ди­лось стро­ить сте­ну, что­бы удер­жать соб­ствен­ный народ от побе­га»

-Джон Фитц­д­же­ральд Кен­не­ди

На злобу дня

Мне всё же инте­рес­но — в Белом Доме реаль­но тво­рит­ся такой раз­драй, хаос и бар­дак, или же там по сути ничем не хуже, чем при дру­гих пре­зи­ден­тах, про­сто это наши доб­лест­ные СМИ по при­чине мани­а­каль­ной нена­ви­сти к Дональ­ду тща­тель­но созда­ют такое впе­чат­ле­ние?