Это может быть или не быть предметом серых областей, хотя мои намерения, разумеется, нет, поэтому я не намерен возбуждать этические дебаты по теме обратного проектирования.Обратный инжиниринг файла данных статистики с моего контроллера инсулиновой помпы
Я диабетик типа 1, который в настоящее время проходит терапию насосом. Я - пользователь OmniPod, это одноразовый контейнер, который прилипает к моему телу и отпускает инсулин в течение 3 дней. Это контролируется персональным менеджером по диабету [PDM] (см. Ниже), который контролирует, сколько инсулина выделяется во время еды, показания сахара в сахаре, и в нем содержится индекс пищи для подсчета углеводов на ходу.
alt text http://www.myomnipod.com/images/pdm-200.jpg
Новый ДПМ имеет USB-порт для загрузки данных. Программное обеспечение бесплатно для пользователей Windows (пакет под названием CoPilot), но нет поддержки Mac.
После подключения PDM к моему Mac он монтируется, как и любое другое устройство USB, и предоставит мне читаемый том с одним файлом на нем с расширением IBF. Он весит 16 кг.
Мой первый инстинкт состоял в том, чтобы передать его через текстовый редактор и был представлен очень двоично выглядящим файлом. Затем я передал его через строки (см. Ниже) и открыл его с помощью шестнадцатеричного редактора. Хотя я не мог получить много информации, кроме строк ниже; нет данных формата сжатия или чего-либо еще.
$ strings omnipoddata.ibf
Insulet
OmniPod
basal 1
Post-meal
e-meal
Pre-meal
e-bedtime
Pre-bedtime
.(@P
.(@P
.(@P
Каким должен быть мой следующий шаг в этом процессе? Я динамичный язык, поэтому любые ресурсы для Ruby будут отличными, или Python. Существуют ли какие-либо протестные процессы обратного проектирования?
Что касается данных, которые я собираюсь получить, это информация, которую я хотел бы получить, чтобы получить дополнительную информацию о моем прогрессе (потребление инсулина, показания сахара в крови, временные метки); все это возможно в программном пакете Windows.
Я могу выкопать некоторые скриншоты, хорошая идея, спасибо! – mwilliams