Pull to refresh
5
0
Solver @solver

Back-end developer

Send message

Как взламывают корпоративный Wi-Fi: новые возможности

Reading time4 min
Views89K
Статей о взломе Wi-Fi в Интернете достаточно много, но большинство из них касаются режима работы WEP/WPA(2)-Personal, в котором необходимо перехватить процедуру «рукопожатия» клиента и Wi-Fi-точки. Во многих корпоративных Wi-Fi-сетях используется режим безопасности WPA2-Enterprise, с аутентификацией по логину и паролю — как наименее затратный способ. При этом аутентификация осуществляется с помощью RADIUS-сервера.

image

ОС клиента устанавливает соединение с RADIUS-сервером, используя шифрование при помощи TLS, а проверка подлинности в основном происходит при помощи протокола MS-CHAPv2.
Читать дальше →
Total votes 45: ↑41 and ↓4+37
Comments29

Брутфорсим EFI с Arduino

Reading time23 min
Views103K
Приветствую Хабравчан!

Думаю, данной темой не многих удивишь — достаточно набрать в поисковике фразу arduino bruteforce и сразу станет понятно, насколько распространен перебор паролей при помощи платформы Arduino. Я же хочу рассказать о том, как это быстро организовать с наименьшим наборов компонентов, без разводки/травления плат и пайки. Сразу оговорюсь, что описанные мною действия носят ознакомительный характер и никому не причинили вреда, ни морального, ни физического… разве что мошенникам.


Читать дальше →
Total votes 74: ↑74 and ↓0+74
Comments27

Процедурная генерация текстур планет на основе алгоритма Diamond-Square, часть 1

Reading time14 min
Views42K
image

Доброго времени суток. Как со мной бывает, как только я разобрался в каком-то сложном для себя вопросе, я сразу хочу рассказать всем решение. Поэтому решил написать серию из двух статей по такой интересной теме, как процедурная генерация. А конкретнее, я буду рассказывать про генерацию текстур планет. В этот раз я подготовился основательнее и постараюсь сделать материал качественнее, чем в моем предыдущем посте «Простая система событий в Unity» (кстати, спасибо всем за ответные посты). Прежде чем продолжить, хочу обратить ваше внимание на несколько моментов:

1) Этот генератор не претендует на реалистичность, и писал я его для того, чтобы сгенерировать уникальные текстуры для сотни маленьких шариков, которые занимают 10% экрана и к тому же прикрыты облаками.
2) Чисто технический момент: я пишу на C# под Unity3d, так что думать о том, как выводить в изображение с приемлимой скоростью вам придется самим, для каждого языка и платформы свои способы.

Читать дальше →
Total votes 34: ↑31 and ↓3+28
Comments21

Игровой мир WebGL или Three.js vs Babylon.js

Reading time17 min
Views78K


Когда я начинал писать свою первую игрушку на three.js я и не думал, что на самом деле three.js это верхушка айсберга в мире WebGL и что есть десятки разнообразных фреймворков и у каждого из них свой специфический уклон, а three.js просто один из них.

Введение
1. Базовые элементы
2. Группировка
3. Движение
4. Частицы
5. Анимация — 1
6. Анимация — 2
7. Простой ландшафт
8. Статические коллизии
9. Динамические коллизии
10. Импорт моделей
11. Встраивание физических движков
12. Тени, туман
Продолжение — многопользовательский шутер

Далее подробней с небольшими примерами
Total votes 54: ↑53 and ↓1+52
Comments18

Паттерны ООП в метафорах

Reading time17 min
Views559K
Большинство литературы посвященной паттернам в ООП (объектно-ориентированном программировании), как правило, объясняются на примерах с самим кодом. И это правильный подход, так как паттерны ООП уже по-умолчанию предназначаются для людей, которые знают что такое программирование и суть ООП. Однако порой требуется заинтересовать этой темой людей, которые в этом совершенно ничего не понимают, например «не-программистов» или же просто начинающих «компьютерщиков». Именно с этой целью и был подготовлен данный материал, который призван объяснить человеку любого уровня знаний, что такое паттерн ООП и, возможно, привлечет в ряды программистов новых «адептов», ведь программирование это на самом деле очень интересно.
Статья предназначена исключительно для новичков, так что «старожилы» ничего нового для себя не узнают. В основном статья описывает известные паттерны из книги «Приемы объектно-ориентированного программирования. Шаблоны проектирования.», но более популярным и простым языком.
Читать дальше →
Total votes 214: ↑201 and ↓13+188
Comments86

