amiller 2 8 декабря, 2017 Опубликовано 8 декабря, 2017 · Жалоба У меня проблем слишком большого количества клиентов нет, но в принципе считаю, что проблемы обновления миллиона прошивок лучше переложить на миллион клиентов. Есть загрузчик, содержащий ключи шифрования, в устройстве, залоченном на предприятии. И есть сайт, на котором публикуется актуальная программа для прошивки девайсов, а также последние прошивки (естественно зашифрованные) с информацией об изменениях в них. Клиенты сами всё это скачивают и заливают. Для особо одаренных есть видеоролик с пояснениями. Так как в расшифрованном виде прошивка восстанавливается только внутри залоченного девайса, то защита интеллектуальной собственности сводится к обычным правилам безопасности на предприятии. А задача публичной программы для прошивки - передать загрузчику зашифрованную прошивку без каких либо преобразований. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
adnega 10 8 декабря, 2017 Опубликовано 8 декабря, 2017 · Жалоба У меня проблем слишком большого количества клиентов нет, но в принципе считаю, что проблемы обновления миллиона прошивок лучше переложить на миллион клиентов. Есть загрузчик, содержащий ключи шифрования, в устройстве, залоченном на предприятии. И есть сайт, на котором публикуется актуальная программа для прошивки девайсов, а также последние прошивки (естественно зашифрованные) с информацией об изменениях в них. Клиенты сами всё это скачивают и заливают. Для особо одаренных есть видеоролик с пояснениями. Так как в расшифрованном виде прошивка восстанавливается только внутри залоченного девайса, то защита интеллектуальной собственности сводится к обычным правилам безопасности на предприятии. А задача публичной программы для прошивки - передать загрузчику зашифрованную прошивку без каких либо преобразований. +1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 33 8 декабря, 2017 Опубликовано 8 декабря, 2017 (изменено) · Жалоба так системы шифрования не строят - скомпрометируется один девайс и все последующие версии прошивки будут скомпрометированы Ну дак займитесь культурой производства, чтоб прошивка не гуляла по предприятию, сделайте спецпрограмматор с аутентификацией по усб-токену, подсчету прошитых устройств и выдавайте его под роспись... Изменено 8 декабря, 2017 пользователем mantech Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
VCucumber 0 8 декабря, 2017 Опубликовано 8 декабря, 2017 (изменено) · Жалоба Есть загрузчик, содержащий ключи шифрования, в устройстве, залоченном на предприятии. предлагаете прошить одинаковый ключ во все девайсы ? Ну дак займитесь культурой производства, чтоб прошивка не гуляла по предприятию, сделайте спецпрограмматор с аутентификацией по усб-токену, подсчету прошитых устройств и выдавайте его под роспись... я тут каким боком ? я про клиента-злоумышленника говорю в общем, я тут поразмышлял и решил, что в заданных ограничениях задача неразрешима Изменено 8 декабря, 2017 пользователем Огурцов Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 33 8 декабря, 2017 Опубликовано 8 декабря, 2017 · Жалоба я тут каким боком ? я про клиента-злоумышленника говорю Используйте контроллеры с механизмом подписи с встроенным криптобутом. Я пока не слышал о взломе таких МК. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
amiller 2 9 декабря, 2017 Опубликовано 9 декабря, 2017 · Жалоба предлагаете прошить одинаковый ключ во все девайсы ? Если речь идёт о ключе шифрования, то да, я использую один сложный ключ для всех устройств, в которых предусмотрен механизм удаленной замены прошивки. Алгоритм шифрования выбирал вынужденно. Устройства выпускаю на разных процессорах, поэтому нужен был чисто программный алгоритм. В свое время удалось найти только AES, на нем и остановился (AES-256). Используется уже более 5 лет (около двух десятков видов устройств общим тиражом тысяч тридцать, наверное) и пока о случаях взлома ничего неизвестно. Но кроме ключа шифрования есть ещё различные опции, которые характеризуют устройства и версию ПО. Это идентификатор устройства, версия ПО, идентификатор клиента и ещё некоторые опции специализации. Такая же информация находится в заголовке прошивки, который не зашифрован, но защищен от изменения зашифрованным ключом. Заголовок использует программа загрузки, которая реализует интерфейс с пользователем, и принимает предварительное решение о том, подходит ли данная прошивка для данного устройства/клиента. А окончательное решение о возможности заливки ПО принимает уже загрузчик в устройстве. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Arjun 0 9 декабря, 2017 Опубликовано 9 декабря, 2017 · Жалоба обновление прошивки в 100500 vs 100..500 девайсах давайте обсудим логику работы системы и самого процесса исходя из того, что как обновлять прошивку в 100..500 девайсах вопросов не вызывает А в чем проблема-то? Вы её не озвучили. Тогда что обсуждать? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 2 9 декабря, 2017 Опубликовано 9 декабря, 2017 · Жалоба А в чем проблема-то? Вы её не озвучили. Тогда что обсуждать? Проблема как бы ясна. Человек никогда не программировал больше тысячи дивайсов и сам хочет узнать о проблемах возникающих при программировавнии сотен тысяч. Тут сложность в необходимости иметь базу данных, историю, планировать и редактировать график апгрейдов, технологию защищенных каналов, работать в реальном времени и параллельно и все это сделать не выходя за границы наработанных шаблонов и не меняя платформы. В такой постановке задача действительно не решается. Amazon для этого предлагает выделенный локальный сервер на сложном стеке с поддержкой в облаках и собственный фреймворк, но разработчику придется сильно напрячься. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
VCucumber 0 9 декабря, 2017 Опубликовано 9 декабря, 2017 · Жалоба Если речь идёт о ключе шифрования, то да, я использую один и не сможете отключить клиентов выборочно от обновления даже если это не злоумышленник Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Baser 4 9 декабря, 2017 Опубликовано 9 декабря, 2017 · Жалоба нужно только удостовериться в факте того, что прошивка получена из надежного источниканет и ещё раз нет т.е. это конечно хорошая фича, но далеко не главная главное - удостовериться, что прошивка ушла в надёжный приёмник а в случае, если приёмник станет ненадёжным (прошивка от него ушла в мир), иметь возможность прекратить иметь с ним дело, сохранив, однако, возможность поддержки других клиентов хотя бы как вариант - не этой, но следующей версией и не сможете отключить клиентов выборочно от обновления даже если это не злоумышленник И при этом вы говорили, что желательно без on-line канала связи, прошивка в виде файла на локальном носителе. В такой постановке вопроса это совершенно не реализуемо. Урезайте хотелки :) В бутлодере нереально хранить много ключей. И нужно иметь ввиду, что стоимость чтения вашего бутлодера прямо с кристалла обычного контроллера нынче всего несколько кило$ И он будет скомпроментирован. Надо плясать отсюда. Уровень "параноидальной" безопасности очень сложен и дорог. Лучше всего быть подобным Неуловимому Джо, который нафиг никому не нужен Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
amiller 2 9 декабря, 2017 Опубликовано 9 декабря, 2017 (изменено) · Жалоба и не сможете отключить клиентов выборочно от обновления даже если это не злоумышленник По моему мнению шифрование предназначено: 1. Для предотвращения копирования устройств третьими лицами. 2. Для обеспечения невозможности внесения несанкционированных изменений в ПО. Идентификация клиентов и, соответственно, индивидуальное обновление ПО определяется другими параметрами. Эти параметры всегда можно прочитать с устройства и эти же параметры входят в заголовок прошивки. Идентификация по заголовку как минимум обеспечивает: 1. Прошивка одного клиента не подходит другому клиенту. 2. Прошивка для одного типа устройств не подходит к другому типу устройств. Т.е. возможность не выпускать новое обновление для конкретного клиента существует. Но мне в этом плане проще, так как у меня клиентов меньше десятка. Это достаточно крупные компании, закупающие наше оборудование. Если бы пришлось заниматься розничными продажами, возможно подход был бы другой. Лучше всего быть подобным Неуловимому Джо, который нафиг никому не нужен +1 Не ломите цены и постоянно развивайте функционал. Если стоимость вхождения в бизнес высока, а потенциальная прибыль невелика, то никто к Вам и не полезет и взламывать не будет. А если где то цены космические, то я и взламывать ничего не буду, а разработаю аналогичное устройство, напишу софт с нуля, и выйду на рынок. Изменено 9 декабря, 2017 пользователем amiller Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
VCucumber 0 9 декабря, 2017 Опубликовано 9 декабря, 2017 (изменено) · Жалоба В бутлодере нереально хранить много ключей. допустим, в одном бутлоадере можно хранить ключей на 1000 клиентов вот только не понятно, зачем, поясните ? И нужно иметь ввиду, что стоимость чтения вашего бутлодера прямо с кристалла обычного контроллера нынче всего несколько кило$ И он будет скомпроментирован. тогда в чём противоречие ? скомпрометировался один клиент - ну и чорт с ним, мы его вычеркнули и забыли про него хотите скомпрометировать дальше - платите ещё несколько тысяч баксов, наздоровье Изменено 9 декабря, 2017 пользователем Огурцов Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Baser 4 9 декабря, 2017 Опубликовано 9 декабря, 2017 · Жалоба допустим, в одном бутлоадере можно хранить ключей на 1000 клиентов вот только не понятно, зачем, поясните ? Так это вы сами в начале темы об этом говорили. Это мне надо вас спрашивать. тогда в чём противоречие ? скомпрометировался один клиент - ну и чорт с ним, мы его вычеркнули и забыли про него хотите скомпрометировать дальше - платите ещё несколько тысяч баксов, наздоровье Тогда кроме варианта с уникальными ключами и уникальным бутлодером для каждого клиента я ничего и не вижу. Если хотите реализовать желание: "этому дала, этому дала, а этому не дала". Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Kabdim 0 11 декабря, 2017 Опубликовано 11 декабря, 2017 · Жалоба Клиенты сами всё это скачивают и заливают. Класная позиция пока у вас в устройстве нет линукса, девайсы не гуляют в ретейле и применение девайсов умеренно безответственное. Если продажи 100500 и большая часть из списка выше неверна - обновления должны быть принудительными. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
amiller 2 12 декабря, 2017 Опубликовано 12 декабря, 2017 · Жалоба Класная позиция пока у вас в устройстве нет линукса, девайсы не гуляют в ретейле и применение девайсов умеренно безответственное. Если продажи 100500 и большая часть из списка выше неверна - обновления должны быть принудительными. Даже Microsoft до последнего времени оставляла клиентам возможность выбора, обновляться или нет. В десятке обновления отключить сложнее, но можно. А кто я такой, чтобы навязывать обновление своих устройств? Версии с критическими ошибками во внешний мир не уходят. А исправление мелочей и добавление функционала - личное дело каждого. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться