Pull to refresh
22
0
Vadim Ne. @0n1x

SE/SRE

Send message

Как расшифровать прошивку автомобиля в неизвестном формате

Reading time 8 min
Views 24K

Toyota распространяет свои прошивки в недокументированном формате. Мой заказчик, у которого автомобиль этой марки, показал мне файл прошивки, который начинается так:

CALIBRATIONêXi º
attach.att
ÓÏ[Format]
Version=4

[Vehicle]
Number=0
DateOfIssue=2019-08-26
VehicleType=GUN1**
EngineType=1GD-FTV,2GD-FTV
VehicleName=IMV
ModelYear=15-
ContactType=CAN
KindOfECU=0
NumberOfCalibration=1

[CPU01]
CPUImageName=3F0S7300.xxz
FlashCodeName=
NewCID=3F0S7300
LocationID=0002000100070720
CPUType=87
NumberOfTargets=3
01_TargetCalibration=3F0S7200
01_TargetData=3531464734383B3A
02_TargetCalibration=3F0S7100
02_TargetData=3747354537494A39
03_TargetCalibration=3F0S7000
03_TargetData=3732463737463B4A

3F0S7300forIMV.txt ¸Ni¶m5A56001000820EE13FE2030133E20301
33E2030133C20EF13FE2030133E20301
33E2030133E2030133E2030133E20301
33E2030133C20EF13FE2030133E20301
33E2030133C20EF13FE2030133E20301
33E2030133C20EF13FE2030133E20301
33E2030133E2030133E2030133E20301
33E2030133C20EF13FE2030133E20301
33E2030133E20911381959FAB0EE9000
81C9E03ADE35CEEEEFC5CF8DE9AC0910
38C2E031DE35CEEEEFC8CF87E95C0920
...

Дальше идут строки по 32 шестнадцатеричные цифры.

Хозяину и прочим умельцам хотелось бы перед установкой прошивки иметь возможность проверить, что там внутри: засунуть ее в дизассемблер и посмотреть, что она делает.
Читать дальше →
Total votes 64: ↑62 and ↓2 +60
Comments 33

Модульные телефоны, ноутбуки и часы — что стало с нашумевшими проектами?

Reading time 5 min
Views 30K

На Хабре несколько лет подряд публиковались новости и статьи о модульных гаджетах — телефонах, ноутбуках, часах. Почти все эти проекты получали мощную поддержку IT-сообщества. Но за последние пару лет бурный поток новостей о таких гаджетах иссох до едва журчащего информационного ручейка.

Мы решили вспомнить былое и выяснили, что случилось с теми проектами, которые некогда были у всех на устах. Плюс посмотреть, появилось ли что-то новое на рынке модульных устройств. Подборка получилась субъективной, и, возможно, в нее не попали некоторые интересные проекты. Будет здорово, если в комментариях вы вспомните другие существующие и новые инициативы такого рода.
Total votes 27: ↑26 and ↓1 +25
Comments 68

Как EA работала над ремастерингом Command & Conquer

Reading time 6 min
Views 7K
image

При жёстком капиталистическом образе мышления, которым, без сомнения, обладают некоторые из руководителей EA, не было бы никакой причины возвращаться к Command & Conquer и заниматься её ремастерингом. Стратегии не очень хорошо продаются на консолях, full-motion video с актёрами уровня Б уже давно заменил захват движения актёров уровня А, а конкуренция в этой нише очень высока. Если бы EA собиралась возрождать Command & Conquer, почему бы просто не продолжать выпускать мобильные стратегии free-to-play, которые уже и так послужили компании хорошую службу?

К счастью, хотя капитализм продолжает доминировать на планете (но не в космосе), команда разработчиков из EA, Petroglyph и Lemon Sky Studios объединилась для возрождения серии Command & Conquer в рамках Command & Conquer: Remastered — порта первых двух игр Command & Conquer для PC. Порт содержит множество повышающих удобство обновлений, но в то же время стремится максимально близко воссоздать ощущения от оригинальных игр.

В прошлом месяце продюсер Джим Весселла на канале GDC Twitch вкратце рассказал о том, как компания выполняла улучшение графики низкого разрешения, реализовывала онлайн-режим и справлялась с работой на удалёнке, причиной которой стало распространение COVID-19. Вот основные выводы, которыми Весселла поделился на стриме.

