Local-first и децентрализация
707 subscribers
140 photos
19 videos
3 files
312 links
Replicated Object Notation,
CRDT, распределёнщина и децентрализация.
Ведёт @gritzko
Чат @Ronzgovory
Download Telegram
# Разбор TON whitepaper

Для студентов разобрал TON whitepaper (блокчейн от не-Дурова); продублирую выводы здесь. Уязвимости порой находятся в коде, где казалось бы всё очень прямо и понятно (Diffie-Hellman logjam или на прошлой неделе log4j). А авторы предлагают реализацию трёхэтажного TON блокчейна с гиперкубическим раутингом, виртуальной машиной, цифровыми фонтанами и Kademlia DHT (да, всё сразу). Это имеет нулевую вероятность не только отсутствия уязвимостей, но и общей работоспособности.
Но динамика у whitepaper'а драматическая, конечно: сначала они предлагают крутой механизм... Но, есть маленькая очевидная проблемка. Тогда они предлагают добавить другой, часто более сложный, механизм, для её решения. Но... тут ещё проблемка... И эта история продолжается 120 страниц.
https://www.youtube.com/watch?v=L6DFGSY05IQ
# Консенсус

Классические алгоритмы консенсуса подразумевают ограниченный круг участников. Это предположение, в частности, перешло из классических работ 1980-х в современные Proof of Stake и Паксосы.
А что если нам нужно достичь консенсуса в рое, где точное количество участников и топология сети неизвестны? Как оказалось решение есть и оно очень интересное - консенсус Шмебюлока. О чём мы с Мишей и написали статью.
Удивительно, но в ходе работы мы обнаружили концепцию куда более мощную, чем время Лампорта - время роя. Это логическое время для массивно параллельных само-синхронизирующихся систем.
Кто осилит текст - будем рады отзывам.

https://arxiv.org/abs/2112.07065
чудо само-синхронизации роя (подробности в статье :)
Не очень грамотный обзор по Web 3.0 [1] от К.Сарханянца в Коммерсанте. Вот некоторые говорят, что нельзя журналистам давать что-то писать самим, потому что в чём они разбираются?
Попробую просуммировать эпический твиттер-срач последних двух недель и положение дел с "Web 3.0" в целом.
Центральный твиттер аккаунт в сраче - @kelseyhightower. Это вроде бы девопс в Гугле, большой influencer. Итак, он начал спрашивать в общем-то очевидные вещи относительно блокчейна и "Web 3.0" и поднял нешуточную волну. Включились и Grady Booch и Elon Musk и Jack Dorsey, только Elvis Presley почему-то молчал. Действительно, BitCoin-like блокчейн это принципиально немасштабируемая технология. То, что Джек Дорси - фанат именно BitCoin, это очень интересный факт. Упомянутый в статье "проект децентрализованных соцсетей Bluesky" - это просто одна приятная девушка, реальной работы там не происходит, только говорильня. Вообще, с инженерными успехами у Web 3 пока сложно. IPFS после 7 что ли лет разработки так толком и не используется. Я предлагал им пока выкинуть DHT в пользу Tiered Network [2] чтобы хоть что-то заработало. Поскрипели мозгами и стали искать, кто бы им сделал Tiered DHT. Не комментирую. Ethereum не то чтобы сильно лучше в плане масштабирования чем BitCoin, но там происходит всяческая движуха, по крайней мере. Про TON coin я уже высказывался. Вообще, эта блокчейн волна отличается очень шумным хайпом и очень маленьким выхлопом. Вот помню когда BitTorrent переехал на uTP/LEDBAT, до четверти траффика в интернете разом переключилось с TCP на UDP - а никто и не заметил. Прямая противоположность. Код вроде бы писали два человека - Шалунов и Норберг. Но возвратимся к чейнам. Вся эта тема мне напоминает диалог из фильма Sneakers (1992) [3].
"Not reality but the perception of reality" - это объяснение очень многого, что происходит.

