Безопасная передача данных радиомодулями Lora с UART интерфейсом
ฝัง
- เผยแพร่เมื่อ 25 ก.ค. 2020
- О том как передавать данные радиомодулями с UART интерфейсом с намеком на безопасность.
🐾 Железки на али: E32-433T20D на 433мгц: got.by/3fp3lw
E32-868T20D на 868мгц: ali.pub/4y5km7
Антенны есть: got.by/3fp49t
HC-12: ali.pub/4y5luq
Arduino NANO: ali.pub/4l97od и leonardo: ali.pub/4y5w8g
🐾Тема на форуме: arduinolab.pw/forum/viewtopic....
Обзор E32-868T20D: • LORA радиомодули с UAR...
Обзор REYAX RYLR896: • LoRa модуль REYAX RYLR...
🐾Желающим оказать материальную поддержку.
www.donationalerts.ru/r/arduin... - วิทยาศาสตร์และเทคโนโลยี
С новой графикой видео преобразились, всё нагляднее и проще для повторения, продолжай в том же духе!
Тема пока не понятная, но оцениваю положительно! вы молодец, на канале у вас целая коллекция учебных материалов.
Кажется зная seed очень просто подобрать алгоритм генерации ключей, зная что JSON в теле, есть очень простой способ валидации при подборе ключей (в начале и конце фигурные скобки). На современном компьютере перебрать 4 миллиарда ключей это пол часа, в коде 65534, перебор на считанные секунды.
Если нужно нормально защитить данные, тут два варианта, или криптоподпись (не вариант ключ в открытом виде) или стойкий алгоритм шифрования, лично я бы взял Acorn128, как самый быстрый (отсюда rweather.github.io/arduinolibs/crypto.html) ну и в полезную нагрузку запихал бы msgpack (это как json только очень быстрый и бинарный).
Городить более сложный алгоритм генерации одноразовых ключей для XOR нет смысла, ибо подбор очень простой.
Тут нужна сложнее математика просто в идеале RSA но это чудовищно затратно в рамках микроконтроллеров.
У вас хороший канал, очень полезные и познавательные видео, но способ шифрования xorом скоре не лечит а калечит.
я же говорил что так делать не надо, то как пример.
arduinoLab я посоветовал как бы делал я ))) что тоже не панацея но и не гомеопатический XOR
Полностью согласен. Городить свой алгоритм шифрования - очень плохая идея. Особенно с такими короткими ключами.
Шифрование rsa/подпись rsa - вполне реально в контексте микроконтроллеров
Основная проблема - грамотная реализация библиотеки больших чисел, сам rsa достаточно прост
Я так понял, что ключ длинной в пакет, так что подобрать часть ключа для скобок джйесона - задача конечно тривиальная, но бесполезная. В целом, разобрать весь ключ тоже большого труда не составит, это скорее защита от дурака. Но если я правильно понял основной посыл автора - тут как раз такую защиту и хотось реализовать. Единственно, я бы ещё каким нибудь lzo пожал данные, что бы шифровать уже полноценные байтики, а не текст, что чуток повысит криптостойкость...условно конечно, все еще рамках защиты от дурака, предполагая, что серьёзно ломать никто не будет
Очень полезная тема!
По дальности Lora есть у вас видео, но там мощности 10мвт, а при большей мощности пробовали, сколько дальность?
Вот это да !!!!!!! +
Заинтриговали
Шикарно, спасибо за подсказку, думал как зашифровать датчики на attiny85))))
Шо слабый, юзай асиметричную крипту. Она почти влазит а attiny85) ну точней влазит но памяти больше не остаётся
Есть библиотека SoftEasyTransfer. Структуры через модули HC-11 отлично летают.
Есть подобные модули на микросхеме 1301 ? Если я не ошибаюсь 1276 используется для устройств, а 1301 для базовых станций.
забыл основной принцип, но могу подсказать про xor: шифровать два раза с некратными по длине ключами. то есть при сообщении в 50 символов пусть будет ключ на 7 и на 31 символ. ну примерно. надо подбирать под свои задачи. тогда конец сообщения, где счетчик, будет зашифрован дважды со смещением и восстановить xor-ключ будет намного сложнее. то есть там восстанавливается просто только первые 7 символов (по длине минимального ключа). еще можно со сдвигом ключа сделать, но там дополнительный контроль для этого придется вводить.
Автору категорически респект! И лайк!
добрый день. подскажите, как можно получить в цифрах мощность сигнала, который приходит на антену?
как же хочется срать данными на километры
Два раза пересмотрел этот фрагмент.. Нет, не показалось
Дальше чем вижу 🤣
@@user-wh6rt9mv7s Ну вот мне бы как раз телеметрия до гаража хватила ..
🤣🤣🤣🤣 значит мне не показалось
Отправлять надо сырые данные и в bin или hex формате. При это можно значения смешать на один или два бита. А на приемнике уже и делаем обработку данных. И хрен кто разберется с ходу что это такое ))))
Свариантов много на самом деле
отлично!
Пробовал две дуины на двух лорах соединить. Модули подключены к 10 и 11 ногам, через софсериал, на передатчике пишется в юарт, а в приёмнике приходит совсем не то что отправляется. Скорости и настройки модулей одинаковые. Что может быть?
Спасибо
Т.е. чтобы передать какое-то сообщение (текст) с модуля на модуль, достаточно просто в его сериал порт послать этот текст? А как же в другом видео Вы показывали отправку команд, типа C3 C3 C3, как модуль отличает команды от данных которые надо послать?
то для конфигурации.
не внимательно смотрел, там две ноги отвечают за режим работы.
@@arduinoLab сейчас пересмотрел момент в том видео и теперь все понятно стало, благодарю за подсказку!
Классное видео👍
Ótimo vídeo parabéns....
Espero que consiga ler...
Sofri bastante para achar conteudo sobre o lora apesar da língua ser uma dificuldade ajudou bastante, muito obrigado
Если модуль Gy-neo6mw просто к Лоре подключить он будет передавать данные или все равно нужен микроконтроллер для обработки данных? Т.е. на одной сторону лора+gps, а на другой Лора и контроллер
чтото передавать будет, но за 1 секунду не успеет и данных у жпс больше чем помещается в буфер.
Мне кажется проще было сделать подпись для данных, 4 байта, она же контрольная сумма с XOR(01 02 03 04 например чтобы немного запутать). Так проще отлаживать, чем полноценный шифр, не видно это данные или шум. Злоумышленник не сможет послать ложную команду. И ко времени привязываться или к номерам пакетов, если важна защита от повторных посылок. Если там датчик температуры то конечно защита не нужна вообще. Пересылать данные раз в час и вряд ли у кого терпения хватит данные из шума эфира выделять. В качестве защиты есть еще куча параметров: частота, ширина канала, параметры модуляции сигнала (их штук 5-10), с нестандартными параметрами редкие пакеты вряд ли кто перехватит, это годами нужно эфир анализировать, а городе там шум сплошной. Плюс канала можно менять, прием на одной частоте, передача на другой с задержкой небольшой. А если речь о важных данных все LORA каналы глушатся на 5 км вокруг несколькими передатчиками, вполне законными, ведем кратковременную передачу нескольких бит информации и все остальные передатчики глушатся наглухо. И не докажешь что это злой умысел. LORA очень уязвима для злоумышленников, испортил несколько бит в посылке и CRC сбойная и пакет считается недошедшим. Я глушил ради интереса свой передатчик третьим передатчиком рядом, если работают 2 передатчика они мешают друг другу.
Шифр проще если ключа не знаешь то долго можно копия с луками ломать
@@user-zf5rn9yz8b если вы играетесь с ардуино, то значит вы - студент-первокурсник, и там нечего ломать, никому не интересны ваши команды на включение света в подъезде. Если вы - профессиональный кодер или разработчик, и отправляете данные с банкомата - вы не пользуетесь ЛоРа, а чем-то более скриптозащищенным. Все просто.
А как с e22 получить rssi?
Интересно но не все понятно. Сделайте метеостанцию с беспроводными датчиками температуры и влажность.
Мб тогда стоит посмотреть в сторону TheThingsNetwork
Изобрели modbus вобщем, протокол 70х годов, промышленный стандарт )
добрый день, было бы интересно узнать как можно этот модуль разобрать, что бы добраться до SPI по идеи это даст возможность напрямую общаться с лорой, а то я тоже с дури купил много, а теперь понимаю, что ключ зашит туда:) не хотелось бы быть тем пионером))
там вроде как stm32 и SWD можно вытащить снизу платы, для них есть сторонние прошивки... у моделистов с коптерами искать надо.
иначе, проще модуль другой купить.
@@arduinoLab а когда их 10 штук ?:))) хорошо ,спасибо за наводку, буду искать
отдать $2.74 за модуль думаю проще чем подпаивать к QFN корпусу.
@@arduinoLab соглашусь с вами, пусть будут для "публичной" работы. Сейчас тестирую проект meshtastic , возможно вам стоит высказаться о нём в следующих сериях.
Meshtastic - проект, объединяющий ESP32, LoRa и GPS-радио для создания mesh-сетей ... Это позволяет каждому члену частной mesh-сети видеть местоположение и расстояние всех остальных участников и читать любые текстовые сообщения, отправляемые в групповой чат.
Это вы об этом речь ведёте ? Тоже хочется увидеть !
каноничный seed 42))
RC4 в помощь
Не густо с донатами...
xor не логическое ИЛИ, а исключающее ИЛИ (НЕ-ИЛИ), т.е. если бинарное 1 1 или 0 0 то на выходе 0 иначе 1, и применяется это не для шифрования а для проверки целостности пакета.
Только включил видео: "Есть такие модули которые со штатной антенной могут срать данными на киломатр..." И тут я поперхнулся.
protobuf тебе в помощь человек
Хор?))) Больно слышать)
ну у меня он так в голове отложился.
А на сколько км они достают?
все тесты были на канале.
Зависит от засратости эфира, за городом в лесах вообще далеко работают.
@@arduinoLab
Я был в отключке пропустил по ходу
@@arduinoLab По дальности Lora есть у вас видео, но там мощности 10мвт, а при большей мощности пробовали, сколько дальность?
и на 100 с 868мгц вроде был... там все оч сильно зависит от внешних условий, лора сильно эффективней FSK, но чудес ждать не нужно.
в городе 2-3км может работать, но и через торец 5 этажки не пробьет.
Энигма шифрование замутить
это оно и есть.
250 000 лайков!!!!!
может это решит вашу задачу github.com/rpsreal/LoRa_Ra-02_Arduino
Народ , а как вы понимаете ,шо там написано ? ( Я о гитхабе , там же на английском !) Как не зайду на него , так понять не могу как прогу скачать или шо там делать .
так а откуда приёмник знает сгенерированный на передатчике код, чтобы принятый мусор расксорить?
vk.com/wall-102194992_5995
Срать данными не все могут 😂
Так себе идея шифровать по рандом-сиду... Защита от ленивого хакера
Если только против кулхацкеров с хак рфой.
так и быть - отписался
Всем все равно