-Поиск по дневнику

Поиск сообщений в rss_habrahabr

 -Подписка по e-mail

 

 -Постоянные читатели

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 22.11.2006
Записей:
Комментариев:
Написано: 2




Интересные публикации из тематических хабов на Хабрахабре


Добавить любой RSS - источник (включая журнал LiveJournal) в свою ленту друзей вы можете на странице синдикации.

Исходная информация - http://www.habrahabr.ru/text/.
Данный дневник сформирован из открытого RSS-источника по адресу http://habrahabr.ru/rss/text/, и дополняется в соответствии с дополнением данного источника. Он может не соответствовать содержимому оригинальной страницы. Трансляция создана автоматически по запросу читателей этой RSS ленты.
По всем вопросам о работе данного сервиса обращаться со страницы контактной информации.

[Обновить трансляцию]

Python Meetup 27.02.15: Hy и Toga

Понедельник, 23 Марта 2015 г. 17:48 + в цитатник

27 февраля состоялся очередной Python Meetup. В этот раз мы обсуждали:

  • Hy — диалект, который позволяет Lisp-разработчикам использовать библиотеки Python, а Python’истам найти решение для некоторых проблем языка, например, отсутствия скобочек.
  • Toga — библиотека построения интерфейсов на Python, которая с первого взгляда выглядит как простой и универсальный инструмент, но на деле имеет ряд недоработок.

Во время Lightning Talk участники делились опытом экспорта .doc-файлов и идеями использования AST для трансляции Python в Ruby, JavaScript, C++ и др.

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

http://habrahabr.ru/post/253801/


Метки:  

Электронная подпись в доверенной среде на базe загрузочной Ubuntu 14.04 LTS и Рутокен ЭЦП Flash

Понедельник, 23 Марта 2015 г. 17:41 + в цитатник

Процедура наложения электронной подписи, призванная обеспечить подтверждение целостности подписанного документа и его авторства, сама по себе может быть небезопасной.
Основные атаки на ЭП — это кража ключа и подмена подписываемой информации, а также несанкционированный доступ к средству ЭП (например, USB-токену) посредством кражи его PIN-кода.

Реализуются данные атаки различными способами и на различных уровнях. На уровне ОС это внедрение вредоносного ПО (вирусы, программы-шпионы, руткиты и т.п.), которое способно похищать ключи, PIN-коды и делать подмену документов посредством чтения и/или подмены данных в памяти системного процесса, используя различные механизмы «хака», заложенные в ОС.
Если мы говорим о подписи в браузере, то к данным атакам добавляется возможность проведения атаки man-in-the-middle, направленной на модификацию подписываемых данных на web-странице или на кражу PIN-кода или на перехват secure token для возможности злоумышленнику прикинуться абонентом системы. Кроме того, на сайтах возможна атака типа CSS, обусловленная безалаберностью разработчиков сайта.

Очевидно, что максимально защитить клиента при проведении процедуры ЭП возможно лишь комплексом мер.
К данным мерам можно отнести:
  • применение для электронной подписи криптографических смарт-карт/USB-токенов с неизвлекаемыми ключами
  • использование правильной реализации протокола TLS на сайте
  • правильное конфигурирование этой правильной реализации протокола TLS
  • использование специальных аппаратных средств для визуализации подписываемых данных перед наложением подписи (trustscreen)
  • корректная реализация браузерных плагинов и расширений, которые обеспечивают ЭП в браузере
  • регламентирование процедуры подписи для пользователя с учетом встроенных в браузер механизмов безопасности
    • проверка сертификата TLS-сервера пользователем перед ЭП
    • запуск браузерных плагинов и расширений только на доверенном сайте (сейчас правильно настроенные браузеры предупреждают пользователя о запуске)
    • ввод PIN-кода токена по запросу только доверенного сайта

  • защита ОС от вредоносного ПО (создание доверенной среды)


Некоторое время назад наша компания выпустила новый Рутокен ЭЦП Flash. Это устройство «два в одном» — криптографический токен и управляемая FLASH-память в едином корпусе. При этом контроллер позволяется настраивать FLASH-память таким образом, что атрибуты настройки нельзя изменить без знания PIN-кода к устройству.

В данной статье мы сделаем кастомную Ubuntu 14.04 LTS, в которую «упакуем» смарткарточные драйвера и Рутокен Плагин. Эту ОС запишем на FLASH-память Рутокен ЭЦП Flash (USB-live) и специальными средствами сделаем ее read-only, так, что без знания PIN-кода злоумышленник не сможет снять этот атрибут.

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

