Как стать автором
Обновить
0
0

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

Отправить сообщение

Демонстрация брутфорса пароля iPhone 5c c зеркалированием флэш-памяти

Время на прочтение4 мин
Количество просмотров58K


В апреле 2016 года ФБР и Apple устроили настоящее шоу вокруг телефона iPhone 5c стрелка из Сан-Бернардино, для которого якобы никак не удавалось подобрать пароль без помощи компании Apple.

ФБР давило на Apple, требуя технической помощи. Тим Кук опубликовал открытое письмо, в котором обвинил ФБР в принуждении Apple встроить бэкдор в iOS. Дело дошло до Конгресса и Сената США, проблему обсуждали все крупнейшие американские СМИ и телеканалы. Мир с замиранием сердца следил за санта-барбарой и гадал: даст Apple федералам или не даст доступ к криптосистеме iPhone.

iPhone защищён от брутфорса через опцию уничтожения данных на устройстве после десяти некорректных попыток ввода и увеличивающееся время задержки между наборами кода разблокировки (5 секунд после 5 попыток, затем 1 минута, 5 минут, 15 минут и 60 минут).
Читать дальше →
Всего голосов 69: ↑66 и ↓3+63
Комментарии88

Почему кожа в воде сморщивается

Время на прочтение3 мин
Количество просмотров57K


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

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

Но уже сотню лет назад учёные знали, что эта реакция не объясняется простым рефлексом или результатом осмоса.

Хирурги обнаружили, что если перерезать определённые нервы в пальцах, эффект сморщенной кожи исчезает. Следовательно, этот эффект связан с работающей нервной системой. В результате этот эффект даже предлагали использовать как тест на работоспособность симпатической нервной системы в пациентах, не реагирующих на другие воздействия.
Читать дальше →
Всего голосов 42: ↑32 и ↓10+22
Комментарии43

Почему я не понимаю продукцию Apple

Время на прочтение5 мин
Количество просмотров111K


Из года в год, иногда раз в несколько лет, мир оглушает новость: компания Apple выпустила новый продукт. И каждый раз он, этот самый продукт, вызывает массу споров. У компании есть огромное число адептов и обожателей, точно так же как и есть огромное количество ненавистников. Кто-то плотно сидит на iPhone и Mac, кто-то предпочитает Android. У всех вкусы разные, с этим не поспоришь. Но следуя концепции свободного мира, свободы выбора сложно отрицать факт того, что Apple именно диктует свои правила, пользуясь статусом «законодателя моды».

Данный текст — исключительно субъективное мнение о происходящем, выводы стороннего наблюдателя, который еще в нулевых с восторгом наблюдал становление «Империи Apple», а сейчас понимает, что занять нейтральную позицию как ранее у него не выходит. Потому что восторженных отзывов вокруг становится все больше и больше, а восхищаться начинают даже очень спорными решениями.

Что такое смартфон? Давайте не обманывать себя и примем за аксиому, что смартфон — это инструмент, который позволяет человеку находиться онлайн, где бы он ни был, в пределах сотовой сети, конечно же. Смартфон — это не отражение сути личности, это — костыль, которым мы все, его владельцы, пользуемся ежедневно.
Читать дальше →
Всего голосов 228: ↑148 и ↓80+68
Комментарии870

Инновации в деталях, или 4 альтернативы iPhone 7

Время на прочтение4 мин
Количество просмотров34K
Наконец-то Apple официально представила общественности iPhone 7. Пережив великолепную презентацию, попробуем вздохнуть по-глубже и критически рассмотреть новый смартфон компании. Так ли он хорош? Или время яблок ушло, и компания уступила место молодым азиатским производителям?


Инновации или копипаст?
Всего голосов 35: ↑17 и ↓18-1
Комментарии229

Симулятор нервной системы. Часть 1. Простой сумматор

Время на прочтение5 мин
Количество просмотров25K


Здравствуй, Geektimes! Я хочу поделиться свой работой над созданием системы позволяющей моделировать рефлекторные и когнитивные процессы, протекающие в нервной системе.

