Library
|
Your profile |
Cybernetics and programming
Reference:
Gibadullin R.F.
Organization of secure data transmission in a sensor network based on AVR microcontrollers
// Cybernetics and programming.
2018. № 6.
P. 80-86.
DOI: 10.25136/2644-5522.2018.6.24048 URL: https://en.nbpublish.com/library_read_article.php?id=24048
Organization of secure data transmission in a sensor network based on AVR microcontrollers
DOI: 10.25136/2644-5522.2018.6.24048Received: 30-08-2017Published: 15-01-2019Abstract: The subject of the research is the implementation of the AES encryption algorithm based on AVR microcontrollers to provide secure data transmission in the sensor network. The sensor network is a network technique for the implementation of Ubiquitous computing environment. It is wireless network environment that consists of the many sensors of lightweight and low-power. Though sensor network provides various capabilities, it is unable to ensure the secure authentication between nodes. Eventually it causes the losing reliability of the entire network and many secure problems. Therefore, encryption algorithm for the implementation of reliable sensor network environments is required to the applicable sensor network. In this paper, the author proposes the solution of reliable sensor network to analyze the communication efficiency through measuring performance of AES encryption algorithm by plaintext size, and cost of operation per hop according to the network scale. Keywords: wireless sensor networks, AES algorithm, AVR Microcontroller, data encoding, data protection, low power consumption, encryption, decryption, transmission speed, network latencyВведение Сенсорная сеть представляет собой сеть, воплощающая в себе концепцию вездесущей вычислительной среды. Это беспроводная сетевая среда, которая состоит из множества датчиков малой мощности. Она исследуется и разрабатывается в различных стандартах и научно-исследовательских организациях. В результате различные сферы деятельности, такие как логистика, контроль окружающей среды, домашняя сеть применены в сенсорной сети [1]. В этой среде данные собираются с помощью датчиков и используются путем систематического анализа и передачей данных между различными сервисами. Для обеспечения безопасности в данной среде необходимо соблюдение общепринятых требований, таких как целостность, конфиденциальность, аутентификация, безотказность и т.д. Алгоритм шифрования с открытым ключом широко используется во всем мире. Однако с данным алгоритмом сложно использовать сенсорную сеть из-за высоких требований к памяти и энергопотреблению [2]. Поэтому в сенсорной сети предпочтительнее использовать симметричный алгоритм шифрования с низкими требованиями по энергопотреблению. В данной работе используется алгоритм шифрования AES Rijndael, проводятся замеры производительности шифрования и дешифрования на 8-разрядном микроконтроллере. Также анализируется эффективность коммуникации на основе общей задержки передачи данных за транзитный участок в сенсорной сети. Микроконтроллеры семейства AVR В отличие от других компаний (Microchip, NEC, Motorola и т.д.) компания Atmel Corp. – один из мировых лидеров в производстве широкого спектра микросхем энергонезависимой памяти, FLASH-микроконтроллеров и микросхем программируемой логики, взяла старт по разработке RISC-микроконтроллеров в середине 90-х годов, используя все свои технические решения, накопленные к этому времени. AVR – это относительно молодой продукт корпорации Atmel. В этой линии микроконтроллеров общего назначения постоянно появляются новые кристаллы. Например, корпорация Atmel выпустила новый микроконтроллер AVR tiny43U с ультранизким питающим напряжением 0.7 В. Благодаря встроенному импульсному повышающему преобразователю, микроконтроллер может работать от 0.7 В и идеально подходит для приложений с батарейным питанием и содержит: 4K Flash-памяти программ, 64 Байт EEPROM, 256 Байт SRAMУ, два 8-разрядных таймера счетчика, сторожевой таймер, аналоговый компаратор, BOD, датчик температуры, 10-разрядный АЦП, интерфейсы SPI, USI, debugWire. Обновляются версии уже существующих микроконтроллеров. Так, корпорация Atmel выпустила новые версии микроконтроллеров AVR ATmega164PA, ATmega64A, ATmega324PA, ATmega48/88PA на замену микроконтроллерам ATmega164P, ATmega64, ATmega324P и ATmega48/88P. В новых микроконтроллерах, имеющих в наименовании суффикс «A», переработана топология металлизированных слоев кристалла. Таким образом, чтобы уменьшить энергопотребление микросхемы, но при этом сохранить полную обратную совместимость. Новые микросхемы имеют меньший ток потребления как в активном режиме работы микросхем (улучшение параметра от 25%), так и в режимах энергосбережения (от 17%). Быстродействие и потребляемая мощность всегда были ключевыми элементами развития микроконтроллеров AVR, начиная с выпуска первого микроконтроллера AT90S1200. Американская система шифрования AES AES (AdvancedEncryptionStandart) представляет собой алгоритм шифрования 128-битных блоков данных ключами по 128, 192 и 256 бит. AES является упрощенной версией алгоритма Rijndael. Оригинальный алгоритм Rijndael отличается тем, что поддерживает более широкий набор длин блоков [3]. Для шифрования в алгоритме AES применяются следующие процедуры преобразования данных:
Шифрование производится по алгоритму приведенному на риc. 1. Реализация и оценка эффективности Для анализа производительности алгоритма AES-шифрования в сенсорной сети 8-битного микроконтроллера, в качестве аппаратного устройства мы используем ATmega644p [4]. В качестве средств разработки в WinAVR используются AVR Studio 4 и специального окна редактора программиста. Эмулятор JTAG (Joint Test Action Group – Группа совместных испытаний) используется в качестве средства отладки. На рис. 2 показано устройство для анализа производительности алгоритма AES-шифрования.
ATmega644p в 8-битном микроконтроллере был разработан компанией Atmel. Основная функция ATmega644p – обеспечить правильное выполнение программы. Поэтому он должен иметь доступ к памяти, производить вычисления, управлять периферией и обрабатывать прерывания. Он имеет системные часы с частотой 20 МГц, предварительный делитель 8, 64, 256 или 1024 и расширенную архитектуру RISC. AVR Studio – это среда исполнения/отладки без платы AVR микроконтроллера. Скомпилированные программы применяются к AVR. Окно редактора программиста с компилятором Win-GCC компилирует исходный код, написанный на языке Си. Скомпилированные программы применяются к AVR Studio. JTAG Emulator это устройство ввода/вывода, использующее порт JTAG, получает информацию от PCB или IC. Для оценки эффективности алгоритма шифрования AES мы применяем режим AES-128 CBC (Cipher Block Chaining – сцепления блоков шифртекста) к EEPROM ATmega644p. В режиме CBC каждый блок открытого текста XORed (логическая операция исключающее ИЛИ) с предыдущим блоком зашифрованного текста перед тем, как его зашифровать. Кроме того, чтобы каждое сообщение было уникальным, в первом блоке должен использоваться вектор инициализации. На рисунке 3 показано шифрование в режиме CBC.
Режим таймера использует режим таймер/счетчик CTC (Clear Timer on Compare Match – таймер для сравнения). Режим CTC генерирует сравнение прерывания, если значение счетчика (TCNT), которое очищено до нуля, соответствует OCR. Таймер измерения, измеряет количество (P) сравниваемых прерываний на 1 мс. Время работы на 1 такт следующее: У ATmega644P есть предварительный делитель системных часов, и системные часы можно разделить, установив регистр Prescale Clock. Предварительно установленное время настройки предделителя системных часов следующее: Таймер/счетчик (TCNT) и регистр выходного сравнения (OCR) являются 8-разрядными регистрами. OCR для генерации сравнения прерывания следующее: Для сравнения производительности шифрования и дешифрования мы используем режим AES-128 CBC. Время операции шифрования и дешифрования измеряется для размеров данных в 16, 32, 64, 128, 256 и 512 байт. Табл. 1, рис. 4 и рис. 5 показывают время работы шифрования и дешифрования и цикл процессора (ЦП) в соответствии с указанным размером данных. Таблица 1. Времена работы криптографических операций В результате время работы и ЦП по размерам данных увеличиваются примерно в 2 раза. Для шифрования и дешифрования 512 байт требуется приблизительно 14 минут. Рис. 6 показывает, что общий узел (Ni) отправляет защищенный пакет данных в головку кластера (CH) в той же подсети.
Для измерения задержки передачи данных и дешифрования по количеству пересылок связи делаются следующие допущения. А именно, каждый узел в подсети имеет одинаковую производительность и в передаче данных нет помех или потерь пакетов. Каждый узел совместно использует общий ключ с соседними узлами наперед, и шифрование и дешифрование работают единожды за один шаг. Связь для генерации парного ключа общего типа аналогична протоколу μTESLA (Micro Timed Efficient Stream Loss-tolerant Authentication) сенсорной сети [5]. В процессе связи сенсорной сети команда запроса радиомаяка и команда запроса ассоциации передаются между новым узлом и головкой кластера. Общий узел (N1) шифрует данные, используя ключ безопасности, и отправляет защищенные данные соседнему узлу (N2). Узел (N2) дешифрует зашифрованное сообщение (msgЕ), используя предварительно развернутые ключи безопасности. Затем он получает зашифрованный файл. Узел (N2) повторяет тот же процесс на предыдущем шаге, используя закрытый ключ, совместно используемый с его узлом-соседом (N3). Процесс доставки данных по хоп-соединению следующий: Если связь с задержкой по ходу включает задержку шифрования, дешифрования и задержку передачи данных, общая задержка будет следующей: Δt представляет задержку для распределения и доступа к каналу. Он имеет между нулем и Thop-by-hop. Когда общий узел и головка кластера соединяются с зашифрованными пакетными данными, генерируемая общая задержка выглядит следующим образом: Значение n в уравнении представляет общее количество прыжков. Он имеет значение больше 1 для связи с соседним узлом.
Рис. 7 показывает, что общая задержка зависит от количества прыжков между CH и Ni. Мы интерполируем, что задержка шифрования составляет 449 мс., задержка дешифрования – 456 мс., а задержка передачи данных – 10 мс. в 16-байтовых данных. Число узлов во всей сети – 215, что меньше максимального числа узлов 65535 в области WPAN. Мы не рассматриваем задержку доступа и распределения канала. На рис. 7 задержка в 30 прыжках и 180 прыжках составляет 27450 мс., 164700 м. соответственно. Если количество узлов во всей сети равно 65535 (максимальное количество узлов в сети датчиков), задержка составит примерно 16 часов. Основная причина большой задержки связана с производительностью оборудования – 8-разрядный микроконтроллер обладает низкой производительностью [6]. Таким образом, при увеличении масштаба сети датчиков потребление энергии также будет возрастать. References
1. IEEE Std 802.15.4: Wireless Medium Access Control(MAC) and Physical Layer(PHY) Specifications for Low-Rate Wireless Personal Area Networks (LR-WPANs), 2003.
2. Yun Zhou, Yuguang Fang, Yanchao Zhang, Securing wireless sensor networks: a survey, IEEE Communications Surveys and Tutorials, 2008, Vol. 10, No. 3, 3rd Quarter. 3. M. Feldhofer, J. Wolkerstorfer, and V. Rijmen, AES implementation on a grain of sand, IEE Proc. Inf. Security, 2005, vol. 152, IEE, pp. 13-20. 4. S. Kim, Ingrid Verbauwhede, AES implementation on 8-bit microcontroller, Department of Electrical Engineering, University of California, Los Angeles, USA, 2002. 5. A. Perrig et al., SPINS: Security Protocols for Sensor Networks, ACM Wireless Networks, 2002, vol. 8, no. 5. 6. Hyubgun Lee, Kyounghwa Lee, Yongtae Shin, AES Implementation and Performance Evaluation on 8-bit Microcontrollers, (IJCSIS) International Journal of Computer Science and Information Security, 2009, Vol. 6 No. 1, pp. 70-74 |