Рейтинг:1

Аутентификация путем представления симметричного ключа по зашифрованному каналу

флаг br

У меня есть устройства, которым необходимо обмениваться данными с сервером по взаимно аутентифицированному и зашифрованному каналу. Аутентифицировать сервер относительно просто, так как я могу встроить сертификат ЦС в прошивку устройства и проверить подпись сертификата сервера. Проблема заключается в аутентификации устройства на сервере.

Обычно я мог бы также подписать сертификат устройства, но нет надежной среды от производства до развертывания, т. е. я не хочу, чтобы производственное предприятие имело доступ к нашему закрытому ключу или какой-либо возможности подписи с использованием нашего ЦС. Вместо этого у нас есть QR-код на устройстве и доверенный персонал, с которым можно работать. Таким образом, аутентификация будет осуществляться персоналом путем считывания QR-кода. Однако во время этой операции устройства, как правило, обесточены, поэтому обычные TOTP, визуальные индикаторы и т. д. неприменимы.

Моя идея состоит в том, чтобы поместить случайное число и его зашифрованную форму (с помощью ключа AES, который случайным образом генерируется устройством) в QR-код (или также возможен какой-то MAC, возможно, привязывающий идентификатор устройства). Когда персонал считывает QR-код, эти значения сохраняются в базе данных. Когда устройство аутентифицируется и подключается к серверу, оно отправляет свой секретный ключ AES по зашифрованному каналу. Теперь сервер может проверить, что случайное число в базе данных действительно зашифровано устройством, и теперь он может подписать сертификат устройства.Затем сервер удаляет случайное значение из базы данных, и дальнейшие соединения могут быть аутентифицированы с помощью подписи.

Я считаю, что это настолько безопасно, насколько это возможно с этими ограничениями. Но мне неудобно предъявлять ключ AES для подтверждения личности, но я не могу придумать другого способа. Есть ли какие-либо проблемы с этой схемой, если предположить, что персонал не будет обманом вынуждён прочитать вредоносный QR-код? Является ли такая автономная аутентификация известной проблемой, и если да, то каковы ключевые слова для дальнейшего исследования? Есть ли лучший способ добиться аутентификации с этими ограничениями?

Редактировать. Я только что понял, что могу просто поместить открытый ключ устройства в QR-код и бросить вызов устройству, чтобы доказать, что у него также есть соответствующий закрытый ключ.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.