RSS
Pages: 1 ... 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 ... 210
[>] [recovery mode] Устройство и работа портов ввода-вывода микроконтроллеров AVR. Часть 3
habra.14
habrabot(difrex,1) — All
2015-04-15 20:30:02


**Подключение транзистора к линии порта ввода/вывода** Изучив данный материал, в котором все очень детально и подробно описано с большим количеством примеров, вы сможете легко овладеть и программировать порты ввода/вывода микроконтроллеров AVR.

* [Часть 1. Работа портов ввода/вывода][1]
* [Часть 2. Подключение светодиода к линии порта ввода/вывода][2]
* [Часть 3. Подключение транзистора к линии порта ввода/вывода][3]
* Часть 4. Подключение кнопки к линии порта ввода/вывода

Пример будем рассматривать на микроконтроллере _**ATMega8**_. Программу писать будем в _**Atmel Studio 6.0**_. Эмулировать схему будем в _**Proteus 7 Professional**_. [Читать дальше →][4]

[1]: http://habrahabr.ru/post/253213/
[2]: http://habrahabr.ru/post/253961/
[3]: http://habrahabr.ru/post/255715/
[4]: http://habrahabr.ru/post/255715/#habracut

[>] Бесплатные пары VID PID для открытых проектов
habra.14
habrabot(difrex,1) — All
2015-04-15 23:00:01


Для однозначного определения устройств, интерфейс USB использует 16-битные идентификаторы: VendorID и ProductID. Если ваш проект использует стандартную пару… ну, думаю вы уже знаете. Однако, опенсорсу иногда везёт, и получить легитимные идентификаторы можно бесплатно. ![][1] [Читать дальше →][2]

[1]: //habrastorage.org/files/10e/c54/0d8/10ec540d883348b6b8b9fbb4c8cf279b.png
[2]: http://habrahabr.ru/post/255831/#habracut

[>] Security Week 50: DDoS корневых DNS-серверов, жизнь APT Sofacy, много криптографии
habra.15
habrabot(difrex,1) — All
2015-12-11 20:30:01


![][1]Серьезные перемены происходят ровно в тот момент, когда процент желающих что-то изменить превышает определенную критическую отметку. Нет, я сейчас не про политику, чур меня и свят-свят, а про IT в целом и IT-безопасность. И хотят в общем-то все разного: компании — чтобы не DDoS-или и не ломали, пользователи — чтобы не крали пароли и не угоняли аккаунты, security-вендоры — нового отношения к безопасности у всех заинтересованных лиц, регуляторы — ну понятно, хотят регулировать. Вот краткая выжимка [предсказаний][2] наших экспертов на будущий год: эволюция APT (меньше технологий, больше массовости и вообще снижение издержек), атаки на новые финансовые инструменты а-ля ApplePay и фондовые биржи — поближе к местам высокой концентрации цифровых дензнаков, атаки на самих ИБ-исследователей через применяемые ими инструменты, взлом компаний ради чистого ущерба репутации (а.к.а. вывешивание грязного белья), дефицит доверия любым IT-инструментам (взломать могут все, что угодно), включая доверенные сертификаты, ботнеты из маршрутизаторов и прочих IoT, масштабный кризис криптографии. В предсказаниях этого года нет ни единого пункта «на вырост», ни одного маловероятного сценария развития. Ну разве что к таковым можно отнести атаки на управляемые компьютером автомобили, да и то речь идет о взломе инфраструктуры, от которой они зависят — сотовых и спутниковых сетей. Все это, в той или иной степени, сбудется, проблема в том, что _как-то не хочется_. По возможности хотелось бы этого всего _избежать_. А если хочется не только нам, но и вообще всем (пусть и по-разному), то может ли 2016-й также стать годом прогресса в коллективной IT-безопасности? Я ни разу не эксперт, но хочется верить, что да. Переходим к новостям недели. Предыдущие выпуски [доступны по тегу][3]. [Читать дальше →][4]

[1]: https://habrastorage.org/files/66e/161/b90/66e161b90f17441cb6da4de514790879.jpg
[2]: https://securelist.ru/analysis/ksb/27454/kaspersky-security-bulletin-2015-prognozy-na-2016-god/
[3]: http://habrahabr.ru/search/?target_type=posts&q=%5Bklsw%5D%20&order_by=date
[4]: http://habrahabr.ru/post/272855/#habracut

[>] Простые задачи на Java. Слабо решить все?
habra.14
habrabot(difrex,1) — All
2015-04-16 12:00:02


![][1] **Привет**! Мы тут собрали тусовку одних из самых крутых русскоязычных Java-практиков и попросили их дать по задаче, чтобы вы сломали зубы, мозг и бились об стену, пытаясь понять, как это работает. Собственно, мы поспорили на бутылку Хеннеси, что за 12 часов после публикации никто не пришлёт все правильные ответы. Я уверен, что кто-то сможет. Поэтому если вы это сделаете первым – с меня бутылка. Первая задача простая, она от телезрителя Николая Гарбузова, специалиста по скалкам, любящего рекурсию, паттерн-матчинг и магию компиляции:

> **Скомпилируется ли следующий аспект AJC компилятором?**
>
>
>
> Если да — то что он выведет на консоль при компиляции?
>
>
>
>
>
> public aspect QuizAspect {
> public static int count(int i) {
> return i++;
> }
>
> before (int n) : execution(public int QuizAspect.count(int))
> && args(n) && if(QuizAspect.count(1)>1) {
> System.out.println("QuizAspect " + n);
> }
> }
>

Пока просто, правда? [Читать дальше →][2]

[1]: //habrastorage.org/files/bba/875/2c8/bba8752c823e4df787cf148b1ff71449.gif
[2]: http://habrahabr.ru/post/255869/#habracut

[>] Как подружить Linq-to-Entities и Regex
habra.15
habrabot(difrex,1) — All
2015-12-11 21:00:02


_Entity Framework_ сильно облегчает разработку систем, использующих базы данных. Не будем сейчас спорить о достоинствах и недостатках этого фреймворка (коих, конечно, немало), а рассмотрим одну из практических задач, которую мне пришлось решать при разработке такой системы. Предположим, у нас есть база данных _SQLite_ с довольно большим количеством записей, и эта база используется в нашем _.NET_ приложении через [System.Data.SQLite][1] и [Entity Framework 6.0][2]. И вот приходит заказчик и сообщает, что ему нужна новая функция поиска записей в базе, да такая, чтобы можно было искать с использованием стандартных регулярных выражений. В этой статье я расскажу, как я добился того, что процессинг регулярного выражения, задаваемого в _Linq_-запросе, происходит на стороне сервера, что позволяет ускорить его обработку и не допустить бессмысленного раздувания памяти клиентского приложения из-за предварительного скачивания всех данных. [Читать дальше →][3]

[1]: https://system.data.sqlite.org
[2]: https://msdn.microsoft.com/en-us/data/aa937723
[3]: http://habrahabr.ru/post/272917/#habracut

[>] Fortran 2003: учим Фортран и С дружить
habra.14
habrabot(difrex,1) — All
2015-04-16 12:30:02






На языке Фортран написано огромное количество кода, отлаженного и работающего многие годы. Я не собираюсь поднимать вопрос «что лучше — Фортран или С?». У каждого языка есть свои сильные и слабые стороны. Но, учитывая большое распространение языка С, всё более популярными в определенных кругах становятся случаи «гибридных» приложений, когда часть кода пишется (скорее, уже написана) на языке Фортран, а другая – на С. Вот только у этих языков есть определенная специфика, про которую я частично [уже говорил][1], и чтобы написанное нами приложение работало корректно, нужно учитывать много нюансов. Различия в типах данных, соглашениях о вызове (calling convention), именах (naming convention) делают задачу создания mixed language приложения далеко нетривиальной. Хорошо, что в стандарте Fortran 2003 появился целый набор средств, специально разработанный для решения задачи интероперабельности C и Фортрана. Кстати, не помню других языков, которые бы стандартизировали подобную работу — ещё один «плюсик» Фортрану за протянутую «руку дружбы». [Читать дальше →][2]

