Использование OpenSSL с Contiki

Я хотел бы использовать библиотеку openssl с contiki. Я установил его, и файлы заголовков находятся в /usr/include/openssl, но включение этих заголовков не работает. Я пытался передать флаг -lcrypto компилятору, но безуспешно. Есть ли другой флаг, который мне нужно использовать, или я вообще не могу использовать библиотеку OpenSSL?


person user2406351    schedule 21.05.2013    source источник


Ответы (1)


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

Совершенно очевидно, что использование OpenSSL с любой платформой Contiki практически невозможно. Поскольку эта библиотека слишком велика для любого микроконтроллера, есть шанс, что можно взломать поддержку "родной" платформы.

Вы можете взглянуть на CyaSSL для альтернативного решения, как известно подходит для некоторых микроконтроллеров. Существуют также другие библиотеки SSL, которые вы, возможно, захотите попробовать (например, MatrixSSL и SharkSSL). Некоторые из них являются коммерческими или бесплатными только для некоммерческого использования.

Существуют различные другие частичные решения для защиты сетевого трафика:

  • используйте прокси-сервер HTTP(S) (например, nginx), чтобы разорвать SSL-соединение между локальной сетью конечного устройства и Интернетом
  • используйте SoC со встроенным криптографическим ускорителем с Contiki (например, MC1322x)
  • используйте Thingsquare Mist с AES API для шифрования радиосети и WebSocket.

Если для вашего проекта достаточно использования UDP (а не HTTPS или другого протокола TCP), вы можете взглянуть на Реализация DTLS для Contiki. Также существует реализация IPSec, которая может подойти для некоторых приложений.

person errordeveloper    schedule 21.05.2013
comment
Другая ссылка на IPSec: github.com/vjutvik/Contiki-IPsec (похоже, она более актуальна). встретиться). - person errordeveloper; 22.05.2013