Pull to refresh
128
0
Сергей @seriyPS

backend

Send message

Генерация сложных паролей простыми фразами

Reading time1 min
Views11K
Любите ли вы запоминать пароли вида:

qG4'P}:ZGKq?
0[KO!,7`@;6F
]xQ1H]mxLPa#
?

Я — терпеть не могу! Особенно с учётом того, что периодически все эти пароли нужно менять и для каждого сервиса отдельно, а их столько, что голова кругом идёт! Где тут всё запомнишь?

Вариантов несколько:
а) задавать простые пароли и боятся что их кто нибудь подберёт/угадает;
б) задавать сложные пароли (см. выше) и таскать их всё время с собой на бумажке (что тоже очень небезопасно!);
в) использовать метод шифрования простых фраз штатными средствами в системе.

Именно третий пункт я и затрону. Сей метод сводится к следующему (примитивный пример):

%echo "простая_фраза" | md5

На выходе вы получите криптостойкий хеш вида: b3d0da41b07d550d97d579bd642d7dbf. Однако это самый примитивный пример. Можно использовать md5 в связке с sha1/uuencode/openssl и вообще со всем что вам только в голову придёт! Так же можно, например, брать хеш с хеша определённое кол-во раз. Только хотелось бы предупредить, что длину пароля необходимо урезать (!), т.к. если размер будет известен — криптостойкость падает в разы.

Представляю вашему вниманию простой скрипт для реализации сего деяния. Назвал я его «genspass» (от GenerateS encoded Password), написан на классическом unix shell (разумеется совместим с bash/zsh и прочими).
Программа работает просто: получает ключевую фразу (слово, символ — не важно), переводит в MD5, далее в BASE64 и урезает до назначенной длины (задаётся в скрипте), после чего на экран выводится результат.
Пример: вводим 123 получаем YmExZjI1MTFmYzM, копируем и вставляем куда нужно.

Последнюю версию скрипта всегда можно получить по этому адресу.
Total votes 111: ↑65 and ↓46+19
Comments147

Memcached — стратегия кеширования

Reading time6 min
Views17K
Хочу поприветствовать хабросообщество. Из приятных впечатлении при регистрации на Хабре — так это атмосфера сказочности, которая бывает только в старых добрых сказках из советского Кинофильма.
Итак, слезы умиления прошли, приступаем. Ниже топик, который привел к инвайту на Хабр.

Memcached применяется для кеширования данных. Это делается для того, чтобы избежать лишних обращений к базе данных, т.е. в Memcached сохраняют результаты запросов. Это ускоряет работу сайта и уменьшают время выдачи страниц.
Кеш кроме преимуществ имеет свои недостатки. Одна из проблем кеша — это его актуальность. В режиме работы «только чтение» трудностей не возникает. Если же мы имеем дело с данными, которые изменяются, или изменяются часто, то эффективность кеширования резко падает.
Читать дальше →
Total votes 59: ↑38 and ↓21+17
Comments88

Excel-калькулятор реальной надёжности паролей

Reading time1 min
Views2.4K
Известный консультант по корпоративной безопасности Роджер Граймс говорит, что ему надоело постоянно объяснять во время презентаций базовые факторы, которые влияют на безопасность политики паролей, принятой в организации. Он постоянно объясняет, почему восьми символов мало для надёжности паролей и какие ещё факторы могут помочь злоумышленнику эффективно подобрать пароль. Чтобы упростить себе задачу и продемонстрировать слабость средней политики паролей, Граймс составил Excel-таблицу (ZIP), в которой учёл все факторы: диапазон допустимых символов, длина пароля, количество вариантов в минуту, которые может пробовать злоумышленник, максимальное количество дней до смены пароля, модель энтропии.

Калькулятор показывает, сколько дней в среднем потребуется злоумышленнику, чтобы подобрать пароль при заданных условиях, сколько вообще существует возможных комбинаций и сколько из них реальных (с учётом реальной энтропии). Например, в дефолтном примере с 94 символами и длиной пароля в 8 символов при NIST-энтропии теоретическое возможное количество паролей превышает 6 квадриллионов, но количество вероятных паролей с учётом предположения о реальной энтропии — всего 16,8 млн. Для взлома такой защиты за допустимое количество дней нужно суметь установить скорость подбора всего 64,7 паролей в минуту.

По мнению автора, это первый калькулятор, который высчитывает не теоретическую, а практическую скорость взлома парольной защиты.
Total votes 29: ↑24 and ↓5+19
Comments15

Лайфхак для сисадмина, когда не работает «ping ya.ru»

Reading time1 min
Views48K
Многие для проверки доступности интернетов используют простое и короткое «ping ya.ru», но что делать если не работает днс или недоступен сам ресурс ya.ru? Есть легко запоминающийся ip адрес одного из днс серверов.

ping 4.2.2.2

upd: перенесено в «системное администрирование»
Total votes 229: ↑214 and ↓15+199
Comments121

Обзор системной архитектуры социальной сети Campus.ru

Reading time11 min
Views19K
Представляю Вашему вниманию обзор высокоуровневой системной архитектуры социальной сети www.campus.ru, разработки компании ООО «Креатив Медиа». На мой взгляд, данный материал интересен тем, что позволяет оценить применимость рассмотренных подходов и технологий в разработке интернет-ресурсов. По крайней мере, когда наша компания начинала проект «Кампус», мне очень не хватало подобной информации.
Дальше очень много букв
Total votes 95: ↑88 and ↓7+81
Comments133

ООО «Снежинка» — Часть 1. Пошаговое руководство по регистрации.

Reading time7 min
Views3.5K

Прелюдия


Близкое общение с налоговой инспекцией иначе как с оргией я сравнить не могу. Поэтому вступление названо именно так. Причем болезненные ощущения сей процесс доставляет не только девственникам начинающим бизнесменам, но и людям с опытом. Впрочем, статья адресована первым.

После обсуждения с партнером будущего бизнеса и выбора движка для интернет-магазина, встал вопрос о регистрации фирмы. Каталог еще не наполнен, сайт поисковые системы еще в лицо не видели, поэтому особенной спешки в регистрации не было, но и тянуть не хотелось. Все же первые клиенты могут прийти и из оффлайна, а мы даже счет выставить не сможем.
Читать дальше →
Total votes 176: ↑170 and ↓6+164
Comments82

Обзор Jabber клиентов под Windows

Reading time4 min
Views176K
При переводе друзей и знакомых с icq на jabber столкнулся с проблемой: на какой клиент перевести пользователя? В процессе перехода выясняется, что клиентов достаточно много, а пользователей по большому счёту интересует внешний вид клиента. Под катом краткий обзор jabber клиентов под Windows.
далее
Total votes 153: ↑127 and ↓26+101
Comments202

Обзор Jabber-клиентов для мобильных телефонов с поддержкой Java (J2ME)

Reading time2 min
Views20K
В последние время многие решили перейти на Jabber. И тут же возникает вопрос какой Jabber клиент выбрать для мобильного телефона? Не так давно был обзор существующих решений для Symbian 9. К сожалению, смартфоны есть не у всех — поэтому представляю краткий обзор Jabber-клиентов для мобильных телефонов с поддержкой Java.

Читать дальше →
Total votes 47: ↑42 and ↓5+37
Comments32

Bluetooth в Linux

Reading time3 min
Views52K

1. Вступление


А вы знаете, что настроить bluetooth соединение с PC на Linux совсем не сложно?
Итак, сейчас мы создадим подключение к телефону\PDA, примонтируем файловую систему телефона к оной на ПК и создадим GPRS\EDGE подключение.

Читать дальше →
Total votes 53: ↑50 and ↓3+47
Comments45

Домашняя бухгалтерия онлайн + оффлайн

Reading time2 min
Views5.6K
Как-то раз 4 года назад, исключительно для собственной нужды, сделал я сервис для ведения домашней бухгалтерии в интернете. Вот думаю, пускай жена из дома траты вносит, а я с работы. Может хоть так буду видеть сколько денег сейчас в семье осталось и куда они уходят.

Сделал, да и выложил в общий доступ, тогда ещё под доменом tinylife.ru, в довесок к личным сервисам типа закладок, дневников и т.п., на которые я возлагал надежды. Выкладываю, а сам про себя думаю — неужто найдутся люди, способные вести домашнюю бухгалтерию в интернете?

С тех пор прошло время, и вот что получилось сейчас.
Читать дальше →
Total votes 81: ↑77 and ↓4+73
Comments156

Обслуживание тысяч запросов в секунду на примере XBT Tracker

Reading time5 min
Views8K
Недавно проводили тест, результаты которого показали, что одно приложение обрабатывает 2000 запросов в секунду на скромном сервере, где это было не единственной нагрузкой. При этом результат каждого запроса записывается в 3-5 таблиц в MySQL. Честно говоря, меня такой результат удивил, поэтому решил поделиться с хабрасообществом описанием архитектуры этого приложения. Подобный подход применим от баннерных показов до чатов и микроблогов, надеюсь кому-нибудь покажется интересным.

Во-первых, это приложение однопоточное. Всё делается одним процессом, работа с сокетами — неблокирующими epoll/select, никаких ожидающих ввода/вывода потоков (threads). С развитием HTTP, сначала появлением Keep-Alive, затем AJAX и набирающим популярность COMET, количество постоянных соединений с веб-сервером растёт, на нагруженных проектах измеряется тысячами и даже десятками тысяч, и если для каждого создавать свой поток (thread) со своим стеком и постоянно переключаться между ними — ресурсов сервера очень быстро не хватит.

Второй ключевой момент — что один SELECT… WHERE pk in (k1, k2, ..., kN) выполняется быстрее, чем несколько SELECT… WHERE pk=… Выполняя работу с базой данных большими пачками можно уменьшить не только число запросов в секунду, но и общую нагрузку.
Читать дальше →
Total votes 69: ↑67 and ↓2+65
Comments41

Рулим трафиком в Linux. Аккаунтинг, сбор статистики

Reading time6 min
Views22K
Каждый админ должен в своей жизни настроить сендмейл, написать биллинг и обругать маздай :)
© bash.org.ru

Сендмейл мы настраивать не будем, как и ругать детище Билли, а попробуем создать что-то вроде биллинга, т.к. этот вопрос рано или поздно встает практически перед всеми системными администраторами.

Статья ориентирована на новичков в администрировании и опытным спецам навряд ли будет интересна.
Читать дальше →
Total votes 67: ↑65 and ↓2+63
Comments61

Организация общения с посетителями сайта: варианты.

Reading time2 min
Views3.4K
ОператорыДовольно интересная тема, особенно важная для интернет-магазинов, сайтов турагенств и прочих оператор-ориентированных сервисов. Стандартный подход в рунете такой: в шапке сайта указывается телефон, в подвале — е-мейл, в лучшем случае есть ICQ или форма обратной связи. Skype мне пока не встречался.

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

На западе решением этой проблемы было озадачено несколько компаний, разработавших всё, что можно найти в Google по запросу “Live Chat Software“, то есть программы для мгновенной связи оператора с посетителем сайта. По некоторым данным, такой механизм в хорошей реализации может увеличить конверсию и, соответственно, продажи более чем на 80% (!). Это вполне логично — задать вопрос специалисту проще, чем лазать по каталогу и легче, чем звонить, искать кого-то в ICQ или ждать ответа по e-mail.

Отсюда логически следует жизненный вопрос: как это реализовать, желательно самостоятельно и бесплатно?
Читать дальше →
Total votes 41: ↑40 and ↓1+39
Comments88

Прогрессивные технологии, как способ выжать из сервера максимум

Reading time5 min
Views12K

Вступление


Просто красивый rrdtool =)
Забавно, но когда программист разрабатывает какой-либо продукт, он редко задумывается над вопросом могут ли на одну кнопку в один момент времени нажать одновременно 2000 человек. А зря. Оказывается могут. Как ни странно но большинство движков, написанных такими программистами, очень плохо ведут себя под большими нагрузками. Кто бы подумал, а всего один лишний INSERT, не проставленный index, или кривая рекурсивная функция могут поднять load averages чуть ли не на порядок.

В этой статье я опишу как мы, разработчики проекта, сумели выжать из одного сервера с Pentium 4 HT / 512Mb RAM, максимум, держа одновременно 700+ пользователей на форуме и 120,000 на трекере. Да, проект этот — торрент трекер. Предлагаю сразу оставить в стороне разговоры о копирайтах и правах, мне это не интересно, что действительно интересно — это HighLoad.
читать дальше
Total votes 318: ↑314 and ↓4+310
Comments184

Закрепляем jQuery — 25 отличных советов

Reading time19 min
Views168K
Перевод отличной статейки. Думаю, будет полезна как новичкам, которые только приступили к использованию jQuery, так и тем, кто уже какое-то время с ним работает. А кого-то, возможно, заставит глянуть эту чудесную библиотечку. Многие советы имеют отношение не только к jQuery, но и к JavaScript в целом. Лично для меня была весьма и весьма познавательной, посему и захотелось донести это «до масс». Перевод не дословный, но передающий смысл и максимально адаптированный к русскому языку.

Далее все написано от имени автора оригинальной статьи.

Введение


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

Я не эксперт в jQuery. И даже не претендую, поэтому, если встретите ошибки, смело поправляйте меня и вносите предложения по улучшению (поправлять и присылать поправки нужно автору статьи, а не перевода — зам. пер.).

Я называю себя «среднестатистическим» пользователем jQuery и я думаю, что всем остальным будет интересно почитать и что-нибудь почерпнуть из «фишек», «трюков» и техник, которые я освоил за последний год. Статья получилась куда длиннее, чем я предполагал изначально, так что в самом начале я привел «содержание» для более удобной навигации и возможности при желании пропустить не интересующие моменты.

Содержание


  1. Загружайте фреймворк с Google Code
  2. Используйте «шпаргалку» (cheat sheet)
  3. Соединяйте все ваши скрипты и уменьшайте размер файла
  4. Используйте возможности Firebug для ведения логов
  5. Минимизируйте операции выборки в пользу кэширования
  6. Сводите манипуляции с DOM-деревом к минимуму
  7. Оборачивайте все в единый элемент, когда речь идет о любой вставке в DOM
  8. Используйте «id» вместо классов, где это возможно
  9. Задайте контекст своим селекторам
  10. Используйте последовательности вызовов методов с умом
  11. Научитесь правильно использовать анимацию
  12. Научитесь назначать и делегировать события
  13. Используйте классы для сохранения состояния
  14. Еще лучше — используйте встроенный в jQuery метод data() для сохранения состояния
  15. Пишите собственные селекторы
  16. Подготавливайте HTML и модифицируйте его, когда страница загружена
  17. Используйте «отложенную загрузку» (lazy loading) для определенного контента для выигрыша в общей скорости и преимуществ для SEO
  18. Используйте служебные функции jQuery
  19. Используйте «noconflict» для переименования глобального объекта «jquery», когда используете его с другими фреймворками
  20. Как узнать что картинки загружены?
  21. Всегда используйте последнюю версию
  22. Как проверить, что элемент существует?
  23. Добавляйте класс «JS» в элемент «html»
  24. Возвращайте «false» для отмены поведения по-умолчанию
  25. Короткая запись для события готовности документа


Rock'n'Roll!
Total votes 188: ↑182 and ↓6+176
Comments109
12 ...
14

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Works in
Date of birth
Registered
Activity