[1]: http://habrahabr.ru/company/intel/blog/254235/
[2]: http://habrahabr.ru/post/255305/#habracut

[>] [Перевод] DASH “Эволюция” анонсирована как “Социальная платёжная сеть”
habra.15
habrabot(difrex,1) — All
2015-12-11 21:00:02


[![image][1]][2] Эван Даффилд (Evan Duffield), создатель и ведущий разработчик [криптовалюты DASH][3] (текущий рейтинг — №5 по капитализации), раскрыл планы по развитию следующего поколения DASH “Evolution” на ежегодной Латино-Американской Биткоин конференции LaBitconf-2015. Следующий этап развития этой криптовалюты реализует: Децентрализованное хранение персональной информации, Социальный функционал, Защищённую идентичность, Децентрализованный API (DAPI) и много другое. В ходе видео-интервью на LaBitconf-2015, Эван Даффилд рассказывает о планах по развитию DASH, нацеленных на создание “Paypal-подобного” функционала у цифровой валюты (криптовалюты), что должно обеспечить рядовым пользователям значительные преимущества в плане простоты использования и т.д. [Читать дальше →][4]

[1]: https://habrastorage.org/files/c2d/f15/76a/c2df1576a80e47169f6a9f13da342ac9.jpg
[2]: http://habrahabr.ru/post/272915/
[3]: https://www.dash.org/ru/
[4]: http://habrahabr.ru/post/272915/#habracut

[>] [Перевод] DASH «Эволюция» анонсирована как «Социальная платёжная сеть»
habra.15
habrabot(difrex,1) — All
2015-12-12 01:00:02


[![image][1]][2] Эван Даффилд (Evan Duffield), создатель и ведущий разработчик [криптовалюты DASH][3] (текущий рейтинг — №5 по капитализации), раскрыл планы по развитию следующего поколения DASH “Evolution” на ежегодной Латино-Американской Биткоин конференции LaBitconf-2015. Следующий этап развития этой криптовалюты реализует: Децентрализованное хранение персональной информации, Социальный функционал, Защищённую идентичность, Децентрализованный API (DAPI) и много другое. В ходе видео-интервью на LaBitconf-2015, Эван Даффилд рассказывает о планах по развитию DASH, нацеленных на создание “Paypal-подобного” функционала у цифровой валюты (криптовалюты), что должно обеспечить рядовым пользователям значительные преимущества в плане простоты использования и т.д. [Читать дальше →][4]

[1]: https://habrastorage.org/files/c2d/f15/76a/c2df1576a80e47169f6a9f13da342ac9.jpg
[2]: http://habrahabr.ru/post/272915/
[3]: https://www.dash.org/ru/
[4]: http://habrahabr.ru/post/272915/#habracut

[>] Новая книга о Ruby
habra.14
habrabot(difrex,1) — All
2015-04-16 13:00:02


Здравствуйте, коллеги! Не так давно мы публиковали [опрос][1] по книгам о Ruby, К сожалению, вариант «Ни одна из них» оказался удручающе популярен. Поэтому мы решили возвестить о долгожданном выходе книги Хэла Фултона "[The Ruby Way][2]", аннотацию которой размещаем под катом. [Читать дальше →][3]

[1]: http://habrahabr.ru/company/piter/blog/239015/
[2]: http://www.amazon.com/Ruby-Way-Programming-Addison-Wesley-Professional/dp/0321714636/
[3]: http://habrahabr.ru/post/255853/#habracut

[>] Яблочный forensic. Извлекаем данные из iOS-устройств при помощи open source инструментов
habra.14
habrabot(difrex,1) — All
2015-04-16 13:00:02


![][1]По состоянию на июль прошлого года Apple продала более 800 миллионов устройств, работающих под управлением iOS. Более половины из них — различные модели iPhone. При таком количестве устройств в обращении совершенно не удивительно, что они часто становятся объектами компьютерно-технической экспертизы (forensics). На рынке представлены различные решения для автоматизации подобных экспертиз, но ценник на них зачастую делает их недоступными. Поэтому сегодня мы поговорим о том, как можно провести такую экспертизу с минимальными затратами или, проще говоря, используя бесплатные и/или open source инструменты.

#### Немного теории

При проведении экспертизы в большинстве случаев подразумевается физический доступ к устройству, и перед экспертом стоят две задачи: извлечь как можно больше данных и информации из устройства и оставить при этом как можно меньше следов (артефактов). Вторая задача особенно важна, если результаты экспертизы представляются в суде: слишком большое количество артефактов может помешать проведению повторной экспертизы, что, в свою очередь, может поставить результаты первоначальной экспертизы под сомнение. Во многих случаях избежать появления артефактов невозможно; эту проблему пытаются решать, подробно документируя артефакты, создаваемые на различных этапах проведения исследования. [Читать дальше →][2]

[1]: http://habrastorage.org/files/2e0/f2d/5ae/2e0f2d5ae7744113b9c88f5f08ee16c0.jpg
[2]: http://habrahabr.ru/post/253997/#habracut

[>] Открой Open Source 2ГИС
habra.14
habrabot(difrex,1) — All
2015-04-16 14:00:02


![Open Source 2ГИС][1] 2ГИС выпускает справочники и карты городов с 1999 года. За это время мы прошли большой технологический путь — от одного ПК-приложения с данными для Новосибирска до API карт и справочника, десктопных приложений на Windows, Ubuntu и OS X, мобильных приложений на Android, iOS, Windows Phone и Blackberry с данными по 270 городам мира. Часто мы решаем задачи, для которых нет готовых инструментов. Или они есть, но не покрывают всех потребностей. Поэтому мы сами пишем для себя фреймворки и библиотеки, большая часть которых связана с автоматизацией тестирования, сборкой и ускорением разработки. Этими инструментами с удовольствием делимся на [Гитхабе][2], а для удобства сделали ещё и [Open Source раздел][3] на 2ГИС.Технологиях. Чтобы вы разобрались, что есть что, мы расскажем о наших флагманских инструментах с открытым кодом. [Читать дальше →][4]

[1]: http://habrastorage.org/files/3bf/f89/1f4/3bff891f4a234388bc77dd78b8596d01.jpg
[2]: https://github.com/2gis
[3]: http://techno.2gis.ru/opensource
[4]: http://habrahabr.ru/post/255817/#habracut

[>] Inno Setup: создание инсталлятора на примере развертывания C# приложения
habra.14
habrabot(difrex,1) — All
2015-04-16 15:00:02




# Введение

Я не являюсь профессиональным программистом. В том смысле, что не зарабатываю денег этим ремеслом, а использую свои навыки в качестве инструмента для основной, научной, деятельности. Поэтому все мои «поделки» живут лишь отведенный им на решение конкретной задачи период и не выходят за пределы каталогов проекта. Кроме того, уже довольно давно я отошел от разработки под ОС Windows, ибо Linux для решения моих задач более удобен. Однако ученым тоже хочется кушать, прилично одеваться и заправлять машину. Поэтому (правда довольно редко) возникает необходимость немного пофрилансить. Недавно мне подкинули не слишком сложный проект — одна фирма хочет написать аналог программы, имеющейся у другой. Немного реверсинга, немного кодинга, в целом проект вполне обыденный. Однако тут же возник вопрос о создании инсталлятора — клиент ведь желает продукт «под ключ», чтобы клацнуть на «сетап», понажимать «Далее» и получить готовую к работе программу. Созданием инсталляторов я не занимался никогда. Поэтому данный вопрос был основательно «загуглен», в числе прочего попалась и [такая статья][1] с Хабра. Выбор средств для подобной задачи довольно широк, и включает как проприетарные, так и открытые продукты. Вот список того, что я «пощупал»

1. [InstallShield][2] — классика жанра, достаточно солидный проприетарный продукт
2. [Adnvanced Installer][3] — проприетарный инструмент с широкими возможностями кастомизации через GUI. На сайте сказано, что если Вы блоггер и будете писать об этом продукте много хороших слов, то у Вас есть возможность получить Free License
3. [WiX][4] — открытый бесплатный продукт, основанный на XML-скриптах. Мощная, хорошо документированная штука. Разбираться с ним я пока не стал, ибо время дорого (да и к XML душа лежит не очень). Возможно когда нибудь я к нему вернусь. Да, к нему есть плагины для Visual Studio, что несомненный плюс.
4. [Inno Setup][5] — опенсорсный проект, [код которого доступен на гитхабе][6]. В силу бесплатности и низкого порога вхождения мой выбор остановился именно на нем, как инструменте позволившем выполнить работу быстро и качественно.

Так что в статье мы будем рассматривать пример использования Inno Setup, для которого имеется полезный фронтэнд [Inno Script Studio][7], позволяющий выполнять создание простых инсталляторов с помощью мастера и менять настройки через GUI. GUI понадобился мне для первого знакомства, с продуктом, но мы не будем уделять ему большого внимания — мой «линукс головного мозга» в последнее время всё больше и больше уводит меня от желания использовать разного рода «мастера» (это субъективно, прошу не пинать). Мы рассмотрим хардкорный способ написания скрипта с чистого листа. [Поехали!][8]

[1]: http://habrahabr.ru/post/20560/
[2]: http://www.installshield.com/
[3]: http://www.advancedinstaller.com/
[4]: http://wixtoolset.org/
[5]: http://www.jrsoftware.org/isdl.php
[6]: https://github.com/jrsoftware/issrc
[7]: https://www.kymoto.org/products/inno-script-studio
[8]: http://habrahabr.ru/post/255807/#habracut

[>] Быстрое обнаружение поддерживаемых SNMP-устройством MIB-модулей
habra.14
habrabot(difrex,1) — All
2015-04-16 16:30:02


При внедрении систем мониторинга и управления IT-инфраструктурой часто приходится сталкиваться с «нестандартными» устройствами. Нередко про такое устройство наверняка известно только то, что оно поддерживает SNMP. Подключение его к проекту придется начать с ответа на вопрос о том, какую информацию о себе оно предоставляет. Обычно для этого проводится полный опрос устройства, и полученные данные анализируются на предмет выявления полезной информации… Но тут, как говорится, есть нюансы. В этой заметке я расскажу об одном таком — о разработанном нами _алгоритме быстрого определения «поддерживаемых» устройством MIB-модулей_. [Читать дальше →][1]

[1]: http://habrahabr.ru/post/255839/#habracut

[>] Про открытые данные, проектах и на их основе и о том что происходит с открытыми государственными данными в России
habra.15
habrabot(difrex,1) — All
2015-12-12 21:00:02


![][1] Кто-то возможно знает, для кого-то может быть новостью, но вчера и позавчера в России завершился саммит по открытым данным. И по его итогам, а также по итогам года я понимаю, что пора рассказать о том, что творится с открытыми данными и с другими частями открытости нашего государства. К тому же мой опыт (и опыт вот уже очень долгий) создания проектов на открытых данных очень сильно отличается от слов чиновников и политиков, которые можно услышать на таких публичных мероприятиях. Начну с саммита. **Саммит по открытым данным** На фоне всех остальных мероприятий по открытым данным за последние годы — это одно из первых организованных на довольно хорошем уровне. Даже на «совете по открытым данным» в Яндексе в июне 2015 года было очень много непрофильных выступлений, подробнее в заметке "[Приоткрытые данные][2]" в этот же раз все не отходили от темы открытых данных и это главный и важный плюс всего произошедшего. В плюсы я могу записать также те части саммита в которых я участвовал. Это были круглые столы посвящённые темам криминальной статистики и востребованности государственных финансов. Если коротко, то видно что эти данные нужны и востребованы. На круглом столе про востребованность госфинансов вообще очень много было вопросов про информацию связанную с открытыми данными по госзакупкам. Подробнее и отдельно я напишу ещё про эти круглые столы, но суть общая что данные будут и что ведомства — готовы к диалогу с потребителями. Плюс у меня просто руки не доходят рассказать про все проходящие мероприятия связанные с открытыми данными — встречи с разработчиками, заседания общественных советов и так далее. Я обязательно всё напишу, материалы копятся и тексты пишутся. А теперь о том что у нас происходит с открытыми данными. [Читать дальше →][3]

[1]: https://habrastorage.org/files/0ba/571/3d9/0ba5713d9f3b4893b2f8d48b239614c9.jpg
[2]: http://habrahabr.ru/company/infoculture/blog/260389/
[3]: http://habrahabr.ru/post/272965/#habracut

[>] Алгоритмы интеллектуальной автогенерации уровней в iOS игре
habra.14
habrabot(difrex,1) — All
2015-04-16 17:30:02


![][1] Я люблю смотреть на звездное небо и размышлять о далеких мирах, но факт бесконечности вселенной с трудом укладывается в моей голове. Согласно теории большого взрыва, наша вселенная непрерывно расширяется и охлаждается из сингулярного состояния, но давайте предположим, что наша бесконечная вселенная постоянно генерируется по определенным правилам, и количество этих правил ограниченно. Можно допустить, что наша вселенная уже сгенерировалась, то есть для каждой точки бесконечной вселенной уже была произведена генерация по конечному числу правил (генерация была произведена бесконечное количество раз), в итоге мы имеем бесконечную сгенерированную вселенную. Вернемся к нашей задаче, нам нужно интеллектуально генерировать карты для **IPhone/IPad** игры типа «Марио», для начала мы рассмотрим генерацию карты в пределах поля 128х128 кубов. [Читать дальше →][2]

[1]: http://habrastorage.org/getpro/habr/post_images/612/e67/59e/612e6759e645c3edbf3a625bf2559bc9.png
[2]: http://habrahabr.ru/post/255775/#habracut

[>] [Из песочницы] Сборка Embedded Linux от Yocto для QEMU x86 и первое приложение к нему
habra.14
habrabot(difrex,1) — All
2015-04-16 18:00:02


Эта статья — быстрый старт с картинками для тех, кому нужно собрать Embedded Linux с помощью Yocto. Если вы собрались собирать Embedded Linux для специфичных аппаратных средств, например, для SoC на FPGA, то, наверное, как и я столкнётесь с проектом Yocto. Yocto — проект, объединяющий

* инструментарий разработчика;
* систему сборки;
* набор программных интерфейсов;
* коллекцию мета-пакетов, расширяющих возможности платформы;
* плагины для Eclipse и Anjuta.

Я постарался описать процесс так, чтобы вам можно было меньше тратить времени на проблемы с настройкой и подготовкой и поскорее приступить к творчеству. [Читать дальше →][1]

[1]: http://habrahabr.ru/post/255917/#habracut

[>] Про открытые данные, проектах на их основе и о том что происходит с открытыми государственными данными в России
habra.15
habrabot(difrex,1) — All
2015-12-13 01:00:03


![][1] Кто-то возможно знает, для кого-то может быть новостью, но вчера и позавчера в России завершился саммит по открытым данным. И по его итогам, а также по итогам года я понимаю, что пора рассказать о том, что творится с открытыми данными и с другими частями открытости нашего государства. К тому же мой опыт (и опыт вот уже очень долгий) создания проектов на открытых данных очень сильно отличается от слов чиновников и политиков, которые можно услышать на таких публичных мероприятиях. Начну с саммита. **Саммит по открытым данным** На фоне всех остальных мероприятий по открытым данным за последние годы — это одно из первых организованных на довольно хорошем уровне. Даже на «совете по открытым данным» в Яндексе в июне 2015 года было очень много непрофильных выступлений, подробнее в заметке "[Приоткрытые данные][2]" в этот же раз все не отходили от темы открытых данных и это главный и важный плюс всего произошедшего. В плюсы я могу записать также те части саммита в которых я участвовал. Это были круглые столы посвящённые темам криминальной статистики и востребованности государственных финансов. Если коротко, то видно что эти данные нужны и востребованы. На круглом столе про востребованность госфинансов вообще очень много было вопросов про информацию связанную с открытыми данными по госзакупкам. Подробнее и отдельно я напишу ещё про эти круглые столы, но суть общая что данные будут и что ведомства — готовы к диалогу с потребителями. Плюс у меня просто руки не доходят рассказать про все проходящие мероприятия связанные с открытыми данными — встречи с разработчиками, заседания общественных советов и так далее. Я обязательно всё напишу, материалы копятся и тексты пишутся. А теперь о том что у нас происходит с открытыми данными. [Читать дальше →][3]

[1]: https://habrastorage.org/files/0ba/571/3d9/0ba5713d9f3b4893b2f8d48b239614c9.jpg
[2]: http://habrahabr.ru/company/infoculture/blog/260389/
[3]: http://habrahabr.ru/post/272965/#habracut

[>] Шифрование ГОСТ 28147-89 на х86- и GPU-процессорах
habra.14
habrabot(difrex,1) — All
2015-04-16 21:00:02


_В статье представляются результаты тестирования оптимизированных алгоритмов шифрования ГОСТ, полученные в сентябре и марте 2014 г. компанией “Код Безопасности”, на новых серверных процессорах Intel, а также на графических процессорах различных производителей._

#### **Ускорение шифрования ГОСТ 28147–89**

С развитием ИТ-технологий резко возросли объемы данных, передаваемых по глобальной сети Интернет, находящихся в сетевых хранилищах и обрабатываемых в «облаках». Часть этих данных конфиденциальна, поэтому необходимо обеспечить их защиту от несанкционированного доступа. Для защиты конфиденциальных данных традиционно используется шифрование, а при шифровании больших объемов используют алгоритмы симметричного шифрования, такие как широко известный блочный алгоритм – AES. Для соответствия российскому законодательству при шифровании таких сведений, как персональные данные, необходимо использовать отечественный алгоритм симметричного блочного шифрования ГОСТ 28147–89. [Читать дальше →][1]

[1]: http://habrahabr.ru/post/255863/#habracut

[>] Игры, которые учат программированию
habra.15
habrabot(difrex,1) — All
2015-12-13 20:30:03


![][1] Образование стоит дорого. Хорошее образование стоит очень дорого. Но тем не менее возможность получить бесплатное и качественное образование есть у каждого. Компании и корпорации во всём мире вкладывают деньги в создание бесплатных образовательных продуктов. Отчасти, чтобы обеспечить себя квалифицированными кадрами в будущем. Отчасти, для преодоления бедности, предоставления всем равного доступ к качественному образованию. У каждого есть возможность воспользоваться специально созданной для обучения школьников средой программирования Scratch, которую разрабатывают специалисты одного из самых престижных технических учебных заведений США и мира — Массачусетского технологического института. Или игрой Minecraft, за которую Microsoft год назад заплатила $2,5 млрд и с помощью которой, в том числе, планирует обучать детей программированию. Или обучающими играми, которые создают энтузиасты и добровольцы во всём мире. Препятствием для использования подобных ресурсов может быть неосведомлённость о их существовании или незнание языка. Действительно, англоязычных ресурсов и игр значительно больше. Но существуют и русскоязычные игры, обучающие программированию. [Читать дальше →][2]

[1]: https://habrastorage.org/files/66b/422/2c6/66b4222c6013419c99a41da806ef6438.jpg
[2]: http://habrahabr.ru/post/273003/#habracut

[>] Знакомьтесь: Хеш-стеганография. Очень медленная, но совершенно секретная
habra.15
habrabot(difrex,1) — All
2015-12-13 21:00:02


Да, уважаемый читатель, вы правильно прочитали: **_совершенно секретная_**. Причем, прошу заметить, _совершенно секретная_ в самом строгом математическом смысле: [совершенно секретная по Кашену][1], ибо [расстояние Кульбака — Лейблера ][2] в моей математической конструкции будет равно нулю; причем не «почти нулю», а всамделишному нулю, без всяких «бесконечно малых» и иных вульгарных приближений! Каким образом? А очень просто — я вообще не буду ничего _вкраплять_ в стегоконтейнер. Действительно, если мы ничего не вкрапляем, то _пустой контейнер_ неотличим от _стегоконтейнера_, верно? «Подождите, но ведь если мы **** ничего не передаем!!!» — разумно поспорит со мной читатель. Абсолютно верно! Вкраплять мы и не будем! Есть способ, не искажая контейнер, тем не менее передать информацию. Как? Cхематично **Хеш-стеганографию [ɔ⃝][3]** можно представить так: ![][4] Текстовое пояснение к картинке под катом. [Поехали][5]

[1]: https://www.zurich.ibm.com/~cca/papers/stego.pdf
[2]: https://ru.wikipedia.org/wiki/%D0%A0%D0%B0%D1%81%D1%81%D1%82%D0%BE%D1%8F%D0%BD%D0%B8%D0%B5_%D0%9A%D1%83%D0%BB%D1%8C%D0%B1%D0%B0%D0%BA%D0%B0_%E2%80%94_%D0%9B%D0%B5%D0%B9%D0%B1%D0%BB%D0%B5%D1%80%D0%B0
[3]: https://ru.wikipedia.org/wiki/%D0%9A%D0%BE%D0%BF%D0%B8%D0%BB%D0%B5%D1%84%D1%82
[4]: https://habrastorage.org/files/912/1c9/806/9121c9806ada40619a316812d823d5db.gif
[5]: http://habrahabr.ru/post/272935/#habracut

[>] Магические битборды и русские шашки
habra.15
habrabot(difrex,1) — All
2015-12-13 21:30:03


Данная статья — иллюстрация, каким образом битовые трюки могут быть использованы не только в задачах на собеседованиях, но и при решении реальных задач. В статье дано описание одного метода быстрой генерации ходов в русских шашках на основе магических битбордов (magic bitboard). [Битборды][1] — представление позиции в виде нескольких беззнаковых целых чисел, каждый бит которого отвечает за состояние некоторого элемента игры, например клетки. Обычно использование битбордов даёт выигрыш по производительности и по объёму используемой памяти, но связано с более изощрённым программированием. При этом часто возникает задача получения значения определённых бит в битборде, например, для последующего обращения к таблице. Есть два основных подхода к решению этой задачи. Первый — использование и поддержка избыточного представления в виде дополнительных битбордов с перенумерацией битов. Такие битборды асто называют вращаемые. Второй способ — умножение на магическую константу, сдвиг и обращение к таблице. О таких магических битбордах и пойдёт речь в этой статье. [Читать дальше →][2]

[1]: https://en.wikipedia.org/wiki/Bitboard"
[2]: http://habrahabr.ru/post/272815/#habracut

[>] Черный пиар Telegram. Кому верить?
habra.15
habrabot(difrex,1) — All
2015-12-13 22:30:01


![image][1] Недавно на Geektimes подняли шум со статьей [«Плохой Telegram» или Как я не взял денег за черный пиар Telegram на Хабрахабре][2]. В итоге выяснили, что знакомый Бурумыча читает переписку дочери и что приветствие «Добрый день» лучше чем «Доброго времени суток». Дабы вбросить в вентилятор полезной информации, мы со специалистами компании [Edison][3] сделали подборку публикаций про Telegam и безопасные мессенджеры, чтобы пытливый читатель мог самостоятельно сделать вывод (а не получить «проплаченную» экспертизу) чему стоит доверять и чем пользоваться для своих целей. Про уровень доверия/желтизны СМИ предлагаю решить читателю самостоятельно. Поток адекватной и неадекватной информации про безопасность коммуникации (и мессенджеров в том числе) растет и будет расти, и очень хочется, чтобы на Хабре можно было найти грамотную, независимую и понятную аналитику. Какими критериями пользоваться для оценки безопасности мессенджеров, можно подсмотреть у борцов за цифровую неприкосновенность — [Electronic Frontier Foundation][4] (EFF). Кстати, вопрос, являются ли эти критерии исчерпывающими или нужны дополнительные (например, про маскировку метаданных)? Чтобы повысить градус объективности и независимости, прошу высказаться в комментах тех, кто разбирается в вопросе по поводу безопасности мессенджеров. **На основе каких данных можно делать выводы?** [Читать дальше →][5]

