🔍 КАК ЭТО УСТРОЕНО

Как работает QR-код и что в нём зашифровано

Ты наводишь камеру на чёрно-белый квадратик — и через долю секунды открывается сайт или платёж проходит. Разбираемся, как этот узор из пикселей хранит данные и почему его не сломает даже грязь и царапины.

Ты наводишь камеру на странный чёрно-белый квадрат — и телефон мгновенно открывает сайт, добавляет контакт или проводит оплату. Но что вообще спрятано в этой россыпи пикселей? И почему код читается, даже если он смят, заляпан кофе или наполовину закрыт пальцем?

Чёрное и белое — это нули и единицы

Любой QR-код — это сетка из маленьких квадратиков, которые называют модулями. Каждый модуль либо чёрный, либо белый. И тут начинается главное волшебство: чёрный — это единица, белый — это ноль. Ровно так же, как компьютер хранит вообще всё на свете — музыку, фото, тексты — в виде нулей и единиц.

Представь шахматную доску, где вместо фигур по клеткам разложена секретная записка: закрашена клетка — да, пустая — нет. QR-код устроен похоже, только клеток гораздо больше: от 21×21 в самых маленьких кодах до 177×177 в самых больших. Чем больше сетка — тем больше информации в неё влезает.

Чтобы превратить буквы в эти нули и единицы, используют таблицы кодирования. Например, в стандарте UTF-8 каждой букве и символу соответствует своя комбинация битов. Сканер считывает узор, собирает биты обратно в буквы — и получается читаемая ссылка или текст.

Три глаза, которые помогают коду найти себя

Посмотри на любой QR-код повнимательнее. В трёх углах — больших, верхнем левом, верхнем правом и нижнем левом — ты увидишь по большому квадрату с рамкой внутри. Это поисковые узоры (по-английски их называют finder patterns), и без них ничего бы не работало.

Зачем они нужны? Камера телефона ведь не знает заранее, где код, под каким углом ты его держишь и не перевёрнут ли он вверх ногами. Эти три квадрата — как маяки. Программа сначала находит именно их, а уже по их расположению понимает, где границы кода, насколько он наклонён и как его правильно "развернуть".

Три квадрата в углах — это как уши и нос на лице: даже если ты видишь человека сбоку или в темноте, по ним мозг мгновенно понимает, где верх, где низ и куда смотреть.

Именно поэтому угловых квадратов три, а не четыре. Трёх точек достаточно, чтобы однозначно задать положение и поворот квадрата в пространстве. Четвёртый угол вычисляется сам — а заодно по нему сканер проверяет, не растянут ли код.

Магия, которая чинит повреждённый код

Самое удивительное в QR-коде — он продолжает работать, даже если часть его испорчена. Поцарапали наклейку, капнули соусом, кто-то нарисовал поверх логотип — а код всё равно считывается. Как так?

Секрет в коррекции ошибок. В код заранее встроена избыточность — дополнительные данные, по которым можно восстановить потерянные кусочки. Работает это на математике под названием коды Рида — Соломона (та же технология, что когда-то спасала музыку на поцарапанных CD-дисках).

У QR-кодов есть четыре уровня устойчивости к повреждениям:

  • L — можно потерять около 7% кода;
  • M — около 15%;
  • Q — около 25%;
  • H — до 30% площади.

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

А что вообще можно туда зашить?

Многие думают, что QR-код — это всегда ссылка на сайт. На самом деле внутри может быть почти что угодно, ведь это просто текст, упакованный в узор:

  • адрес сайта, который откроется в браузере;
  • контакт целиком — имя, телефон, почта (формат vCard);
  • данные для подключения к Wi-Fi — название сети и пароль;
  • реквизиты для оплаты по СБП;
  • обычный текст или даже короткое стихотворение.

Когда ты наводишь камеру, телефон распознаёт, что за данные внутри, и предлагает подходящее действие: открыть ссылку, сохранить контакт, подключиться к сети. Сам код при этом ничего "не делает" — он лишь хранилище. Все решения принимает уже твой телефон.

И ещё важный момент про безопасность: QR-код не может сам по себе "заразить" телефон. Но он легко спрячет ссылку на поддельный сайт — ведь глазами ты не прочитаешь, куда ведёт узор из квадратиков. Поэтому правило простое: прежде чем что-то вводить, посмотри на адрес, который показал телефон. Узор честный, а вот тот, кто его напечатал, — не всегда.

Маленький квадрат — большая идея

QR-код придумал японский инженер Масахиро Хара ещё в 1994 году, чтобы отслеживать детали на заводе. Тогда никто и не думал, что эти квадратики окажутся в меню кафе, на билетах, упаковках и экране твоего телефона по сто раз на дню.

А вся гениальность — в простоте: чёрное и белое как ноль и единица, три маяка по углам, чтобы найти себя в пространстве, и математика, которая чинит повреждения. Теперь, наводя камеру на очередной квадрат, ты будешь знать, что за магия прячется внутри этой россыпи пикселей.

#qr-код#данные#как это устроено#кодирование#технологии