-> Новость Большинство из нас использует в быту максимум две раскладки клавиатуры и вряд ли задумывается о том, что приложения, которые мы ежедневно запускаем, для корректной работы должны понимать и правильно отображать тысячи символов из сотен языков. И если забыть хотя бы про один знак, вся программа может рухнуть подобно Вавилонской башне. Читать дальше →
И уже скоро. Стартап Fathom Computing в ближайшие два года планирует выпустить оптическое устройство, которое обойдет GPU по скорости тренировки крупных нейронных сетей. Разработчики хотят разместить оптический компьютер в облачном дата-центре, чтобы к нему могли получить доступ создатели систем искусственного интеллекта со всего мира.
О решении Fathom и о том, кто еще занимается такими разработками, расскажем под катом.
Говорят, обещанного три года ждут. Вот и я в комментарии к статьеvmb обещала перевести главу из книги Zero Day, но пока собиралась — всю книгу уже перевели. Так что выкладываю тут перевод статьи Марвина Л. Мински о будущем и развитии человека. За наводку на статьи Мински спасибо MagisterLudi
Умное всё, должно бы по идее избавить человека от всех забот, но пока, чтобы это всё могло поумнеть, разработчикам интернета вещей приходится очень много думать и решать самые разные задачи.
Какие именно, обсуждали на InoThings++. Это была открытая конференция, поэтому записи всех докладов доступны на канале, а ниже обзоры некоторых интересных докладов. Читать дальше →
Здравствуйте, коллеги! В этой статье я кратко расскажу об особенностях построения систем биометрической верификации/идентификации, с которыми мы столкнулись, создавая собственное решение.
Задача аутентификации личности используется в областях с необходимостью контроля доступа. Это банки, страховые компании, и другие области где используются конфиденциальная информация.
Традиционно, аутентификация использует принцип знания «ключа», такого как пароль, контрольное слово или номер паспорта. Описанный способ обладает недостатком – подтверждается не личность, а известная личности информация.
Биометрические решения лишены этого недостатка. Читать дальше →
Ранее в этом месяце, Let's Encrypt (бесплатный, автоматизированный, открытый центр сертификации, который EFF помог запустить два года назад) преодолел важный рубеж: выдачу более 50 миллионов активных сертификатов. И это число будет продолжать расти, потому что через несколько недель Let's Encrypt также начнет выдавать wildcard-сертификаты, о которых просили многие системные администраторы. Читать дальше →
Это тринадцатая часть серии Мега-Учебник Flask, в которой я расскажу вам, как реализовать поддержку нескольких языков для вашего приложения. В рамках этой работы вы также узнаете о создании собственных расширений CLI для flask.
Для справки ниже приведен список статей этой серии.
Целью данного цикла статей я хотел бы поставить создание простейшего криптозащищенного мессенджера с упором исключительно на криптографию, исключая из рассмотрения технические тонкости непосредственно коммуникаций, сетевых протоколов, графики и всего остального.
Шаг за шагом обходя уязвимости, которые будет иметь наш разрабатываемый с нуля протокол, в конце мы получим собранную своими руками криптографическую систему, противостоящую подавлящему количеству вариаций атак.
Большинство людей, незнакомых с криптографией, думая о шифровании, представляют себе некий сейф, в который кладется исходная информация в чистом виде, и для того, чтобы получить пользователь получил ее назад, необходимо предъявить системе комбинацию, отпирающую замок сейфа и достать информацию из абстрактного ящика.
Однако с подобным подходом возникает ряд проблем:
Сейф можно вскрыть болгаркой или иным силовым методом
Производитель сейфов может оставить обходную лазейку и получить доступ к содержимому
По встроенным механизмам безопасности ASP .NET Core написано мало статей. Даже официальная документация имеет пробелы. В этой статье мы пройдём по всем основным компонентам, имеющим отношение к безопасности, и разберём, как это работает внутри.
Если вы используете старый добрый ASP .NET, то для вас будет полезна информация по внутреннему устройству компонентов безопасности и лучшим практикам их использования. Здесь вы найдёте ответы на следующие вопросы: как реализованы современные анти-XSS механизмы и как их правильно использовать в ASP .NET Core? Как правильно работать с cookies и какие подводные камни там могут встретиться? Как был переписан механизм защиты от CSRF? Как правильно работать с криптографическими алгоритмами? Кроме того, рассказывается про опыт участия в Bug Bounty по поиску уязвимостей в ASP .NET Core.
Прототипом статьи является доклад Михаила Щербакова на конференции DotNext 2017 Moscow. Михил — Microsoft .NET MVP, участник .NET Core Bug Bounty Program, соорганизатор сообщества .NET программистов (Московское комьюнити называется MskDotNet, питерское — SpbDotNet). По работе последние 5 лет занимается безопасностью. Работал в Positive Technologies, в Cezurity, сейчас как консультант работает напрямую с заказчиками, по большей части в этой же сфере. Профессиональные интересы: статический и динамический анализ кода, информационная безопасность, автоматизация отладки кода, исследование внутреннего устройства .NET CLR.
В этом тексте огромное количество картинок со слайдов. Осторожно, трафик!
Благодаря физически точному рендерингу в Unreal Engine 4 удобно разрабатывать реалистичные игры. Модель рендеринга имитирует взаимодействие света с материалами, что приводит к созданию реалистичной картинки. Однако если вы хотите разработать игру со стилизованным внешним видом, то вам придётся исследовать другие техники.
Один из способов создания стилизации — использование cel shading (также известного как toon-шейдинг). Эта техника подражает затенению, обычно используемому в мультфильмах и аниме. Примеры её использования можно увидеть в таких играх, как Jet Set Radio, The Legend of Zelda: The Wind Waker и Gravity Rush.
В этом туториале вы научитесь следующему:
Создавать и использовать материал постобработки
Создавать cel-шейдер
Изолировать cel-шейдер для отдельных мешей
Управлять цветовыми полосами с помощью таблиц поиска
Основным путем заражения телефона под управлением Android является установка приложений со сторонних ресурсов. Файлами, заражающими телефон в данном случае, являются файлы с расширением .apk: Читать дальше →
Здравствуйте, уважаемые хабравчане! Сегодня я хотел бы рассказать о том, как «скормить» Java-приложение докеру, как при этом лучше действовать, а чего делать не стоит. Я занимаюсь разработкой на Java более 10 лет, и последние года три провёл в самом тесном общении с Docker, так что у меня сложилось определённое представление о том, что он может и чего не может. Но ведь гипотезы надо проверять на практике, не так ли?
Я представил весь процесс как старую добрую компьютерную игру с тёплым ламповым пиксель-артом.
Начнем мы, как и полагается любой игре, с некоторого брифинга. В качестве вводной возьмем немного рекламы докера.
На сайте докера можно ознакомиться с рядом рекламных посулов – а именно, с обещанием увеличить скорость разработки и развертывания аж в 13 раз и повысить портативность в разработке (в частности, избавиться о сакраментального «работает на моей машине»). Но соответствует ли это реальности?
Сейчас мы попробуем доказать/опровергнуть эти утверждения. Читать дальше →
Об авторе. Федерико Мена-Кинтеро — мексиканский программист, один из основателей проекта GNOME, автор книги «Язык программирования Rust».
Librsvg достиг переломного момента: внезапно выясняется, что легче портировать некоторые основные части из C на Rust, чем просто добавить аксессоры. Кроме того, всё больше «мяса» библиотеки сейчас написано на Rust.
Сейчас мне приходится часто переключаться между двумя языками, и C теперь выглядит очень, очень примитивным.
Элегия C
Я влюбился в C около 24 лет назад. Выучил азы по второму изданию “The C Programming Language by K&R” в переводе на испанский. До этого я использовал достаточно низкоуровневый Turbo Pascal, с указателями и ручным распределением памяти, так что C казался приятным и придающим сил.
K&R — отличная книга для выработки стиля и лаконичности. Эта маленькая книжка даже научит вас реализовать простой malloc()/free(), что поистине просветляет. Даже низкоуровневые конструкции можно вставлять в самом языке!
В последующие годы я хорошо освоил C. Это небольшой язык с маленькой стандартной библиотекой. Вероятно, идеальный язык для реализации ядра Unix на 20 000 строк кода или около того. Читать дальше →
Всем хорошо известны богатые средства форматирования в консоли: выравнивание пробелами, изменение текущего цвета текста и фона. Если вы хотите вывести пару строчек, то этого полностью хватает, хотя отсутствие переносов по пробелам временами раздражает. Если нужно вывести таблицу, приходится вручную рассчитывать ширину колонок, а часто просто хардкодить ширину. Если нужно раскрасить вывод, приходится испещрять вывод текста бесконечными переключениями и восстановлениями цвета. Если нужно вывести текст с переносами по словам или совместить всё перечисленное выше...
Код быстро превращается в нечитаемое месиво, в котором не разобрать, где логика, где текст, где форматирование. Это ужасно! Когда мы пишем GUI, у нас в распоряжении все прелести современной разработки: паттерны MV*, байндинги и прочие крутые штуки. После работы с GUI написание консольных приложений сродни возвращению в каменный век.
Внешние аккумуляторы (power banks) активно используются для зарядки смартфонов и других мобильных гаджетов. Это простое по структуре устройство: литий-ионные или литий-полимерные батареи, управляющая печатная плата, корпус. Но сама по себе разработка зарядных схем для внешних аккумуляторов и электромобилей не так проста, тут можно экспериментировать и предлагать новые решения.
В рамках одного проекта мы разрабатывали внешний аккумулятор с поддержкой обычной и быстрой зарядки, в том числе от солнечных батарей. Еще одно требование — минимизация габаритов устройства. На первом этапе мы реализовали обычную зарядку четырех одинаковых АКБ LiFePO4 за счет микроконтроллера и менеджера заряда BQ40Z50-R1, без применения специализированной микросхемы заряда и ШИМ. Помимо заряда микроконтроллер красиво управляет индикаторными светодиодами и взаимодействует с пользователем по BLE. Делимся подробностями этого этапа разработки. Читать дальше →
Краудфандинг — один, наверное, из самых шизофренических современных видов деятельности. Всё потому что краудфандеры должны фокусироваться на двух вещах одновременно: кампании по сбору средств (то есть на самом краудфандинге) и продукте, на который эти средства собираются. И удержать фокус под силу далеко не всем, о чём печальных песен спето уже немало.
Не минула эта участь и проект Hamster Marketplace — проведя в декабре 2017 года пресейл, на новогодних каникулах мы начали вести работу сразу на двух фронтах: подготовку к масштабному токенсейлу, который уже идёт, и разработку альфа-версии самого продукта — децентрализованной площадки для торговли уникальной инди- и DIY-электроникой. И удалось нам это благодаря радикальному расширению нашей команды: в январе в коллектив Hamster Marketplace практически в полном составе влилась одна из лучших московских команд разработчиков компании Indatalab. Читать дальше →
В прошедшем, 2017 году, был небольшой проект, который почти идеально ложился на идеологию акторов, решили поэкспериментировать и попробовать использовать их реализацию от Parallel Universe. От самих акторов особо много не требовалось — знай себе храни состояние да общайся с другими, иногда изменяйся по таймеру и не падай.
Действуем по старой схеме: я для вас отсматриваю подряд 10 докладов (бесплатно доступных на YouTube), делаю короткое описание содержимого, чтобы неинтересное можно было выбросить. Кроме того, с сайтов собираю ссылки на слайды и описания. Полученное сортирую и выдаю в порядке увеличения рейтинга — то есть в самом низу будет самый крутой доклад. Оценки — это не лайки на YouTube, а собственная оценочная система, она круче лайков.
На этот раз объектом изысканий будет HolyJS 2017 Moscow — известная JavaScript-конференция, четвёртая по счёту. Более 600 JS-разработчиков собрались под одной крышей для того, чтобы обсудить настоящее и будущее JavaScript-сообщества с мировыми экспертами: Douglas Crockford, Lea Verou, Martin Splitt и так далее.
Осторожно, трафик! В этом посте присутствует огромное количество картинок — слайдов и скриншотов с видео в формате 720p.
Disclaimer: Все описания являются моим личным мнением. Всё написанное — плод моего больного воображения, а не искажённые цитаты докладчиков (это предостережение написано для того, чтобы докладчики меня не побили).
Сегодня мы продолжим разбираться с тем, как себя вести на первой встрече с системой мониторинга во время пентеста. На этот раз к нам в гости заглянул старина Zabbix. Читать дальше →