Как стать автором
Обновить
41
0
Henadzi Matuts @HenadziMatuts

Инженер-программист

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

Поговорили с Троем Майлзом — программистом «Нейроманта»

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

[Трой Майлз — спикер, автор, и разработчик программного обеспечения с многолетним опытом. Начал свою карьеру с написания игр для Commodore 64, Apple II и IBM PC на 6502-ом x86-ом Ассемблере. Дважды обладатель премии «Игра Года». Автор книги «jQuery Essentials», а так же большого количества журнальных статей и публикаций в собственном блоге. Создатель обучающих видеоматериалов. В настоящее время программирует веб и мобильные приложения в компании Kelley Blue Book.]


Привет! Вы, возможно, знаете меня по серии «Реверсим Нейроманта», где я рассказываю о том, как мы реверс-инжинирим и портируем видеоигру по мотивам одноимённого романа Уильяма Гибсона. Из-за своего содержания, это, скорее, спин-офф, чем следующая номерная часть — самостоятельный материал, не требующий от читателя дополнительной подготовки.


А началось с того, как viiri, со словами, — «Это программист, который написал Нейроманта. Думаю он будет не против ответить на вопросы», — прислал мне ссылку на твиттер-аккаунт человека по имени Трой Майлз (на фото). Тогда я работал над четвёртой частью цикла и не придал этому большого значения. Обдумав это спустя несколько недель, идея интервью с разработчиком показалась мне настолько удачной, что я тут же написал Трою о том: кто мы, чем занимаемся, и чего от него хотим. Ответ не заставил себя долго ждать, Трой очень благосклонно отнёсся к нашей затее и согласился ответить на мои вопросы.

Всего голосов 12: ↑12 и ↓0+12
Комментарии7

Реверсим «Нейроманта». Часть 4: Звук, анимация, Хаффман, гитхаб

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

Привет, как вы уже поняли, это продолжение моей истории реверс-инжиниринга и портирования «Нейроманта».



Реверсим «Нейроманта». Часть 1: Спрайты
Реверсим «Нейроманта». Часть 2: Рендерим шрифт
Реверсим «Нейроманта». Часть 3: Добили рендеринг, делаем игру

Сегодня начнём с двух хороших новостей:


  • во-первых, я больше не один — к проекту присоединился и уже успел внести ощутимый вклад пользователь viiri;
  • во-вторых, теперь у нас есть открытый репозиторий на github.

В целом, дела идут очень неплохо и, возможно, скоро мы получим хоть сколько-то играбельный билд. А под катом, как обычно, поговорим о том, чего и каким образом удалось достичь на текущий момент.

Всего голосов 20: ↑19 и ↓1+18
Комментарии5

Реверсим «Нейроманта». Часть 3: Добили рендеринг, делаем игру

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

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


Реверсим «Нейроманта». Часть 1: Спрайты
Реверсим «Нейроманта». Часть 2: Рендерим шрифт

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

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

Реверсим «Нейроманта». Часть 2: Рендерим шрифт

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



Привет, ты читаешь продолжение статьи, посвящённой реверс-инжинирингу «Нейроманта» — видеоигры, выпущенной компанией Interplay Productions в 1988 году по мотивам одноимённого романа Уильяма Гибсона. И, если ты не видел первую часть, то рекомендую начать с неё, там я рассказываю о своей мотивации и делюсь первыми результатами.


Реверсим «Нейроманта». Часть 1: Спрайты

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

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

Реверсим «Нейроманта». Часть 1: Спрайты

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


Так вышло, что я большой поклонник творчества Уильяма Гибсона. Моё знакомство с этим замечательным прозаиком случилось вследствие глубокого увлечения эстетикой киберпанка и последующего обращения к "корням" жанра, отцом-основателям которого считают Гибсона (пусть сам он от этого всячески открещивается). Трилогией "Киберпространство" (Sprawl trilogy, 1984-1988), а именно открывающим трилогию романом "Нейромант" (Neuromancer, 1984), Гибсон популяризовал идеи киберпространства, виртуальной реальности и всемирной компьютерной сети (непосредственно термин "киберпространство" был изобретён самим же автором и впервые ведён в рассказе "Сожжение Хром" (Burning Chrome, 1982), однако широкое распространение термин получил лишь после публикации "Нейроманта"). Помимо очевидного влияния на поп-культуру (Sonic Youth, U2, Ghost in the Shell, The Matrix, Deus Ex, Shadowrun и ещё множество тайтлов, так или иначе испытавших влияние автора), существует мнение о менее очевидном влиянии Гибсона на сферу информационных технологий. В предисловии к юбилейному изданию "Нейроманта" американский писатель-фантаст Джек Уомак задаётся вопросом:


Может ли быть так, что видение Гибсоном глобального информационного пространства в конечном счёте стало причиной, по которой Интернет сегодня выглядит так, как он выглядит, и работает так, как он работает?

Я склоняюсь к положительному ответу на этот вопрос.

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

Расширение и использование Linux Crypto API

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

[0] Интро


Криптографический API в Linux введён с версии 2.5.45 ядра. С тех пор Crypto API оброс всеми популярными (и не только) международными стандартами:


  • симметричного шифрования: AES, Blowfish, ...
  • хэширования: SHA1/256/512, MD5, ...
  • имитозащиты: hMAC-SHA1/256/512, hMAC-MD5, ...
  • AEAD: AES-GCM, ChaCha20-Poly1305, ...
  • генерации псевдослучайных чисел: FIPS, ...
  • асимметричного шифрования: RSA
  • согласования ключей: DH, ECDH
  • сжатия: Deflate, ZLIB

Эта криптография доступна и, в основном, используется различными подсистемами ядра (в kernel space): IPsec, dm-crypt и др. Воспользоваться функциями Crypto API из пространства пользователя (user space) также возможно через Netlink-интерфейс, в который, начиная с версии 2.6.38 ядра, введено семейство _AFALG, предоставляющее доступ к криптографии ядра из user space кода. Однако, существующего функционала иногда недостаточно, таким образом появляется необходимость расширения Crypto API новыми алгоритмами.

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

IPsec vs TLS/SRTP в обеспечении безопасности VoIP

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

Предисловие



Под катом перевод оригинальной статьи, который мне необходимо было сделать для сдачи кандидатского зачёта по английскому языку в магистратуре. Мною был выбран именно этот текст, поскольку, ещё во время написания дипломной работы, я достаточно хорошо ознакомился с его содержимым. С тех пор прошёл уже где-то год, и только сейчас я решил его опубликовать. Примечательно, что за это время, решая задачи защиты IP-телефонии, мне довелось поработать как с TLS/SRTP, так и с IPsec. Надеюсь, для кого-то это будет полезным (как для меня, в своё время), или хотя бы просто интересным чтением. Пишите своё мнение по поводу этого материала.


P.S. В силу достаточно большого объёма, некоторые вещи я умышленно опустил, пропуски отмечены троеточием. Без перевода остался термин Information Assurance, я так и не встретил аналогии на русском.

Читать дальше →
Всего голосов 13: ↑11 и ↓2+9
Комментарии11

Информация

В рейтинге
Не участвует
Откуда
Минск, Минская обл., Беларусь
Зарегистрирован
Активность