Pull to refresh
0
0
Артем @lart

Пользователь

Send message

Книга «Как пережить полный конец обеда, или безопасность в PHP». Часть 1

Reading time22 min
Views46K
image

Big Five Part 3 by CrazyAsian1

Привет. Меня зовут Саша Баранник. В Mail.Ru Group я руковожу отделом веб-разработки, состоящим из 15 сотрудников. Мы научились создавать сайты для десятков миллионов пользователей и спокойно справляемся с несколькими миллионами дневной аудитории. Сам я занимаюсь веб-разработкой около 20 лет, и последние 15 лет по работе программировать приходится преимущественно на PHP. Хотя возможности языка и подход к разработке за это время сильно изменились, понимание основных уязвимостей и умение от них защититься остаются ключевыми навыками любого разработчика.

В интернете можно найти много статей и руководств по безопасности. Эта книга показалась мне достаточно подробной, при этом лаконичной и понятной. Надеюсь, она поможет вам узнать что-то новое и сделать свои сайты надёжнее и безопаснее.

P. S. Книга длинная, поэтому перевод будет выкладываться несколькими статьями. Итак, приступим…
Читать дальше →

Современный PHP без фреймворков

Reading time13 min
Views92K


У меня есть для вас непростое задание. Когда в следующий раз начнёте новый проект, постарайтесь обойтись без PHP-фреймворка. Я не собираюсь перечислять недостатки фреймворков, и это не проявление синдрома неприятия чужой разработки: в этом руководстве мы будем использовать пакеты, написанные разработчиками нескольких фреймворков. Я всецело уважаю инновации в этой сфере.

Читать дальше →

Долой таблички! Как выучить английские времена

Reading time5 min
Views275K


Времена в английском языке традиционно считаются одной из самых сложных тем в обучении. Они прочно ассоциируются с зазубриванием длинных малопонятных таблиц и запоминанием неочевидных правил. На самом деле, все не так. Рассказываем, как быстро овладеть временами и их аспектами, чтобы начать говорить по-английски, не спотыкаясь.
Читать дальше →

Руководство по написанию защищённых PHP-приложений в 2018-м

Reading time18 min
Views59K

Приближается 2018 год, и технари — в частности веб-разработчики — должны отбросить многие старые методики и верования в сфере разработки защищённых PHP-приложений. Особенно это относится ко всем, кто не верит, что такие приложения вообще возможны.


Это руководство — дополнение к электронной книге PHP: The Right Way с сильным уклоном в безопасность, а не общие вопросы программирования на PHP (вроде стиля кода).

Читать дальше →

Доступно о криптографии на эллиптических кривых

Reading time37 min
Views279K
image


Тем, кто знаком с криптографией с открытым ключом, наверно известны аббревиатуры ECC, ECDH и ECDSA. Первая — это сокращение от Elliptic Curve Cryptography (криптография на эллиптических кривых), остальные — это названия основанных на ней алгоритмов.

Сегодня криптосистемы на эллиптических кривых используются в TLS, PGP и SSH, важнейших технологиях, на которых базируются современный веб и мир ИТ. Я уже не говорю о Bitcoin и других криптовалютах.

До того, как ECC стала популярной, почти все алгоритмы с открытым ключом основывались на RSA, DSA и DH, альтернативных криптосистемах на основе модулярной арифметики. RSA и компания по-прежнему популярны, и часто используются вместе с ECC. Однако несмотря на то, что магия, лежащая в фундаменте RSA и подобных ей алгоритмов легко объяснима и понятна многим, а грубые реализации пишутся довольно просто, основы ECC всё ещё являются для большинства людей загадкой.

В этой серии статей я познакомлю вас с основами мира криптографии на эллиптических кривых. Моя цель — не создание полного и подробного руководства по ECC (в Интернете полно информации по этой теме), а простой обзор ECC и объяснение того, почему её считают безопасной. Я не буду тратить время на долгие математические доказательства или скучные подробности реализации. Также я представлю полезные примеры с визуальными интерактивными инструментами и скриптами.
Читать дальше →

Laravel — экосистема, а не просто PHP-фреймворк

Reading time12 min
Views205K


Данная статья предназначена для начинающих веб-разработчиков, а также тех, кто хочет понять, для чего стоит изучить PHP-фреймворк Laravel и какую экосистему он нам предлагает. Статья написана на момент актуальности Laravel версии 5.4, в августе 2017 выйдет релиз Laravel 5.5, который предоставляет ещё больше возможностей.

Содержание:

Читать дальше →

Как грамотно развернуть Wi-Fi в отеле: типовые вопросы и решения

Reading time8 min
Views76K
Интернет теперь — настолько важная часть жизни человека, что отсутствие доступа к сети в ресторане или гостинице вполне может стать поводом для отказа от услуг соответствующих организаций. Поговорим об особенностях развертывания Wi-Fi-сетей в здании отелей, важных параметрах, а также об аппаратной составляющей.
 

