Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
72_konferentsia (1).doc
Скачиваний:
15
Добавлен:
01.07.2025
Размер:
49.71 Mб
Скачать

Разработка серверного по для сохранения и просмотра данных, полученных с микроконтроллеров

Объект исследования: серверное ПО для простейшего «умного дома».

Результаты, полученные лично автором: разработано серверное ПО для сохранения и просмотра данных, полученных с микроконтроллеров (программная реализация).

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

Единственный вариант избавления от зависимости от других платформ – сделать свой собственный локальный сервер. Для данного сервера используется Node.js в качестве сервера, MongoDB – базы данных, а также фреймворк Express.js.

Сервер использует 2 набора данных – пользователи и данные.

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

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

Чтобы создать новую запись в таблице данных, нужно сделать запрос вида «/datasets/update?key=WRITE_APIKEY&var1=value&var2=value».

Для создания html-страниц используется встроенный в Express.js движок шаблонов Jade.

Для шифрования паролей используется bcrypt – модуль, исполняющий адаптивную криптографическую функцию формирования ключа. Для защиты от атак с помощью радужных таблиц bcrypt использует соль (salt); кроме того функция является адаптивной, время её работы легко настраивается и её можно замедлить, чтобы усложнить атаку перебором. Благодаря bcrypt можно не волноваться, что в случае взлома утекут пароли пользователей.

Присутствуют следующие функции:

  • Создание учётной записи

  • Авторизация

  • Список наборов данных с описанием

  • Создание нового набора данных

  • Открытие определённого набора данных для просмотра графиков

  • Изменение параметров набора данных

  • Удаление определённого набора данных

  • Возможность смены имени пользователя и пароля

  • Удаление аккаунта

  • Возможность заново сгенерировать ключи API для набора данных

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

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

Благодаря записи при помощи http-запроса, на сервер можно передать данные не только с микроконтроллеров, но также и с микро- и полноразмерных компьютеров.

Из недостатков стоит отметить необходимость использования микроконтроллеров с возможностью подключения к wi-fi или по lan.

Материал поступил в редколлегию 24.02.2017

УДК 004.032.26

Ю.А. Телюченкова

Научный руководитель: доцент кафедры «Компьютерные технологии и системы»,к.т.н., Е.А. Леонов

izumitasitagava@gmail.com

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]