Evgeniy
Всё сложнее. Надо подумать. Что-то не то с POST HANDLER, вызывается много раз подряд
Evgeniy
предполагаю, что поведение POST handler поменялось, раньше был 1 вызов и внутри в цикле приём файла прошивки через httpd_req_recv
Sergey
я уже в п.1 это условие упомянул, пофигу что кто-то знает температуру воды в трубах
На самом деле можно придумать историю когда и на это не пофигу) например, если это температура котла, и если ты поедешь в отпуск, то скорее всего ты снизишь его температуру и это будет признак того что никого нет дома)
ㅤ
так у меня сперли пароль от ICQ :)
От аськи вряд-ли. Там оно никогда в открытом виде не передавалось. Там от сервера приходил токен (соль) потом клиент солил его и хешировал
ok-home
там единственное отличие от обычного ота - в вызовах begin/write/end - они через encripted либу идут
ㅤ
тем не менее...
Там были гораздо простые методы утащить аську в том числе через протухший емейл
ㅤ
тем не менее...
Ну или могли банально утащить сессию...
Andrey
Ну или могли банально утащить сессию...
могу сказать, что почта протухла прямо вместе с доменом, а доступался я в тот раз с WinMobile.
Vlad
а значит, если 1) обеспечить достоверность данных с помощью API_KEY (зависящий от времени и общего секрета на обеих сторонах) 2) плюс шифрование всего трафика HTTPS даже без сертификата сервера то недостоверные данные не должны сквозь API попасть в БД. пока не вскрыт алгоритм п.1.
ㅤ
Да блин хочешь запутать злоумышленника просто шли какой-то число прибавляя к нему какое-то другое по определенному алгоритму и пройдясь каким нибудь ксором. И никакой тлс не нужен чтоб одно число шифровать
ㅤ
Сделай контрольную сумму известную только тебе и никто тебе ниче подмешивать не будет да и кому это надо
Evgeniy
там единственное отличие от обычного ота - в вызовах begin/write/end - они через encripted либу идут
А что может означать ошибка Invalid Auth? Убрал realloc в пользу статического буфера - все ок.
Vlad
Сделай контрольную сумму известную только тебе и никто тебе ниче подмешивать не будет да и кому это надо
получается, HTTPS - таки не обязателен в системе с несекретными данными датчиков (повторяющих рассылку) и контролем прихода данных ?
Vlad
это ясно, я про логику необходимости HTTPS в технологических системах датчиков, где данные несекретны, обеспечены контрольной суммой с паролем, и контролем доставки
Aleks
HTTPS это защита от прослушки в первую очередь
Evgeniy
Внутри функции esp_err_t esp_encrypted_img_decrypt_end(esp_decrypt_handle_t ctx)
максим
а кодек ставить можно?)
да без разницы главное чтоб работало стабильно
Vlad
HTTPS это защита от прослушки в первую очередь
тогда получается, что HTTPS - в принципе не нужен, если данные несекретны, но целостность пакета обеспечена.
ok-home
А что может означать ошибка Invalid Auth? Убрал realloc в пользу статического буфера - все ок.
да хз, видимо проверяет контрольную сумму (или что то похожее)
Vlad
И хттп тут тоже лишний
чойто ? а как передавать-то ?
Andrey
чойто ? а как передавать-то ?
UDP например. или старый добрый MODBUS-TCP
Vlad
да это вы опять про локального посредника - это тоже понятно. я про принцип сквозной передачи данных
Evgeniy
Вот и возникает вопрос - а есть ли смысл тащить эту кучу библиотек, когда достаточно свой coder/decoder приделать и всё.
Anton
это ясно, я про логику необходимости HTTPS в технологических системах датчиков, где данные несекретны, обеспечены контрольной суммой с паролем, и контролем доставки
Датчики-фидатчики. А у меня система контроля/учёта рабочего времени... Это уже равно деньгам, хотя тоже "цифирьки"
Vlad
Датчики-фидатчики. А у меня система контроля/учёта рабочего времени... Это уже равно деньгам, хотя тоже "цифирьки"
дык у тебя уникальные данные, и критически-уникальные. а датчики - это всегда поток данных, однотипных, повторяющихся
Evgeniy
Проблема может быть в большом потреблении RAM модулем mbedtls
ok-home
Вот и возникает вопрос - а есть ли смысл тащить эту кучу библиотек, когда достаточно свой coder/decoder приделать и всё.
ну насколько я понимаю это пример от idf на стандартном шифровании, никто не запрещает сделать свое. модуль ота он простой как 3 рубля begin/write/end, а внутри него танцуй как хочешь
Evgeniy
Напрягает, что даже такой простой пример не запускается сразу. Когда используешь только 1 либу для шифровки/расшифровки таких проблем не возникает вообще.
Evgeniy
Второй день разбирательств не стоит этого решения. Проще более компактное сделать - больше останется ресурсов на другой функционал.
Evgeniy
для realloc не должен указатель зануляться, там он где-то зануляется
ok-home
`` void *realloc(void *ptr, size_t newsize) Прототип: stdlib.h Описание: Функция realloc() изменяет величину выделенной памяти, на которую указывает ptr, на новую величину, задаваемую параметром newsize. Величина newsize задается в байтах и может быть больше или меньше оригинала. Возвращается указатель на блок памяти, поскольку может возникнуть необходимость переместить блок при возрастании его размера. В таком случае содержимое ста­рого блока копируется в новый блок и информация не теряется. Если свободной памяти недостаточно для выделения в куче блока размером newsize, то возвра­щается нулевой указатель. ``
Evgeniy
предположительно, внутри mbed tls что-то жрёт память, т.к. если закомментить вызовы этих функций - то realloc не возвращает ноль
Evgeniy
ну оно всяко жрет память, как любой secure
в realloc передаётся много раз нулевой указатель, вот это странно - какой смысл тогда в realloc
Evgeniy
realloc с нулом будет работать как маллок.
во-во! по-этому проходит десятка два вызовов realloc по разным адресам и потом заканчивается оперативка
ok-home
Да никто там указатель не обнуляет он отдает ноль если только ему не хватает памяти. Если новый блок меньше чем старый он может отдать старый указатель. Если больше он должен освободить старый блок и выделить новый. Это в примитивном варианте сахар над free/malloc Беда в том что он память сильно фрагментирует.
ok-home
а как это выглядит практически ?
Не понял. Описание реаллок я выше сбросил. Описать как работает маллок и как фрагментиоуется куча ? Так там целые талмуды написаны на эту тему написаны. Простейший вроде в K&R ьыл
Vlad
ну я про фрагментацию спросил, как это выглядит, бардак такой
ok-home
Или кто то херит указатели. Пишет за границы массивов
Evgeniy
Оба этих вариантов похожи, была некая ошибка из mbed tls
Evgeniy
странно, но free может быть в недрах этих библиотек
Anton
дык у тебя уникальные данные, и критически-уникальные. а датчики - это всегда поток данных, однотипных, повторяющихся
в общем я в итоге тоже на хттп перешёл, но с самопальным шифрованием, получилось 50мс на передачу данных вместо 2с (в лучшем случае) на одну только установку соединения
CatRovacer
Ищется небольшая платка на/c ESP32 С ЗУ LiPo onboard ESP32C3 (S2) - supermini - в самый раз. У меня есть несколько с дисплеями и пр - но великоваты. Замечал ли кто на Ali?
ㅤ
чойто ? а как передавать-то ?
А зачем тебе передавать пару байт температуры с диким оверхедом в ввиде хттп ?
ㅤ
да, ищется
C3 без ЗУ
Vlad
аа, ну тогда Seeeduino Xiao ESP32C3 site:aliexpress.ru
CatRovacer
в виде платки расширения тоже не то
ㅤ
Что такое платка расширения?
ㅤ
Это говно какое-то. Тебе сказали Seeeduino Xiao ESP32C3 посмотри. То что тебе надо. Небольшое но с зарядом. Но щас ты будешь говорить наверное "ой как дорого".
Vlad
в виде платки расширения тоже не то
но оно же "не то". по-русски то нельзя написать ?
CatRovacer
меня устроит и supermini но с зарядкой. А у XIAO она разве есть?
Anton
А зачем тебе передавать пару байт температуры с диким оверхедом в ввиде хттп ?
иногда проще получить доступ к уже известным портам, чем городить сервис и потом разбираться с админами и безопасностью
ㅤ
иногда проще получить доступ к уже известным портам, чем городить сервис и потом разбираться с админами и безопасностью
Че там с какими-то тайными админами разбираться? На inet.d пихается нужный скриптик из четырех строчек, вешается на нужный любой удобный порт. И всё. Чем городить какие-то вебсервера чтоб принять один параметр
ㅤ
оставлю без комментариев. а то полдня буду изливаться...
Да ты уже рассказывал как ты со своими админами ругался
ㅤ
Но никто не запрещает же юзать стандартные порты 80,443,8080 для не http трафика.
ㅤ
Да и на гитхабе валется неплохо прозрачный tcp мультиплексор. Я его юзаю чтоб на один порт вешать разные протоколы.
Q
https://www.ozon.ru/product/modul-wi-fi-bluetooth-maketnaya-plata-wt32-eth01-c-esp32-1884463254/?at=Y7tjWvXBXc8RjmpWCDgmjXJUPAZm9ZI0KYG7GH2mwrBG Подскажите прошивать через uart ?
Max
Да
ㅤ
https://www.ozon.ru/product/modul-wi-fi-bluetooth-maketnaya-plata-wt32-eth01-c-esp32-1884463254/?at=Y7tjWvXBXc8RjmpWCDgmjXJUPAZm9ZI0KYG7GH2mwrBG Подскажите прошивать через uart ?
Можно добавить 200 рублей и взять одноплатник с вифи и эзернетом нежели это за оверпрайс
Sergey
О, я искал себе такую плату, но хотелось ещё и с юсб сразу. Нашел только вариант на чипе w5500((
Q
На esp тоже ?
ㅤ
На esp тоже ?
Нет конечно, нахер это говно нужно за такие деньги