Посты канала DEV: Рубиновые тона

сначала новые

#1441Превью ссылки
Просмотры418−38%к среднему
Пересылки2
Реакции11
Комментарии—
#1440Фото
Просмотры597−11%к среднему
Пересылки10
Реакции6
Комментарии—
Динамика просмотровСкрыть динамику

Рост просмотров

Часов после публикации

Показать таблицей
Часов после публикацииПросмотры
0 ч0
3 ч318
4 ч360
15 ч440
27 ч509
76 ч597
  1. Через 6 часов360
  2. Через 24 часа509
  3. Всего сейчас597
#1439Текст

И немного из рубрики "записки на манжетах", коей не было сколько-то месяцев... Чем дальше я продвигаюсь в плейлисте про абстрактную алгебру, тем больше думаю, как, вероятно, тяжело это давалось бы студентам в среднестатистическом институте. Просто я хорошо помню эти суровые книги, в которых всё всегда было *очевидно* и вытекало из какой-нибудь леммы номер 1.8, а если тебе не очевидно - ну ты просто дурак. Почему-то запомнился один учебник по программированию, переведённый с английского. Он прямо сломал парадигму, потому что он разговаривал с тобой на равных и *вежливо*. Разумеется, это был далеко не первый учебник по разработке, но именно он оказался какой-то "не такой". Потому что старые учебники - они прямо были агрессивные и сильно ругались. "ТЫ ВООБЩЕ КТО ТАКОЙ? *Меня* написали самые лучшие, самые бородатые мужики в самых растянутых свитерах, лучшие из лучших в СССР! Ты вообще знаешь, мелкий засранец, сколько миллионов - сотен миллионов! - жило в СССР? Так вот самые крутые из этих миллионов создали меня! Поэтому, сопляк, сиди тихо и слушай. И *я* говорю тебе, что вот это следствие *очевидным образом* вытекает из леммы 1.8. Понял?! А если не понял, я надеру тебе задницу!". Впрочем, я тоже, вероятно, грешу такими заходами, что, мол, "тут всё просто", но стараюсь этого избегать, насколько возможно. Лучше повторить несколько раз, чем понадеяться, что слушателю будет всё очевидно 😂

Открыть в Telegram
Просмотры499−26%к среднему
Пересылки5
Реакции16
Комментарии—
Динамика просмотровСкрыть динамику

Рост просмотров

Часов после публикации

Показать таблицей
Часов после публикацииПросмотры
0 ч0
3 ч172
8 ч366
26 ч433
38 ч464
74 ч499
  1. Через 6 часов366
  2. Через 24 часа433
  3. Всего сейчас499
#1438Текст

Как взломать криптографию за четыре попытки, или Индийский центр сертификации наносит ответный удар 🤡 Недавно выяснилось, что у нескольких промежуточных центров сертификации индийской компании eMudhra приватные ключи были числами 4, 56, 66, 115, 155, 156, 230 и 237. Да-да, один из приватных ключей был буквально 4 (при этом использовалась вполне серьёзная эллиптическая кривая P-384, рассчитанная на 192-битную криптографическую стойкость). В нормальных условиях восстановить приватный ключ по публичному практически невозможно. Но если приватный ключ равен 4, то взлом выглядит примерно так: from cryptography.hazmat.primitives.asymmetric import ec curve = ec.SECP384R1() # Представим, что CA сгенерировал ключ 4. private_key = ec.derive_private_key(4, curve) public_key = private_key.public_key().public_numbers() # Атакующий знает только публичный ключ. for candidate in range(1, 256): test = ec.derive_private_key(candidate, curve) point = test.public_key().public_numbers() if (point.x, point.y) == (public_key.x, public_key.y): print(f"ВЗЛОМАЛИ: {candidate}") break Почему это плохо? Центры сертификации (они же "удостоверяющие центры") выпускают цифровые сертификаты, с помощью которых браузеры проверяют подлинность HTTPS-сайтов. Если злоумышленник получает приватный ключ доверенного промежуточного CA, он потенциально может выпускать поддельные сертификаты для чужих доменов и использовать их для перехвата соединений. Самое забавное, что математика P-384 не сломалась, просто вместо случайного числа из примерно 2^384 возможных значений система использовала числа, которые можно перебрать за долю секунды. И да, теоретически честный генератор тоже может случайно выдать 4. Просто вероятность этого примерно один шанс на 10^116. А сколько пришлось бы перебирать нормальный ключ? Для P-384 лучший известный универсальный классический алгоритм требует порядка 2^192 операций. Даже если представить фантастический компьютер, выполняющий триллион операций над точками кривой в секунду, поиск занял бы порядка 10^38 лет. Для сравнения, возраст Вселенной — около 13,8 миллиарда лет. То есть взлом занял бы примерно в 10^28 раз больше времени, чем существует Вселенная.