[1]: https://habrastorage.org/getpro/habr/post_images/364/d22/933/364d22933ae7ab5f35eaa0f2d91866b8.jpg
[2]: http://geektimes.ru/post/267072/
[3]: http://www.edsd.ru/
[4]: https://ru.wikipedia.org/wiki/Electronic_Frontier_Foundation
[5]: http://habrahabr.ru/post/273001/#habracut

[>] Полный перевод Unix-коанов на русский язык
habra.15
habrabot(difrex,1) — All
2015-12-14 02:00:04


![][1] Представляю на ваш суд ещё один перевод коанов о Мастере Фу на русский язык. В данный сборник вошли все коаны, на данный момент [опубликованные на сайте][2] Эрика Реймонда. Надо сказать, что сам Эрик личность весьма неординарная, но упоминания в данной статье стоящая. Помимо холиваров в списках рассылки всевозможных проектов за его авторством также несколько серьёзных трудов о Unix — в том числе и о сообществе, без которого экосистема современных открытых проектов не была бы возможной ([полный список книг][3]). Идея перевести коаны в очередной раз пришла мне в голову во время чтения одного из таких трудов, а именно «The Art of Unix Programming», поскольку многое из скрытого смысла коанов становится ясно только после прочтения очередной главы оттуда. Ну и конечно же, дисклеймер: все комментарии и специфика переложения есть плод воображения вашего покорного слуги. Я публикую этот перевод в надежде на то, что он может кому-то понравиться, но не предоставляю на него никаких гарантий, в том числе соответствия канонам перевода или пригодности для цитирования где бы то ни было. [Итак][4]

[1]: https://habrastorage.org/files/53d/22c/449/53d22c449b2c4210888477e2f913d19b.jpg
[2]: http://www.catb.org/esr/writings/unix-koans/
[3]: http://www.catb.org/esr/writings/
[4]: http://habrahabr.ru/post/273023/#habracut

[>] Создаем полностью автоматическую ферму (готовая реализация)
habra.14
habrabot(difrex,1) — All
2015-04-16 23:00:02


Продолжаем обзор деятельность нашего [Хакспейс-клуба][1]. В предыдущей [статье ][2]. была озвучена идея создания полностью автоматической автономной фермы около нашей мини-гостиницы в Крыму. И это у нас получилось!!! Идеи были технически реализованы!!! 7 экспериментальных образов, т.е. куры обычные (возраст 4 месяца, девочки), были запущены для ПМЖ в клетку оборудованной всем необходимым для жизнеобеспечения. Петуха решили не селить к птичкам, все же курортная зона и его запевы по утрам многим не понравятся. Курочки 3 недели без человека. Растут и выглядят довольными. Эксперимент проходит нормально. Вот видео жизни наших птичек в условиях без вмешательства человека, в автономном режиме, т.е. в условиях автоматизированного кормления и поения по расписанию, уборки, отопления и света Самые интересные моменты буду выкладывать в процессе [здесь][3]




Под катом мало слов, много фото и видео. [Читать дальше →][4]

[1]: http://vk.com/club71815206
[2]: http://habrahabr.ru/company/minirobot/blog/253079/
[3]: https://www.youtube.com/channel/UCUOzivUxSHWy7HtKZlBogsg
[4]: http://habrahabr.ru/post/255321/#habracut

[>] Маленькие секреты большого колл-центра: предиктивный обзвон
habra.15
habrabot(difrex,1) — All
2015-12-14 11:00:03


![][1]Мы продолжаем рассказывать интересные зарисовки из жизни колл-центров, телекомов и облачной телефонии. Случалось ли вам отвечать на звонок и слышать “пожалуйста подождите, оператор сейчас свяжется с вами”? Первая мысль, которая приходит в голову обычно нецензурна, вторая — “они что, вконец обнаглели?!?”. Получивший такой звонок пользователь — жертва хитрой технологии “предиктивного обзвона”, которая позволяет колл-центрам экономить сотни часов времени, но иногда приводит к забавным результатам. Под катом я расскажу про эту штуку подробнее и покажу, как она может быть реализована в несколько строк кода на нашей облачной платформе voximplant [Под катом - sip, rtp и немного javascript][2]

[1]: https://habrastorage.org/files/a3a/5ab/975/a3a5ab9754e34931b32ec0b7c5cf260d.jpg
[2]: http://habrahabr.ru/post/272945/#habracut

[>] Новый суперблиц по Java-хардкору
habra.14
habrabot(difrex,1) — All
2015-04-17 12:00:02


Итак, вчера мы с вами [поиграли][1] в джавовский вариант «Интеллектуальное казино против знатоков», и при этом, при всем уважении к хабровчанам, телезрители выиграли! Если же я вдруг упустил знатоков, решивших вчера хотя бы три задачи — пишите мне в личку, и награда найдет своего героя! Вчера нас с телезрителями обвинили в том, что большинство вчерашних задач были связаны с Java весьма косвенно. Мы принимаем это обвинение, и поэтому сегодня у нас вариант на чистой Java! никаких спрингов, эксэмэлей и паттернов. Это будет настоящее испытание для истинных любителей хардкора! Под катом — ответы на вчерашний раунд и суперблиц! Против знатоков сегодня играет телезритель из Петербурга **Андрей [apangin][2] Паньгин**. ![][3] [Поиграем?][4]

[1]: http://habrahabr.ru/post/255869/
[2]: http://habrahabr.ru/users/apangin/
[3]: //habrastorage.org/files/48e/b31/3d4/48eb313d4f9140a2a314017840b42a49.jpg
[4]: http://habrahabr.ru/post/255951/#habracut

[>] [Из песочницы] Как сжать плоского кота
habra.15
habrabot(difrex,1) — All
2015-12-14 13:30:02


Однажды в студеную зимнюю пору… ровно год назад, у нас появилась нетривиальная задача. Есть экран на электронных чернилах, есть процессор 16МГц (да-да, во встраиваемой электронике, особенно сверхнизкого энергопотребления, встречаются и такие) и совсем нет памяти. Ну, т.е. килобайтов 8 RAM и 256 Flash. Килобайтов, Карл. И в эти унылые килобайты необходимо запихнуть несколько изображений 800х600 в четырех оттенках серого. Быстро перемножив в уме 800 на 600 и на 2 бита на пиксель получаем 120 тысяч байтов. Несколько не влезает. Надо сжимать. Так перед нами появилась задача: «как сжать плоского кота»? Почему кота? Да потому, что на котиках тестировали, на чем же еще черно-белые картинки проверять. Не на долларовых банкнотах же. [Читать дальше →][1]

[1]: http://habrahabr.ru/post/273047/#habracut

[>] [recovery mode] Наш новый проект на Russian StartUp Tour 2015
habra.14
habrabot(difrex,1) — All
2015-04-17 16:00:02


14-15 апреля в Национальной библиотеке Беларуси прошел региональный этап **Russian StartUp Tour** – масштабного проекта при поддержке российского инновационного Фонда «Сколково». **Russian StartUp Tour** способствует развитию молодых проектов в сфере информационных технологий. ![image][1] [Читать дальше →][2]

[1]: http://habrastorage.org/files/919/b31/2ec/919b312ecf0245dc9867986af238c9b2.JPG
[2]: http://habrahabr.ru/post/255975/#habracut

[>] Почему PayPal заменил VMware OpenStack-ом?
habra.14
habrabot(difrex,1) — All
2015-04-18 01:30:02


![][1] Почти 100% трафика, идущего через PayPal и API сервиса, включая сервисы-посредники, сейчас обслуживается частным облаком OpenStack, которым владеет сама компания. OpenStack заменил VMware в принадлежащих eBay дата-центрах, через которые проходят платежи. Преобразования шли поэтапно, а началось все во время шоппинг-сезона 2011 года, когда инфраструктурная команда PayPal решила перевести около 20% трафика компании на облако OpenStack. [Читать дальше →][2]