Частично система воплощена в простенькой программе, созданной на игровом движке Unity3D. Это своего рода симулятор нервной системы, благодаря которому возможно имитировать не только простые рефлексы, но и демонстрировать различные явления в нервной системе, такие как привыкание, сенсибилизация и образование условных рефлексов. А также возможно эмулировать временную и долговременную память и её консолидацию, эмоции и эмоциональное поведение. Причем как простые эмоции, к примеру, голод и насыщение, так и более сложные, такие как любопытство, страх или привязанность. Благодаря системе у нас появится возможность разобраться в предназначении различных областей мозга, в том, как происходит распознавание зрительных образов, как происходит обучение и эмоциональная оценка происходящего.
Всего голосов 27: ↑27 и ↓0+27
Комментарии15

Нейропластичность: перестраиваем мозг

Время на прочтение5 мин
Количество просмотров70K


Наш мозг необычайно пластичен. Не как пластиковая посуда или кукла Барби – в неврологии пластичность означает удивительную способность мозга меняться и адаптироваться практически ко всему, что с нами происходит. В былые времена учёные считали, что когда человек переставал быть ребёнком, его мозг застывал, как глиняный горшок, и оставался в одной форме. Но кипы исследований опровергли их мнение – мозг больше напоминает пластилин [play-doh]. Эти изменения могут происходить на разных масштабах: от отдельного нейрона, меняющего связи, до целой корковой области, уменьшающейся или разбухающей. Структуру мозга могут менять множество факторов, от травм и инсультов, до медитации, упражнений или ежедневных занятий на пианино. И как всё в жизни, пластичность – это палка о двух концах. Плюс в том, что мозг может перестроить себя во время реабилитации после инсульта. Минус – фантомные боли после потери конечности. Давайте посмотрим, как, что и почему происходит.

Начнём с небольших масштабов и синаптической пластичности (если вы не в курсе, что есть синапс, прочтите сначала вводную статью про мозг). Эта разновидность пластичности, которую часто называют длительной потенциацией (ДПЦ) и длительным подавлением (ДПД), критична для нашего понимания процессов запоминания и обучения. Очень упрощённо она работает так: связи между нейронами усиливаются или ослабляются (происходит потенциация или депрессия) в зависимости от их действий. Когда нейрон А постоянно возбуждает нейрон Б, связь между ними усиливается.
Читать дальше →
Всего голосов 33: ↑31 и ↓2+29
Комментарии23

Microsoft через суд пытается получить право оповещать пользователей о просмотре их данных спецслужбами США

Время на прочтение6 мин
Количество просмотров23K


Как часто вы задумываетесь о том, что за каждым вашим шагом в интернете следят? Опустим конспирологов, фриков и прочих помешанных на анонимности в сети и рассмотрим обычного среднестатистического пользователя, который имеет профиль в социальных сетях, закупается на Amazon и вполне спокойно ведет деловую переписку через Gmail. Согласитесь, людей, подходящих под это описание — подавляющее большинство, да и многие из читателей ведут себя так же.

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

Информация о людях — основа бизнеса технологических гигантов. Конечно, торговля информацией о нас происходит в некотором завуалированном виде, в составе массива, но между пользователем и компаниями существует негласный паритет: они нам бесплатный сервис, а мы им возможность привлечь деньги рекламодателей.
Читать дальше →
Всего голосов 29: ↑27 и ↓2+25
Комментарии81

Убит владелец компьютерного форума Ru-Board

Время на прочтение1 мин
Количество просмотров134K
30 августа в подмосковном Оболенске застрелен адвокат-правозащитник Эдуард Мусин. В IT-кругах Эдуард был известен как batva, создатель и владелец одного из крупнейших компьютерных форумов Рунета — Ru-Board.
Читать дальше →
Всего голосов 74: ↑68 и ↓6+62
Комментарии141

Спросите Итана №82: почему все планеты находятся в одной плоскости?

Время на прочтение5 мин
Количество просмотров56K

Возможности почти безграничны, но почему же всё выстраивается в линию?




Надежда – это не убеждение в том, что всё закончится хорошо, но уверенность в наличии у происходящего смысла, вне зависимости от результата.
— Вацлав Гавел