Открыть в Telegram
Просмотры570−15%к среднему
Пересылки11
Реакции8
Комментарии—
Динамика просмотровСкрыть динамику

Рост просмотров

Часов после публикации

Показать таблицей
Часов после публикацииПросмотры
0 ч0
6 ч267
11 ч448
29 ч507
41 ч536
77 ч570
  1. Через 6 часов267
  2. Через 24 часа507
  3. Всего сейчас570
#1437Превью ссылки
Просмотры616−9%к среднему
Пересылки9
Реакции6
Комментарии—
Динамика просмотровСкрыть динамику

Рост просмотров

Часов после публикации

Показать таблицей
Часов после публикацииПросмотры
0 ч0
10 ч452
34 ч580
45 ч600
70 ч616
  1. Всего сейчас616
#1436Превью ссылки
Просмотры617−9%к среднему
Пересылки19
Реакции7
Комментарии—
Динамика просмотровСкрыть динамику

Рост просмотров

Часов после публикации

Показать таблицей
Часов после публикацииПросмотры
0 ч0
5 ч368
15 ч442
27 ч496
42 ч516
76 ч617
  1. Через 6 часов368
  2. Через 24 часа496
  3. Всего сейчас617
#1435Фото
Просмотры839+24%к среднему
Пересылки11
Реакции21
Комментарии—
Динамика просмотровСкрыть динамику

Рост просмотров

Часов после публикации

Показать таблицей
Часов после публикацииПросмотры
0 ч0
5 ч450
10 ч542
36 ч720
71 ч839
  1. Через 6 часов450
  2. Всего сейчас839
#1434Текстизменён
Просмотры830+23%к среднему
Пересылки5
Реакции17
Комментарии—
Динамика просмотровСкрыть динамику

Рост просмотров

Часов после публикации

Показать таблицей
Часов после публикацииПросмотры
0 ч0
12 ч447
33 ч656
38 ч674
76 ч830
  1. Всего сейчас830
#1433Текстизменён
Просмотры6770%к среднему
Пересылки4
Реакции5
Комментарии—
Динамика просмотровСкрыть динамику

Рост просмотров

Часов после публикации

Показать таблицей
Часов после публикацииПросмотры
0 ч0
17 ч425
35 ч492
68 ч677
  1. Через 24 часа425
  2. Всего сейчас677
#1432Фото
Просмотры742+10%к среднему
Пересылки6
Реакции9
Комментарии—
Динамика просмотровСкрыть динамику

Рост просмотров

Часов после публикации

Показать таблицей
Часов после публикацииПросмотры
0 ч0
57 ч715
75 ч742
  1. Всего сейчас742
#1426Превью ссылки
Просмотры1 878+178%к среднему
Пересылки8
Реакции6
Комментарии—
#1423Превью ссылки

В общем, мне тут особо было нечего делать и я подумал создать небольшой скрипт для решения простой задачи - поиска открытых PR в интересующих репозитариях. Конечно, о появлении PR и без того должен сообщать Github, но проблемы начинаются, когда репозитариев слишком много, и они торчат в разных организациях. Вопрос лично для меня сводился к чему-то вроде "какие существуют открытые PR в моих собственных репо, а также в указанных организациях?". Но другая сложность в том, что в указанной организации может быть полно репо, с которыми я вообще не работаю, и они меня мало интересуют. Собственно, скрипт эту задачу и решает: находит репо в разных профилях, по дефолту убирает архивированные и такие, где PR отключены, смотрит в каких репо юзер что-то делал, и потом выдаёт ограниченный список PR. Это особенно удобно для поиска каких-то древних PR, про которые вы вообще уже забыли. Этот скрипт доступен в видe ruby gem, можно пользоваться https://github.com/bodrovis/nya_pr Потребуется только сгенерировать токен с правами чтения в соответствующих организациях.

