Подтвердить что ты не робот

Защищенные/зашифрованные QR-коды

Есть ли приложение, в котором вы можете создавать зашифрованные QR-коды?

У меня нет много литературы по шифрованию QR-кодов. Мы стремимся реализовать то, что клиенты могут отправить нам зашифрованную информацию, и мы сканируем их на нашем сайте.

Кто-нибудь из вас участвовал в таком проекте?

4b9b3361

Ответ 1

Другие ответы предполагают, что вы можете использовать QR-код для кодирования URL-адреса, а затем убедитесь, что служба на этом URL-адресе обеспечивает требуемую аутентификацию/безопасность. Если канал, который вы используете для связи с вашим клиентом, является цифровым и подключен к интернету, возможно, это имеет смысл... и если это имеет смысл, вам совсем не нужен QR-код, просто отправьте URL-адрес. Как отметил Тадмас, QR - это просто кодировка.

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

Если это правда - если по какой-то причине вам необходимо передать фактические данные через не-интернет-канал, и фактические данные должны быть завернуты в формат QR-кода, тогда есть другой способ сделать это.

Очевидный подход (hi-level) выглядит так:

message
   --> (compress) --> compressed message 
      --> (encrypt) --> encrypted compressed message
         --> (QR encode) --> QR of encrypted compressed message
            ... send over channel ...
      encrypted compressed message <-- (QR decode) <--
   compressed message <-- (decrypt) <-- 
message <-- (decompress) <--

В первую очередь вы должны выбрать алгоритмы сжатия и криптографии, соответствующие вашим целям.

Обратите внимание, что криптоописание неочевидно, подходите с уважением и осторожностью, не просто швыряйте что-то вместе...

Сжатие перед шифрованием - лучшая практика. Это не всегда необходимо как отдельный шаг, потому что некоторые криптоалгоритмы выполняют сжатие для вас - например, PGP сжимает данные перед шифрованием. Другие нет. Если вы не уверены или подход должен быть общим (работа для разных вариантов криптографического алгоритма), вы всегда можете сжимать; это безопасно, просто иногда бессмысленно.

Выбор криптографического алгоритма имеет много последствий (управление ключами и т.д. - огромная тема). Однако одно из последствий особенно важно для QR-кодов - насколько криптовый шаг раздувает ваше сообщение. Блоки QR-кода имеют ограниченную пропускную способность 2953 байта по 8 бит. Если сообщение, которое вы передаете, близко к этому пределу, вам нужно выбрать криптоалгоритм с размером вывода, равным размеру ввода (например, AES). Если сообщение намного меньше этого предела, тогда вам это неинтересно (например, можно использовать высокоразвивающийся PGP).

Если вы можете найти алгоритмы сжатия и шифрования, которые работают как для вас, так и для вашего клиента (и безопасный способ распространения ключей и т.д.), я не считаю это особенно трудным для удовлетворения вашего первоначального запроса. Не пытайтесь зашифровать сам QR-код (не уверен, что терминология действительно имеет какой-то смысл), но вместо этого сжимайте и шифруйте свои данные, затем QR-кодируйте полученные зашифрованные данные. Ничего к этому.

Ответ 2

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

И проблема в том, что нет, не будет. Нет такой схемы, как "Безопасные QR-коды", определенные в спецификации QR-кода или иначе. Таким образом, ни один читатель там ничего не сделает, но покажет строку текста мусора.

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

Итак, @Dan прав. Правильный способ сделать это - кодировать ссылку на веб-сервер, который бросает вызов для аутентификации.

Если вы хотите, чтобы клиенты шифровали вашу связь с вами, зачем нужно обертывать ее в QR-код? просто зашифруйте и отправьте его через HTTPS. Отправка QR-кода возможна, но, как отправка изображения данных, а не данных. Это действительно не имеет смысла.

Ответ 3

Есть! (несмотря на все вышеперечисленные сложные способы непонимания вопроса и слова "нет, что нет" ).

Ответ - это Android-приложение под названием QR Droid. Это обычный считыватель QR-кода и генератор.

QR Droid может создать QR-код (в том числе из обычного текста клавиатуры) и, возможно, создать вариант с содержимым, зашифрованным с помощью запрошенного ключевого слова. Поскольку это особенность данного приложения, а не QR, это приложение необходимо для чтения и расшифровки зашифрованного QR-кода (он попросит ключ для дешифрования после сканирования).

Это удобный способ создания имени пользователя/паролей, чтобы оставить на виду, чтобы расшифровать (только с помощью QR Droid), когда это необходимо.

Итак, да. Существует приложение, которое может генерировать QR-коды с зашифрованным контентом. Это Android-приложение: QR Droid.

Ответ 4

Вам действительно не нужен "зашифрованный" QR-код - вам просто нужно убедиться, что везде, где информация размещается в Интернете, которая зашифрована.

Ответ 5

Люди часто очень сильно подбрасывают QR-код термина [зашифрованный]. Конечно, вы можете шифровать данные в код (полезный - значение 1/4 "x1/4" ), но никоим образом не будет считаться безопасным. Я сравниваю безопасность с тем, чтобы запереть вашу входную дверь с извилистым галстуком.

Однако существует одна компания, Six Degrees Counterfeit Prevention, которая предоставляет метод математического шифрования 1 Мбит, который может быть инкапсулирован в QR-код.

Посмотрите сами: разместите следующую строку в генераторе QR-кода, а затем сканируйте его самостоятельно.