На этой неделе мне прислали много прекрасных вопросов, и выбор у меня был большой. Но, вдогонку к двум недавним вопросам про то, почему все планеты вращаются в одну и ту же сторону и почему наша Солнечная система необычна, я выбрал вопрос от Ника Хэма, который спрашивает:
Почему все планеты вращаются примерно в одной плоскости?

Если подумать обо всех возможностях, это действительно кажется маловероятным.
Всего голосов 49: ↑46 и ↓3+43
Комментарии48

Почему нельзя доказать теорию эволюции

Время на прочтение3 мин
Количество просмотров50K


Всем привет! У нашей команды Sci-One готово еще одно видео члена Комиссии по борьбе с лженаукой Александра Сергеева. На этот раз о том, почему теорию эволюции доказать невозможно. Видео и его расшифровка — под катом.
Читать дальше →
Всего голосов 73: ↑52 и ↓21+31
Комментарии761

Стилизация изображений с помощью нейронных сетей: никакой мистики, просто матан

Время на прочтение14 мин
Количество просмотров92K

Приветствую тебя, Хабр! Наверняка вы заметили, что тема стилизации фотографий под различные художественные стили активно обсуждается в этих ваших интернетах. Читая все эти популярные статьи, вы можете подумать, что под капотом этих приложений творится магия, и нейронная сеть действительно фантазирует и перерисовывает изображение с нуля. Так уж получилось, что наша команда столкнулась с подобной задачей: в рамках внутрикорпоративного хакатона мы сделали стилизацию видео, т.к. приложение для фоточек уже было. В этом посте мы с вами разберемся, как это сеть "перерисовывает" изображения, и разберем статьи, благодаря которым это стало возможно. Рекомендую ознакомиться с прошлым постом перед прочтением этого материала и вообще с основами сверточных нейронных сетей. Вас ждет немного формул, немного кода (примеры я буду приводить на Theano и Lasagne), а также много картинок. Этот пост построен в хронологическом порядке появления статей и, соответственно, самих идей. Иногда я буду его разбавлять нашим недавним опытом. Вот вам мальчик из ада для привлечения внимания.


Читать дальше →
Всего голосов 145: ↑141 и ↓4+137
Комментарии38

Бесконечная прокрутка против разбивки на страницы

Время на прочтение7 мин
Количество просмотров48K
Ник Бабич разработчик, теч энтузиаст и просто влюбленный в UX/UI специалист написал заметку в блоге UX Planet про бесконечную прокрутку, мы сделали адаптивный перевод материала специально для читателей Хабрахабр.

image

«Что же мне выбрать для своего контента: бесконечную прокрутку, или разбивку на страницы?» Некоторые дизайнеры по-прежнему занимаются перетягиванием каната между двумя методами, прежде чем решить, что же использовать в своем проекте. У каждого из методов есть свои сильные и слабые стороны. В этой статье мы предлагаем обзор двух методик, чтобы вам было проще решить, какую из них стоит использовать в своих проектах.
Читать дальше →
Всего голосов 20: ↑16 и ↓4+12
Комментарии72

Кнопки-призраки в UX-дизайне

Время на прочтение5 мин
Количество просмотров12K
В 2014 году главным трендом в мире UI-дизайна стали кнопки-призраки. Речь идет о прозрачных кнопках прямоугольной или квадратной формы, которые также называют «пустыми», «голыми» или «полыми», мы не могли обойти стороной этот материал и сделали адаптивный перевод статьи журнала UX Planet специально для читателей Хабрахабр.

Границы кнопок-призраков, как правило, обозначаются тонкой линией, а внутри располагается простой текст. Чаще всего такой дизайн используется в кнопках для призыва к действию.

image

Обычный внешний вид (слева) и внешний вид при наведении курсора (справа).

image

Обычно размер кнопок-призраков превышает размер традиционных кнопок, а размещают их в самых заметных местах, например, прямо по центру экрана. Стильный эффектный внешний вид, если все сделано правильно, привлекает внимание своим контрастом с остальной страницей, а цветовой акцент при наведении курсора придает дополнительный шарм.
Читать дальше →
Всего голосов 12: ↑8 и ↓4+4
Комментарии26