Улучшение ресурсов


Command & Conquer: Remastered стала четвёртой крупной стратегической франшизой, получившей ремастер за последние годы. По словами Весселла, его команда разработчиков EA обратила внимание на успех ремастеров Starcraft, Warcraft III и Age of Empires, и начала прощупывать почву в сообществе Command & Conquer, пытаясь понять, чего же хотят игроки от полного ремастера.
Total votes 21: ↑21 and ↓0 +21
Comments 26

C2x: the future C standard

Reading time 8 min
Views 16K

image


I strain to make the far-off echo yield
A cue to the events that may come in my day.
(‘Doctor Zhivago’, Boris Pasternak)

I’ll be honest: I don’t write in pure C that often anymore and I haven’t been following the language’s development for a long time. However, two unexpected things happened recently: С won back the title of the most popular programming language according to TIOBE, and the first truly interesting book in years on this language was published. So, I decided to spend a few evenings studying material on C2x, the future version of C.


Here I will share with you what I consider to be its most interesting new features.

Read more →
Total votes 22: ↑21 and ↓1 +20
Comments 3

A* pathfinding на C#: двоичные кучи и борьба с аллокациями

Reading time 20 min
Views 14K
Сегодня мы разбираем один из популярнейших алгоритмов поиска пути. Работать будем с двумерным массивом целочисленных координат.

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

Я был изумлен, когда поверхностный поиск не выдал мне ни одной качественной реализации алгоритма A* на C# без использования сторонних библиотек (это не значит, что их нет). А значит самое время размять пальцы!

Жду читателя, который хочет разобраться в работе алгоритмов поиска пути, как и знатоков алгоритмов для ознакомления с реализацией и способами её оптимизации.

Приступим!
Читать дальше →
Total votes 17: ↑17 and ↓0 +17
Comments 15

Регистры процессора Intel 8086: от чипа к транзисторам

Reading time 10 min
Views 18K
Intel 8086 – один из самых влиятельных из когда-либо созданных компьютерных чипов. Он создал архитектуру x86, доминирующую в современных настольных и серверных компьютерах. Я занимался реверс-инжинирингом 8086 на основе фотографий кристаллов, и в данной статье я опишу реализацию регистрового файла (набора регистров).


Кристалл 8086. Отмечено место хранения регистров. Верхние регистры используются блоком интерфейса шины для доступа к памяти, а нижние регистры общего назначения используются исполнительным блоком. Буфер команд – это 6-байтная очередь, состоящая из заранее запрошенных команд.
Читать дальше →
Total votes 21: ↑20 and ↓1 +19
Comments 10

Спикеры августа: байки от создателя Doom, как построить карьеру в AI и зачем создателю Kotlin свой стартап

Reading time 4 min
Views 4.4K

В августе мы приготовили для вас нечто совершенно особенное.

Во-первых, все наши прямые эфиры переходят на все платформы: теперь стрим можно смотреть на ютубе, в ВК, в Фейсбуке и инстаграме. Просто выбирайте удобную для вас платформу.

Во-вторых, в августе выступит Джон Ромеро — легендарный программист, создавший Doom, Quake и Wolfenstein 3D.

Итак, встречайте спикеров августа!


Читать дальше →
Total votes 17: ↑16 and ↓1 +15
Comments 8

Собираешься работать в кибербезопасности? Прочитай это

Reading time 6 min
Views 37K
Автор статьи — Брайан Кребс, известный журналист в сфере информационной безопасности.

Каждый год из колледжей и университетов выходят тысячи выпускников по специальностям «информационная безопасность» или «информатика», абсолютно не подготовленных к реальной работе. Здесь мы посмотрим на результаты недавнего опроса, который выявил самые большие пробелы в навыках выпускников, а также подумаем, как кандидатам на работу выделиться из толпы.



Практически каждую неделю мне приходит минимум одно письмо от читателя, который просит совета, как начать карьеру в сфере ИБ. В большинстве случаев соискатели спрашивают, какие сертификаты им следует получить или у какой специализации самое светлое будущее.
Читать дальше →
Total votes 24: ↑21 and ↓3 +18
Comments 6

Vue.js для начинающих, урок 7: вычисляемые свойства