[1]: http://habrastorage.org/getpro/habr/post_images/c3b/e6d/e65/c3be6de65dc793c8ba619390b28321cb.jpg
[2]: http://habrahabr.ru/post/256013/#habracut

[>] [Из песочницы] Супер муравейник на ClojureCLR
habra.14
habrabot(difrex,1) — All
2015-04-18 02:00:02


Многопоточность в Clojure выведена на новый уровень развития, поскольку там реализованы транзакции изменений памяти STM (The software transactional memory system). В качестве демонстрации Рич Хикки (божественный автор Clojure) и Дэвид Миллер (человек, который написал реализацию Clojure под .Net) предлагают программу «ants», которая моделирует муравейник. Каждый муравей там живет в отдельном потоке. Муравьи бегают по клеткам общего поля, собирают еду, носят ее в муравейник и не конфликтуют друг с другом. Результат своих упражнений с этой программой я и хочу вынести на общее обозрение. Надеюсь, статья будет полезна тем, кто начинает знакомиться с Clojure на платформе .Net. [Читать дальше →][1]

[1]: http://habrahabr.ru/post/256017/#habracut

[>] PowerShell: за гранью. Часть шестая
habra.14
habrabot(difrex,1) — All
2015-04-18 05:30:02


Привычные вещи отнюдь не статичны как о них положено думать, и если на них посмотреть под иным углом, причем не обязательно с высоким градусом и вызывающим похмелье, можно открыть для себя нечто новое, способное во многом повысить эффективность работы. [Читать дальше →][1]

[1]: http://habrahabr.ru/post/255973/#habracut

[>] [Из песочницы] Как я отлаживал python httplib и httplib2
habra.15
habrabot(difrex,1) — All
2015-12-14 16:00:02


Понадобилось мне однажды у себя в проекте реализовать работу с файловым хранилищем с использованием HTTP REST API. Проект разрабатывается на python, к тому же уже был реализован http-клиент с использованием библиотеки httplib2, поэтому было решено расширить функциональность http-клиента и работать с файловым хранилищем через туже библиотеку. Проблема возникла при загрузке файлов на сервер. Первый PUT запрос выполняется, далее все последующие запросы отказываются выполняться — 500 _Internal Server Error_. Смотрю Wireshark'ом выясняется что после первого запроса сервер посылает в заголовках ответа **connection: keep-alive** и следом через 5 секунд закрывает соединение. Всё просто — это таймаут keep-alive установлен на сервере. ![][1] А вот как это выглядит на клиенте: [Читать дальше →][2]

[1]: https://habrastorage.org/files/5e9/6fa/dfa/5e96fadfa3ce4f8891e6e19601233b26.png
[2]: http://habrahabr.ru/post/273051/#habracut

[>] [recovery mode] Доклад Алексея Брагина на Russian Open Source Summit 2015
habra.14
habrabot(difrex,1) — All
2015-04-18 11:00:02


![image][1]16 марта 2015 года в Москве в очередной раз [состоялся][2] Russian Open Source Summit. ROSS 2015 был призван осветить качественно новую роль Open Source как основного движителя развития современных информационных технологий в эпоху облаков, мобильности и социальных сетей. Только идеология Open Source сегодня позволяет реализовать на практике концепцию универсальной технологической платформы, обеспечивающей интероперабельность информационных систем и сервисов различных производителей. В качестве ярких примеров здесь можно привести Open Source проекты облачной операционной платформы OpenStack, программно-определяемых сетей (SDN), контейнерных технологий автоматизации развёртывания и управления приложениями в среде виртуализации (Docker, Rocket и др.). В рамках мероприятия с докладом об опыте, полученном в процессе разработки ReactOS, выступил координатор проекта Алексей Брагин. [Читать дальше →][3]

[1]: http://habrastorage.org/getpro/habr/post_images/afd/836/069/afd836069e26db480fdccbb5256251de.gif
[2]: http://www.pcweek.ru/foss/conference/
[3]: http://habrahabr.ru/post/256029/#habracut

[>] Multihome IPv4 в Linux
habra.15
habrabot(difrex,1) — All
2015-12-14 16:00:02


Содержимое: как сделать так, чтобы компьютер отвечал в интернете на все свои IP-адреса по всем своим интерфейсам, каждый из которых шлюз по умолчанию. Касается и серверов, и десктопов. Ключевые слова: policy routing, source based routing Лирика: Есть достаточно статей про policy routing в Linux. Но они чаще всего разбирают общие, более тонкие и сложные случаи. Я же разберу тривиальный сценарий следующего вида: ![][1] Нашему компьютеру (серверу) доступно три интерфейса. На каждом интерфейсе шлюз ему выдал IP (статикой или по dhcp, не важно) и сказал «весь трафик шли мне». Если мы оставим эту конфигурацию как есть, то будет использоваться принцип «кто последний встал, того и дефолтный шлюз». На картинке выше, если последним поднимется нижний интерфейс (241), то в него будет отправляться весь трафик. Если к нашему серверу придёт запрос на первый интерфейс (188), то ответ на него всё равно пойдёт по нижнему. Если у маршрутизатора/провайдера есть хотя бы минимальная защита от подделки адресов, то ответ просто дропнут, как невалидный (с точки зрения 241.241.241.1 ему прислали из сети 241.241.241.0/24 пакет с src 188.188.188.188, чего, очевидно, быть не должно). Другими словами, в обычном варианте будет работать только один интерфейс. Чтобы сделать ситуацию хуже, если адреса получены по dhcp, то обновление аренды на других интефрейсах может перезаписать шлюз по умолчанию, что означает, что тот интерфейс, который работал, работать перестанет, а начнёт работать другой интерфейс. Удачной стабильной работы вашему серверу, так сказать.

# Решение

[Читать дальше →][2]

[1]: https://habrastorage.org/files/5e6/b09/738/5e6b0973886b4ab689b8acea335ca0da.png
[2]: http://habrahabr.ru/post/107267/#habracut

[>] Уязвимость CVE-2015-1635 (MS15-034) эксплуатируется in-the-wild
habra.14
habrabot(difrex,1) — All
2015-04-18 15:00:02


На этой неделе мы [писали][1] про критическое обновление MS15-034 для драйвера http.sys на Windows 7+ (включая Windows 10 TP). Злоумышленник с использованием специально сформированного заголовка запроса HTTP-протокола может удаленно исполнить код, организовать DoS-атаку или уронить систему в BSOD как на клиентских так и на серверных выпусках Windows. Сам драйвер http.sys загружается Windows на самых ранних этапах и отвечает за реализацию логики работы HTTP-протокола (реализует прикладной уровень модели OSI в Windows). ![][2] Напрямую эта уязвимость относится к серверным выпускам Windows, поскольку службы IIS, которые отвечают за механизмы реализации веб-сервера, используют этот драйвер для открытия и обслуживания HTTP-портов входящих подключений, которые и могут быть использованы для компрометации системы. Однако, на некоторых современных клиентских выпусках Windows (в зависимости от конфигурации системы и ее сервисов), работающие сервисы также могут открывать HTTP-порты для прослушивания входящих подключений. [Читать дальше →][3]

[1]: http://habrahabr.ru/company/eset/blog/255779/
[2]: //habrastorage.org/files/2e0/059/faf/2e0059faf6c24802a3a469bbb8ac13cd.png
[3]: http://habrahabr.ru/post/256037/#habracut

[>] [Из песочницы] Внутреннее устройство Python list
habra.15
habrabot(difrex,1) — All
2015-12-14 17:00:02


_Предлагаю вашему вниманию перевод [публикации][1] Laurent Luce о реализации работы со списками в CPython. Она может быть полезна начинающим программистам на Python, либо готовящимся к собеседованию._ Эта статья описывает реализацию объекта списка в CPython, наиболее популярной реализации Python. Списки в Python — это мощный инструмент, и интересно узнать, как они устроены внутри. Взгляните на простой скрипт, который добавляет несколько целых значений в список и выводит их:

>>> l = []
>>> l.append(1)
>>> l.append(2)
>>> l.append(3)
>>> l
[1, 2, 3]
>>> for e in l:
... print e
...
1
2
3