Играй на победу: как побеждать в играх и что нужно знать о профессиональных игроках в GameDev [часть 1]

Reading time6 min
Views127K


Давным-давно мы с друзьями играли в Starcraft по диалапному модему. Я часто проигрывал, пока не прочитал на одной из BBS фразу, которая всё поменяла. Принцип очень простой: в стратегиях реального времени выигрывает тот, кто постоянно атакует. Нужно было научиться мыслить категориями постоянного создания угроз.

К чему я это. Есть такой мужик — Дэвид Сирлин. Киберспортсмен, чемпион по Street Fighter, гейм-дизайнер, настольщик, киберспортивный тренер. У него есть целая теория на тему того, как тренироваться и играть так, чтобы выигрывать. Универсальная, применима ко всем играм. Ниже — основные тезисы первой части и мои комментарии. Прочитать про основные вещи из книги будет интересно и с точки зрения GameDev (в особенности — балансировки), и просто по жизни.
Читать дальше →
Total votes 76: ↑72 and ↓4+68
Comments57

Играем с генетическими алгоритмами

Reading time6 min
Views102K
Одним субботним декабрьским вечером сидел я над книгой The Blind Watchmaker (Слепой Часовщик), как на глаза мне попался невероятно интересный эксперимент: возьмём любое предложение, например Шекспировскую строку: Methinks it is like a weasel и случайную строку такой же длины: wdltmnlt dtjbkwirzrezlmqco p и начнем вносить в неё случайные изменения. Через сколько поколений эта случайная строка превратится в Шекспировскую строку, если выживать будут лишь потомки более похожие на Шекспировскую?

Сегодня мы повторим этот эксперимент, но в уже совершенно другом масштабе.



Структура статьи:
  1. Что такое генетический алгоритм
  2. Почему это работает
  3. Формализуем задачу со случайной строкой
  4. Пример работы алгоритма
  5. Эксперименты с классикой
  6. Код и данные
  7. Выводы

Осторожно трафик!
Читать дальше →
Total votes 59: ↑51 and ↓8+43
Comments22

Биохакинг сна: подтверждённые наукой советы

Reading time11 min
Views288K


Сон до сих пор является одной из величайших загадок для науки, как гравитация и квантовое поле. Мы до сих пор не понимаем, для чего именно мы спим, хотя всё больше узнаём об этом. Ниже собраны советы для тех, кто долго не может уснуть, часто просыпается, не чувствует себя отдохнувшими наутро, или просто хочет улучшить качество своего сна.
Читать дальше →
Total votes 227: ↑173 and ↓54+119
Comments207

Подготовка к сертификационному экзамену Microsoft 70-483 «Programming in C#»

Reading time13 min
Views103K

Во время подготовки к экзамену номер 70-483 нашел множество разрозненных сайтов с различными ссылками на мануалы, которые мне немного помогли. Но, что помогло мне больше, так это то, что я составил для себя памятку на нескольких страницах, выдержками из которой и хочу поделиться.
Целью не является подробное описание C#, целью является освежить в памяти и заострить внимание на некоторых необходимых темах. Если какие-то темы вам незнакомы, то это значит, что у вас есть пробелы, которые необходимо устранить.
Раскрывать вопросы тестирования я не могу (да и не помню я уже их), но, если многие из перечисленных ниже нюансов, трюков и тонкостей, помогут вам, то вы на меня не обижайтесь (написано с иронией).
Читать дальше →
Total votes 50: ↑39 and ↓11+28
Comments17

Теория потока: как создать игру, которую полюбят все

Reading time7 min
Views81K
Всем привет.

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

Если вы сталкивались с подобными проблемами – добро пожаловать в клуб. Здесь мы, как взрослые и очень серьезные люди, попробуем проанализировать состояние иммерсии, которое и заставляет нас восхищаться игрой и забывать о необходимости есть, спать и жить вне игрового мира. Проще говоря, речь пойдет о потоковом состоянии в видеоиграх.


Читать дальше →
Total votes 60: ↑51 and ↓9+42
Comments23

Патч для гипервизора сознания

Reading time4 min
Views150K
image