Reading time 7 min
Views 18K
Сегодня, в седьмом уроке курса по Vue, мы поговорим о вычисляемых свойствах. Эти свойства экземпляра Vue не хранят значения, а вычисляют их.


Читать дальше →
Total votes 21: ↑19 and ↓2 +17
Comments 3

Реверс-инжиниринг протокола ngrok v2

Reading time 13 min
Views 23K

Реверс-инжиниринг протокола Ngrok v2


ngrok — это сервис, позволяющий создавать туннели на локальный компьютер пользователя. Иными словами, резервируется публичный адрес, все обращения по которому пробрасываются на локальный порт.

К сожалению, с 2016 года поддержка open-source версии клиента (ngrok v1) прекращена, и чтобы воспользоваться сервисом, нужно запустить закрытую версию (ngrok v2), что во многих случаях неприемлемо. Данная статья описывает процесс изучения протокола, используемого официальным клиентом, и создания альтернативного открытого клиента.

Читать дальше →
Total votes 33: ↑33 and ↓0 +33
Comments 13

Обучаемся самостоятельно: подборка видеокурсов по Computer Science

Reading time 11 min
Views 126K
image

Содержание


  1. Введение в Computer Science
  2. Структуры данных и Алгоритмы
  3. Системное программирование
  4. Распределенные системы
  5. Базы данных
  6. Объектно-ориентированный дизайн и разработка софта
  7. Искусственный интеллект
  8. Машинное обучение
  9. Веб-разработка и интернет-технологии
  10. Concurrency
  11. Компьютерные сети
  12. Разработка мобильных приложений
  13. Математика для программистов
  14. Теория информатики и языки программирования
  15. Архитектура компьютера
  16. Безопасность
  17. Компьютерная графика
  18. Работа с изображениями и компьютерное зрение
  19. Интерфейс Человек-Компьютер
  20. Вычислительная биология
  21. Прочее

Total votes 78: ↑64 and ↓14 +50
Comments 23

Игровая индустрия: полезные материалы для геймдевелопера от A до Z

Reading time 10 min
Views 160K
В последнее время мы часто сталкиваемся с вопросами о том, как попасть в игровую индустрию, какие полезные материалы на эту тему можно почитать и посмотреть, с чего начать изучение геймдева. Когда начальные знания появляются, то возникают уже более конкретные вопросы, например «где найти единомышленников для создания игры», «как продвигать свой проект с минимальным бюджетом», «на каких издателей стоит выходить, как это делать и стоит ли вообще», «как улучшить ретеншн в нашей игре» и так далее.

Друг наших образовательных программ Михаил Пименов,  CEO компании Wonder Games и Team Lead инди-проекта "Guard of Wonderland" сам не раз задававший себе эти вопросы, создал для себя выборку всевозможных материалов по индустрии геймдева. От полезных ресурсов, до сообществ, подкастов, книг и фильмов, которые призваны помочь понять, с чего начинается и чем заканчивается разработка игрового проекта. Объединив наши силы, мы с Мишей сделали эту статью с подборкой полезных материалов по игровой индустрии. Вы найдете подборку под катом.


Читать дальше →
Total votes 58: ↑54 and ↓4 +50
Comments 26

Лекции Техносферы. 1 семестр. Введение в анализ данных (весна 2016)

Reading time 3 min
Views 43K
Слушайте и смотрите новую подборку лекций Техносферы Mail.Ru. На этот раз представляем в открытом доступе весенний курс «Введение в анализ данных», на котором слушателей знакомят со сферой анализа данных, основными инструментами, задачами и методами, с которыми сталкивается любой исследователь данных в работе. Курс преподают Евгений Завьялов (аналитик проекта Поиск Mail.Ru, занимающийся извлечением полезных бизнесу знаний из данных, генерируемых поисковым движком и десктопными приложениями), Михаил Гришин (программист-исследователь из отдела анализа данных) и Сергей Рыбалкин (старший программист из студии Allods Team).

Лекция 1. Введение в Python


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


Читать дальше →
Total votes 70: ↑65 and ↓5 +60
Comments 10

Путеводитель по реализации 2Д платформеров (начало)

Reading time 10 min
Views 48K
Так как ранее я был разочарован количеством информации по этому вопросу, я решил восполнить этот пробел, собрав разные виды реализации 2Д платформеров, описав их сильные и слабые стороны и порассуждав над деталями реализации.