Как вы можете видеть, список является итерируемым объектом.

##### C-структура объекта списка

Объект списка в CPython представлен нижеследующей структурой в C. ob\_item — это список указателей на элементы списка, allocated — количество выделенной памяти.

typedef struct {
PyObject_VAR_HEAD
PyObject **ob_item;
Py_ssize_t allocated;
} PyListObject;


[Читать дальше →][2]

[1]: http://www.laurentluce.com/posts/python-list-implementation/
[2]: http://habrahabr.ru/post/273045/#habracut

[>] [Из песочницы] Исследуем результат работы php-транслятора
habra.14
habrabot(difrex,1) — All
2015-04-18 23:00:02


Здравствуйте. Думаю, что большинство веб-программистов знает, как работает php-интерпретатор. Для тех, кто не знает: Вначале, написанный нами код разбирается [лексическим анализатором][1]. Далее, полученные лексемы, передаются в [синтаксический анализатор][2]. Если синтаксический анализатор дал добро, то лексемы передаются [транслятору][3], а он, в свою очередь, генерирует так называемые opcodes (operation codes). И только после этого, в дело вступает виртуальная машина PHP (та самая Zend Engine) которая и выполняет наш алгоритм из получившихся opcodes. Opcodes так же называют эдаким php-шным ассемблером. Данная статья расскажет вам о том, какие opcodes и в каких случаях генерируются. Конечно, рассказать про все opcodes в рамках одной статьи не получится, но в данной статье будет рассмотрен конкретный пример и на его основе мы попытаемся разобраться что к чему у этих opcodes. На мой взгляд, самое главное, что вы узнаете прочитав статью, это то, как на самом деле происходит выполнение ваших исходных текстов и, возможно, это поможет вам в лучшем понимании языка php. Советую вам налить себе чашечку капучино или просто зеленого чая, т.к. под катом листинги opcodes и php-кода… [Читать дальше →][4]

[1]: https://ru.wikipedia.org/wiki/%D0%9B%D0%B5%D0%BA%D1%81%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9_%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7
[2]: https://ru.wikipedia.org/wiki/%D0%A1%D0%B8%D0%BD%D1%82%D0%B0%D0%BA%D1%81%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D0%B9_%D0%B0%D0%BD%D0%B0%D0%BB%D0%B8%D0%B7
[3]: https://ru.wikipedia.org/wiki/%D0%A2%D1%80%D0%B0%D0%BD%D1%81%D0%BB%D1%8F%D1%82%D0%BE%D1%80
[4]: http://habrahabr.ru/post/233129/#habracut

[>] Open-source реализации отечественных криптоГОСТов
habra.15
habrabot(difrex,1) — All
2015-12-14 18:00:02


На выходных решил поискать open-source реализации отечественных криптографических стандартов. Прежде всего интересовали новые: хэш-функция Стрибог (ГОСТ Р 34.11-2012), Кузнечик (ГОСТ Р 34.12-2015) и ЭЦП (ГОСТ Р 34.10-2012 или 2001 (без 512-бит) ). Старый ГОСТ 28147-89 специально не искал, поскольку найти его реализацию никаких проблем нет уже давно. Итак, давайте посмотрим, что же получилось. Сразу предупреждаю, что корректность реализаций не проверял. [Читать дальше →][1]

[1]: http://habrahabr.ru/post/273055/#habracut

[>] [Перевод] Java 8: Овладейте новым уровнем абстракции
habra.14
habrabot(difrex,1) — All
2015-04-19 11:00:02


Одной из многих причин, почему мне нравится работать именно с функциональным программированием, является высокий уровень абстракции. Это связано с тем, что в конечном итоге мы имеем дело с более читаемым и лаконичным кодом, что, несомненно, способствует сближению с логикой предметной области. В данной статье большее внимание уделяется на четыре вещи, представленные в Java 8, которые помогут вам овладеть новым уровнем абстракции. ![][1] [Читать дальше →][2]

[1]: //habrastorage.org/files/d40/806/6e5/d408066e52884d5492ea212dde70bb30.png
[2]: http://habrahabr.ru/post/256057/#habracut

[>] Russian AI Cup: выбраны лучшие программисты искусственного интеллекта
habra.15
habrabot(difrex,1) — All
2015-12-14 18:00:02


![][1] 13 декабря [завершился][2] финал четвёртого ежегодного чемпионата по программированию искусственного интеллекта [Russian AI Cup][3]. В этот раз своё мастерство продемонстрировали свыше 1 600 программистов, создававшие искусственный интеллект для управления автомобилем в гонках на выживание. По условиям чемпионата можно было использовать один из языков: C++, Java, C#, Python, Ruby или Pascal. После серии напряжённых состязаний в финал выбились 50 сильнейших. И по результатам последней «гонки» золотой приз завоевал Александр «[santa324][4]» Санталов из Москвы. В качестве награды он получил MacBook Pro. «Серебро» и «бронза» достались Антону «[Angor][5]» Гордиенко из Москвы и Юрию «[SDil][6]» Семёнову из Санкт-Петербурга, они были награждены ультрабуками MacBook Air. Не остались без призов и конкурсанты, занявшие с четвёртого по шестое места, им были вручены планшеты iPad Air 2. Поздравляем Дениса «[ud1][7]» Уткина, Сергея «[SKolotienko][8]» Колотиенко и Сергея «[Karkun][9]» Иванова! Однако остальным участникам ещё рано расслабляться, а нам рано подводить окончательные итоги чемпионата. Предстоит ещё неделя состязаний в Песочнице, и по их итогам лучшие 6 участников получат поощрительные призы от партнёров мероприятия. [Читать дальше →][10]

[1]: https://habrastorage.org/files/b4c/ca2/064/b4cca206426f4d2882e240c7a622384e.jpg
[2]: http://russianaicup.ru/post/35
[3]: http://russianaicup.ru/
[4]: http://russianaicup.ru/profile/santa324
[5]: http://russianaicup.ru/profile/Angor
[6]: http://russianaicup.ru/profile/SDil
[7]: http://russianaicup.ru/profile/ud1
[8]: http://russianaicup.ru/profile/SKolotienko
[9]: http://russianaicup.ru/profile/Karkun
[10]: http://habrahabr.ru/post/272893/#habracut

[>] Построение признаков и сравнение изображений: локальные признаки. Лекции от Яндекса
habra.14
habrabot(difrex,1) — All
2015-04-19 17:00:02


Сегодня мы публикуем пятую лекцию из курса «Анализ изображений и видео», прочитанного [Натальей Васильевой][1] в петербургском Computer Science Center, который создан по совместной инициативе Школы анализа данных Яндекса, JetBrains и CS-клуба. Всего в программе девять лекций, из которых уже были опубликованы:

1. [Введение в курс «Анализ изображений и видео»][2].
2. [Основы пространственной и частотной обработки изображений][3].
3. [Морфологическая обработка изображений][4].
4. [Построение признаков и сравнение изображений: глобальные признаки][5].






Под катом вы найдете план этой лекции, слайды и подробную расшифровку. [Читать дальше →][6]

[1]: http://www.hpl.hp.com/people/nvassilieva/
[2]: http://habrahabr.ru/company/yandex/blog/251161/
[3]: http://habrahabr.ru/company/yandex/blog/254249/
[4]: http://habrahabr.ru/company/yandex/blog/254955/
[5]: http://habrahabr.ru/company/yandex/blog/255627/
[6]: http://habrahabr.ru/post/255985/#habracut

[>] Контентная фильтрация: зачем и как это делать
habra.15
habrabot(difrex,1) — All
2015-12-14 18:30:02


Привет, Хабр! Сегодня мы поговорим о фильтрации интернет-контента. Три года назад вступил в силу федеральный закон 139-ФЗ, дополнивший уже принятый 436-ФЗ «О защите детей от информации, причиняющей вред их здоровью и развитию». В соответствии с российским [законодательством][1], доступ в интернет в школах возможен лишь «при условии применения административных и организационных мер, технических, программно-аппаратных средств защиты детей от информации, причиняющей вред их здоровью и (или) развитию». Другими словами, закон требует обязательной фильтрации интернет-контента. Добро пожаловать под кат. [![][2]][3] [Читать дальше →][4]