[1]: https://www.kommersant.ru/doc/5152037
[2]: http://replicated.cc/netarch
[3]: https://www.youtube.com/watch?v=coDtzN6bXAM
Новый драфт Swarm consensus уже на arxiv:
https://arxiv.org/abs/2112.07065
Добавлено: Византизм, объяснение swarm time, диаграмма Минковского, многое другое.
P.S. HackerNews: https://news.ycombinator.com/item?id=29711381
Собрал все очевидные вопросы, осталось поправить текст.
Поправьте меня, если я что-то не понимаю, но ведь если "добыча биткойна" в Казахстане остановится, биткойн должен подорожать? 😋
К слову вспомнилось. Был скандальчик небольшой некоторое время назад, когда выяснилось, что в Twitter модерацией по региону EMEA руководит офицер из подразделения по информационным войнам. Причём, он как-то глупо спалился, чуть не в LinkedIn всё указал.
Это я к тому, что любая "централизованная" сеть будет максимизировать выгоду для владельцев этого самого центра - через цензуру, управление нарративами, фильтрацию информации. Это неизбежно. А всяческие революции - это очень выгодно даже в банальном денежном смысле, десятки миллиардов долларов могут за ночь поменять хозяев.
https://www.ft.com/content/53017272-e37f-11e9-b112-9624ec9edc59
https://www.independent.co.uk/news/uk/home-news/twitter-executive-british-army-officer-psyops-gordon-macmillan-a9127036.html
Кстати, помню в Копене когда работал, там в соседнем офисе был стартап, торгующий influencer-ами. Звонили серьёзным дядям постоянно, питчили своих подопечных. Не индивидуально, а сразу оптом. Индивидуально это будет муторно - instagram celebrity скупать, они мелкие слишком. Собственно, эту проблему стартап и решал.
Про пользователя бесплатных сервисов говорят "if you are not paying, you are the product". Наверное, это можно и для случая influencers переформулировать.
И вот ещё подумалось. Во всех мэйнстримовых социальных сеточках сейчас алгоритмические фиды. Соответственно, акт цензуры - это не когда гестаповцы в дверь стучат; это когда кто-то кликает мышкой - и урезает вам outreach, ну или добавляет. А может даже не человек, а алгоритм. И вы даже и не узнаете, что это произошло - никто тут не обязан вам что-либо сообщать. Но если вы influencer, то вы это точно *ощутите*. И, возможно, в следующий раз последите за базаром аккуратней.
Децентрализация конечно может помочь с цензурой... Теоретически, монетизация и токенизация медиа может даже решить проблему продажности influencer-ов. Но это, конечно, очень теоретически.
(Не утверждаю, что казахстанские события инспирированы Моссадом через твиттер. Просто Nexta навела на мысли о монетизации подобных вещей, а эти мысли давно меня преследовали.)
Moxie Marlinspike побаловался с NFT. Выводы неутешительные, но прогноз оптимистичный.
Из забавного: NFT как правило это URL, причём часто указывающий на сервер компании. Децентрализация фиктивная, таким образом.
https://twitter.com/moxie/status/1479567493215637506?t=aVJsXFW7V6I2L-BvW6ZKyQ&s=09
К слову о тотальной слежке. Итальянского мафиози поймали в Испании, распознав лицо на Google Maps. То есть, Google Maps распознаёт все лица (в публичном сервисе они замазаны). Это не то что бы шокирующая новость, все гуглы и фейсбуки распознают лица на фотографиях лет уже 10, но тут фото сделано Google и без согласия, то есть небольшую границу переступили. А если быть точным, мы только узнали, что они её переступили. Как показал Сноуден, самые странные бредни конспирологов часто весьма бледны по сравнению с реальным положением вещей. https://www.reuters.com/world/europe/google-maps-helps-italian-police-capture-mafia-fugitive-2022-01-05/
Доклад ЦБ по рискам криптовалют весьма разумный. Действительно, широкое использование крипты физиками в теории может расшатать экономику. Тут единственная заминка, что популярные криптовалюты на сегодня и не обладают достаточной масштабируемостью. Хотя, вот уже 10 лет совершенно по-клоунски заявляют, что масштабирование будет решено с новым релизом.
Так же по-клоунски они 10 лет говорят про децентрализацию, хотя для любой более-менее используемой крипты нужны профессиональные посредники - майнеры, биржи, и прочие. А степень концентрации во владении криптой и майнинге, как правило, весьма высока. Соответственно, представленные в проекте драконовские меры с ответственностью за владение криптой совершенно излишни - достаточно ударить по посредникам и неквалифицированный пользователь отвалится сам. А массовое облапошивание физиков в крипто-пирамидах - это именно то, что подрывает социальную стабильность.
Самый на сегодня разрушительный компонент крипто-мира - это майнинг. И с экологической точки зрения, и с экономической, и с политической. Мы знаем, что майнинг может вызвать энергетический кризис (Иран, Казахстан). Мы знаем, что энергетический кризис может вызвать бунты и стрельбу на улицах (Иран, Казахстан).
Специфических мер по искоренению майнинга доклад не упоминает, хотя, в принципе, это тоже предлагается сделать противозаконным. Тут, опять же, небольшая заминка в том, что значительная часть майнинга и сегодня противозаконна, так как ведётся на ворованном электричестве или на субсидированных тарифах.
То есть, меры в принципе правильные предлагают, но приоритеты неправильны - бомбить нужно посредников, а не физиков. Майнеров, в принципе, уже давно можно и нужно бомбить, только идёт этот процесс крайне медленно.
Доклад, тем не менее, хороший, трезвый. То, что выдали в ответ представители криптоиндустрии - гораздо менее когерентно.
Идею криптовалюты в принципе не считаю порочной, но ныне популярные проекты - однозначно на свалку.