Единорог, который смог

Время на прочтение6 мин
Количество просмотров15K
The Little Unicorn That CouldОдна из команд разработчиков Microsoft уже использует в работе анализатор PVS-Studio. Это хорошо, но недостаточно. Поэтому я продолжаю демонстрировать, какую пользу может приносить статический анализ кода на примере проектов Microsoft. Три года назад мы проверяли проект Casablanca и не смогли в нём ничего обнаружить. За это проект был отмечен медалью «безбажный код». Прошло время, проект развивался и рос. В свою очередь, анализатор PVS-Studio существенно продвинулся в возможностях анализа кода. И наконец я могу написать статью об ошибках, которые анализатор выявляет в проекте Casablanca (C++ REST SDK). Ошибок мало, но то, что теперь их достаточно для написания статьи, говорит о эффективности PVS-Studio.
Читать дальше →
Всего голосов 30: ↑22 и ↓8+14
Комментарии14

Изучаем отладчик, часть вторая

Время на прочтение45 мин
Количество просмотров24K
В первой части статьи были рассмотрены некоторые нюансы работы с интегрированным отладчиком Delphi — не все конечно, но наиболее необходимые разработчику. Теперь задача выглядит несколько иначе: рассмотрим его работу изнутри на примере его исходного кода. Для того чтобы не сильно утомлять вас описанием API функций и не разжевывать все этапы отладки, описывать его работу я буду на примере класса TFWDebugerCore. Часть не особо важных моментов я опущу, при желании вы их сможете уточнить просмотрев код данного класса.

Если вы уже знакомы с работой отладчика — ничего страшного, вполне вероятно что некоторые аспекты его работы, упомянутые в статье, будут вам интересны.

Если же вы ранее никогда не сталкивались с самостоятельной реализацией отладчика, но заинтересованы в ней, то как минимум вы должны начать с данной ссылки: Debugging and Error Handling
По ней вы сможете узнать об основных аспектах отладки, как-то структурной обработке исключений, работой с отладочной информацией, минидампами. Работой с образом исполняемого файла, заголовками, секциями, картой памяти процесса, что такое RVA и VA и прочее-прочее.
Но это только если захотите разобраться во всей этой кухне.

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

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

От вас же желательно наличие хотя-бы минимальных знаний ассемблера, т.к. без него в данной статье увы не обойтись.

Читать дальше →
Всего голосов 31: ↑26 и ↓5+21
Комментарии4

Несколько полезных приемов для разработки на Yii 2

Время на прочтение17 мин
Количество просмотров58K
Собрал несколько классов и сниппетов из серии «tips & tricks», которые могут оказаться кому-нибудь полезными.
Содержание:
Несколько атрибутов в одной колонке грида
Исправление навигации для активных пунктов меню
Маппинг таблиц на другие названия
Почему TimestampBehavior обновляет свойство updated_at, если ничего не изменено
Bootstrap DateTimePicker — 2 разных формата для показа в интерфейсе и для отправки значения на сервер
Учет временной зоны пользователя для полей с DateTimePicker
Читать дальше →
Всего голосов 17: ↑14 и ↓3+11
Комментарии6

10 правил, которые позволяют NASA писать миллионы строк кода с минимальными ошибками

Время на прочтение3 мин
Количество просмотров161K

image
Маргарет Гамильтон стоит рядом с написанным ей исходным кодом бортового компьютера «Аполлона»


Лаборатория реактивного движения (Jet Propulsion Laboratory) — научно-исследовательский центр НАСА, ответственный за большинство беспилотных космических кораблей США. Там пишут много кода, и права на ошибку у них намного меньше, чем у обычных программистов.