http://habrahabr.ru/post/253619/


Метки:  

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

Понедельник, 23 Марта 2015 г. 17:06 + в цитатник



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

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

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

http://habrahabr.ru/post/253795/


«Код MOEX». Хакатон

Понедельник, 23 Марта 2015 г. 17:04 + в цитатник

Как выбрать лучших студентов для работы в ИТ-компании?


Берем 300 претендентов из лучших ВУЗов столицы, добавляем несколько этапов отбора, 1 предварительное техническое задание, и украшаем «вишенкой» в виде финала-«Хакатона»!

В своем блоге на Хабре мы уже писали о старте новой программы стажировки для студентов ИТ-специальностей на Бирже. В феврале проект успешно стартовал, и мы получили более 300 заявок от студентов «ВШЭ», «Бауманки», «МГУ», «МФТИ» и других столичных ВУЗов. Из них только 31 претендент оказался в финале и участвовал в борьбе за право на год стать «биржевым айтишником».
Как это было...

http://habrahabr.ru/post/253793/


Метки:  

Тестирование флеш СХД. IBM FlashSystem 840

Понедельник, 23 Марта 2015 г. 16:49 + в цитатник

В прошлом году писали о тестировании IBM RamSan FlashSystem 820. Н а этот раз, благодаря одному крупному заказчику, в наши руки попала IBM FlashSystem 840. Системе около года от роду, «детские болезни» уже позади т.е. самое время оценить её профессиональные возможности.


Методика тестирования


В ходе тестирования решались следующие задачи:
  • исследования процесса деградации производительности СХД при длительной нагрузке на запись (Write Cliff) и влияния заполненности СХД;
  • исследование производительности СХД IBM FlashSystem840 при различных профилях нагрузки;
Читать дальше →

http://habrahabr.ru/post/253785/


Функция согласования и подписания документов в EOS for SharePoint

Понедельник, 23 Марта 2015 г. 16:47 + в цитатник

Привет, Хабр! Сегодня мы хотим поговорить о принятии решений — но в психологическом смысле, а в самом практическом, бюрократическом смысле. Думаем, все, кто работал в компнии, в которой больше 20 сотрудников, знакомы с подводными камнями принятие решения в них. Психология тут бессильна: чем крупнее организация, тем сильнее в ней сроки совместного принятия решений зависят от внутренних регламентов, количества принимающих решение, быстроты их реакции и степени автоматизации процесса. В этом посте мы хотим рассказать о том, как устроена функция согласования и подписания электронных документов в нашей системе электронного документооборота (СЭД) EOS for SharePoint: на кого она ориентирована, что из себя представляет, и как настраивается.


Цепочка согласований не должна напоминать лабиринт без выхода
Читать дальше →

http://habrahabr.ru/post/253435/


Метки:  

Runscope: удобный тул для тестирования API

Понедельник, 23 Марта 2015 г. 15:30 + в цитатник


Back-end не всегда функционирует так идеально, как указано в API-спецификации. Например, кто-нибудь забывает внести обязательный параметр в JSON-строку выдачи или вместо «0» решает вписать null. Если такие данные проникают в мобильное приложение, последствия могут быть самые неприятные.
Сегодня я расскажу об инструменте, который используется для выявления таких случаев. Это Runscope.
Читать дальше →

http://habrahabr.ru/post/253777/


Тестирование полки Intel® Storage System JBOD 2000 Family

Понедельник, 23 Марта 2015 г. 15:21 + в цитатник

Буквально недавно мне довелось тестировать дисковую полку от компании Intel®. «Казалось бы, чего может быть удивительного в обычной дисковой полке,»-подумал я, но после детального рассмотрения полка оказалась не совсем типичной. Собственно, об этом я и расскажу.


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

http://habrahabr.ru/post/253763/


[Из песочницы] Применение МЭМС гироскопов и акселерометров для отслеживания движений тела человека

Понедельник, 23 Марта 2015 г. 14:59 + в цитатник



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

http://habrahabr.ru/post/253781/


Метки:  

Интересные моменты работы LINQ to SQL. Опять

Понедельник, 23 Марта 2015 г. 14:58 + в цитатник

С моего предыдущего поста прошёл месяц, по-моему самое время продолжить. В этот раз поговорим об Inheritance Mapping’е, ну а особо интересующихся в конце статьи ждёт сюрприз.

Итак, начнём.

Проблемы с дискриминатором