[1]: http://www.consultant.ru/document/cons_doc_LAW_108808/b663a547cc140a293671b9fc316f76f70c99e59f/
[2]: https://habrastorage.org/files/7f1/281/bb8/7f1281bb81e44f3ba724541567d557dd.jpg
[3]: http://habrahabr.ru/company/smart_soft/blog/273095/
[4]: http://habrahabr.ru/post/273095/#habracut

[>] Лекции Техносферы. 1 семестр. Методы использования СУБД в интернет-приложениях
habra.14
habrabot(difrex,1) — All
2015-04-19 18:00:02







Сегодня мы предлагаем вашему вниманию очередную публикацию в рамках постоянной рубрики «Лекции Техносферы». В этот раз вы можете изучить материалы по курсу «Методы использования СУБД в интернет-приложениях». Цель курса — изучение топологии, многообразия и основных принципов функционирования систем хранения данных, а также алгоритмов, заложенных в основу как централизованных, так и распределённых систем, демонстрация фундаментальных компромиссов присущих тем или иным решениям. Преподаватели курса: Константин Осипов [kostja][1], Евгений Блих [bigbes][2], Роман Цисык. [Читать дальше →][3]

[1]: http://habrahabr.ru/users/kostja/
[2]: http://habrahabr.ru/users/bigbes/
[3]: http://habrahabr.ru/post/256039/#habracut

[>] Запросы классов в InterSystems Caché
habra.15
habrabot(difrex,1) — All
2015-12-14 18:30:02


[][1]

## Введение

[Запросы классов][2] InterSystems Caché — это полезный инструмент, используемый для абстракции от непосредственно SQL запросов в COS коде. В самом простом случае это выглядит так: допустим вы используете один и тот же SQL запрос в нескольких местах, но с разными аргументами. Для того чтобы не писать его каждый раз, вы можете обозначить текст запроса как запрос класса и в дальнейшем обращаться к этому запросу по его имени. А ещё есть кастомные запросы, в которых логику получения следующей строки результатов вы пишете сами. Под катом я расскажу о том, как этим всем можно пользоваться. [Читать дальше →][3]

[1]: http://habrahabr.ru/company/intersystems/blog/270839/
[2]: http://docs.intersystems.com/cache20152/csp/docbook/DocBook.UI.Page.cls?KEY=GOBJ_queries
[3]: http://habrahabr.ru/post/270839/#habracut

[>] [recovery mode] Переводим с помощью Яндекс
habra.14
habrabot(difrex,1) — All
2015-04-19 21:00:02


В процессе возни с [xfce4-dict][1] набрёл на хабрастатью почти трёхлетней давности: [«Перевод выделенного текста с любого языка на русский»][2]. Решение оказалось очень простым, но что-то не заладилось у меня с гуглопереводчиком. То ли потому, что очень быстро он начал выдавать капчу, то ли потому, что денег хочет… Разбираться было лень, поэтому просто переписал исходный скрипт с использованием [API Яндекс.Перевода][3]. [Пошаговая инструкция][4]

[1]: http://goodies.xfce.org/projects/applications/xfce4-dict
[2]: http://habrahabr.ru/post/137215/
[3]: https://tech.yandex.ru/translate/
[4]: http://habrahabr.ru/post/256063/#habracut

[>] [Из песочницы] Дайджест событий из мира D
habra.14
habrabot(difrex,1) — All
2015-04-20 12:30:03


Предлагаю вашему вниманию дайджест интересных событий из мира D. Событий за последнее время произошло не мало.

#### Новости языка

1. Состоялся новый релиз компилятора dmd 2.067. Среди основных новшеств — значительные улучшения в скорости работы GC. В некоторых случаях количество потребляемой памяти сократилось в два раза. Появилась экспериментальная поддержка полного отключения GC:

app "--DRT-gcopt=profile:1 minPoolSize:16" arguments to app


[Читать дальше →][1]

[1]: http://habrahabr.ru/post/256131/#habracut

[>] [Из песочницы] Selenium для Python. Глава 5. Ожидания
habra.15
habrabot(difrex,1) — All
2015-12-14 18:30:02


Продолжение перевода неофициальной документации Selenium для Python. Оригинал можно найти [здесь][1].

## Содержание:

1. [Установка][2] 2. [Первые шаги][3] 3. [Навигация][4] 4. [Поиск элементов][5] 5. Ожидания 6. Объекты Страницы 7. WebDriver API 8. Приложение: Часто Задаваемые Вопросы

## 5\. Ожидания

В наши дни большинство веб-приложений используют [AJAX][6] технологии. Когда страница загружена в браузере, элементы на этой странице могут подгружаться с различными временными интервалами. Это затрудняет поиск элементов, если элемент не присутствует в [DOM][7], возникает исключение ElementNotVisibleException. Используя ожидания, мы можем решить эту проблему. Ожидание дает некий временной интервал между произведенными действиями — поиске элемента или любой другой операции с элементом. [Читать дальше →][8]

[1]: http://selenium-python.readthedocs.org/waits.html
[2]: http://habrahabr.ru/post/248559/
[3]: http://habrahabr.ru/post/250921/
[4]: http://habrahabr.ru/post/250947/
[5]: http://habrahabr.ru/post/250975/
[6]: https://ru.wikipedia.org/wiki/AJAX
[7]: https://ru.wikipedia.org/wiki/Document_Object_Model
[8]: http://habrahabr.ru/post/273089/#habracut

[>] Лаборатория тестирования на проникновение «Test lab v.7». Вызов брошен
habra.14
habrabot(difrex,1) — All
2015-04-20 12:30:03


Очередная, 7-я по счету пентест-лаборатория «Test lab» под кодовым названием «Ахиллесова пята» будет запущена 01.05.2015 г. На этот раз вам, профессиональным хакерам, предстоит произвести взлом реальной сети виртуальной компании «SecureSoft LLC», занимающейся разработкой программного обеспечения. Ситуацию усложняет факт высокой осведомленности в области ИБ сотрудников компании. Согласно отчету наших агентов о состоянии информационной безопасности компании, ИТ-структура «SecureSoft LLC» достаточно хорошо защищена от атак. Однако, есть предположение, что уязвимые места все же имеются. Ваша цель — первыми обнаружить «Ахиллесову пяту» и получить доступ к системам «SecureSoft LLC».




[Читать дальше →][1]

[1]: http://habrahabr.ru/post/255823/#habracut

[>] Тестирование производительности HP P2000 MSA G3
habra.15
habrabot(difrex,1) — All
2015-12-14 18:30:02


В [одной из наших прошлых статей][1], посвященной производительности дисковых систем серверов, мы рассказали о методике тестирования и подборе инструмента. Сейчас же, решили сравнить производительность СХД начального уровня и массива на контроллере P410. Напомню, что интересующие нас параметры: IOPS — количество дисковых операций в секунду (чем больше, тем лучше) и latency — время обработки операции (чем меньше, тем лучше).






[Читать дальше →][2]

[1]: http://habrahabr.ru/company/westcomp/blog/267435/
[2]: http://habrahabr.ru/post/271229/#habracut

[>] [Из песочницы] Программный многозадачный таймер на МК
habra.15
habrabot(difrex,1) — All
2015-12-14 18:30:02


В различного рода сложности реализуемых алгоритмов при программировании МК, всегда возникают рутинные циклические и не очень задачи. Одни требуют повышенной точности, другие таким критерием не обязаны обладать. Аппаратных таймеров на борту МК может быть приличное количество, например STM32F4 — аж 14 штук, и это не считая SysTick (системного), а в других и пара тройка за счастье: тот же PIC16, например. Для решения таких не спешных, не критичных ко времени задач можно и нужно применить программный таймер, на базе одного из аппаратных. Но обо всем по порядку… [Читать дальше →][1]

[1]: http://habrahabr.ru/post/273077/#habracut

Pages: 1 ... 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 ... 210