Моей целью было создать исчерпывающий и понятный путеводитель по реализации 2Д платформеров.



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

Четыре решения


Мне приходит на ум четыре основных варианта решений при создании платформера. В рамках этой статьи будут рассмотрены все четыре, но из-за большого объема статья поделена на 2 части (прим. пер).
Читать дальше →
Total votes 56: ↑53 and ↓3 +50
Comments 30

Почему айфон перезагружается от арабской смс

Reading time 6 min
Views 233K
DISCLAIMER

Не пытайтесь повторить это со своими телефонами и телефонами коллег! Судя по комментариям, много людей уже заразили свои телефоны, а 100%-тного лекарства еще нет!

DISCLAIMER 2

Даже не пытайтесь назвать так Wi-fi точку!

Около 15 часов назад на Reddit появился забавный пост, который рассказывал о перезагрузке айфона после странного сообщения вида:
Не шлите никому на айфон
Power
لُلُصّبُلُلصّبُررً ॣ ॣh ॣ ॣ



Читать дальше →
Total votes 184: ↑178 and ↓6 +172
Comments 138

Хороший пример «пасхалки» для программистов в фильме Ex Machina

Reading time 2 min
Views 50K
image
Кадр из фильма Ex Machina

В британском фантастическом фильме 2015 года Ex Machina (в русской локализации "Из машины") главная героиня — это человекоподобный робот с явными женскими половыми признаками по имени Ава. Её создатель — эксцентричный миллиардер-программист, которого зовут Натан, организовал всё так, что в его отдалённую от людских глаз лабораторию прилетает Калеб, молодой разработчик из компании Натана. В ходе разговора между людьми выясняется, что Калеб должен провести с Авой тест Тьюринга — другими словами, выяснить обладает ли она интеллектом.
Узнать подробности
Total votes 89: ↑84 and ↓5 +79
Comments 86

Фотография в RAW: динамический диапазон и контрастность

Reading time 7 min
Views 37K
Весь привет! Недавно мы говорили о возможностях RAW’а, тема оказалась интересной, в личку поступило много вопросов, так что держите продолжение, будем разбираться, что такое RAW и как его правильно прожарить.



Дня начала рассмотрим один из важнейших аспектов, который отличает RAW-файлы от камерных JPEG’ов: а именно динамический диапазон.
Читать дальше →
Total votes 47: ↑39 and ↓8 +31
Comments 34

Hibernate, multi-tenancy и авто-обновление схемы БД

Reading time 7 min
Views 15K
Хотите пользоваться преимуществами (и недостатками) авто-обновления схемы БД при использовании Hibernate, но у вас имеется multi-tenant архитектура? Добро пожаловать под кат.
Читать дальше →
Total votes 7: ↑7 and ↓0 +7
Comments 15

VNC-рулетка. Srsly?

Reading time 1 min
Views 65K
image

Многие VNC-серверы не требуют установки пароля, из-за чего в интернете оказываются клиентские или серверные машины с открытым доступом по этому протоколу. Просканировав весь интернет, не всегда понятно, что же делать с ними всеми. Почему бы не сделать из них рулетку с элементами социальной сети?

srsly.de — VNC-рулетка. Обновляйте страницу, получайте каждый раз новый сервер со скриншотом. Можете подключаться к нему через веб-клиент или через обычный VNC, ставить лайки, репортить или даже добавлять свои VNC-серверы в базу!

Для сканирования использовался zmap, который сканировал порты 5900-5910, затем python-скрипт пытался подключиться к серверу и снять скриншот. Веб-часть написана на Go.

Развлекайтесь.
Hacker News
Total votes 117: ↑111 and ↓6 +105
Comments 167

GameDev и канделябр

Reading time 7 min
Views 38K
Канделябр — подсвечник, который используется для корректировки формы лица игрока, играющего нечестно.

Наверное, многие помнят карточную игру “Марьяж”, которая манила к ЭЛТ мониторам игроков более десятка лет назад.



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

Читать дальше →
Total votes 75: ↑62 and ↓13 +49
Comments 86

Information

Rating
Does not participate
Location
Харьков, Харьковская обл., Украина
Date of birth
Registered
Activity