Часы на газоразрядных индикаторах

Reading time5 min
Views232K

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

Как работает лазерная рулетка: реверс-инжиниринг

Reading time22 min
Views110K
image Ранее в своей статье я рассказывал о том, как устроены фазовые лазерные дальномеры. Теперь пришло время разобраться с тем, как работают бытовые лазерные рулетки. Разобраться — это не просто заглянуть, что же там внутри, а полностью восстановить всю схему и написать собственную программу для микроконтроллера.
Читать дальше →

Умный обход блокировок в Украине

Reading time7 min
Views126K
image
В статье описывается настройка бесплатного сервиса Zaborona.Help для обхода блокировок сайтов в Украине.

Особенность конфигурации в том, что через VPN маршрутизируется трафик только к заблокированным сетям, остальные сайты работают напрямую. Работает на всех основных платформах: Windows, Linux, iOS, MacOS, Android.

VPN не влияет на скорость интернета, не подменяет IP для остальных сайтов и не мешает работе онлайн-игр, голосового трафика и т.д.

Проблемы популярных средств обхода блокировок


  • Браузерные плагины — не работают для мобильных приложений, проксируют через свои сервера весь трафик. Имеют доступ к содержимому страницы и угрожают безопасности.
  • Обычные VPN — маршрутизируют через свои сервера весь трафик. Влияет на скорость интернета, увеличивают задержки, подменяет IP для всех сайтов.
  • Браузеры с прокси — не позволяют обойти блокировку мобильных приложений.

Процесс настройки описан на примере OpenVPN и может быть легко повторен за несколько минут.

Настройки на стороне клиента выполняются с помощью одного файла конфигурации и не требуют ручного ввода адресов и паролей.
Читать дальше →

Горячие клавиши в шелле

Reading time3 min
Views114K
Посвящается B_dot, пост которого заставил заинтересоваться возможностями консоли плотнее.
cat /dev/cheat-sheet >> /dev/head

Краткое вступление


В этом посте будет рассказано о некоторых сочетания клавиш, которые могут упросить жизнь администраторам, работающим в консоли. Все они работают в bash'e. Сочетания клавиш я дополнительно проверял на циске (Cisco IOS Software, s72033_rp Software (s72033_rp-ADVIPSERVICESK9_WAN-M), Version 12.2(33)SXH4), csh и zsh. Рассмотренное в других записях повторять особо не буду. Сочетания сгруппированы по использованной функциональной клавише.
Особенно полезен этот текст будет людям, которые любят использовать клавиши Home, End и Delete (которые в цисковой консоли «не работают»).
Читать дальше →

Боли в руках при работе за компьютером. Часть 2. Освобождаем надплечья и шею

Reading time4 min
Views72K
Частый совет напряжённому человеку: «Чего напрягся – расслабься, получай удовольствие…». Что происходит в результате? – Человек напрягается еще больше!

В прошлой статье вы познакомились с основными проблемами, вызывающими боли в руках при работе за компьютером.
image

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

Урок займет 15-20 минут, вы можете делать его сидя, не отходя от компьютера. Под катом – видео урока, правила выполнения соматических уроков и текстовая расшифровка расширенной версии урока (осторожно – очень много букв!).

О степенях свободы в статистике

Reading time8 min
Views240K
В одном из предыдущих постов мы обсудили, пожалуй, центральное понятие в анализе данных и проверке гипотез — p-уровень значимости. Если мы не применяем байесовский подход, то именно значение p-value мы используем для принятия решения о том, достаточно ли у нас оснований отклонить нулевую гипотезу нашего исследования, т.е. гордо заявить миру, что у нас были получены статистически значимые различия.

Однако в большинстве статистических тестов, используемых для проверки гипотез, (например, t-тест, регрессионный анализ, дисперсионный анализ) рядом с p-value всегда соседствует такой показатель как число степеней свободы, он же degrees of freedom или просто сокращенно df, о нем мы сегодня и поговорим.


Читать дальше →

Основы статистики: просто о сложных формулах

Reading time6 min
Views323K

Статистика вокруг нас


Статистика и анализ данных пронизывают практически любую современную область знаний. Все сложнее становится провести границу между современной биологией, математикой и информатикой. Экономические исследования и регрессионный анализ уже практически неотделимы друг от друга. Один из известных методов проверки распределения на нормальность — критерий Колмогорова-Смирнова. А вы знали, что именно Колмогоров внес огромный вклад в развитие математической лингвистики?

Еще будучи студентом психологического факультета СПбГУ, я заинтересовался когнитивной психологией. Кстати, Иммануил Кант не считал психологию наукой, так как не видел возможности применять в ней математические методы. Мои текущие исследования посвящены моделированию психических процессов, и я надеюсь, что такие направления в современной когнитивной психологии, как вычислительные и коннективисткие модели, смягчили бы его отношение!
Читать дальше →

