Возможности QR-кодов / Хабр
Многое было сказано о форматах самих qr-кодов, но не менее важно то, что кодирует сам штрих-код. Как правило, qr-коды кодируют какой-то текст, однако этот текст может содержать различные команды для сканера, которые, например, сообщают ему, что закодированный текст — это ссылка и что ее необходимо открыть в браузере.
В qr-коды можно закодировать самый различный текст с указаниями для сканера, как этот текст интерпретировать и какую информацию показать пользователю. Например, в qr-код можно закодировать контактную информацию с командой добавить ее в контакты телефона. Однако, чтобы каждый сканер мог понять, какой тип информации и какие команды зашифрованы, нужны стандарты.
В этой статье будут рассмотрены некоторые из этих стандартов и описаны возможные типы данных, которые можно спрятать в qr-код.
Все примеры были протестированы с помощью сканера в IOS 14 и the-qrcode-generator. com
Ссылка
Наиболее распространенным применение qr-кода — это кодирование ссылок. Для этого просто закодируйте текст ссылки в qr-код. Добавьте протокол https://
в начало ссылки, чтобы убедиться, что сканер распознает текст именно как ссылку.
Пример qr-кода с ссылкой
В дикой природе встречается префикс urlto:
. Кодируемый текст тогда выглядит, как urlto:habr.com
. Однако данный формат поддерживается не всеми современными сканерами (например, не работает во встроенном в IOS 14)
Адрес электронной почты
Чтобы закодировать адрес электронной почты, например [email protected]
. Нужно дополнить адрес до ссылки ( подробнее про URI scheme ), которая будет распознана, как команда открыть приложение почты: mailto:[email protected].
Добавляя параметры к ссылке, можно указать тему письма, его содержание и многое другое. Стандарт mailto
RFC 6068 является частью интернет стандартов IETF.
Поэкспериментировав, можно понять, что умный сканер в IOS 14 распознает просто закодированный email и предлагает написать на него письмо. Однако, чтобы указать другие параметры, уже потребуется mailto:
префикс.
# Только адрес получателя (распознается как почта в сканере IOS 14) [email protected] # С использованием mailto схемы mailto:[email protected] # Адрес и тема письма mailto:[email protected]?subject=Hello%20from%20Habr # Получатель, сс: копия, bcc: скрытая копия и тема письма mailto:[email protected][email protected],[email protected],[email protected]&[email protected]&subject=Big%20News # Адрес, CC, BCC, тема и текст письма mailto:[email protected][email protected],[email protected],[email protected]&[email protected]&subject=Big%20News&body=QR-code%20are%20cool.
Важно заметить, что любые небуквенные символы в ссылках нужно переводить в специальный формат.
Номер телефона
Чтобы закодировать номер телефона, нужно использовать tel
url-схему. Чтобы гарантировать правильность распознавания номера, лучше указывать полную версию номер (например, код страны + код города + номер).
Как и с адресом электронной почты, просто закодированный номер телефона распознается в сканере IOS 14.
# Только номер +78005553535 # Tel url-схема tel:+78005553535
Контактная информация
Для передачи контакта существует несколько форматов:
NTT DoCoMo MECARD
Этот формат похож на предыдущие, но уже не является ссылкой.
MECARD:N:Owen,Sean;ADR:76 9th Avenue, 4th Floor, New York, NY 10011;TEL:12125551212;EMAIL:[email protected];;
Вначале идет префикс с указанием формата
MECARD
, после двоеточие через точку с запятой перечисляются параметры в формате{ключ}:{значение}
. В конец добавляется еще одна точка с запятой.BIZCARD (документации по этому стандарту я не смог найти)
BIZCARD:N:Sean;X:Owen;T:Software Engineer;C:Google;A:76 9th Avenue, New York, NY 10011;B:+12125551212;E:[email protected];;
Синтаксис похож на предыдущий формат
vCard
Большинство устройств поддерживают этот формат. Однако у него существует несколько различных версий, отличающихся набором допустимых параметров.
BEGIN:VCARD N:Smith;John; TEL;TYPE=work,VOICE:(111) 555-1212 TEL;TYPE=home,VOICE:(404) 386-1017 TEL;TYPE=fax:(866) 408-1212 EMAIL:[email protected] ORG:Smith Designs LLC TITLE:Lead Designer ADR;TYPE=WORK,PREF:;;151 Moore Avenue;Grand Rapids;MI;49503;United States of America URL:https://www.smithdesigns.com VERSION:3.0 END:VCARD
Некоторые из доступных параметров описаны в таблице ниже.
SMS
Для отправки смс существует формат со url-схемой sms:
, похожей на отправку email.
# Отправить смс на номер sms:+15105550101 # Отправить определенный текст smsto:+15105550101:hello there
Формат smsto:
является аналогом sms:
, но только с помощью него мне удалось передать текст сообщения (все тесты проводились на IOS 14).
FaceTime
В документации IOS есть информация о url-схемах для доступа к звонкам FaceTime
Пример qr-кода с вывозом FaceTime
# FaceTime видео-звонок facetime:+18005551212 facetime:[email protected] # FaceTime аудио-звонок facetime-audio:+18005551212 facetime-audio:[email protected]
Карты
Для передачи точки на карте используется geo:
url — схема. Через запятую перечисляются широта, долгота и опционально высота над уровнем моря (в метрах).
# Координаты geo:40.71872,-73.98905 # Координаты + высота geo:40.71872,-73.98905,100
Однако более современным способом являются простые ссылки, генерируемые самим приложением Карты. В этом случае доступно больше параметров.
# Apple maps https://maps.apple.com/place?address=400%20Broad%20St,%20Seattle,%20WA%20%2098109,%20United%20States&auid=17457489312301189071&ll=47.620521,-122.349293&lsp=9902&q=Space%20Needle # Google maps https://maps.google.com/?address=400%20Broad%20St,%20Seattle,%20WA%20%2098109,%20United%20States&auid=17457489312301189071&ll=47.620521,-122.349293&lsp=9902&q=Space%20Needle
События в календаре
iCalendar формат используется для хранения календарей. Компонент vEvents отвечает за хранения событий, он и используется для кодирования в qr-код.
BEGIN:VEVENT UID:[email protected] DTSTAMP:19970901T130000Z DTSTART:19970903T163000Z DTEND:19970903T190000Z SUMMARY:Annual Employee Review CLASS:PRIVATE CATEGORIES:BUSINESS,HUMAN RESOURCES END:VEVENT
WiFi сети
После сканирование такого qr-кода устройство (Android, iOS 11+) предложит подключиться к сети.
Пример qr-кода для подключения к WiFi
WIFI:T:WPA;S:mynetwork;P:mypass;;
Другие параметры приведены в таблице ниже
Недавно в рамках статьи про создания телеграм ботов, я сделал бота для генерации WiFi qr-кодов. Можете воспользоваться им, чтобы без труда создать WiFi qr-код и больше не мучиться с перепечатыванием длинных паролей.
Telegram
У телеграма есть своя url-схема, которая позволяет делиться ссылками.
# Простая ссылка https://t.me/share/url?url={url}&text={text} https://telegram.me/share/url?url={url}&text={text} # Команда для приложения tg://msg_url?url={url}&text={text}
Подробнее про возможности «поделиться через телеграм» можно почитать в документации.
Выводы
Многие приложения имеют url-схемы, которые дают возможность обращаться к ним по ссылкам. Эти ссылки, в свою очередь, можно спрятать в qr-коды. Однако для некоторых типов данных были разработаны собственные текстовые форматы, которые подходят для сохранения в qr-коды.
Источники
CSS-Tricks: Mailto Links
Apple URL Scheme Reference: Mail Links
Android: Common Intents: Mail Links
RFC 6068 — The
mailto
URI SchemeCSS-Tricks: The Current State of Telephone Links
Apple URL Scheme Reference: Phone Links
Android: Common Intents: Phone Links
CSS-Tricks: iPhone Calling and Texting Links
Apple URL Scheme Reference: SMS Links
Apple URL Scheme Reference: FaceTime Links
Android: Common Intents: SMS Links
RFC 5724 — URI Scheme for Global System for Mobile Communications (GSM) & Short Message Service (SMS)
Облачные серверы от Маклауд быстрые и безопасные. Зарегистрируйтесь по ссылке выше или кликнув на баннер и получите 10% скидку на первый месяц аренды сервера любой конфигурации!
20 способов использования QR-кодов — Look At Me
Лично я узнала, что такое QR-код, год назад от одного моего бразильского приятеля. Сейчас я много где вижу эти коды, придуманные еще в 1994 году японцами, и сама иногда их использую.
Маленькая справка: QR-код- это матричный код (двумерный штрих-код), разработанный компанией «Denso Wave». Аббревиатура QR (quick response) означает «быстрый отклик». Возможность распознавания кодов сканирующим оборудованием делает их такими популярными в рекламе, торговле, производстве, логистике. В QR-код можно закодировать любую информацию, текст, URL. Для создания кодов существуют сайты-генераторы, где каждый может поэкспериментировать. А для считывания кодов необходима простая программа, которая устанавливается на более-менее современный мобильный телефон.
Вот здесь (а также на других сайтах) вы можете провести собственные эксперименты:
http://qrcoder. ru/
http://goqr.me/
Несколько месяцев назад моя подруга выходила замуж, и я решила подарить новобрачным футболки из серии «Just Married», где сзади была надпись, спереди были зашифрованы мои свадебные поздравления. Сейчас я довольно часто делают такие шифровальческие подарки своим друзьям.
На самом деле, я пишу этот пост, прежде всего, чтобы разобраться, какие же еще способы применения QR-кодов существуют. Возможно, и вы возьмете что-нибудь себе на заметку!
1). Открытки, плакаты, наружная реклама, с зашифрованным сообщением или пожеланием;
2). Скидки: вы можете предъявить код с вашего телефона для сканирования в магазине, и получить скидку;
3). Ссылки для скачивания файлов, музыки, подкастов, видео, афиши. Вы не только можете скачать что-то в интернете, но и воспользоваться таким устройством, как iCandy, которое будет переключать ваши любимые караоке-мелодии сразу после сканирования штрих-кодов (http://www. youtube.com/watch?v=GPryGwdm1Sg
Недавно был опубликован пост, о том, как можно скачать афишу клуба «Космонавт», используя QR-код (http://www.lookatme.ru/flows/tehnologii/posts/104667-afisha-iz-qr-koda)
4). Зашифрованный URL: как правило, адрес того сайта, куда нас хочет привлечь рекламодатель. На сегодняшний день это самый популярный способ использования кода, после штрих-кодов;
5). Видоизмененный логотип известных брендов, который тоже может включать в себя URL;
6). Приглашение «добавить в друзья» в Facebook или другой социальной сети;
7). Часы, которые замысловатым образом показывают время;
8). Google-mapping в туризме: пишут, что использование QR-кодов, расположенных на городских достопримечательностях, и отсылающих пользователей на Google-карты места, либо рассказывающих о самом месте и указывающих на местоположение объекта, было успешно использовано в Украине, Львове. Очень удобно для туристов, которые не знают кириллицы;
9). Лоттереи: Tissot «Scan to Win» campaign, предоставляла возможность каждому, сканирующему код, зарегистрироваться и стать участником виртуальной лотереи, выигрышем которой были бы часы измвестной швейцарской марки;
10). Электронный билет: вы получаете QR-код через смс и предъвляете его на железнодорожной станции или в аэропорту;
11). Японскую визу также дополняет QR-код;
12). Визитные карточки, на которых ваши контакты также представлены в виде кода, и которые при сканировании смартфоном, добавляются в вашу адресную книгу;
13). Штрих-код на товарах-самый первый и самый распространенный способ применения;
14). Татуировка- дополнительный вариант нательного рисунка, а также возможный способ «чипирования» людей;
15). Дизайн одежды и аксессуаров;
16). Архитектурный дизайн;
Дополненная реальность
В Японии (Tashikawa) решили использовать QR-коды не просто в оформлении здания, но, которые при сканированнии специальным приложением для IPhone, позволяли бы узнать всю актуальную информацию о магазине. Приложение отображало «в дополнении» силуэты людей, прогуливающихся по торговому центру; нажав на человечка пользователь мог видеть различные комментрии появляющиеся в специальных «speech bubbles» on-line. Используя это приложение можно было узнать о распродажах, а также получить специальные купоны.
Видео о запуске этого проекта N building вы можете посмотреть здесь: http://vimeo.com/8468513
Проект дизайна бизнес-центра в ОАЭ
17). Кладбища: японцы решили почтить память своих умерших родственников и вписали всю необходимую информацию о человеке в матричный код. Возможно, это также удобно для ведения базы данных кладбища;
18). Психогеография- течение, возникшее в середине 50-х годов, берущее свое начало с Yellow Arrows. Идея состоит в том, что каждый объект городского пространства имеет определенный психологический портрет, составленный из воспоминаний, ассоциаций, событий, произошедших с людьми, рядом с этим объектом. Раньше люди оставляли желтые стрелки- как метки, а сейчас присваивают зданию, парку, или другому объекту в городе, код, а в интернете выкладывают свои истории, относящиеся к данному объекту, дополняя таким образом реальным облик виртуальным двойником. Это что-то напоминающее надписи «Вася был здесь».
19). Семапедия (www.semapedia.org): сайт, где вы также можете соединить объекты реального мира с миром виртуальным, присвоив объекту QR-код, и связав его со статьей в Википедии.
20). Объявления в газетах и журналах
После серфинга в интернете на тему QR-кодов, я пришла к выводу, что использование данной технологии на Востоке и Западе имеет разный характер. И скорее всего, это связано с особенностями в психофизиологии, культуре, менталитете разных народов. Так, «левополушарные» европейцы, используют QR-коды намного меньше, и как правило, в тех сферах, которые относятся к вербальной коммуникации, а «правополушарные» азиаты используют их не только намного чаще и больше, но даже использование кодов проникают в совершенно нестандартные области. Пожалуй, это также связано с лингвистическими особенностями каждой культуры в частности (различиями между алфавитом и иероглифами).
Спасибо за внимание!
Об этом и немного другом я также пишу в своем блоге www.iamannaskryabina.blogspot.com
QR Droid Zapper | Зашифрованные QR-коды: делитесь секретными сообщениями
QR Droid представил новую концепцию: Зашифрованные QR-коды
В этом руководстве объясняется, как создать QR-код, который могут прочитать только люди, которым вы авторизовали:
- Если у вас еще нет QR Droid , получите его сейчас бесплатно с Android Market. Просто нажмите или отсканируйте этот QR-код:
http://qr.
- Открыто QR Droid и выберите вкладку « Поделиться »
- Теперь выберите любую опцию , в соответствии с какой информацией вы хотите поделиться . Чтобы упростить этот пример, я выберу « Plain Text », чтобы поделиться текстовым сообщением.
- Введите данные, которыми хотите поделиться, и нажмите правую верхнюю кнопку, чтобы создать из них QR-код.
Теперь у вас есть QR-код ( public ) на экране. Только люди, которые могут видеть этот QR-код, смогут отсканировать и расшифровать его. Но что, если кто-то без авторизации получит к нему доступ? QR Droid 4 дает вам простое решение для этого :
- Нажмите верхнюю правую кнопку: Зашифровать
- Вам будет предложено выбрать пароль и ввести его дважды (просто чтобы убедиться, что вы не ошиблись), а также дополнительная подсказка для пароля
— Пароль : Любой выбранный вами пароль
— Подтверждение пароля : Введите тот же выбранный пароль
— Подсказка к паролю : При желании введите что-нибудь, чтобы запомнить пароль. Эта информация будет общедоступной!
В этом примере я ввел « qr » как для пароля, так и для подтверждения пароля, и « тот, который начинается с Q » в качестве подсказки для пароля, чтобы убедиться, что я его не забуду.
- После нажатия Ok вы получите новый QR-код. Этот QR-код будет содержать ту же информацию, но зашифрованную с помощью алгоритма DES (56 бит). Если вы нажмете « Info », вы увидите, что именно он содержит.
Как видите, читаема только подсказка для пароля (
- Теперь вы можете поделиться этим QR-кодом и опубликовать его в своем аккаунте Twitter или Facebook , отправить его по электронной почте или любым другим способом. Для этого просто нажмите кнопку « Поделиться »
- Когда кто-нибудь отсканирует или расшифрует ваш QR-код, он получит следующее:
Как видите, подсказка для пароля будет видна, пароль не требуется. Но, чтобы прочитать что-нибудь еще, требуется правильный пароль.
- Только после ввода пароля будет показано исходное сообщение:
- Теперь просто коснитесь личного номера телефона, чтобы позвонить!
Таким образом, вы можете делиться чем угодно только с теми, с кем хотите. Только те, кто знает ваш секретный пароль!
Итак, чего же вы ждете? Получите QR Droid прямо сейчас, это бесплатно!
Примечание : зашифрованные QR-коды еще не являются стандартными. На данный момент расшифровать их сможет только Android-устройство с QR Droid. Но не волнуйтесь, это приложение бесплатное, поэтому человек, которому вы хотите расшифровать ваш код, может просто скачать его.
Метки: helphow toqr droidstep-by-step
Вернуться к началу
Безопасные / зашифрованные QR-коды
Другие ответы предполагают, что вы можете использовать QR-код для кодирования URL-адреса, а затем убедиться, что служба по этому URL-адресу обеспечивает необходимую аутентификацию / безопасность. Если канал, который вы используете для связи с вашим клиентом, является цифровым и подключенным к Интернету, возможно, это имеет смысл … и если это действительно имеет смысл, вам вообще не нужен QR-код, просто отправьте URL-адрес. Как указал Тадмас, QR — это просто кодировка.
Однако из вашего первоначального вопроса я делаю вывод, что канал, который вы используете, является аналоговым (бумажный??) или цифровым, но не подключенным к Интернету (цифровые фотографии бумажного оригинала или снимок экрана или ??). Это не самый обычный вариант использования — не то, что большинство респондентов на этом форуме, естественно, подумали бы, — но я могу представить некоторые реалистичные варианты использования, например. для счетов или платежных данных, где это может происходить.
Если это правда — если по какой-то причине вам нужно передать фактические данные через неинтернет-канал, и фактические данные должны быть заключены в формат QR-кода, то есть другой способ сделать это.
Очевидный подход (высокий уровень) выглядит следующим образом:
сообщение --> (сжать) --> сжатое сообщение --> (зашифровать) --> зашифрованное сжатое сообщение --> (кодирование QR) --> QR зашифрованного сжатого сообщения . .. отправить по каналу ... зашифрованное сжатое сообщение <-- (декодирование QR) <-- сжатое сообщение <-- (расшифровать) <-- сообщение <-- (распаковать) <--
, в котором вашей основной задачей является выбор алгоритмов сжатия и шифрования, соответствующих вашим целям.
Заметьте, шифрование неочевидно, подходите к нему с уважением и осторожностью, не смешивайте что-то просто так...
Сжатие перед шифрованием является лучшей практикой. Это не всегда требуется как отдельный шаг, потому что некоторые криптоалгоритмы выполняют сжатие за вас — например, PGP сжимает данные перед шифрованием. Другие этого не делают. Если вы не уверены или подход должен быть общим (работайте с разными вариантами криптоалгоритма), вы всегда можете сжать; это безопасно, просто иногда бессмысленно.
Выбор криптоалгоритма имеет множество последствий (управление ключами и т. д. — огромная тема). Однако одно из следствий особенно актуально для QR-кодов — насколько шаг шифрования раздувает ваше сообщение.