Що саме SPECK та SIMON особливо підходить для пристроїв IoT?


12

Для деяких пристроїв IoT дані, які потрібно надіслати, є конфіденційними, а отже, надсилання їх у простому тексті не є прийнятним. Тому я розглядав, як зашифрувати дані, надіслані між пристроями IoT. Стаття, яку я нещодавно прочитав на веб-сайті журналу RFID, згадує розроблені NSA шифри SPECK і SIMON, як особливо підходить для програм IoT:

NSA робить шифри [...] загальнодоступними, як частина зусиль із забезпечення безпеки в Інтернеті речей (IOT), в яких пристрої обмінюються даними з іншими в Інтернеті.

[...]

Дослідники АНБ розробили SIMON і SPECK як поліпшення алгоритмів блок-шифрів, які вже використовуються, які в більшості випадків були розроблені для настільних комп'ютерів або дуже спеціалізованих систем

Чому я повинен вибрати для свого пристрою IoT новіший алгоритм, такий як SIMON або SPECK, особливо для програм, де живлення обмежене (наприклад, лише живлення від акумулятора)? Які переваги порівняно з іншими системами шифрування, такими як AES ?

Відповіді:


7

У статті "Блокові шифри Саймона та Спека на 8-бітових мікроконтролерах AVR" Beaulieu et al. дослідити реалізацію SIMON та SPECK на низькокамерному 8-бітовому мікроконтролері та порівняти продуктивність з іншими циферблатами. Atmel ATmega128 використовується із 128 Кбайт програмованої флеш-пам’яті, 4 Кбайт SRAM та тридцятьма двома 8-бітовими регістрами загального призначення.

Порівнюються три реалізації шифрування:

  1. Оперативна пам'ять-мінімізація

    Ці реалізації уникають використання оперативної пам’яті для зберігання круглих ключів, включаючи попередньо розширені круглі клавіші у флеш-пам’яті програми. Немає розкладу ключів для оновлення цього розгорнутого ключа, що робить ці реалізації придатними для програм, де ключ є статичним.

  2. Висока пропускна здатність / низька енергія

    Ці реалізації включають розклад ключів і розгортають достатньо копій круглої функції в процедурі шифрування, щоб досягти пропускної здатності в межах приблизно 3% від повністю непровідної реалізації. Ключ, що зберігається у спалах, використовується для генерації круглих клавіш, які згодом зберігаються в оперативній пам'яті.

  3. Flash-мінімізація

    Тут включений ключовий графік. Обмеження простору означає, що ми можемо надати лише неповний опис цих реалізацій. Однак слід зазначити, що попередні два типи реалізації вже мають дуже скромні розміри коду.


Для порівняння різних циферб застосовується міра ефективності продуктивності - ранг . Ранг пропорційний пропускній здатності, поділеній на використання пам'яті.

SPECK займає перше місце для кожного блоку та розміру ключа, який він підтримує. За винятком 128-розрядного розміру блоку, SIMON займає друге місце за всіма розмірами блоків та клавіш.

...

Не дивно, що AES-128 має дуже хороші показники на цій платформі, хоча для одного і того ж блоку і розміру ключа SPECK має приблизно вдвічі більше продуктивності. За однакового розміру ключа, але з 64-розрядним розміром блоку, SIMON і SPECK досягають удвічі і чотири рази кращі показники загальної продуктивності відповідно, ніж AES.

Порівнюючи SPECK 128/128 з AES-128, автори виявляють, що слід пам'яті SPECK значно зменшується (460 байт проти 970 байт), а пропускна здатність лише незначно знижується (171 цикл / байт проти 146 циклів / байт). Таким чином, продуктивність SPECK (у вибраній метриці) вище, ніж AES. Вважаючи, що швидкість співвідноситься з споживанням енергії, автори роблять висновок, що "AES-128 може бути кращим вибором у критичних для енергетики додатках, ніж SPECK 128/128 на цій платформі". Однак автори не впевнені, чи велике використання доступу до оперативної пам’яті (швидкісне впровадження AES) є більш енергоефективним, ніж реалізація SPECK на основі регістра. В будь-якому випадку можна досягти значного зменшення використання флеш-пам’яті, що може бути актуальним для мікроконтролерів низького класу.

Якщо програма вимагає високої швидкості, а використання пам'яті не є пріоритетним, AES має найшвидшу реалізацію (використовуючи спалаху 1912 байт, 432 байт оперативної пам’яті) серед усіх блокових шифрів із 128-бітовим блоком і ключем, про який ми знаємо, вартість всього 125 циклів / байт. Найближчий конкурент AES - SPECK 128/128, з витратою 138 циклів / байт для повністю розкрученої реалізації. Оскільки швидкість співвідноситься з споживанням енергії, AES-128 може бути кращим вибором в енергетично важливих додатках, ніж SPECK 128/128 на цій платформі. Однак якщо 128-бітний блок не потрібен, як ми могли очікувати для багатьох застосунків на 8-бітовому мікроконтролері, тоді більш енергоефективним рішенням (з використанням 628 байтів спалаху, 108 байт оперативної пам’яті) є SPECK 64/128 з той же розмір ключа, що і AES-128, і вартість шифрування всього 122 цикли / байт,


Крім того, у цій розмові є фігура Енігми , яка могла б протистояти коханому, який посилається на Енігму ?

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.