Про пароли
Около 10 лет назад я ввел для себя систему генерации паролей, которую использовал по сегодняшний день при регистрации на большинстве сайтов. Не знаю ни одного случая компрометации моего алгоритма, но все же решил, что пора его поменять. А о старой технике как раз расскажу.
Идея довольно простая и описана во многих книгах по сетевой безопасности.
Пароль состоит из двух частей – длинная неизменяемая часть и короткая уникальная динамически вычисляемая для каждого домена.
Для генерации статичной части пароля можно воспользоваться каким-то мнемоническим правилом. Частый пример – первые буквы слов какого-нибудь четверостишия. Например, MsNvViVs (муха села на варенье, вот и все стихотворение). К этому нужно добавить пару цифр для осложнения перебора. Например дату рождения бабушки наоборот (2-05 станет 50-2). В моем случае статичная строка пароля была случайной и я просто ее запомнил.
Теперь к динамической части. В общем случае каждый новый аккаунт регистрируется на каком-то отдельном сайте, из домена которого можно получить что-то с виду случайное, но по факту всегда одинаковое. Например, можно посчитать количество символов в домене, вычесть это из 100 и перевернуть число (для avito.ru это будет 100-8 = 92 => 29). Либо можно брать 5 букву доменного имени или следующую за ней. В этом месте, конечно, лучше придумать что-то свое. Достаточно простое, чтобы не приходилось каждый раз долго вычислять, при этом достаточно сложное, чтобы сходу было невозможно понять алгоритм.
Осталось поженить 2 части. Тут тоже есть хитрость. Можно добавлять динамическую порцию в какое-то определенное место статической части. Например, одну половину сначала, а другую – в конце, либо придумать что-то более изощренное. На чужих устройствах я использовал перенос каретки, чтобы обмануть кейлогеры. Т.е вводил часть пароля, затем мышкой тыкал в нужное место и вводил остальную часть. Но для большинства ситуаций это, конечно, лишнее.
Теперь посмотрим, что у нас получилось:
Взгляните на результат и представьте, что кто-то узнал два ваших пароля. Основная задача системы – осложнить подбор третьего. Но тут нужно соблюдать баланс, чтобы самому во всем этом не запутаться.
По моему опыту лучший способ запомнить пароль или систему – это часто ее использовать. Потом все на себя возьмет мышечная память. Поэтому советую периодически разлогиниваться из аккаунтов и вообще не держать сессию авторизации слишком долго. Для часто посещаемых сайтов я использую отдельные пароли, которые стараюсь периодически менять.
Ну и пара слов о менеджере паролей. Да, это достаточно удобно, и да, это достаточно безопасно. Но есть и фатальные минусы – вся информация защищена единственным мастер-паролем, само приложение должно быть всегда под рукой, а облачному хранилищу нет окончательного доверия.
И напоследок. Для всех критичных аккаунтов типа мессенджеров, почты или банковских сервисов обязательно используйте двухфакторную аутентификацию и желательно через приложение (не SMS).
Около 10 лет назад я ввел для себя систему генерации паролей, которую использовал по сегодняшний день при регистрации на большинстве сайтов. Не знаю ни одного случая компрометации моего алгоритма, но все же решил, что пора его поменять. А о старой технике как раз расскажу.
Идея довольно простая и описана во многих книгах по сетевой безопасности.
Пароль состоит из двух частей – длинная неизменяемая часть и короткая уникальная динамически вычисляемая для каждого домена.
Для генерации статичной части пароля можно воспользоваться каким-то мнемоническим правилом. Частый пример – первые буквы слов какого-нибудь четверостишия. Например, MsNvViVs (муха села на варенье, вот и все стихотворение). К этому нужно добавить пару цифр для осложнения перебора. Например дату рождения бабушки наоборот (2-05 станет 50-2). В моем случае статичная строка пароля была случайной и я просто ее запомнил.
Теперь к динамической части. В общем случае каждый новый аккаунт регистрируется на каком-то отдельном сайте, из домена которого можно получить что-то с виду случайное, но по факту всегда одинаковое. Например, можно посчитать количество символов в домене, вычесть это из 100 и перевернуть число (для avito.ru это будет 100-8 = 92 => 29). Либо можно брать 5 букву доменного имени или следующую за ней. В этом месте, конечно, лучше придумать что-то свое. Достаточно простое, чтобы не приходилось каждый раз долго вычислять, при этом достаточно сложное, чтобы сходу было невозможно понять алгоритм.
Осталось поженить 2 части. Тут тоже есть хитрость. Можно добавлять динамическую порцию в какое-то определенное место статической части. Например, одну половину сначала, а другую – в конце, либо придумать что-то более изощренное. На чужих устройствах я использовал перенос каретки, чтобы обмануть кейлогеры. Т.е вводил часть пароля, затем мышкой тыкал в нужное место и вводил остальную часть. Но для большинства ситуаций это, конечно, лишнее.
Теперь посмотрим, что у нас получилось:
Сайт: avito.ru
Пароль: Ms50-2NvViVs29o
Сайт: vk.com
Пароль: Ms50-2NvViVs59m
Взгляните на результат и представьте, что кто-то узнал два ваших пароля. Основная задача системы – осложнить подбор третьего. Но тут нужно соблюдать баланс, чтобы самому во всем этом не запутаться.
По моему опыту лучший способ запомнить пароль или систему – это часто ее использовать. Потом все на себя возьмет мышечная память. Поэтому советую периодически разлогиниваться из аккаунтов и вообще не держать сессию авторизации слишком долго. Для часто посещаемых сайтов я использую отдельные пароли, которые стараюсь периодически менять.
Ну и пара слов о менеджере паролей. Да, это достаточно удобно, и да, это достаточно безопасно. Но есть и фатальные минусы – вся информация защищена единственным мастер-паролем, само приложение должно быть всегда под рукой, а облачному хранилищу нет окончательного доверия.
И напоследок. Для всех критичных аккаунтов типа мессенджеров, почты или банковских сервисов обязательно используйте двухфакторную аутентификацию и желательно через приложение (не SMS).
coronavirus
Многие из тех, кто знаком со мной лично, знают эту историю. Чуть меньше года назад я продал сайт с картой распространения коронавируса за $5000.
Началось все в конце января прошлого года. Мы в тот момент как раз жили в Азии и начало пандемии застали чуть раньше остальных. Я тогда залипал в игру Plague Inc, которая ожидаемо стало резко популярной, и Таня предложила мне сделать такую карту на реальных цифрах. Бегло погуглив, я не нашел единого источника данных и уже решил забить на идею, но вспомнил, что есть Википедия с ее многочисленными энтузиастами. В английской версии была актуальная табличка, в которую постоянно вносили данные. Написав простейший парсер, я получил обновляемые цифры с привязкой по странам. Почти сразу же всплыли первые проблемы с парсингом: пользователи Википедии постоянно ломали разметку таблицы, и мне приходилось писать костыли, которые игнорировали ошибки. Затем началась война правок от китайцев, которые делили и объединяли материковый Китай с Гонконгом и Макао. В один момент кто-то просто написал, что заболевших уже 100 000 (а власти скрывают). Я написал себе бота, который определял, что данные неадекватные и откатывался на старую версию. Этот же бот постил текстовую таблицу в канал.
Почти сразу ссылку на сайт опубликовал Нож в своем телеграм канале, а затем по просьбе нашего директора по развитию пост разместили в Лентаче. В пике количество активных пользователей на сайте доходило до 4000, а всего за 2 месяца посчиталось около 10 миллионов просмотров.
Через неделю после запуска я нашел более адекватный источник данных на одном из сайтов китайских СМИ и переписал парсер. Там названия стран не менялись, а ошибок в цифрах стало значительно меньше.
Надо сказать, что почти одновременно с запуском моей карты стал популярен сервис от университета Джонса Хопкинса.
И да, он был гораздо более точный и делил страны на регионы, но я решил ничего у себя не менять и позиционировать сайт скорее как развлекательный, нежели статистический.
В конце марта мне написали с вопросом, готов ли я продать сайт. Так как монетизировать я ничего не планировал, да и вообще вся эта тема мне порядком надоела, то я согласился при условии, что сервис не будет использоваться в мошеннических схемах. Так я отдал права на домен, перенес код и парсер и сменил владельца Телеграм канала, у которого к тому моменту уже было 20 000 подписчиков.
Сервис еще продолжал работать какое-то время, но к лету новый владелец совсем на него забил и даже перестал оплачивать сервер. Не очень понятно, зачем он его покупал, но для меня все сложилось замечательно.
Скриншот сайта в первую неделю после запуска.
Многие из тех, кто знаком со мной лично, знают эту историю. Чуть меньше года назад я продал сайт с картой распространения коронавируса за $5000.
Началось все в конце января прошлого года. Мы в тот момент как раз жили в Азии и начало пандемии застали чуть раньше остальных. Я тогда залипал в игру Plague Inc, которая ожидаемо стало резко популярной, и Таня предложила мне сделать такую карту на реальных цифрах. Бегло погуглив, я не нашел единого источника данных и уже решил забить на идею, но вспомнил, что есть Википедия с ее многочисленными энтузиастами. В английской версии была актуальная табличка, в которую постоянно вносили данные. Написав простейший парсер, я получил обновляемые цифры с привязкой по странам. Почти сразу же всплыли первые проблемы с парсингом: пользователи Википедии постоянно ломали разметку таблицы, и мне приходилось писать костыли, которые игнорировали ошибки. Затем началась война правок от китайцев, которые делили и объединяли материковый Китай с Гонконгом и Макао. В один момент кто-то просто написал, что заболевших уже 100 000 (а власти скрывают). Я написал себе бота, который определял, что данные неадекватные и откатывался на старую версию. Этот же бот постил текстовую таблицу в канал.
Почти сразу ссылку на сайт опубликовал Нож в своем телеграм канале, а затем по просьбе нашего директора по развитию пост разместили в Лентаче. В пике количество активных пользователей на сайте доходило до 4000, а всего за 2 месяца посчиталось около 10 миллионов просмотров.
Через неделю после запуска я нашел более адекватный источник данных на одном из сайтов китайских СМИ и переписал парсер. Там названия стран не менялись, а ошибок в цифрах стало значительно меньше.
Надо сказать, что почти одновременно с запуском моей карты стал популярен сервис от университета Джонса Хопкинса.
И да, он был гораздо более точный и делил страны на регионы, но я решил ничего у себя не менять и позиционировать сайт скорее как развлекательный, нежели статистический.
В конце марта мне написали с вопросом, готов ли я продать сайт. Так как монетизировать я ничего не планировал, да и вообще вся эта тема мне порядком надоела, то я согласился при условии, что сервис не будет использоваться в мошеннических схемах. Так я отдал права на домен, перенес код и парсер и сменил владельца Телеграм канала, у которого к тому моменту уже было 20 000 подписчиков.
Сервис еще продолжал работать какое-то время, но к лету новый владелец совсем на него забил и даже перестал оплачивать сервер. Не очень понятно, зачем он его покупал, но для меня все сложилось замечательно.
Скриншот сайта в первую неделю после запуска.
Мой любимый доменный регистратор очень ироничен. Если серьезно, то porkbun.com пока не дал ни одного повода думать о себе плохо. Я перенес практически все свои домены к ним, а от .ru зоны стараюсь отказаться совсем.
Вчера креативное бюро Золотые тигры России анонисировало гениальный проект – Музей ЖЭК-арта. По уши счастлив, что помогал в его разработке и вообще являюсь частью такой прекрасной команды.
Одной из задач было создание постеров для DIY-конструктора, и нам как нельзя кстати пригодилась библиотека, которую я делал для работы с постерами на Ноже. Это обертка над PHP-GD в основном для удобной генерации многострочного текста на изображении. Библиотека берет на себя все вычисления и позволяет гибко комбинировать надписи, добавлять ватермарки, применять фильтры итд.
Посмотрите как выглядит сгенерированный постер и обязательно соберите свой арт:
https://dvor.digital/share/1814cac7fc14b7052690ce05acf8afde8a41d0c0/
Одной из задач было создание постеров для DIY-конструктора, и нам как нельзя кстати пригодилась библиотека, которую я делал для работы с постерами на Ноже. Это обертка над PHP-GD в основном для удобной генерации многострочного текста на изображении. Библиотека берет на себя все вычисления и позволяет гибко комбинировать надписи, добавлять ватермарки, применять фильтры итд.
Посмотрите как выглядит сгенерированный постер и обязательно соберите свой арт:
https://dvor.digital/share/1814cac7fc14b7052690ce05acf8afde8a41d0c0/
Remembrall
Я не люблю закладки в браузере – никогда не получается там организовать удобоное хранилище. Долгое время я скидывал ссылки себе в Saved Messages, но со временем там ожидаемо скопилась большая мусорка. Хотя идея отправлять находки самому себе в Telegram кажется мне очень простой и удобной, поэтому я решил просто завести для хороших ссылок отдельного бота. Для быстрого поиска нужной информации было решено помечать все ссылки тегами и кратким описанием. Получилась такая эталонная история сообщений с ботом, что пришлось делать для нее веб-интерфейс. Так и родился сервис Remembrall – напоминалка Невилла из Гарри Поттера.
Написан сервис на nodejs, база хранится в sqlite. Код доступен на Github. Профили могут быть как публичными, так и скрытыми под зашифрованным ключом. Еще из интересного – реализация удаления сообщений из базы на сервере. Telegram позволяет отслеживать редактирование, но ничего не сообщает боту об удалении из истории. Поэтому чтобы «забыть» ненужое сообщение, нужно отреплаить его с командой
Ну и напоследок ссылка на мой публичный профиль:
https://remembrall.app/lukin
Я не люблю закладки в браузере – никогда не получается там организовать удобоное хранилище. Долгое время я скидывал ссылки себе в Saved Messages, но со временем там ожидаемо скопилась большая мусорка. Хотя идея отправлять находки самому себе в Telegram кажется мне очень простой и удобной, поэтому я решил просто завести для хороших ссылок отдельного бота. Для быстрого поиска нужной информации было решено помечать все ссылки тегами и кратким описанием. Получилась такая эталонная история сообщений с ботом, что пришлось делать для нее веб-интерфейс. Так и родился сервис Remembrall – напоминалка Невилла из Гарри Поттера.
Написан сервис на nodejs, база хранится в sqlite. Код доступен на Github. Профили могут быть как публичными, так и скрытыми под зашифрованным ключом. Еще из интересного – реализация удаления сообщений из базы на сервере. Telegram позволяет отслеживать редактирование, но ничего не сообщает боту об удалении из истории. Поэтому чтобы «забыть» ненужое сообщение, нужно отреплаить его с командой
/forget.Ну и напоследок ссылка на мой публичный профиль:
https://remembrall.app/lukin
👍1
Кстати, вдруг кто пропустил, в Telegram можно теперь выставлять свои логины на аукцион. Eсли у кого-то висит красивое имя заброшенного сообщества, можно попробовать продать.
https://fragment.com/
https://fragment.com/
Сегодня Telegram запустил работу TON-sites прямо в приложении. Если вы уже успели обновиться, то должна сработать ссылка: tonsite://antonlukin.ton
Я уже давно в фоне интересуюсь проектами в TON, и пару лет назад даже сделал прокси для доступа из браузера. Сейчас она входит в экосистему TON.SKI.
Пока достаточно скептично отношусь к перспективам этой технологии, но возможно она станет еще одним способом эффективного обхода блокировок.
Я уже давно в фоне интересуюсь проектами в TON, и пару лет назад даже сделал прокси для доступа из браузера. Сейчас она входит в экосистему TON.SKI.
Пока достаточно скептично отношусь к перспективам этой технологии, но возможно она станет еще одним способом эффективного обхода блокировок.
Этот канал помер из-за того, что я пытался держать слишком высокую планку постов (да, это была высокая планка)
Теперь я буду кидать сюда всякий мусор, поэтому, пожалуйста, отписывайтесь скорее
Теперь я буду кидать сюда всякий мусор, поэтому, пожалуйста, отписывайтесь скорее
👍7😁1
Лучшие видео на ютубе – на моем канале. Смотрите видео из Африки, если у вас открывается. Если не открывается, то не смотрите.
https://www.youtube.com/watch?v=Wamn5zCNh2A
https://www.youtube.com/watch?v=Wamn5zCNh2A
YouTube
South Africa – 2025
Filmed with DJI Mini 3 Pro. South Africa.
Take a look at selected media from my travels:
https://lukin.blog/
Feel free to use some materials from this video:
https://pixabay.com/users/29278027/
https://unsplash.com/@antonlukin/
Music: https://www.epid…
Take a look at selected media from my travels:
https://lukin.blog/
Feel free to use some materials from this video:
https://pixabay.com/users/29278027/
https://unsplash.com/@antonlukin/
Music: https://www.epid…
❤3😁1
В vscode завезли Codex (вроде давно уже, но мне только недавно доложили). Теперь я мамы вайбкодер. Если вдруг у вас есть платная подписка на ChatGPT, обязательно попробуйте.
Писать говнючий код стало сильно проще, а другой нам и не нужен.
https://marketplace.visualstudio.com/items?itemName=openai.chatgpt
Писать говнючий код стало сильно проще, а другой нам и не нужен.
https://marketplace.visualstudio.com/items?itemName=openai.chatgpt
17😁5
Обновился короче на новую iOS 26.
Стало как всегда хуже, чем было, но лучше, чем могло бы быть. Пока каких-то особых багов даже не заметил, но кривые скругления подбешивают. Из самого полезно-бесполезного: теперь будильник можно откладывать не только на 9 минут, но и на 15 (Amazing).
В общем, если у вас Андроид, то обновляться не советую.
Стало как всегда хуже, чем было, но лучше, чем могло бы быть. Пока каких-то особых багов даже не заметил, но кривые скругления подбешивают. Из самого полезно-бесполезного: теперь будильник можно откладывать не только на 9 минут, но и на 15 (Amazing).
В общем, если у вас Андроид, то обновляться не советую.
3😁3
Ну все. Вот так и выглядит зависимость от ллмки. Codex выжрал весь мой лимит платного ChatGPT. Пришлось переключиться на запросы через API и сделать додеп. А я ведь еще над лудиками угорал.
Ваш Антон Додепович Лудин.
Ваш Антон Додепович Лудин.
1😁6
Прикиньте, у меня с давних времен был в телеге юзернейм @nft_track для какого-то проекта. И вот решил я его "продать" на аукционе. Ну точнее просто хотел посмотреть процесс переноса логина в collectible – это когда юзернейм привязывается к кошельку в блокчейне, а не к аккаунту в телеге. Аукцион длится минимум неделю. В общем я разместил и думать забыл, а за час до конца аукциона кто-то взял и сделал ставку.
Не знаю зачем, но я перебил ставку. И осталось 30 минут до того, как я профукаю 25 долларов на ненужный логин. Ну или тот хитрец выжидает, чтобы перебить в последний момент, когда я уйду спать.
https://fragment.com/username/nft_track
Update: Братишка поднял ставочку. Не знаю, что делать – не люблю азартные игры
Не знаю зачем, но я перебил ставку. И осталось 30 минут до того, как я профукаю 25 долларов на ненужный логин. Ну или тот хитрец выжидает, чтобы перебить в последний момент, когда я уйду спать.
https://fragment.com/username/nft_track
Update: Братишка поднял ставочку. Не знаю, что делать – не люблю азартные игры
😁3🌚1
Это должен был быть проект на 2 недели, но как обычно растянулся почти на 4 месяца.
Я живу в Новом Белграде, в 45 блоке. У нас достаточно необычный зеленый район, и я вообще его большой фанат. А еще тут много граффити на стенах. Но не парашных тегов, а красивых артов, которые очень хотелось пофоткать и куда-то сохранить.
В общем я месяц обходил район и пытался понять, что и кем написано на стенах. Сразу скажу, занятие не из легких, но каждый раз я чувствовал, что все глубже погружаюсь в лор. Я перерыл весь интернет, узнал вагон всяких фактов про 45 блок, даже наткнулся на научные работы по граффити в Белграде, купил книжку по Street Art, посмотрел десятки роликов.
На сайт тратить много времени у меня не было желания, поэтому почти весь проект я навайбкодил. Но этого было мало, нужно было еще откуда-то взять описания. Конечно, и тут без ChatGPT не обошлось, но мне пришлось написать десяток парсеров ссылок, подбирать промпты под адекватные описания и написать миграторы для автоматической публикации.
Пока планирую немного потестировать, поисправлять кривые описания и галереи, а потом буду писать художникам, контакты которых нашел, просить разметить работы, авторство которых я так и не смог определить.
Вот ссылка: https://blok45.art/
Из России может не открываться – я пока не придумал, где сейчас безопасно хостить, чтобы не попасть под блокировки подсетей.
Я живу в Новом Белграде, в 45 блоке. У нас достаточно необычный зеленый район, и я вообще его большой фанат. А еще тут много граффити на стенах. Но не парашных тегов, а красивых артов, которые очень хотелось пофоткать и куда-то сохранить.
В общем я месяц обходил район и пытался понять, что и кем написано на стенах. Сразу скажу, занятие не из легких, но каждый раз я чувствовал, что все глубже погружаюсь в лор. Я перерыл весь интернет, узнал вагон всяких фактов про 45 блок, даже наткнулся на научные работы по граффити в Белграде, купил книжку по Street Art, посмотрел десятки роликов.
На сайт тратить много времени у меня не было желания, поэтому почти весь проект я навайбкодил. Но этого было мало, нужно было еще откуда-то взять описания. Конечно, и тут без ChatGPT не обошлось, но мне пришлось написать десяток парсеров ссылок, подбирать промпты под адекватные описания и написать миграторы для автоматической публикации.
Пока планирую немного потестировать, поисправлять кривые описания и галереи, а потом буду писать художникам, контакты которых нашел, просить разметить работы, авторство которых я так и не смог определить.
Вот ссылка: https://blok45.art/
Из России может не открываться – я пока не придумал, где сейчас безопасно хостить, чтобы не попасть под блокировки подсетей.
3❤11🔥4❤🔥1🆒1