Недавно в топе Хабра появился пост, заставивший меня вылезти из read-only: «Overclock мозга или внутрення виртуализация сознания».
Вводящее в заблуждение название и не менее спорное содержание. Неприятные ощущения вызывает еще и тот факт, что при всей неточности и искажении фактов автор осмелился прикрепить к нему метку tutorial.

Желающих взглянуть на осознанные сновидения без налета авторской фантазии, прошу под кат.
Читать дальше →
Total votes 135: ↑113 and ↓22+91
Comments168

Теория сложности на простых примерах

Reading time5 min
Views22K
Задайтесь вопросом «ГДЕ?». Где находится центр управления движением галактик или поведением циклона? Где та сила, что объединяет атомы в сложные соединения, те в свою очередь — в цепочки белков, и порождает такие устойчивые и сложные явления как биологическая жизнь, разум, социум.

Под зонтиком теории сложности объединены разнообразные модели, которые описывают, как без центрального контроля из взаимодействия простых начальных элементов, подчиняющихся простым правилам, образуются явления более высокого порядка, обладающие сложно предсказуемым поведением и непредвиденными, но устойчивыми, свойствами.
Статья не предлагает готовых ответов о смысле жизни, сквозит грубыми нестрогими аналогиями, но при этом имеет дерзкую цель расширить кругозор читателя, опираясь на его воображение и некоторые математические факты.
приглашаю под кат
Total votes 83: ↑78 and ↓5+73
Comments53

Очень быстрый и эффективный способ расслабления глаз

Reading time4 min
Views413K

Предисловие


imageНе знаю, все ли программисты всесторонне любознательные люди, но я всегда пытаюсь получить фундаментальные знания во всех областях, которые могут быть практически полезны. В то время, когда мне в голову пришла эта идея я изучал анатомию и физиологию по журналам «Тело человека. Снаружи и внутри», ну а по работе я занимался стерео-варио фотографиями (для тех кто не знает — были такие советские календарики с ребристой поверхностью, где картинка либо казалась объемной, либо менялась). Так вот, в один из вечеров мне пришла в голову замечательная идея, которую я на протяжении уже 4х лет использую для поддержания своего зрения.
Обещаю, что эффект почувствуете сразу!
Читать дальше →
Total votes 246: ↑238 and ↓8+230
Comments207

Коротко про тахионы

Reading time2 min
Views24K
Коротко про тахионыВ общепринятой картине мира, в которой правит та самая Теория Относительности — «ТО», скорость света «С» считается предельной скоростью, и эту же величину приписывают предельной скорости взаимодействия, протекания всех процессов во вселенной. Та же ТО утверждает зависимость энергии и массы тела от скорости – знаменитое уравнение E=m*c2.

Читать дальше →
Total votes 122: ↑84 and ↓38+46
Comments108

Бизнес-аналитика: «Как правильно написать список требований к системе?», Алистер Коберн, обзор часть 1

Reading time4 min
Views8.3K
Книга на мой взгляд очень интересная, по секрету поделюсь, что я прочитала ее не с начала, скорее — с конца — в начало, поскольку все самое интересное, включая словарь и сферы применения в рамках сбора требований, все это написано как раз в конце книги. Даны четкие рекомендации как составить список требований и описать систему с разной степенью детализации, начиная от общей концепции, как должно работать приложение, до постраничного составления сценариев.
Для чего она нужна — чтобы лучше понимать, что все-таки делают исполненные очей бизнес-аналитики, когда приходит запрос — хочу сайт, как там по ссылке.
Читать дальше →
Total votes 17: ↑14 and ↓3+11
Comments21

История разработки Xenonauts — независимого ремейка X-COM

Reading time18 min
Views58K
Разработка Xenonauts заняла пять лет. На нее ушло в десять раз больше времени и в двадцать раз больше денег, чем я ожидал, но она стала настолько важной частью моей жизни, что мне даже немного жаль, что это путешествие завершилось. С разработкой было связано немало личных рисков. Когда она началась в 2009 году, мне было 22 года и я ничего не знал о разработке игр. Я потратил на этот проект все свои сбережения, значительную часть которых составляло наследство. Моим офисом была моя спальня, я работал над Xenonauts по вечерам и на выходных, после полноценной рабочей недели консультанта в KPMG, включавшей в себя три года экзаменов по бухучету (провал каждого из них привел бы к моему увольнению). К счастью, все закончилось хорошо. Эта статья представляет собой обещанный на Кикстартере дневник, в котором оцениваются все стороны разработки — правильно я поступал или нет. Надеюсь это будет интересно и возможно поможет кому-то избежать моих ошибок.