В JPL пишут на Си, и на их сайте есть документ "JPL Institutional Coding Standard", описывающий жесткие стандарты кодирования внутри организации. Они напоминают правила программирования для встроенных (embedded) систем и систем реального времени, с ограниченными ресурсами. Но многие из правил эти просто принципы хорошего программирования. Ограничение сложности, максимальное упрощение для последующего чтения кода и отладки, отсутствие побочных эффектов. Мы в Хекслете постоянно говорим об этом в вебинарах и, конечно, в самих курсах. Мы считаем очень важным как можно раньше поднимать эти темы, поэтому про функции и побочные эффекты начинаем говорить в самом первом курсе «Основы программирования», который рассчитан на новичков. Это бесплатный курс, кстати, и в нем есть практика на языке JavaScript.


Спасибо хабраюзеру Boletus за важную поправку и дополнение:
В 2006 году Gerard Holzmann с коллективом сформулировал 10 основных правил для JPL в документе «The Power of 10: Rules for Developing Safety-Critical Code». Они вошли в основу нынешнего стандарта, наряду с MISRA C и другими дополнениями. Статья в Википедии.


Вот перевод этого списка.

Читать дальше →
Всего голосов 92: ↑80 и ↓12+68
Комментарии118

Intel собирается бороться с эксплойтами на уровне микропроцессора

Время на прочтение3 мин
Количество просмотров20K
Компания Intel опубликовала предварительную спецификацию новой концепции защиты от эксплойтов с привлечением микропроцессора. В своем посте, который посвящен новой технологии под названием Control-flow Enforcement Technology (CET), объясняется модель защиты от эксплойтов, которые так или иначе используют для своих целей методы ROP. Как правило, ROP используется для обхода DEP в системе. Эта защитная мера (DEP) также реализуется с привлечением микропроцессора и помечает RW-страницы данных виртуальной памяти как не подлежащие исполнению (NX).



CET вводит понятие теневого стека вызовов (shadow stack), который ведется самим микропроцессором и в котором сохраняется информация об адресах возврата для дальнейшего использования инструкцией ret. При возврате потока из той или иной функции, микропроцессор будет проверять адрес возврата, который сохранен на стеке потока с тем, который сохранен на теневом стеке и в случае их несоответствия будет генерировать исключение, обрабатываемое ОС. CET определяет интерфейсы для ОС, которые позволят автоматизировать этот процесс и эффективно бороться с эксплойтами, использующими ROP.

Читать дальше →
Всего голосов 16: ↑13 и ↓3+10
Комментарии21

Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте

Время на прочтение4 мин
Количество просмотров82K
..., даже если проект не планируется развивать и вы не собираетесь делиться исходными кодами, потому что через 20 лет какой-нибудь маньяк будет изучать и дорабатывать машинный код вашего продукта, и он может захотеть вас найти.

Разработка Need For Speed III Modern Patch

Вообще я достаточно редко играю в компьютерные игры. Бывало, не играл по несколько лет подряд. Но иногда во мне просыпается маленький реверс-инженер, который мотивирует меня забраться в машинный код какой-нибудь любимой игрушки из прошлого. В последний год я занимался доработкой Need For Speed III: Hot Pursuit (1998 года). Это моя любимая игра в жанре, но теперь я, к своему сожалению, знаю о том, насколько отвратительно она написана. Большое количество маленьких багов в самых неожиданных местах — прямое следствие низкого качества кода.
Читать дальше →
Всего голосов 159: ↑156 и ↓3+153
Комментарии87

Создание системы непрерывного развертывания: опыт Instagram

Время на прочтение8 мин
Количество просмотров31K


В нашем блоге на Хабре мы не только рассказываем о развитии своего продукта — биллинга для операторов связи «Гидра», но и публикуем материалы о работе с инфраструктурой и использовании технологий из опыта других компаний.

В Instagram развертывание backend-кода (основная программно-аппаратная часть, с которой работают клиенты) происходит от 30 до 50 раз в день, каждый раз, когда инженеры подтверждают изменение оригинала. И, по большей части, без участия человека — сложно в это поверить, особенно учитывая масштабы соцсети, но факт остается фактом.

Инженеры Instagram в своем техническом блоге рассказали о том, как создавали эту систему и налаживали ее безотказную работу. Мы представляем вашему вниманию главные мысли этой заметки.
Читать дальше →
Всего голосов 21: ↑17 и ↓4+13
Комментарии12
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Россия
Зарегистрирован
Активность