Перейти к содержимому

CVV-код

CVV-код — трёх- или четырёхзначное число на карте, подтверждающее, что при оплате в интернете карта была у плательщика в руках. Он вычисляется криптографически из номера карты, срока действия и сервис-кода, а хранить его после авторизации запрещено правилами PCI DSS.

Три цифры и одна задача

CVV расшифровывается как Card Verification Value — значение проверки карты. У каждой платёжной системы своё название для одного и того же по смыслу реквизита: Visa использует CVV2, Mastercard — CVC2, российская система Мир — CVP2, JCB — CAV2. American Express выбивается из ряда: у неё код называется CID, состоит из четырёх цифр и напечатан на лицевой стороне над номером, тогда как у остальных три цифры расположены на обороте, на полосе для подписи.

Задача кода одна: подтвердить, что в момент оплаты без физического считывания карты она была в руках у плательщика. Номер карты и срок действия печатаются в чеках, всплывают в утечках и передаются между системами; код проверки не хранится нигде, кроме самой пластиковой карты и криптографического модуля банка. Поэтому его называют элементом проверки владения, в отличие от ПИН-кода, который проверяет знание секрета при офлайн-операции.

Цифры не выбираются случайно и не хранятся в базе эмитента списком. Они вычисляются в аппаратном модуле безопасности из номера карты, даты окончания срока действия и сервис-кода при помощи пары секретных ключей CVK. При авторизации эмитент повторяет расчёт и сравнивает результат с присланным значением. Отсюда следствие, которое многих удивляет: при перевыпуске карты с тем же номером, но новым сроком код меняется — исходные данные для расчёта стали другими.

CVV1, CVV2, iCVV и динамический код

Кодов проверки в карточной индустрии несколько, и путать их не стоит. CVV1 записан в служебных данных магнитной полосы и участвует в операциях, где карту проводят через считыватель. CVV2 — те самые печатные цифры для операций без присутствия карты. iCVV лежит в чипе и намеренно отличается от CVV1: смысл в том, что скопировав данные из чипа на магнитную полосу, мошенник получит клон с неверным значением, и такая операция отклонится.

Отдельная ветвь — динамический код. У виртуальных карт в мобильных приложениях трёхзначное значение обновляется по расписанию, которое устанавливает банк, и старое перестаёт работать. Даже если реквизиты утекут с сайта продавца, срок жизни украденных данных ограничен ближайшим обновлением. Похожую задачу решает токенизация в Pay-сервисах и на платёжных стикерах: продавцу вместо реального номера карты передаётся платёжный токен, привязанный к устройству, и код проверки в такой схеме вообще не участвует.

Проверка кода не заменяет подтверждение операции. За это отвечает протокол 3-D Secure с одноразовым паролем или подтверждением в приложении банка. Правильная модель такая: код проверки говорит «карта была в руках», 3-D Secure говорит «операцию одобрил тот, кто управляет счётом». Отсутствие второго делает первое слабой защитой, поэтому эквайеры и банки требуют полноценную аутентификацию.

Почему код нельзя хранить

Стандарт PCI DSS относит код проверки к чувствительным аутентификационным данным и запрещает сохранять его после авторизации в любом виде — включая зашифрованный, включая логи, включая скриншоты обращений в поддержку. Ограничение жёстче, чем для самого номера карты: тот при обоснованной необходимости хранить можно, приведя в нечитаемый вид. Нарушение выявляется на аудите и обходится дорого, вплоть до отключения от приёма карт.

Отсюда практика подписок и повторных списаний: при первом платеже покупатель вводит полные реквизиты, магазин получает от эквайера токен, а последующие списания идут по токену без кода проверки. Если сервис просит вводить три цифры при каждом продлении — это не признак надёжности, а сигнал, что процесс выстроен неудачно.

Для интернет-магазина вывод простой: карточные данные не должны проходить через его серверы. Форму оплаты показывает эквайер на своей стороне или в защищённом фрейме, продавец видит только результат и усечённый номер вида «•••• 1234» вместе с BIN картой для аналитики. Для разовых счетов удобнее выставлять платёжную ссылку: реквизиты вводятся на странице банка, и зона ответственности продавца сжимается до факта оплаты.

Где код не спрашивают и когда его выманивают

При оплате по QR через Систему быстрых платежей карточных реквизитов нет вовсе: деньги идут со счёта на счёт, покупатель подтверждает перевод в приложении своего банка, продавец получает уведомление о зачислении. Ни номер карты, ни код проверки, ни срок действия в этой цепочке не передаются — механика подробно разобрана в гайде как оплатить по QR-коду с телефона. То же справедливо для оплаты через Pay-сервисы: там работает токен и биометрия устройства.

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

Базовая гигиена: не диктовать код по телефону никому, включая тех, кто представился банком; не отправлять фотографию карты с обеих сторон в мессенджерах; заклеивать или запоминать и стирать цифры на пластике, если карта часто оказывается в чужих руках; включать уведомления об операциях. Если код всё же засветился, карту перевыпускают — при выпуске нового пластика с новым сроком действия значение пересчитывается автоматически.

Частые вопросы

Где находится CVV на карте Мир?

У карт Мир код называется CVP2 и напечатан на обороте, на полосе для подписи, справа от последних цифр номера. Он состоит из трёх цифр, как CVV2 у Visa и CVC2 у Mastercard. Исключение среди систем — American Express: у неё четырёхзначный CID расположен на лицевой стороне карты над номером. На картах без печатных реквизитов код показывается в приложении банка.

Можно ли оплатить в интернете без кода проверки?

Иногда да. Регулярные списания по подписке идут по сохранённому токену, оплата через Pay-сервисы — по токену устройства с биометрией, а платежи по QR через СБП вообще не используют карточные реквизиты. При разовой оплате новой картой на сайте код почти всегда запрашивается вместе с одноразовым паролем 3-D Secure. Правила задают платёжная система и банк-эмитент.

Почему после перевыпуска карты код изменился?

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

Магазин сохраняет мою карту — значит, он хранит и CVV?

Не должен. Стандарт PCI DSS запрещает хранить код проверки после авторизации в любом виде, включая зашифрованный. Сохранение карты для повторных платежей реализуется через токен, который выдаёт эквайер: магазин видит токен и усечённый номер, но не полные реквизиты. Если сервис просит вводить три цифры при каждом продлении подписки, процесс выстроен неудачно.

Мошенники узнали код — что делать?

Заблокировать карту в приложении банка и запросить перевыпуск: при выпуске нового пластика меняются срок действия и, соответственно, код проверки, старые реквизиты становятся бесполезны. Проверить историю операций и оспорить незнакомые списания в установленный банком срок. Если данные ввели на подозрительной странице после сканирования QR, стоит сменить и пароль от онлайн-банка.