https://www.cbr.ru/Content/Document/File/132241/Consultation_Paper_20012022.pdf
В рамках борьбы с остатками STL написал свой linked list. Заняло пол-дня. Потом написал fuzz test, стал фаззить. После >14 исправлений, связный список выдержал ночь фаззинга, что для 200 строк кода достаточно. Подумал, какой я старый и медленный. Потом понял: мой linked list выдерживает любую последовательность вызовов с любыми аргументами и корректно возвращает ошибки. C++ STL linked list обвалит программу на первом же неправильном аргументе. Очень разные вещи. Ну, и мой linked list - сериализуемый и хранимый.
Вообще, это уже сильно отличается и от типичного индустриального "C with classes" и от типичного студенческого "modern C++". "Paranoid C++"?
Forwarded from РБК Крипто
В Казахстане майнеров отключили от энергоснабжения.

Предприятия по добыче криптовалют будут оставаться без электроэнергии до 31 января из-за проблем с электричеством по всей территории страны:
https://www.rbc.ru/crypto/news/61efe0929a794788470941fc
Очень полезная книжка “Software Engineering at Google”
curated by Titus Winters, Tom Manshreck and Hyrum Wright, оказывается, доступна онлайн:
https://abseil.io/resources/swe_at_google.2.pdf
ABC.html
11.1 KB
Выделил и более-менее задокументировал диалект C++, который использую в разработке: ABC++. (Для тех, кому такие штучки интересны.)
Ещё один исторический алгоритм шифрования "от NSA" оказался с подвохом. То есть, налицо тренд. От Crypto AG и до Logjam - одно и то же, крипто с бэкдором, "который знаем только мы" (на самом деле нет). Конкурирующие на "свободном рынке" компании "демократических" стран не могут отклонить настойчивую просьбу NSA, это факт.

Итого, при выборе криптографии для проекта, какие сейчас есть опции?
1. Всё, одобренное NIST, под большим подозрением. Учитывая, как работает американская система, вряд ли они будут популяризовывать что-то неломаемое.
2. Есть популяризованные Бернштейном алгоритмы. Но это один человек, и кто его знает, что у него на уме.
3. Есть российский ГОСТ, в котором обнаружены большие странности (в Кузнечике и его друзьях).
4. Есть эзотерика, для которой непонятны риски и издержки даже.

Знает ли кто рускоговорящие сообщества по криптографии?

https://www.cryptomuseum.com/crypto/philips/px1000/nsa.htm#stef
Как-то меня познакомили с одним деятелем, который представлял РФ в международной организации по стандартам связи. Он потом сделал одну раннюю версию моего проекта межд стандартом от РФ. При этом, забыл меня упомянуть в числе авторов, к сожалению.
Но проблема была не столько в том, что украл, сколько в том, что не понимал даже, что он ворует. Это была ранняя и тупиковая версия проекта. Но для ИБД сгодилось, видимо.
Если с криптографией похожая ситуация (а это выглядит именно так), то не думаю, что я что-то буду ГОСТовское использовать.
https://habr.com/ru/company/virgilsecurity/blog/439788/
https://habr.com/ru/search/?target_type=posts&order=relevance&q=%5B%D0%BA%D1%83%D0%B7%D0%BD%D0%B5%D1%87%D0%B8%D0%BA%5D
1