Как обычному сайту на Wordpress набрать 99/100 в PageSpeed Insights

Reading time5 min
Views136K
Началось все с того что Adsense в очередной раз понизил оценку эффективности страниц:
image
А все мы знаем, что скорость сайта – один из факторов ранжирования в выдаче Гугла.

И если раньше удавалось исправить ситуацию простыми действиями, включить кэширование или сжать JS, то теперь, похоже, пришло время взяться за сайт основательно.

Изначально имеется сайтик со статьями, коих в интернете миллионы: CMS Wordpress 4.2, два десятка плагинов, тема, сверстанная фрилансером и shared хостинг.
Читать дальше →

Сети Для Самых Маленьких. Микровыпуск №6. MPLS L3VPN и доступ в Интернет

Reading time13 min
Views40K


Статья про L3VPN получилась большой — ни много ни мало 130 000 символов.
Учитывая, что и её ещё не все дочитали, эту часть про доступ в Интернет мы вынесли в отдельную публикацию.
Это особенно важно, потому что в рунете, да и вообще в интернетах, нет доступного разбора этой темы.
Вполне вероятно, что вы сейчас читаете эксклюзивный материал.

Итак, есть оператор связи, который предоставляет своему клиенту L3VPN. Ни с того ни с сего, с бухты да барахты понадобился ему ещё и Интернет.
Самое очевидное решение — прокинуть ещё один кабель — в одном VPN, в другом Интернет.
Допустим, это сложно. Тогда можно поднять сабинтерфейс и передавать фотки вконтактике в отдельном VLAN'е.
Допустим, там сложный арендованный канал, где можно прокинуть только 1 VLAN или оборудование клиента не умеет VLAN (стоит обычный компьютер), что тогда?

Об этом следующие 36 000 букв вашей жизни.

Содержание выпуска

Читать дальше →

Как украинскому фрилансеру работать законно

Reading time7 min
Views31K
Многие фрилансеры зарабатывают на зарубежных биржах и пользуются международными платежными системами. Как же работать на фрилансе в Украине, чтобы не было проблем с законом?


Читать дальше →

Принцип Доверия (Trust) в HTTPS

Reading time8 min
Views33K

Сейчас уже, наверное, больше половины серверов перебрались с http на https протокол. Зачем? Ну, это мол круто, секъюрно.


В чем же заключается эта секъюрность? На эту тему уже написана куча статей, в том числе и на Хабре. Но я бы хотел добавить еще одну.


Почему решил написать


Я, вообще, по специальности Android разработчик, и не особо шарю в криптографии и протоколах защиты информации. Поэтому когда мне пришлось столкнуться с этим непосредственно, я был немного в шоке от размера пропасти в моих теоретических знаниях.


Я начал рыться в разных источниках, и оказалось, что в этой теме не так просто разобраться, и тут недостаточно просто прочитать пару статей на Хабре или Вики, при чем я нигде не встретил абсолютно исчерпывающего и понятного источника, чтобы сослаться и сказать — "Вот это Библия". Поэтому у меня это "немного разобраться" заняло кучу времени. Так вот, разобравшись, я решил поделиться этим, и написать статью для таких же новичков, как и я, или просто для людей, которым интересно зачем в строке URL иногда стоит https, а не http.

Читать дальше →

Пару слов о распознавании образов

Reading time13 min
Views314K
Давно хотел написать общую статью, содержащую в себе самые основы Image Recognition, некий гайд по базовым методам, рассказывающий, когда их применять, какие задачи они решают, что возможно сделать вечером на коленке, а о чём лучше и не думать, не имея команды человек в 20.
image

Какие-то статьи по Optical Recognition я пишу давненько, так что пару раз в месяц мне пишут различные люди с вопросами по этой тематике. Иногда создаётся ощущение, что живёшь с ними в разных мирах. С одной стороны понимаешь, что человек скорее всего профессионал в смежной теме, но в методах оптического распознавания знает очень мало. И самое обидное, что он пытается применить метод из близрасположенной области знаний, который логичен, но в Image Recognition полностью не работает, но не понимает этого и сильно обижается, если ему начать рассказывать что-нибудь с самых основ. А учитывая, что рассказывать с основ — много времени, которого часто нет, становится всё ещё печальнее.
Распознать

Вы еще не авторизуетесь по ключам? Тогда мы идем к вам

Reading time3 min
Views194K
Есть куда более полезная и подробная памятка по ssh от amarao, а эта статья пусть останется в том виде, в котором была написана в далеком 2011.

Этой заметкой я хочу показать, что использовать ключи для авторизации это просто.

Начнем с того, что нам понадобится PuTTY.
Идем на http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html и качаем следующее:
PuTTY — ssh-клиент
Pageant — агент для хранения ключей (зачем объясню позже)
PuTTYgen — генератор ключей
Читать дальше →

Information

Rating
Does not participate
Location
Украина
Registered
Activity