Открыть в Telegram
Просмотры1 886+180%к среднему
Пересылки6
Реакции15
Комментарии—
#1421Превью ссылкиизменён

Гугл проказничает опять. На сей раз они начали менять то, как выглядят ссылки в поисковой выдаче. Если раньше в SERP обычно лежали обычные ссылки на целевые сайты, то теперь вместо них можно получить что-нибудь вроде /goto?url=CAESabrakadabra. Такая ссылка сначала ведёт в Google, а уже оттуда вас перенаправляют на нужный сайт. Для обычного пользователя разницы почти никакой, а вот для скрейпера — уже интереснее, потому что такие ссылки выдаются не всегда и не всем, а если вы их получили, из HTML уже нельзя просто вытащить нормальный целевой URL. Я поисследовал эту штуку и написал статью о том, что вообще представляют собой новые ссылки /goto, что находится внутри загадочных CAES токенов (спойлер: внутри какая-то криптографическая фиговина, а не просто хитро закодированный URL), насколько их реально декодировать, почему просто вытащить исходный URL из токена не получается и как нормально резолвить такие ссылки на практике. В общем, приятного чтения: https://www.scrapingbee.com/blog/google-goto-redirect-urls/

Открыть в Telegram
Просмотры1 932+186%к среднему
Пересылки14
Реакции27
Комментарии—
#1419Превью ссылки
Просмотры2 376+252%к среднему
Пересылки5
Реакции11
Комментарии—
#1415Превью ссылки

*Я понял, в чём ваша беда: вы слишком серьёзны. Серьёзное лицо — это ещё не признак ума, господа. Все глупости на земле делаются именно с этим выражением лица. Улыбайтесь, господа. Улыбайтесь!* В общем, книга про ведьмака и возвращение в Элизиум (да, это где смесь Witcher и Disco Elysium) была дописана около месяца тому назад. Всего по объёму около 90-95 тысяч слов, короче в районе "ГП и философский камень" (кхм, эту серию я в своё время разнёс в пух и прах, но в целом отношусь к ней с симпатией). Почитать можно тут https://bodrovis.tech/tags/%D0%B2%D0%B5%D0%B4%D1%8C%D0%BC%D0%B0%D0%BA-%D0%B2%D0%BE%D0%B7%D0%B2%D1%80%D0%B0%D1%89%D0%B5%D0%BD%D0%B8%D0%B5-%D0%B2-%D1%8D%D0%BB%D0%B8%D0%B7%D0%B8%D1%83%D0%BC/ Скажу сразу: присутствует нецензурная лексика и темы, не предназначенные для лиц младше 18 лет (впрочем, всё это вымышленное и ненастоящее). Аудиоверсия этого безобразия тоже записана и будет опубликована после переслушивания и подготовки обложки. Это некоммерческая инициатива, которую реализовали полтора человека из Cat&Mouse team, так что мне будет приятно, если вы поделитесь ссылкой с друзьями. Клоунов можно не кидать. Спасибо

Открыть в Telegram
Просмотры2 227+230%к среднему
Пересылки7
Реакции25
Комментарии—
#1413Превью ссылки

Я долго воспринимал Polymarket просто как сайт со ставками на выборы и курс биткоина. Но с инженерной точки зрения это отличный полигон для Web3-разработчика: CLOB, WebSocket-потоки, EIP-712-подписи, несколько API, частичные исполнения и постоянная синхронизация onchain- и offchain-состояний. Гораздо интереснее очередного учебного NFT-маркетплейса. В курсе Guide DAO «Основы Polymarket» за десять модулей собирается TypeScript-проект polymarket-operator: каталог рынков, живая книга ордеров, симулятор исполнения, журнал позиций, анализ кошельков и аварийная остановка. Реальные ордера отправлять не придётся, зато на выходе получается нормальный инженерный проект на стыке backend, real-time data и блокчейна. Заодно сейчас у Guide DAO самая большая скидка года: 60% по промокоду KRUK, даже больше, чем на Black Friday. Одно членство открывает все направления, от Solidity и JS до агентской разработки, продакт-менеджмента и биотека. Оставляй заявку на сайте: https://www.guidedao.xyz/polymarket

Открыть в Telegram
Просмотры1 835+172%к среднему
Пересылки11
Реакции23
Комментарии—