Читать дальше →
Total votes 76: ↑75 and ↓1+74
Comments19

Перевод учебника по алгоритмам

Reading time1 min
Views166K


Рад сообщить, что вышел перевод отличнейшего учебника Дасгупты, Пападимитриу, Вазирани «Алгоритмы», над которым я работал последние несколько лет. В книге многие алгоритмы объяснены гораздо короче и проще, чем в других учебниках: с одной стороны, без излишнего формализа, с другой — без потери математической строгости. Откройте книгу на каком-нибудь известном вам алгоритме и убедитесь в этом. =)

В общем, угощайтесь: печатный вариант перевода, электронный вариант перевода (PDF), печатный вариант оригинала, электронный вариант оригинала (PDF).
Читать дальше →
Total votes 323: ↑321 and ↓2+319
Comments109

Все сломано

Reading time15 min
Views57K
Представляю вашему вниманию перевод статьи Everything is Broken, опубликованной в мае 2014 года на The Medium американской журналисткой Quinn Norton, которая специализируется на проблемах информационной безопасности. Статья рассматривает современный мир информационных технологий и место вопросов безопасности и конфиденциальности данных в нем. Статья местами содержит довольно резкую критику, тем не менее, поднимаемые в ней проблемы актуальны и не решены по сей день. В конечном счете, в этом, отчасти, и заключается работа журналиста — задавать неудобные вопросы.



Однажды, один мой знакомый получил контроль над тысячами компьютеров. Он нашел уязвимость в программном обеспечении и принялся испытывать ее. В процессе, он понял что, теоретически, может получить полный административный контроль над всей сетью, где используется данное программное обеспечение. Он загрузил скрипт на удаленный сервер и запустил его, чтобы посмотреть что произойдет, а сам отправился спать. На следующее утро он решил проверить результат работы, и каково же было его удивление, когда он обнаружил, что имеет полный доступ на 50 000 компьютерах. Испугавшись ответственности за содеянное, он тут же остановил процесс и принялся удалять свои скрипты. В конечном счете, как он мне сказал, он даже уничтожил жесткий диск, бросив его в огонь. Я не могу выдать вам личность этого человека, потому что не хочу чтобы он оказался в Федеральной тюрьме, что и произошло бы, если бы он сообщил о найденной уязвимости и своем эксперименте кому-то еще. Вам наверное интересно, пофикшен ли сейчас это баг? Возможно да, но точно не благодаря моему знакомому. Это история не так уж и удивительна. Проводите время на хакерской сцене и вы услышите истории и похуже.

Трудно объяснить обычным людям, какое большое количество технологий работает весьма посредственно и что их жизни уже давно тесно переплетены с IT-инфраструктурой, подобно прессованной проволоке.

Компьютеры и компьютерные технологии — все сломано.
Читать дальше →
Total votes 87: ↑68 and ↓19+49
Comments95

Insomnia: игровой искусственный интеллект такой искусственный (видео)

Reading time4 min
Views16K
Продолжаем тему процесса создания игры Insomnia, начатую со статьи Как мы перестали бояться Огра и начали делать на нем игру

Об истуканах

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

О жизни

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

Тонкая душевная организация

Для начала общая схема:


Читать дальше →
Total votes 33: ↑27 and ↓6+21
Comments6

Функциональное программирование для всех

Reading time33 min
Views351K

Доброго времени суток. Это статья — перевод заинтересовавшего меня поста в блоге аспиранта Университета штата Нью-Йорк в Стоуни-Брук. Статья в доступной форме описывает основные концепции функционального программирования, их преимущества и недостатки. Думаю она будет полезна широкому кругу читателей, которые сомневаются, нужно ли им углубляться в мир функционального программирования или нет. Пожелания, предложения и замечания по переводу и терминологии принимаются по личной почте.

Мнение переводчика может иногда не совпадать с мнением автора, но переводить статью было крайне занимательно.

UPD: альтернативный вариант перевода вы можете найти на rsdn (спасибо flamingo за ссылку).
Читать дальше →
Total votes 188: ↑181 and ↓7+174
Comments151

Information

Rating
Does not participate
Registered
Activity