Разумеется, мы храним в нашей базе данных полиморфные сущности. Например, есть сущность CustomerOperation, которая отражает некоторую операцию, которую можно совершать над потребителем. Операции совершаются в основном через сервисы, поэтому есть наследник CustomerServiceOperation, а так же у нас есть механизм WebTracking’а, для которого есть WebTrackingOperation. Но довольно слов, лучше покажу код:
Читать дальше →

http://habrahabr.ru/post/253779/


Метки:  

Kerio Control 8.2 получил сертификат ФСТЭК России

Понедельник, 23 Марта 2015 г. 14:24 + в цитатник

Kerio Technologies cообщает о получении сертификата соответствия ФСТЭК для версии Kerio Control 8.2 сроком на три года.

Полученный сертификат удостоверят, что межсетовой экран Kerio Control 8.2. является программным средством защиты информации от несанкционированного доступа из внешних вычислительных сетей и систем, и соответствует требованиям руководящих документов.

Kerio Control 8.2 получил сертификацию по 3-му классу защищённости как межсетевой экран. Контроль недекларируемых возможностей был проведен по 4-му классу.

Сертификат соответствия предоставляет возможность использования продукта Kerio Control 8.2 в государственных, образовательных, медицинских и любых других учреждениях, в которых требуется использование сертифицированных продуктов.

Решение Kerio Control 8.2 доступно в виде программного комплекса и не требует для своего функционирования отдельной операционной системы. Сертифицированный продукт Kerio Control 8.2 уже доступен для заказа, а сертифицированный дистрибутив можно скачать на нашем веб-сайте.

Подробнее с сертификатом вы можете ознакомиться здесь.

Зарегистрируйтесь на вебинар, на котором мы рассмотрим:

  • Особенности сертифицированной версии
  • Особенности сертификации
  • Лицензирование перехода со старой версии Kerio Control 7.2.3 на Kerio Control 8.2.3
  • Возможные шаги миграции
Читать дальше →

http://habrahabr.ru/post/253771/


Метки:  

Как поймать то, чего нет. Часть вторая: снаряд и броня

Понедельник, 23 Марта 2015 г. 14:20 + в цитатник

Часть первая была посвящена выбору определения для понятия «вредоносная программа» и, вполне логично, что статья привлекла мало внимания — ну в самом деле, кому какая разница, какого цвета крыса — главное, чтобы кошка исправно их душила.

Во второй части мы постараемся определить, чем же должен заниматься антивирус в локальной сети. Если кто-то еще думает, что антивирус должен ловить вирусы — просим под кат.
Читать дальше →

http://habrahabr.ru/post/253769/


Метки:  

Приглашаем принять участие в Security Meetup 9 апреля

Понедельник, 23 Марта 2015 г. 13:47 + в цитатник



Приглашаем экспертов в области интернет-безопасности, а также всех интересующихся этой темой на наш очередной Security Meetup, который состоится в четверг, 9 апреля, в 19:30. Вечер обещает быть насыщенным интересной и актуальной информацией, в программе пять докладов об уязвимостях и различных аспектах их эксплуатации. Читать дальше →

http://habrahabr.ru/post/253767/


Метки:  

Управление виртуальными машинами Azure с помощью PowerShell

Понедельник, 23 Марта 2015 г. 13:33 + в цитатник

PowerShell – это очень мощный инструмент, нужно только знать, как его правильно применять. Важно также отметить, что несколько сейчас PowerShell предоставляет функционал больший, чем использование графических элементов управления: всё, что можно выполнить из графического интерфейса, можно реализовать при помощи командлетов PowerShell. Наоборот это правило не работает. В случае с Microsoft Azure с помощью PowerShell вы можете сделать все теже действия, что и через портал управления, кроме создания самой подписки. Применение Azure PowerShell позволяет контролировать и автоматизировать развертывание рабочих нагрузок и управлениями ими. В этой статье мы поговорим о том, как можно использовать Azure PowerShell для управления виртуальными машинами.

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

http://habrahabr.ru/post/253765/


Использование технологии Microsoft Active Accessibility для доступа к содержимому браузера

Понедельник, 23 Марта 2015 г. 13:08 + в цитатник

Давайте придумаем решение вот такой-вот простенькой задачи.
Имеется: браузер (IE, Chrome или Firefox), уже запущенный пользователем.
Требуется: написать программу, которая получит URL, который в данный момент введён в адресной строке.

Давайте подумаем, каким образом эту простенькую задачу решить НЕ получится:

1. FindWindow + GetWindowText
Почему не получится
Первая идея — найти окно браузера, в нём дочернее окно адресной строки и взять URL оттуда. Практика показывает, что отдельное дочернее окно для адресной строки имеет только IE. FF и Chrome кросплатформенны, поэтому предпочитают весь свой контент отрисовывать самостоятельно.

2. Браузерное расширение, которое отдаст URL нашей программе (например, через запрос к localhost)
Почему не получится
Можно. Но во-первых, для трёх браузеров нужно будет написать 3 разных расширения, а во-вторых, для FF и Chrome мы будем вынуждены распространять его только через их магазины расширений. Писать программу, работоспособность которой зависит от того, зачешется ли сегодня левая пятка модератора — нет уж, увольте.

3. Давайте напишем сниффер и посмотрим что там пользователь открывал
Почему не получится
А давайте! Но что дальше? Даже если из потока трафика мы выделим данные, полученные именно браузером и расшифруем HTTP-протокол, мы всё-равно не узнаем именно текущий URL (ссылок в потоке будет много). Кроме того, сразу идут в сад HTTPS-соединения, HTTP/2, ссылки на локально открытые файлы, ссылки на внутренние страницы (типа chrome://settings) и т.д.

4. Давайте воспользуемся Remote Debugging Protocol ну или каким-нибудь Selenium-ом
Почему не получится
Не подходит из-за ограничения условий исходной задачи: браузер уже запущен, мы не можем запустить новый подконтрольный экземпляр, нам нужно взаимодействовать с уже имеющимся.

5. Может быть, хуки?
Почему не получится
Ну, внедриться-то мы в браузер сможем. А на что вешать хуки? Для IE всё ясно — SetWindowText для окна адресной строки (но с ним и более простой способ №1 проходил). А в FF и Chrome у нас нет каких-то чётко определённых объектов и интерфейсов, на которые мы можем завязаться. Можно что-то сделать с конкретной версией браузера, но универсального решения не получится.

6. Скриншот окна браузера, определение положения адресной строки, распознавание текста с картинки!
Почему не получится
Уже как-то начинает смахивать на отчаяние, правда? Прикинем все варианты цветовых схем ОС, разрешений, масштабов, учтём наличие в браузере плагинов, цветовых схем, нестандартного расположения элементов, right-to-left языковых локалей ну и закончим случаем, когда окно адресной строки слишком узкое, чтобы вместить URL полностью.

7. Ваш вариант
А напишите в комментариях, какие ещё решения вам приходят в голову и мы подумаем, получится или нет.

А теперь один из правильных ответов: мы воспользуемся уже старенькой, но весьма стабильной и поддерживаемой всеми браузерами во всех ОС с Win95 до Win10 технологией Microsoft Active Accessibility, которая даст нам возможность не только получить текущий URL (при чём одинаковым образом для всех браузеров), но и вообще дать доступ ко всему контенту браузера — от самого родительского окна с его заголовком, меню, тулбаром, вкладками и до содержимого открытой веб-страницы вплоть до самого последнего её элемента.
Читать дальше →

http://habrahabr.ru/post/253729/


Метки:  

[Из песочницы] Pattern-matching (еще один) в coffeescript

Понедельник, 23 Марта 2015 г. 12:32 + в цитатник

Введение


Как-то раз я сидел и грустно смотрел на написанный в рамках изучения эрланговский код. Очень хотелось написать на нем что-нибудь более полезное, чем крестики-нолики, но как назло никаких подходящих задач в голову не приходило. Зато есть JavaScript, в котором есть и функции первого порядка, и каррирование, и map/filter/fold, и, главное, задачу придумать куда проще. А вот pattern matching-а своего нету. Беглый поиск выдал мне несколько библиотек, но предлагаемый ими синтаксис показался мне тяжеловесным. Можно ли сделать лаконичнее, ближе к родному эрланговскому синтаксису?

Спойлер: можно, если взять coffeescript, сделать так:

fn = Match -> [
  When {command: “draw”, figure: @figure = {type: “circle”, radius: @radius}}, -> 
    console.log(@figure, @radius)
  When {command: “draw”, figure: @figure = {type: “polygon”, points: [@first, @second | @rest]}}, -> 
    console.log(@figure, @first, @second, @rest);
]
fn {command: “draw”, figure: {type: “circle”, radius: 5, color: “red”}}
#output: {type: “circle”, radius: 5, color: “red”} 5

Кому интересно, как это получилось — добро пожаловать под кат.
Читать дальше →

http://habrahabr.ru/post/253761/


Метки:  

[Из песочницы] Файловая система Linux полностью на tmpfs — скорость без компромиссов

Понедельник, 23 Марта 2015 г. 12:22 + в цитатник

Предыстория


Так сложилось, что уже пять лет мой раздел ntfs с операционной системой Windows располагается на рамдиске. Решено это не аппаратным, а чисто программным способом, доступным на любом ПК с достаточным количеством оперативной памяти: рамдиск создается средствами загрузчика grub4dos, а Windows распознаёт его при помощи драйвера firadisk.

Однако до недавнего времени мне не был известен способ, как реализовать подобное для Linux. Нет, безусловно, существует огромное количество линуксовых LiveCD, загружающихся в память при помощи опций ядра toram, copy2ram и т. д., однако это не совсем то. Во-первых, это сжатые файловые системы, обычно squashfs, поэтому любое чтение с них сопровождается накладными расходами на распаковку, что вредит производительности. Во-вторых, это достаточно сложная каскадная система монтирования (так как squashfs — рид-онли система, а для функционирования ОС нужна запись), а мне хотелось по возможности простого способа, которым можно «вот так взять и превратить» любой установленный на жесткий диск Linux в загружаемый целиком в RAM.

Ниже я опишу такой способ, который был с успехом опробован. Для опытов был взят самый заслуженный дистрибутив Linux — Debian.
Читать дальше →

http://habrahabr.ru/post/253759/


Метки:  

[Из песочницы] RAII и необрабатываемые исключения

Понедельник, 23 Марта 2015 г. 11:01 + в цитатник

Наверняка все знают прописную (в книгах про С++) истину о чудесной методологии RAII, если нет — приведу краткое описание из википедии.

Это шаблонное описание этой техники
Получение ресурса есть инициализация (англ. Resource Acquisition Is Initialization (RAII)) — программная идиома объектно-ориентированного программирования, смысл которой заключается в том, что с помощью тех или иных программных механизмов получение некоторого ресурса неразрывно совмещается с инициализацией, а освобождение — с уничтожением объекта.

Типичным (хотя и не единственным) способом реализации является организация получения доступа к ресурсу в конструкторе, а освобождения — в деструкторе соответствующего класса. Поскольку деструктор автоматической переменной вызывается при выходе её из области видимости, то ресурс гарантированно освобождается при уничтожении переменной. Это справедливо и в ситуациях, в которых возникают исключения. Это делает RAII ключевой концепцией для написания безопасного при исключениях кода в языках программирования, где конструкторы и деструкторы автоматических объектов вызываются автоматически, прежде всего — в C++.

Последнее предложение вроде как обещает 100% гарантию результата, но как всегда в жизни, а особенно в С++, есть ньюанс.
Читать дальше →

http://habrahabr.ru/post/253749/


Метки:  

Crowdin: обезболивающее при локализации

Понедельник, 23 Марта 2015 г. 10:15 + в цитатник

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


Кадр из фильма Леонида Гайдая «Кавказская пленница, или Новые приключения Шурика»

С этими и другими сложностями мы в Alconost справляемся благодаря одному-единственному инструменту, который решает сразу десяток проблем. Медики назвали бы такую штуку панацеей. А мы, локализаторы, зовем ее облачной платформой Crowdin. Именно Crowdin позволил нам делать локализации приложений, сайтов и игр на 40 с лишним языков для десятков разных клиентов одновременно.

Итак, мы выделили шесть основных сложностей локализации, от которых избавляет Crowdin:
Читать дальше →

http://habrahabr.ru/post/253739/


Intel® Graphics Technology. Часть III: эффективные вычисления на графике

Понедельник, 23 Марта 2015 г. 09:29 + в цитатник

image

В комментариях к прошлому посту был поднят весьма важный вопрос – а будет ли вообще выигрыш в производительности от выгрузки вычислений на интегрированную графику, по сравнению с выполнением только на CPU? Конечно, он будет, но нужно соблюдать определенные правила программирования для эффективных вычислений на GFX+CPU.
В подтверждение моих слов, сразу представлю график ускорения, получаемого при выполнении вычислений на интегрированной графике, для различных алгоритмов и с разной долей вовлеченности CPU. На КДПВ мы видим, что выигрыш более чем весомый.
Читать дальше →

http://habrahabr.ru/post/253425/


Метки:  

Поиск сообщений в rss_habrahabr
Страницы: 149 ... 140 139 [138] 137 136 ..
.. 1 Календарь