верификация портативных потребительских устройств
Классы МПК: | G06Q20/40 авторизация, например идентификация плательщика или получателя платежа, верификация покупателя или магазинных сертификатов; проверка и одобрение плательщиков, например проверка кредитных историй или черных списков |
Автор(ы): | ХАММАД Айман (US) |
Патентообладатель(и): | ВИЗА ИНТЕРНЭШНЛ СЕРВИС АССОСИЭЙШН (US) |
Приоритеты: |
подача заявки:
2010-05-14 публикация патента:
10.06.2014 |
Изобретение относится к области верификации портативных потребительских устройств. Техническим результатом является повышение безопасности проведения финансовых транзакций при использовании портативных потребительских устройств (например, кредитной карты). Маркер верификации соединяется с компьютером посредством USB-подключения для того, чтобы использовать сетевые средства компьютера. Маркер верификации считывает идентификационную информацию из портативного потребительского устройства пользователя и отправляет информацию в запись проверки достоверности по сети связи с использованием сетевых средств компьютера. Объект проверки достоверности применяет один или более тестов проверки достоверности к информации, которую он принимает из маркера верификации. Если выбранное число тестов пройдено, объект проверки достоверности отправляет значение верификации устройства в маркер верификации и необязательно в сеть обработки платежей. Маркер верификации может вводить значение верификации устройства в поле CVV веб-страницы, отображаемой на дисплее компьютера, или может отображать значение пользователю с использованием дисплея компьютера. 3 н. и 17 з.п. ф-лы, 8 ил.
![верификация портативных потребительских устройств, патент № 2518680](/images/img_patents/2/2518/2518680/2518680.jpg)
![верификация портативных потребительских устройств, патент № 2518680](/images/img_patents/2/2518/2518680/2518680-2.jpg)
![верификация портативных потребительских устройств, патент № 2518680](/images/img_patents/2/2518/2518680/2518680-3.jpg)
![верификация портативных потребительских устройств, патент № 2518680](/images/img_patents/2/2518/2518680/2518680-4.jpg)
![верификация портативных потребительских устройств, патент № 2518680](/images/img_patents/2/2518/2518680/2518680-5.jpg)
![верификация портативных потребительских устройств, патент № 2518680](/images/img_patents/2/2518/2518680/2518680-6.jpg)
![верификация портативных потребительских устройств, патент № 2518680](/images/img_patents/2/2518/2518680/2518680-7.jpg)
![верификация портативных потребительских устройств, патент № 2518680](/images/img_patents/2/2518/2518680/2518680-8.jpg)
Формула изобретения
1. Маркер верификации, который получает значение верификации устройства для транзакции, проводимой с использованием портативного потребительского устройства, причем маркер верификации содержит:
- периферийный интерфейс, выполненный, чтобы соединяться с периферийным интерфейсом компьютера;
- считыватель, выполненный, чтобы считывать идентификационную информацию из портативных потребительских устройств;
- компьютерно-читаемый носитель;
- процессор данных, электрически соединенный с периферийным интерфейсом маркера верификации, считывателем и компьютерно-читаемым носителем;
- код, воплощенный на компьютерно-читаемом носителе, который инструктирует процессору данных принимать идентификационную информацию, считанную из портативного потребительского устройства посредством считывателя, для упомянутой транзакции, причем идентификационная информация включает в себя номер счета и первое значение верификации устройства, предоставляемое портативным потребительским устройством;
- код, воплощенный на компьютерно-читаемом носителе, который инструктирует процессору данных осуществлять связь с компьютером посредством периферийного интерфейса маркера верификации и осуществлять доступ к сетевому средству компьютера;
- код, воплощенный на компьютерно-читаемом носителе, который инструктирует процессору данных устанавливать, с использованием сетевого средства компьютера, связь с объектом, который может предоставлять второе значение верификации устройства;
- код, воплощенный на компьютерно-читаемом носителе, который инструктирует процессору данных передавать, по меньшей мере, номер счета и первое значение верификации устройства из принимаемой идентификационной информации в упомянутый объект посредством сетевого средства компьютера; и
- код, воплощенный на компьютерно-читаемом носителе, который инструктирует процессору данных принимать, после передачи упомянутой идентификационной информации, второе значение верификации устройства для упомянутой транзакции из упомянутого объекта посредством сетевого средства компьютера, причем второе значение верификации устройства сконфигурировано с возможностью ввода в поле значения верификации карты на веб-странице продавца.
2. Маркер верификации по п.1, в котором периферийный интерфейс маркера верификации содержит разъем универсальной последовательной шины.
3. Маркер верификации по п.1, в котором идентификационная информация зашифрована, и при этом первое значение верификации устройства варьируется каждый раз, когда портативное потребительское устройство считывается на предмет идентификационной информации.
4. Маркер верификации по п.1, в котором код, который инструктирует процессору данных осуществлять связь с компьютером, содержит код, который инструктирует процессору данных отправлять драйвер устройства в компьютер, и инструкцию, чтобы устанавливать драйвер устройства в операционной системе компьютера, при этом драйвер устройства предоставляет возможность компьютеру распознавать маркер верификации и осуществлять связь с маркером верификации;
- в котором код, который инструктирует процессору данных осуществлять доступ к сетевому средству компьютера, содержит вызов функции в модуль сетевых служб операционной системы компьютера; и
в котором код, который инструктирует процессору данных устанавливать связь с упомянутым объектом с использованием сетевого средства компьютера, содержит один или более вызовов функций в интерфейс прикладного программирования модуля сетевых служб компьютера, причем один или более вызовов функций предоставляют универсальный идентификатор ресурса упомянутого объекта и инструкцию, чтобы устанавливать сеанс связи с упомянутым объектом, при этом универсальный идентификатор ресурса сохранен на компьютерно-читаемом носителе или считывается из портативного потребительского устройства.
5. Маркер верификации по п.1, дополнительно содержащий порядковый номер и ключ шифрования, и при этом маркер верификации передает порядковый номер и сообщение, зашифрованное посредством ключа шифрования, в упомянутый объект, причем порядковый номер и ключ шифрования уникально назначены маркеру верификации.
6. Маркер верификации по п.1, дополнительно содержащий:
- код, воплощенный на компьютерно-читаемом носителе, который инструктирует процессору данных находить веб-страницу обозревателя на компьютере, которая имеет поле формы для значения верификации устройства, и вводить значение верификации устройства, принятое из упомянутого объекта, в поле формы.
7. Маркер верификации по п.1, дополнительно содержащий:
- код, воплощенный на компьютерно-читаемом носителе, который инструктирует процессору данных отображать значение верификации устройства, принятое из упомянутого объекта, пользователю на дисплее компьютера.
8. Маркер верификации по п.1, в котором код, который инструктирует процессору данных принимать значение верификации устройства из упомянутого объекта, дополнительно инструктирует процессору данных принимать динамический номер счета из упомянутого объекта.
9. Маркер верификации по п.8, дополнительно содержащий:
- код, воплощенный на компьютерно-читаемом носителе, который инструктирует процессору данных находить веб-страницу обозревателя на компьютере, которая имеет первое поле формы для номера счета и второе поле формы для значения верификации устройства, и заполнять первое поле динамическим номером счета и второе поле - значением верификации устройства, принятым из упомянутого объекта.
10. Маркер верификации по п.8, дополнительно содержащий:
- код, воплощенный на компьютерно-читаемом носителе, который инструктирует процессору данных отображать динамический номер счета и значение верификации устройства, принятое из упомянутого объекта, пользователю на дисплейном устройстве компьютера.
11. Маркер верификации по п.1, дополнительно содержащий:
- код, воплощенный на компьютерно-читаемом носителе, который инструктирует процессору данных предлагать пользователю вводить пароль на клавиатуре компьютера, считывать пароль, введенный пользователем, и сравнивать введенный пароль с сохраненным паролем, воплощенным на компьютерно-читаемом носителе; и
- код, воплощенный на компьютерно-читаемом носителе, который инструктирует процессору данных предотвращать, по меньшей мере, считывание или отправку идентификационной информации, когда считанный пароль не является идентичным сохраненному паролю.
12. Способ получения значения верификации устройства для транзакции, проводимой с использованием портативного потребительского устройства, содержащий этапы, на которых:
- устанавливают линию связи между маркером верификации и компьютером, причем компьютер содержит сетевое средство;
- устанавливают, с использованием сетевого средства компьютера, сеанс связи между маркером верификации и объектом, который может предоставлять значение верификации устройства;
- считывают идентификационную информацию из портативного потребительского устройства в маркер верификации для упомянутой транзакции, причем считанная идентификационная информация включает в себя номер счета и первое значение верификации устройства;
- передают считанную идентификационную информацию из маркера верификации в упомянутый объект через сеанс связи, причем считанную идентификационную информацию передают в упомянутый объект в зашифрованной форме; и
- после передачи считанной идентификационной информации, принимают, в маркере верификации, второе значение верификации устройства для упомянутой транзакции из упомянутого объекта посредством сеанса связи, причем второе значение верификации устройства сконфигурировано с возможностью ввода в поле значения верификации карты на веб-странице продавца.
13. Способ по п.12, дополнительно содержащий этап, на котором шифруют, в маркере верификации по меньшей мере часть идентификационной информации, считанной из портативного потребительского устройства, с использованием ключа шифрования, сохраненного в маркере верификации.
14. Способ по п.12, дополнительно содержащий этапы, на которых:
- предлагают пользователю вводить пароль в компьютер;
- считывают пароль, введенный пользователем;
- сравнивают введенный пароль с паролем, сохраненным в маркере верификации; и
- предотвращают, по меньшей мере, считывание или отправку идентификационной информации, когда считанный пароль не является идентичным сохраненному паролю.
15. Способ по п.12, дополнительно содержащий этап, на котором:
- передают из маркера верификации в упомянутый объект через сеанс связи порядковый номер, сохраненный в маркере верификации, и сообщение, зашифрованное посредством ключа шифрования, сохраненного в маркере верификации, причем порядковый номер и ключ шифрования уникально назначены маркеру верификации.
16. Способ по п.12, дополнительно содержащий по меньшей мере один из этапов, на которых:
- отображают значение верификации устройства, принятое из упомянутого объекта, пользователю на дисплее компьютера; и
- находят веб-страницу обозревателя на компьютере, которая имеет поле формы для значения верификации устройства, и вводят значение верификации устройства, принятое из упомянутого объекта, в поле формы.
17. Способ по п.12, дополнительно содержащий этап, на котором, после передачи идентификационной информации:
- принимают, в маркере верификации, динамический номер счета из упомянутого объекта посредством сеанса связи.
18. Способ по п.17, дополнительно содержащий этапы, на которых:
- находят веб-страницу обозревателя на компьютере, которая имеет первое поле формы для номера счета и второе поле формы для значения верификации устройства; и
- заполняют первое поле динамическим номером счета, и второе поле - значением верификации устройства, принятым из упомянутого объекта.
19. Способ проведения транзакции, содержащий этапы, на которых:
- соединяют маркер верификации с компьютером с использованием периферийного интерфейса компьютера, причем компьютер содержит сетевое средство, при этом маркер верификации содержит: периферийный интерфейс, выполненный, чтобы соединяться с периферийным интерфейсом компьютера, считыватель, выполненный, чтобы считывать идентификационную информацию из портативных потребительских устройств, компьютерно-читаемый носитель, и процессор данных; причем маркер верификации сконфигурирован, чтобы считывать идентификационную информацию, которая включает в себя номер счета и первое значение верификации портативного потребительского устройства, с использованием считывателя, и получать второе значение верификации устройства для него из первого объекта с использованием сетевого средства компьютера;
- представляют портативное потребительское устройство для считывателя маркера верификации для предоставления маркера с номером счета и первым значением верификации устройства для упомянутой транзакции и получения второго значения верификации устройства для портативного потребительского устройства, причем второе значение верификации устройства сконфигурировано с возможностью ввода в поле значения верификации карты на веб-странице продавца; и
- предоставляют полученное второе значение верификации устройства во второй объект в качестве части проведения упомянутой транзакции.
20. Способ по п.19, дополнительно содержащий этап, на котором:
- представляют пароль в маркер верификации.
Описание изобретения к патенту
Перекрестные ссылки на родственные заявки
Эта заявка является частичным продолжением предшествующей заявки номер 12/712,148, озаглавленной "Verification of Portable Consumer Devices", поданной 24 февраля 2010 года, содержимое которой полностью включается по ссылке в настоящий документ. Помимо этого, данная заявка притязает на приоритет по первой заявке на патент США номер 61/178,636, озаглавленной "Dynamic Data Authentication", поданной 15 мая 2009 года, содержимое которой полностью включается по ссылке в настоящий документ.
УРОВЕНЬ ТЕХНИКИ
По мере того как способы и устройства для участия в финансовых транзакциях дополняются, старые проблемы, такие как мошенничество и подделывание, остаются.
Одним из основных источников мошенничества, которое распространено в индустрии кредитных карт, является скимминг. Скимминг означает электронное копирование данных магнитной полосы карты, чтобы создавать поддельные карты.
Скимминг является преимущественно явлением, затрагивающим статические транзакции на основе магнитных полос. Это обусловлено тем, что магнитная полоса, которая размещается на тыльной стороне карты транзакций и сохраняет множество данных на трех отдельных дорожках, является пассивным носителем. Другими словами, цифровое содержимое магнитной полосы может быть в совершенстве скопировано без каких-либо отличий между копией и оригиналом.
Одно из основных средств, посредством которых может предотвращаться скимминг, заключается в тщательном отслеживании потребителем местонахождения карты транзакций. Это может давать возможность потребителю предотвратить проведение карты через ненадлежащие устройства. Тем не менее, по мере того как бесконтактные карты совершенствуются, классическая проблема скимминга сопровождает их при использовании статических данных. Фактически, в беспроводном окружении возможность нелегально копировать данные магнитной полосы является более распространенной. В беспроводном окружении потенциальному скиммеру не надо ни физически обладать картой, которая должна быть нелегально скопирована, ни иметь доступ к какому-либо физическому оборудованию (например, POS-терминалу, линиям связи и т.д.), что требуется для скимминга в проводном окружении. Скиммер без сведений о потребителе или продавце может перехватывать беспроводную транзакцию и копировать данные, передаваемые с карты в POS-терминал.
Чтобы разрешать вышеуказанные проблемы, может быть использовано dCVV, или динамическое значение верификации карты. Например, различные системы и способы для формирования dCVV поясняются в заявке на патент США номер 10/642878, озаглавленной "Method and System for generating the Dynamic Verification Value", поданной 18 августа 2003 года, и в заявке на патент США номер 11/764376, озаглавленной "On-Line Payment Transactions", поданной 29 января 2008 года. Обе эти заявки полностью включаются по ссылке в настоящий документ.
В дополнение к формированию dCVV, dCVV может быть более эффективным для предотвращения мошенничества, когда оно безопасно принимается потребителем. Тем не менее, безопасный прием и использование dCVV не может создавать чрезмерные помехи для работы потребителя при проведении транзакции. Потребитель может не использовать dCVV, или потребитель может проводить меньше транзакций, если неудобство приема и использования dCVV является слишком большим.
Варианты осуществления изобретения направлены на разрешение вышеуказанных проблем и других проблем, по отдельности и совместно.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Раскрываются устройства, способы и системы, относящиеся к верификации портативных потребительских устройств.
Один примерный вариант осуществления изобретения направлен на маркер верификации для получения значения верификации устройства для портативного потребительского устройства. Примерный маркер верификации содержит периферийный интерфейс, выполненный, чтобы соединяться с периферийным интерфейсом компьютера, считыватель, выполненный, чтобы считывать идентификационную информацию из портативных потребительских устройств, компьютерно-читаемый носитель, процессор данных, электрически соединенный с периферийным интерфейсом маркера верификации, считывателем и компьютерно-читаемым носителем, и код, воплощенный на компьютерно-читаемом носителе, который инструктирует процессору данных выполнять различные действия. В примерной реализации маркер верификации содержит код, который инструктирует процессору данных осуществлять связь с компьютером посредством периферийного интерфейса маркера верификации и получать доступ к сетевому средству компьютера, код, который инструктирует процессору данных принимать идентификационную информацию, считанную из портативного потребительского устройства посредством считывателя, код, который инструктирует процессору данных передавать, по меньшей мере, часть принимаемой идентификационной информации в объект, который может предоставлять значение верификации устройства (например, в объект проверки достоверности или шлюз), посредством сетевого средства компьютера, и код, который инструктирует процессору данных принимать, после передачи упомянутой идентификационной информации, значение верификации устройства из объекта посредством сетевого средства компьютера. Маркер верификации может отправлять идентификационную информацию в компьютер в определенном числе форм, включающих в себя: (1) неизмененную форму ("открытую форму"), (2) зашифрованную форму, (3) хэшированную форму (например, кодированную), (4) подписанную форму, (5) или любую комбинацию этих форм. Эти формы могут формироваться посредством портативного потребительского устройства, маркера верификации, компьютера или любой комбинации вышеозначенного. Помимо этого, маркер верификации и объект (например, объект проверки достоверности или шлюз) могут выполнять процесс взаимной аутентификации до того, как маркер верификации отправляет идентификационную информацию. При использовании в формуле изобретения термин "объект, который может предоставлять значение верификации устройства" охватывает объект проверки достоверности, шлюз или любую комбинацию вышеозначенного.
Другой примерный вариант осуществления изобретения направлен на маркер верификации для получения значения верификации устройства для портативного потребительского устройства. Примерный маркер верификации содержит периферийный интерфейс, выполненный, чтобы соединяться с периферийным интерфейсом компьютера, считыватель, выполненный, чтобы считывать идентификационную информацию из портативных потребительских устройств, компьютерно-читаемый носитель, процессор данных, электрически соединенный с периферийным интерфейсом маркера верификации, считывателем и компьютерно-читаемым носителем, и код, воплощенный на компьютерно-читаемом носителе, который инструктирует процессору данных выполнять различные действия. В примерной реализации маркер верификации содержит код, который инструктирует процессору данных осуществлять связь с компьютером посредством периферийного интерфейса маркера верификации и осуществлять доступ к сетевому средству компьютера, код, который инструктирует процессору данных устанавливать связь, с использованием сетевого средства компьютера, с объектом, который может предоставлять значение верификации устройства (например, с объектом проверки достоверности или шлюзом, осуществляющим связь с объектом проверки достоверности), код, который инструктирует процессору данных принимать идентификационную информацию, считанную из портативного потребительского устройства посредством считывателя, код, который инструктирует процессору данных передавать по меньшей мере часть принимаемой идентификационной информации в объект (например, в объект проверки достоверности или шлюз), посредством сетевого средства компьютера, и код, который инструктирует процессору данных принимать, после передачи упомянутой идентификационной информации, значение верификации устройства из объекта посредством сетевого средства компьютера. Маркер верификации может отправлять идентификационную информацию в компьютер в формах, указываемых выше.
В некоторых реализациях этих примерных вариантов осуществления вышеуказанные коды и идентификационная информация сохраняются независимо от компьютера и защищены от программ (включающих в себя программы-шпионы и другие вредоносные программы), работающих на компьютере. В этой реализации идентификационная информация переводится в защищенную форму (например, шифруется, хэшируется, подписывается, либо комбинация вышеозначенного) посредством маркера верификации до того, как информация предоставляется в компьютер. Соответственно, защита информации не зависит от безопасности компьютера. Симметричные или асимметричные ключи могут использоваться для шифрования и подписания. Ключи для маркера верификации могут быть уникальными относительно других маркеров верификации. Ключи и, в частности, симметричные ключи могут быть основаны на уникально назначенном порядковом номере для маркера верификации, который маркер передает в объект проверки достоверности и/или шлюз. Как маркер верификации, так и объект проверки достоверности и/или шлюз могут иметь совместно используемый секрет относительно того, как извлекать ключ из порядкового номера, к примеру, посредством обработки и/или замены выбранных цифр порядкового номера. Определенное число ключей может извлекаться из уникального порядкового номера с использованием соответствующих совместно используемых секретов. Таким образом, сообщения оклика и ответа, используемые в процессе взаимной аутентификации, могут быть подписаны с использованием соответствующих ключей, извлеченных из порядкового номера.
Другой примерный вариант осуществления изобретения направлен на способ получения значения верификации устройства для портативного потребительского устройства. Примерный способ содержит установление линии связи между маркером верификации и компьютером, причем компьютер имеет сетевое средство; считывание идентификационной информации из портативного потребительского устройства в маркер верификации; передачу считанной идентификационной информации из маркера верификации в объект, который может предоставлять значение верификации устройства (например, в объект проверки достоверности и/или шлюз), через сетевое средство компьютера; и после передачи идентификационной информации прием, в маркере верификации, значения верификации устройства из объекта (например, из объекта проверки достоверности и/или шлюза) посредством сетевого средства компьютера. Идентификационная информация может быть передана из маркера в компьютер в определенном числе форм, включающих в себя: (1) неизмененную форму ("открытую форму"), (2) зашифрованную форму, (3) хэшированную форму (например, кодированную), (4) подписанную форму, (5) или любую комбинацию этих форм. Эти формы могут формироваться посредством портативного потребительского устройства, маркера верификации, компьютера или любой комбинации вышеозначенного. Помимо этого, способ может включать в себя инструктирование маркеру верификации аутентифицировать объект проверки достоверности и/или шлюз, к примеру, через процесс взаимной аутентификации до передачи идентификационной информации в объект проверки достоверности и/или шлюз.
Другой примерный вариант осуществления изобретения направлен на способ получения значения верификации устройства для портативного потребительского устройства. Примерный способ содержит установление линии связи между маркером верификации и компьютером, причем компьютер имеет сетевое средство; установление сеанса связи между маркером верификации и объектом, который может предоставлять значение верификации устройства (например, объектом проверки достоверности и/или шлюзом), с использованием сетевого средства компьютера; считывание идентификационной информации из портативного потребительского устройства в маркер верификации; передачу считанной идентификационной информации из маркера верификации в объект (например, в объект проверки достоверности и/или шлюз), через сеанс связи; и после передачи идентификационной информации прием, в маркере верификации, значения верификации устройства из объекта (например, из объекта проверки достоверности и/или шлюза) посредством сеанса связи. Идентификационная информация может быть передана из маркера в компьютер в любой из вышеуказанных форм. Помимо этого, способ может включать в себя инструктирование маркеру верификации аутентифицировать объект проверки достоверности и/или шлюз, к примеру, через процесс взаимной аутентификации до передачи идентификационной информации в объект проверки достоверности и/или шлюз.
Другой примерный вариант осуществления изобретения направлен на способ использования маркера верификации. Примерный способ содержит соединение маркера верификации с компьютером с использованием периферийного интерфейса компьютера, причем компьютер имеет сетевое средство, при этом маркер верификации содержит периферийный интерфейс, выполненный, чтобы соединяться с периферийным интерфейсом компьютера, считыватель, выполненный, чтобы считывать идентификационную информацию из портативных потребительских устройств, компьютерно-читаемый носитель и процессор данных, причем маркер выполнен, чтобы считывать идентификационную информацию портативного потребительского устройства с использованием считывателя и получать значение верификации устройства для него из первого объекта (например, из объекта проверки достоверности и/или шлюза) с использованием сетевого средства компьютера. Способ дополнительно содержит представление портативного потребительского устройства в считыватель маркера верификации, чтобы получать значение верификации устройства для портативного потребительского устройства, и предоставление полученного значения верификации устройства во второй объект. Второй объект может участвовать в транзакции между собой и пользователем маркера верификации.
Другой примерный вариант осуществления изобретения направлен на объект проверки достоверности, который предоставляет значения верификации устройства в маркеры верификации. Примерный объект проверки достоверности содержит компьютерно-читаемый носитель, процессор данных, электрически соединенный с компьютерно-читаемым носителем, и код, воплощенный на компьютерно-читаемом носителе, который инструктирует процессору данных выполнять различные действия. Примерный объект проверки достоверности дополнительно содержит: код, который инструктирует процессору данных принимать запрос значения верификации устройства для портативного потребительского устройства, ассоциированного с пользователем, причем запрос содержит идентификационную информацию, относящуюся к портативному потребительскому устройству; код, который инструктирует процессору данных применять по меньшей мере один тест проверки достоверности, относящийся к принимаемому запросу; и код, который инструктирует процессору данных отправлять, если по меньшей мере один тест проверки достоверности пройден, значение верификации устройства в маркер верификации, ассоциированный с пользователем, или в объект, сконфигурированный, чтобы пересылать значение верификации устройства в маркер.
Другой примерный вариант осуществления изобретения направлен на компьютерный программный продукт, который предоставляет значения верификации устройства. Примерный продукт содержит: код, который инструктирует процессору данных принимать запрос значения верификации устройства для портативного потребительского устройства, ассоциированного с пользователем, причем запрос содержит идентификационную информацию, относящуюся к портативному потребительскому устройству; код, который инструктирует процессору данных применять по меньшей мере один тест проверки достоверности, относящийся к принимаемому запросу; и код, который инструктирует процессору данных отправлять, если по меньшей мере один тест проверки достоверности пройден, значение верификации устройства в маркер верификации, ассоциированный с пользователем, или в объект, сконфигурированный, чтобы пересылать значение верификации устройства в маркер.
Другой примерный вариант осуществления изобретения направлен на объект проверки достоверности, который предоставляет значения верификации устройства в маркеры верификации. Примерный объект проверки достоверности содержит компьютерно-читаемый носитель, процессор данных, электрически соединенный с компьютерно-читаемым носителем, и код, воплощенный на компьютерно-читаемом носителе, который инструктирует процессору данных выполнять различные этапы. Примерный объект проверки достоверности дополнительно содержит код, который инструктирует процессору данных осуществлять связь с маркером верификации по сети связи с помощью компьютера, расположенного между маркером верификации и сетью связи, причем маркер верификации соединяется с компьютером посредством периферийного интерфейса компьютера и сконфигурирован, чтобы осуществлять доступ к сетевому средству компьютера, причем маркер верификации сконфигурирован, чтобы считывать портативное потребительское устройство на предмет идентификационной информации и инструктировать отправку по меньшей мере части идентификационной информации в зашифрованной форме в объект проверки достоверности с использованием сетевого средства компьютера. Примерный объект проверки достоверности дополнительно содержит код, который инструктирует процессору данных принимать зашифрованную идентификационную информацию, отправляемую посредством маркера верификации, код, который инструктирует процессору данных расшифровывать зашифрованную идентификационную информацию, код, который инструктирует процессору данных применять по меньшей мере один тест проверки достоверности к расшифрованной идентификационной информации, и код, который инструктирует процессору данных передавать, если по меньшей мере один тест проверки достоверности пройден, значение верификации устройства в маркер верификации. Дополнительные варианты осуществления могут включать в себя передачу значения верификации устройства в сеть обработки платежей.
Другой примерный вариант осуществления изобретения направлен на объект проверки достоверности, который предоставляет значения верификации устройства в маркеры верификации. Примерный объект проверки достоверности содержит компьютерно-читаемый носитель, процессор данных, электрически соединенный с компьютерно-читаемым носителем, и код, воплощенный на компьютерно-читаемом носителе, который инструктирует процессору данных выполнять различные действия. Примерный объект проверки достоверности дополнительно содержит код, который инструктирует процессору данных осуществлять связь с маркером верификации по сети связи с помощью компьютера, расположенного между маркером верификации и сетью связи, причем маркер верификации соединяется с компьютером посредством периферийного интерфейса компьютера и сконфигурирован, чтобы осуществлять доступ к сетевому средству компьютера, причем маркер верификации сконфигурирован, чтобы считывать портативное потребительское устройство на предмет идентификационной информации и инструктировать отправку, по меньшей мере, части идентификационной информации в объект проверки достоверности с использованием сетевого средства компьютера. Маркер верификации также сконфигурирован, чтобы инструктировать отправку порядкового номера и зашифрованного сообщения в объект проверки достоверности с использованием сетевого средства компьютера. Сообщение шифруется посредством ключа шифрования, причем порядковый номер и ключ шифрования уникально назначаются маркеру верификации. Примерный объект проверки достоверности дополнительно содержит код, который инструктирует процессору данных принимать зашифрованный порядковый номер, зашифрованное сообщение и идентификационную информацию, отправляемую посредством маркера верификации, код, который инструктирует процессору данных применять по меньшей мере один тест проверки достоверности к порядковому номеру и зашифрованному сообщению, и код, который инструктирует процессору данных передавать, если выбранное число одного или более тестов проверки достоверности пройдено, значение верификации устройства в маркер верификации. Дополнительные варианты осуществления могут включать в себя передачу значения верификации устройства в сеть обработки платежей.
В каждом из вариантов осуществления, описанных выше, и в каждом из вариантов осуществления, описанных ниже, связи между компьютером и объектом проверки достоверности может способствовать шлюз и/или она может переноситься через шлюз (например, сервер-посредник, серверный объект и т.д.), который располагается между компьютером и объектом проверки достоверности. Шлюз может выступать в качестве посредника между множеством маркеров верификации и ассоциированными с ними компьютерами с одной стороны и множеством объектов проверки достоверности с другой стороны. Шлюз может принимать одну или более начальных связей из маркера верификации (через компьютер, осуществляющий связь с маркером) и может определять из информации в одной или более начальных связей надлежащий один из объектов проверки достоверности, чтобы использовать для того, чтобы удовлетворять запрос маркера на предмет значения верификации устройства. Например, каждый маркер верификации может быть сконфигурирован, чтобы работать с портативными потребительскими устройствами, выпущенными посредством множества различных банков-эмитентов или других таких объектов, и один или более объектов проверки достоверности могут быть сконфигурированы, чтобы обрабатывать запросы из портативных потребительских устройств, выпущенных посредством соответствующих банков-эмитентов или других таких объектов. Шлюз может определять надлежащий один из объектов проверки достоверности, чтобы использовать, на основе идентификационной информации, которую маркер считывает из портативного потребительского устройства и отправляет в шлюз при начальной связи. В одной реализации шлюз перенаправляет маркер в определенный надлежащий объект проверки достоверности, причем происходит дополнительная связь непосредственно между маркером верификации и надлежащим объектом проверки достоверности. В другой реализации связь между маркером верификации и надлежащим объектом проверки достоверности может быть перенесена через шлюз (после того, как шлюз первоначально определяет идентификационные данные надлежащего объекта проверки достоверности на основе одной или более начальных связей с маркером). Эта вторая реализация может содержать относительно простое прохождение связи между маркером и надлежащим объектом проверки достоверности с минимальной обработкой посредством шлюза или может содержать виртуальное представление шлюза в качестве надлежащего объекта проверки достоверности в маркер верификации. Такое виртуальное представление может заключать в себе расшифровку посредством шлюза каждого сообщения из маркера верификации, связь с надлежащим объектом проверки достоверности, чтобы формулировать ответ на сообщение маркера, и шифровку и отправку ответного сообщения в маркер верификации. Шлюз также может осуществлять один или более тестов проверки достоверности от имени надлежащего объекта проверки достоверности, в частности тесты, связанные с проверкой достоверности маркера верификации. В этом случае шлюзу нет необходимости отправлять в надлежащий объект проверки достоверности те связи, которые он принимает из маркера, которые относятся к тестам проверки достоверности, которые обрабатывает шлюз. Шлюз может быть ассоциирован или управляться посредством сети обработки платежей.
Другой примерный вариант осуществления изобретения направлен на способ предоставления значения верификации устройства. Примерный способ содержит: прием, на сервере, запроса значения верификации устройства для портативного потребительского устройства, ассоциированного с пользователем, причем запрос содержит идентификационную информацию, относящуюся к портативному потребительскому устройству; применение по меньшей мере одного теста проверки достоверности, относящегося к принимаемому запросу; и отправку, если по меньшей мере один тест проверки достоверности пройден, значения верификации устройства в маркер верификации, ассоциированный с пользователем, или в объект, сконфигурированный, чтобы пересылать значение верификации устройства в маркер.
Другой примерный вариант осуществления изобретения направлен на способ проверки достоверности портативного потребительского устройства, представленного в маркер верификации. Примерный способ содержит связь с маркером верификации по сети связи с помощью компьютера, расположенного между маркером верификации и сетью связи, причем маркер верификации соединяется с компьютером посредством периферийного интерфейса компьютера и сконфигурирован, чтобы осуществлять доступ к сетевому средству компьютера. Маркер верификации сконфигурирован, чтобы считывать портативное потребительское устройство на предмет идентификационной информации и отправлять идентификационную информацию в зашифрованной форме в объект проверки достоверности с использованием сетевого средства компьютера. Способ дополнительно содержит расшифровку идентификационной информации, принятой из маркера верификации, и применение одного или более тестов проверки достоверности к расшифрованной идентификационной информации. Способ дополнительно содержит передачу, если выбранное число одного или более тестов проверки достоверности пройдено, значения верификации устройства в маркер. Дополнительные варианты осуществления могут включать в себя передачу значения верификации устройства в сеть обработки платежей.
Другой примерный вариант осуществления изобретения направлен на способ проверки достоверности портативного потребительского устройства, представленного в маркер верификации. Примерный способ содержит связь с маркером верификации по сети связи с помощью компьютера, расположенного между маркером верификации и сетью связи, причем маркер верификации соединяется с компьютером посредством периферийного интерфейса компьютера и сконфигурирован, чтобы осуществлять доступ к сетевому средству компьютера. Маркер верификации сконфигурирован, чтобы считывать портативное потребительское устройство на предмет идентификационной информации и отправлять идентификационную информацию в объект проверки достоверности с использованием сетевого средства компьютера. Маркер верификации также сконфигурирован, чтобы отправлять порядковый номер и сообщение, зашифрованное посредством ключа шифрования, в объект проверки достоверности, причем порядковый номер и ключ шифрования уникально назначаются маркеру верификации. Способ дополнительно содержит прием порядкового номера, зашифрованного сообщения и идентификационной информации из маркера верификации и применение одного или более тестов проверки достоверности к порядковому номеру и зашифрованному сообщению. Способ дополнительно содержит передачу, если выбранное число одного или более тестов проверки достоверности пройдено, значения верификации устройства в маркер. Дополнительные варианты осуществления могут включать в себя передачу значения верификации устройства в сеть обработки платежей.
Другой примерный вариант осуществления изобретения направлен на способ, содержащий считывание идентификационной информации из портативного потребительского устройства в маркер верификации, временно соединенный с компьютером через периферийный интерфейс; установление связи между маркером верификации и компьютером, причем компьютер имеет сетевое средство; и установление связи между маркером верификации и объектом проверки достоверности с использованием сетевого средства компьютера. Маркер верификации может соединяться с возможностью отсоединения с компьютером. Связь между маркером верификации и объектом проверки достоверности может содержать сеанс связи.
Следует повторить, что связь между компьютером и объектом проверки достоверности в каждом вышеописанном варианте осуществления может переноситься через сервер, расположенный между компьютером и объектом проверки достоверности, как описано выше.
Более подробная информация, касающаяся вариантов осуществления изобретения, предоставляется ниже в подробном описании со ссылкой на чертежи.
Краткое описание чертежей
Фиг. 1 иллюстрирует некоторые примерные варианты осуществления изобретения.
Фиг. 2 иллюстрирует примерный вариант осуществления способа, который может быть использован посредством маркера верификации.
Фиг. 3 иллюстрирует примерный вариант осуществления способа, который может быть использован пользователем маркера верификации.
Фиг. 4 иллюстрирует примерный вариант осуществления способа, который может быть использован посредством объекта проверки достоверности.
Фиг. 5 иллюстрирует примерную реализацию компьютерно-читаемого запоминающего устройства, которое может быть использовано посредством маркера верификации.
Фиг. 6 иллюстрирует маркер верификации и компьютер с использованием USB-разъемов в периферийных интерфейсах.
Фиг. 7 иллюстрирует примерную идентификационную информацию, которая может отправляться посредством маркера верификации и использоваться посредством объекта проверки достоверности.
Фиг. 8 иллюстрирует дополнительные примерные варианты осуществления изобретения.
ПОДРОБНОЕ ОПИСАНИЕ
Варианты осуществления, раскрытые в данном документе, относятся к верификации портативных потребительских устройств. Портативное потребительское устройство содержит устройство, которое хранит идентификационную информацию, относящуюся к счету, сохраненному пользователем, с другим объектом, который типично является объектом, который хранит, продлевает или кредитует предметы, имеющие стоимость, пользователю (например, денежные средства, кредиты, долги и т.д.). Портативные потребительские устройства охватывают кредитные карты, платежные карты, дебетовые карты, банковские карты, предоплатные карты, карты доступа, карты-пропуски и другие карты, которые идентифицируют счет, сохраненный пользователем с другим объектом. Карты допускают существование как в пассивных формах (например, карта с магнитной полосой), так и в активных формах (например, карты с интегральной микросхемой, смарт-карты), и дополнительно охватывают портативные электронные устройства, которые, полностью или частично, выступают в качестве таких карт. Такие портативные электронные устройства могут включать в себя карты памяти, маркеры счетов, брелоки, этикетки, сотовые телефоны (включающие в себя телефон для связи в ближней зоне), устройства-брелоки (к примеру, предлагаемое на рынке Speedpass от Exxon-Mobil Corp.), персональные цифровые устройства, другие мобильные электронные устройства, транспондеры, носители типа смарт-карта и устройства поискового вызова.
Идентификационная информация, сохраненная посредством (например, воплощенная на) потребительского портативного устройства, содержит, по меньшей мере, номер счета и предпочтительно по меньшей мере одно из следующего: цифровой отпечаток магнитной полосы портативного потребительского устройства или переменный элемент данных, который варьируется каждый раз, когда портативное потребительское устройство считывается на предмет идентификационной информации, как проиллюстрировано на фиг. 7. Магнитная полоса переносит, по меньшей мере, номер счета устройства. Номер счета идентифицирует счет потребителя по меньшей мере в одной сети обработки платежей и может содержать первичный номер счета (PAN); он также может содержать буквенно-цифровые символы. Цифровой отпечаток магнитной полосы представляет собой распределение магнитных частиц, которые формируют магнитную полосу, и формируется посредством специализированного считывателя карт, который дискретизирует распределение магнитных частиц, когда карта проводится через считыватель. Переменный элемент данных типично содержит цифровые символы, но может содержать буквенно-цифровые символы. Значения переменного элемента данных варьируются способом, который является известным как для портативного потребительского устройства, так и для объекта авторизации, причем вторым из них может быть банк-эмитент или сеть обработки платежей. Переменный элемент данных охватывает динамические значения CVV ("dCVV") и значения верификации карты CVC3, сформированные посредством смарт-карт (как контактной, так и бесконтактной форм), а также криптограммы, сформированные посредством многих смарт-карт (например, криптограмму 17). Значения элемента данных могут предварительно сохраняться на компьютерно-читаемом носителе устройства и на компьютерно-читаемом носителе объекта авторизации или могут формироваться посредством каждого устройства и объекта по мере необходимости (например, "формироваться на лету") с использованием конфиденциального алгоритма, известного для устройства и объекта, или посредством известного алгоритма, который использует конфиденциальные ключи или конфиденциальную информацию. Переменный элемент данных может содержать или может сопровождаться посредством значения счетчика, которое указывает число раз, когда портативное потребительское устройство формирует переменный элемент данных; значение счетчика может помогать объекту авторизации в извлечении переменного элемента данных из компьютерно-читаемого носителя объекта или в формировании переменного элемента данных из алгоритма. Тем не менее, значение счетчика не является обязательным, и объект авторизации может выводить число раз, когда устройство формирует переменный элемент данных, из предыстории запросов на авторизацию, выполненных для устройства, или может быть использован алгоритм, который не требует счетчика.
Идентификационная информация дополнительно может содержать имя владельца учетной записи (например, пользователя), дату истечения срока действия карты, служебные коды и дискреционные данные. В качестве примера, идентификационная информация может включать в себя традиционные "платежные данные", сохраненные на дорожках магнитной полосы традиционной кредитной карты (например, на дорожке 1, дорожке 2 и/или дорожке 3).
Идентификационная информация портативного потребительского устройства считывается посредством считывателя, который является электрическим компонентом, который может считывать идентификационную информацию из портативного потребительского устройства и предоставлять идентификационную информацию в другой электрический компонент. Считыватель может содержать одно или более из следующего: считыватель магнитных полос (который может включать в себя схему дискретизации отпечатков), контактный считыватель и бесконтактный считыватель карт, причем второй из них является общеизвестным в качестве RFID-считывателя (RFID является аббревиатурой для радиочастотной идентификации). Считыватель для считывания отпечатков магнитных полос может включать в себя модуль обеспечения безопасности, который содержит собственный алгоритм, который формирует цифровой отпечаток из дискретизированных данных отпечатка и который шифрует цифровой отпечаток с помощью одноразового слова с использованием ключа шифрования. Считыватели преимущественно находятся в местоположениях торговых точек продавцов.
Типичный поток транзакций по кредитной карте с использованием портативного потребительского устройства в местоположении торговой точки описывается далее. Портативное потребительское устройство пользователя предоставляется пользователю посредством или от имени банка-эмитента. Банк-эмитент продлевает кредит для пользователя, представляет пользователя в транзакциях по кредитной карте и платит продавцам за покупки, осуществленные пользователем. Пользователь представляет свое портативное потребительское устройство продавцу в местоположении торговой точки, чтобы оплачивать предмет или услугу. Продавец использует считыватель, чтобы считывать портативное потребительское устройство пользователя, и отправляет идентификационную информацию, считанную из устройства, вместе с информацией продавца и суммой транзакции в банк-эквайер. Продавец также может считывать портативное потребительское устройство на предмет распечатанного значения верификации карты (например, значения CVV, распечатанного на тыльной стороне многих кредитных карт) и может отправлять его далее в качестве части информации транзакции, отправляемой в банк-эквайер. Банк-эквайер представляет и ручается за продавца в транзакциях по кредитной карте. Банк-эквайер пересылает информацию транзакции в сеть обработки платежей, к примеру, VisaNet , для авторизации. Сеть обработки платежей, в общем, охватывает набор из одного или более серверных компьютеров, подсистем, сетей и операций обработки данных, использованных для того, чтобы поддерживать и доставлять одно или более из следующего: службы авторизации, файловые службы исключений и услуги клиринга и расчетов. Сети обработки платежей охватывают банковские сети обработки, сеть обработки платежей по кредитным картам и т.д. Примерная сеть обработки платежей может включать в себя VisaNet
. Примерные сети обработки платежей имеют возможность обрабатывать одно или более из следующего: транзакции по кредитной карте, транзакции по дебетовой карте и другие типы коммерческих транзакций. Сеть обработки платежей может использовать любую подходящую проводную или беспроводную сеть, включающую в себя Интернет, чтобы осуществлять связь с банками-эквайерами и банками-эмитентами.
До проведения транзакции по кредитной карте сеть обработки платежей устанавливает протокол с каждым банком-эмитентом относительно того, как транзакции банка должны быть авторизованы. В некоторых случаях, к примеру, когда сумма транзакции ниже порогового значения, сеть обработки платежей авторизует транзакцию на основе информации, которую она имеет, о счете пользователя, без обращения в банк-эмитент и принимает ответственность на себя, если транзакция оказывается мошеннической. В других случаях, к примеру, когда сумма транзакции выше порогового значения, сеть обработки платежей должна пересылать информацию транзакции в банк-эмитент для верификации и авторизации. В качестве части процесса авторизации платежная сеть или банк-эмитент могут верифицировать цифровой отпечаток или варьирующийся элемент данных, предоставляемый посредством портативного потребительского устройства. Цифровой отпечаток сохраняется в банке-эмитенте и может защищенно предоставляться в сеть обработки платежей посредством банка-эмитента для хранения и последующего использования. Алгоритм для формирования варьирующегося элемента данных сохраняется в банке-эмитенте и может защищенно предоставляться в сеть обработки платежей для хранения и последующего использования. В качестве также части процесса авторизации платежная сеть или банк-эмитент могут верифицировать распечатанное значение верификации карты (например, CVV), которое сохраняется в банке-эмитенте и может защищенно предоставляться посредством банка-эмитента в сеть обработки платежей для хранения и последующего использования. Степень, в которой сеть обработки платежей участвует в верификации потребительского портативного устройства и авторизации транзакции, типично конфигурируется согласно пожеланиям банка-эмитента. После того как транзакция авторизована, сеть обработки платежей отправляет индикатор авторизации в банк-эквайер, который пересылает индикатор авторизации продавцу. Чтобы уменьшать мошенничество, продавцам не разрешается хранить цифровые отпечатки, переменный элемент данных и распечатанные значения верификации карты (CVV) более 24 часов.
Когда пользователь хочет осуществлять онлайновую покупку у продавца по Интернету, пользователь набирает номер счета кредитной карты, имя держателя карты, дату истечения срока действия и распечатанное значение верификации карты в соответствующие поля на странице оплаты продавца. В этом случае магнитный отпечаток карты или переменный элемент данных карты не используются в транзакции, и они не доступны для сети обработки платежей или банка-эмитента для помощи в верификации того, что карта фактически присутствовала во время транзакции. Соответственно, существует больший риск мошенничества при таких онлайновых покупках. Например, продавец может копировать информацию счета и распечатанное значение верификации во время транзакции в местоположении торговой точки и может затем использовать скопированную информацию для того, чтобы осуществлять онлайновую покупку. В качестве другого примера, хакер может устанавливать программы-шпионы на компьютере пользователя, чтобы перехватывать информацию счета и распечатанное значение верификации и использовать его, чтобы выполнять мошеннические покупки у других онлайновых продавцов. Другие средства потенциального мошенничества также существуют. Варианты осуществления изобретения направлены на уменьшение этих типов мошеннической активности.
Фиг. 1 иллюстрирует некоторые примерные варианты осуществления изобретения в контексте онлайновой покупки. Приводится общее краткое описание вариантов осуществления и компонентов, показанных на чертеже, после чего приводятся более подробные описания компонентов. На чертеже показаны значки для пользователя 1, портативного потребительского устройства 5 пользователя, устройства связи 7 пользователя (к примеру, сотового телефона), компьютера 10 пользователя, веб-узла 20 продавца и первой сети 31 связи, которая предоставляет возможность компьютеру пользователя и веб-узлу продавца осуществлять связь друг с другом. Первая сеть 31 связи может включать в себя Интернет, сеть связи (например, беспроводную сеть, сотовую телефонную сеть, телефонную сеть, кабельную сеть или любую комбинацию вышеозначенного), глобальную вычислительную сеть (WAN), локальную вычислительную сеть (LAN), собственный маршрутизатор или шлюз, соединенный с одной из вышеуказанных сетей, либо любую комбинацию вышеуказанного. Также на фиг. 1 показаны банк-эквайер 50 для продавца, банк-эмитент 60 для портативного потребительского устройства 5, сеть 70 обработки платежей и вторая сеть 32 связи, которая предоставляет возможность сети 70 обработки платежей осуществлять связь с каждым из банков 50 и 60. Вторая сеть 32 связи может содержать Интернет (и, следовательно, может перекрывать и совместно использовать средства с первой сетью 31 связи) либо может содержать одну или более частных сетей или комбинацию одной или более частных сетей с Интернетом. Частная сеть может содержать сеть связи, глобальную вычислительную сеть (WAN), локальную вычислительную сеть (LAN) или любую комбинацию вышеозначенного. В некоторых случаях первая и вторая сети 31 и 32 связи могут быть идентичными (к примеру, сетью с использованием Интернета в качестве опорной сети). Сеть связи, в общем, содержит сеть из одной или более линий связи и двух или более узлов, которые передают сообщения из одной части сети в другую часть. Каждый узел содержит один или более элементов электрооборудования, и каждая линия связи может содержать одно или более из следующего: оптоволокно, линии оптической связи, линии радиосвязи, электрические провода. Компоненты, описанные до сих пор, по большей части являются традиционными и скомпонованы традиционным способом.
Фиг. 1 иллюстрирует маркер 40 верификации согласно одному варианту осуществления изобретения и объект 80 проверки достоверности согласно другому варианту осуществления изобретения. Эти компоненты и взаимодействия между ними и между другими компонентами, показанными на фиг. 1, являются новыми и не являются частью предшествующего уровня техники. Маркер 40 верификации имеет считыватель 44, чтобы считывать портативное потребительское устройство 5, и периферийный интерфейс 46, выполненный, чтобы соединяться с периферийным интерфейсом 16 компьютера 10. Считыватель 46 может содержать одно или более из следующего: устройство считывания магнитных полос (который может включать в себя схему дискретизации отпечатков и модуль обеспечения безопасности), контактный считыватель и бесконтактный считыватель карт, причем второй из них является общеизвестным в качестве RFID-считывателя. Маркер 40 верификации сконфигурирован, чтобы осуществлять связь с объектом 80 проверки достоверности посредством сетевого средства 14 компьютера 10. После того как пользователь 1 заполняет корзину покупок на веб-узле 20 продавца, пользователь может загружать страницу оплаты продавца, чтобы предоставлять информацию об оплате пользователя и совершать покупку. Здесь пользователь 1 может представлять свое портативное потребительское устройство 5 в устройство 44 считывания карт маркера 40 верификации, чтобы предоставлять идентификационную информацию устройства (пример чего проиллюстрирован на фиг. 7). Маркер 40 верификации считывает идентификационную информацию из портативного потребительского устройства 5 пользователя и отправляет по меньшей мере часть идентификационной информации защищенным способом (например, в зашифрованной форме) в объект 80 проверки достоверности, чтобы запрашивать значение верификации устройства для портативного потребительского устройства 5. Для понятности и без потери общности можно упоминать такое значение верификации устройства, предоставляемое посредством объекта 80 проверки достоверности, как значение "dCVV2", с тем чтобы отличать его от динамических значений "CVC3" или "dCVV", сформированных посредством смарт-карт, которые описаны выше, и от поля CVV, расположенного на странице оплаты продавца. Объект 80 проверки достоверности применяет один или более тестов проверки достоверности к маркеру 40 верификации и/или идентификационной информации, чтобы получать определенный уровень доверия относительно того, что портативное потребительское устройство 5 фактически представлено в маркер 40 верификации, чтобы запрашивать значение dCVV2. Когда один или более тестов проверки достоверности пройдены и предпочтительно без завершившихся неудачно тестов, объект 80 проверки достоверности отправляет значение dCVV2 в маркер 40 верификации.
В случаях, если портативное потребительское устройство 5 пользователя формирует криптограмму (например, криптограмму 17), устройство 44 считывания карт предоставляет в устройство 5 пользователя "фиктивную" информацию транзакции, которая является известной как для маркера 40, так и для объекта 80 проверки достоверности. Фиктивная информация транзакции может включать в себя статическую сумму транзакции и статическое название продавца, в зависимости от типа криптограммы, которая должна быть сформирована. Фиктивная информация транзакции может отличаться для каждого маркера 40. Устройство 5 пользователя использует информацию транзакции, чтобы формировать криптограмму. Устройство пользователя типично имеет значение счетчика, зачастую называемое счетчиком транзакций приложений (ATC), который включается в вычисление криптограмм и который увеличивается с каждой транзакцией. Счетчик уменьшает вероятности угадывания мошенником значения криптограммы. В некоторых случаях устройству 5 пользователя может требоваться PIN-код, чтобы активировать вычисление криптограммы. Для этого маркер 40 может отображать всплывающее окно на компьютере 10 пользователя, которое запрашивает ввод PIN-кода пользователем, и маркер 40 может предоставлять PIN-код в устройство 5 пользователя вместе с запросом криптограммы.
Первый тест проверки достоверности, который может применять объект 80 проверки достоверности, относится к верификации того, что маркер 40 верификации является подлинным. Для этого маркер 40 верификации может отправлять свой порядковый номер в объект 80 проверки достоверности, вместе с сообщением, зашифрованным посредством ключа шифрования, причем сообщение и ключ шифрования известны как для маркера 40, так и для объекта 80 (но не для широкой публики), и ключ шифрования дополнительно уникально назначается порядковому номеру маркера (уникально назначается маркеру). Объект 80 проверки достоверности имеет базу данных порядковых номеров и соответствующих уникальных назначенных ключей шифрования и может проверять достоверность того, что маркер 40 верификации отправляет корректное сообщение для порядкового номера. Проверка достоверности корректного сообщения служит для того, чтобы аутентифицировать маркер 40 верификации. Если первый тест проверки достоверности завершается неудачно, объект 80 проверки достоверности может записывать порядковый номер ошибочного маркера 40 и исходный IP-адрес, из которого ошибочный маркер 40 выполнил запрос в базе данных (к примеру, в базе 86 данных, описанной ниже). Второй тест проверки достоверности, который может применять объект 80 проверки достоверности, относится к верификации того, что маркер 40 верификации не участвовал в мошеннических транзакциях. Для этого объект 80 проверки достоверности также может иметь базу данных, которая отслеживает порядковые номера маркеров верификации, которые были использованы в мошеннических действиях, и может сверять порядковый номер маркера 40 верификации с этой базой данных. Второй тест проверки достоверности дополнительно может содержать сверку порядкового номера маркера и/или IP-адреса, из которого инициирован входящий dCVV2-запрос (исходного IP-адреса сообщения), с вышеописанной базой данных, которая сохраняет порядковые номера маркеров и IP-адреса, ассоциированные с запросами, которые неудачно завершают первый тест проверки достоверности. Если порядковый номер маркера или IP-адрес обнаружен в этой базе данных, второй тест проверки достоверности может считаться завершившимся неудачно. Проверка порядковых номеров маркеров и/или IP-адресов тем самым предотвращает повторные атаки мошенников. Можно принимать во внимание, что база данных порядковых номеров маркеров, которые неудачно завершают первый тест проверки достоверности, может быть комбинирована с базой данных порядковых номеров маркеров, участвующих в мошеннических действиях. Эта комбинированная база данных, а также две другие базы данных, в общем, могут называться базой данных порядковых номеров подозрительных маркеров. Если первый и второй тесты проверки достоверности пройдены (например, зашифрованный порядковый номер совпадает со значением в базе данных, и отсутствует мошенническое использование и/или подозрительная активность от маркера), объект 80 проверки достоверности может отправлять значение dCVV2 в маркер 40 верификации или может применять дополнительные тесты проверки достоверности до отправки значения dCVV2. Такой дополнительный тест проверки достоверности относится к проверке цифрового отпечатка или переменного элемента данных портативного потребительского устройства 5. Объект 80 проверки достоверности может иметь сохраненную запись цифрового отпечатка портативного потребительского устройства 5 или алгоритм для формирования переменного элемента данных устройства 5 и может проверять достоверность принимаемой идентификационной информации посредством сравнения отпечатка или переменного элемента данных, предоставляемого в принимаемой информации, с отпечатком или переменным элементом данных, который он получает из сохраненной записи для устройства 5. Если дополнительный тест проверки достоверности пройден, объект 80 проверки достоверности может отправлять значение dCVV2 в маркер 40 верификации. Дополнительный тест проверки достоверности может выполняться в дополнение или вместо вышеописанных тестов проверки достоверности.
Значение dCVV2, предоставляемое посредством объекта 80 проверки достоверности, содержит переменный элемент данных (например, многоразрядное число) и используется пользователем, чтобы завершать транзакцию покупки. Маркер 40 верификации может отображать значение dCVV2 пользователю, так что пользователь может вводить значение dCVV2 в поле CVV страницы оплаты веб-узла продавца, или маркер 40 верификации может вводить значение dCVV2 непосредственно в поле CCV страницы оплаты продавца. После того как значение dCVV2 введено в поле CVV, пользователь может завершать покупку. Эта форма значения dCVV2 предоставляет ему возможность работать в существующих системах и потоках обработки платежей. Веб-узел 20 продавца затем использует значение dCVV2 для CVV в своем запросе на авторизацию для покупки. Запрос на авторизацию отправляется в банк-эквайер 50, который затем пересылает его в сеть 70 обработки платежей для авторизации. Через отдельный канал объект 80 проверки достоверности может отправлять значение dCVV2 в сеть 70 обработки платежей и/или банк-эмитент 60 вместе с информацией счета (например, номером счета), так что запрос на авторизацию продавца может обрабатываться. Это служит для того, чтобы уведомлять сеть 70 обработки платежей и/или банк-эмитент 60 о том, что значение dCVV2 для портативного потребительского устройства 5 запрошено и предоставлено продавцу, и ожидать, что продавец должен предоставлять значение dCVV2 в запросе на авторизацию для счета.
Сеть 70 обработки платежей может сравнивать входящие запросы на авторизацию от продавцов (к примеру, пересылаемые посредством банков-эквайеров) с информацией, которую она принимает из объекта 80 проверки достоверности (к примеру, посредством рассмотрения номеров счетов), и может сопоставлять (например, коррелировать) входящие запросы на авторизацию с информацией о проверке достоверности, отправляемой посредством объекта 80 проверки достоверности. Если совпадение обнаружено, сеть 70 обработки платежей имеет высокую степень гарантии, что потребительское портативное устройство 5 находится у пользователя 1 в момент, когда проводится транзакция покупки. Это предоставляет большую степень гарантии по сравнению с доверием к значениям CCV, распечатанным на тыльной стороне кредитных карт. Сеть 70 обработки платежей и банк-эмитент 60 затем могут предпринимать другие действия, которые они выполняют, чтобы авторизовать транзакцию, к примеру, проверку того, имеет или нет продавец 20 хорошую репутацию, и проверку лимита счета пользователя 1, чтобы обеспечивать то, что существует достаточно денежных средств, чтобы покрывать сумму покупок по транзакции. В этом случае для сети 70 обработки платежей нет необходимости проверять достоверность цифрового отпечатка и/или переменного элемента данных портативного потребительского устройства 5, если эти действия выполнены посредством объекта 80 проверки достоверности. (Сеть 70 обработки платежей может, тем не менее, выполнять эти действия проверки достоверности для транзакций в точках продаж продавца.)
В качестве дополнительной функциональной возможности, которая является полезной, когда несколько устройств 5 выделено под один номер счета (например, несколько карт под одним PAN для семьи), идентификационная информация, которую маркер 40 собирает и предоставляет в объект 80 проверки достоверности, может включать в себя только один идентификатор устройства с номером счета. Этот идентификатор устройства уникально идентифицирует одно из устройств, выделяемых под номер счета. Объект 80 инициализации может далее использовать идентификатор устройства, чтобы получать различные значения dCVV2 для различных устройств, выделенных под номер счета. В качестве дополнительной функциональной возможности, объект 80 проверки достоверности может отправлять в маркер 40 информацию адреса доставки и/или информацию расчетного адреса пользователя, который ранее ассоциирован с устройством, и маркер 40 может заполнять эту информацию в соответствующие поля на странице оплаты продавца.
Варианты осуществления и компоненты, показанные на фиг. 1, теперь описываются подробнее. Компьютер 10 пользователя может содержать настольный компьютер, переносной компьютер или любое портативное электронное устройство, которое имеет сетевое средство и периферийный интерфейс для связи с одним или более периферийными устройствами. Компьютер 10 имеет один или более процессоров 11, материальный компьютерно-читаемый носитель 12, соединенный с процессором(ами) 11, который сохраняет набор инструкций (программное обеспечение), которые инструктируют процессор(ы) 11, и который сохраняет данные, используемые посредством процессора(ов) 11, и пользовательский интерфейс 13, соединенный с процессором(ами) 11. Сетевое средство 14 и периферийный интерфейс 16, которые описаны выше, также соединены с процессором(ами) 11, причем сетевое средство 14 также соединено с первой сетью 31 связи. Пользовательский интерфейс 13 содержит одно или более устройств видеовывода (например, дисплеев, экранов) и одно или более устройств ввода (например, клавиатуру, мышь, шаровой манипулятор и т.д.) для приема пользователем 1 информации из компьютера 10 и предоставления ввода в компьютер 10. Компьютерно-читаемый носитель 12 может содержать комбинацию полупроводникового запоминающего устройства и энергонезависимого устройства хранения, к примеру одного или более накопителей на дисках и/или энергонезависимого запоминающего устройства. Компьютерно-читаемый носитель 12 хранит операционную систему для компьютера 10, которая предоставляет возможность выполнения процессов и приложений посредством процессора(ов) 11. Операционная система предоставляет услуги этим процессам и приложениям и предоставляет возможность этим процессам и приложениям осуществлять доступ к компонентам пользовательского интерфейса 13, частям компьютерно-читаемого носителя 12, сетевому средству 14, периферийному интерфейсу 16 и другим компонентам компьютера 10. Операционная система может быть сложной и полнофункциональной, к примеру на настольных компьютерах, или упрощенной, к примеру на сотовых телефонах, PDA и многих других типах портативных электронных устройств.
Сетевое средство 14 компьютера 10 может содержать программное обеспечение и аппаратное обеспечение, которые предоставляют возможность процессу, работающему на компьютере 10, осуществлять связь с сетью связи, к примеру сетью 31, отправлять и принимать сообщения, данные и т.п. в один или более объектов, соединенных с сетью связи. Аппаратное обеспечение для средства 14 может содержать специализированное аппаратное обеспечение, отдельное от процессора(ов) 11, либо совместное использование процессора(ов) 11, либо комбинацию вышеозначенного. Программное обеспечение средства 14 может содержать микропрограммное обеспечение, программное обеспечение, сохраненное на компьютерно-читаемом носителе 12 или другом компьютерно-читаемом носителе, части операционной системы или комбинации любого из предыдущих элементов. Сетевое средство 14 предпочтительно является неисключающим ресурсом, предоставляя доступ к сети связи посредством других процессов и приложений, выполняемых посредством компьютера 10. Периферийный интерфейс 16 компьютера 10 содержит проводное или беспроводное подключение, которое предоставляет возможность периферийному устройству (отдельному от компьютера 10) осуществлять связь с компьютером. Традиционные проводные подключения включают в себя разъемы универсальной последовательной шины (USB) ("USB-порты"), последовательные порты, параллельные порты и PCMCIA-порты. Традиционные беспроводные подключения включают в себя инфракрасные (IR) базовые станции и базовые станции Bluetooth , которые встраиваются в компьютер 10 или которые соединяются с периферийным интерфейсом компьютера 10.
В дополнение к считывателю 44 и периферийному интерфейсу 46 (описанным выше), маркер 40 верификации дополнительно содержит процессор 41, материальный компьютерно-читаемый носитель 42, соединенный с процессором 41, сохраняющий данные, и коды, которые инструктируют работу процессора 41, модуль 43 обеспечения безопасности, соединенный с процессором 41 и выполненный, чтобы защищенно сохранять один или более ключей шифрования и шифровать и расшифровывать данные для маркера 40, считыватель 44, соединенный с процессором 41 и выполненный, чтобы считывать портативные потребительские устройства 5, и периферийный интерфейс 46, соединенный с процессором 41 и выполненный, чтобы осуществлять связь с компьютером 10 посредством периферийного интерфейса 16. Процессор 41 может содержать традиционный микропроцессор, и компьютерно-читаемый носитель 42 может содержать комбинацию полупроводникового запоминающего устройства и энергонезависимого устройства хранения, к примеру энергонезависимого запоминающего устройства. Фиг. 5 иллюстрирует примерную реализацию компьютерно-читаемого носителя 42, который включает в себя хранение нескольких элементов данных (описаны подробнее ниже), кодов процессора, которые инструктируют работу процессора 41, и запоминающего устройства процессора, которое процессор 41 может использовать при выполнении своих задач. Снова ссылаясь на фиг. 1, модуль 43 обеспечения безопасности может содержать схему шифрования и расшифровки (которая может включать в себя один или более процессоров) и может содержать один или более ключей шифрования, сохраненных в защищенном запоминающем устройстве. Модуль 43 обеспечения безопасности также может включать в себя схему защиты на основе брандмауэра, которая защищает маркер 40 верификации от атак от хакеров, проводимых через периферийный интерфейс 16. Считыватель 44 может содержать традиционный считыватель, как описано выше. Периферийный интерфейс 46 может содержать проводное или беспроводное подключение, выполненное, чтобы осуществлять связь с периферийным интерфейсом 16 компьютера 10. Как указано выше, традиционные проводные подключения включают в себя разъемы универсальной последовательной шины ("USB-порты"), последовательные порты, параллельные порты и PCMCIA-порты. Традиционные беспроводные подключения могут включать в себя инфракрасные удаленные станции и удаленные станции Bluetooth . При использовании традиционного проводного подключения с периферийным интерфейсом 46 маркер 40 верификации может соединяться с возможностью отсоединения с компьютером 10 в периферийном интерфейсе 16, к примеру в разъеме USB-порта. Фиг. 6 иллюстрирует примерный маркер 40-1 верификации с разъемом USB-порта (штекерный тип) в качестве части своего периферийного интерфейса 46-1. Также проиллюстрирован на фиг. 6 компьютер 10, его периферийный интерфейс 16-1, имеющий разъем USB-порта (гнездового типа), в который USB-разъем 46-1 вставляется, пользовательский интерфейс 13 компьютера (например, экран и клавиатура), портативное потребительское устройство 5 пользователя (RFID-карта), пользователь 1 и представление значения dCVV2 в пользовательском интерфейсе 13. Маркер 40 дополнительно может включать в себя визуальный индикатор, к примеру светоизлучающий диод (LED), который подсвечивается, когда он готов считывать устройство 5 пользователя, и дополнительно может включать в себя звуковой индикатор, к примеру пьезоэлектрический зуммер, который издает звуковой сигнал, когда маркер 40 завершает считывание устройства 5 пользователя. Визуальные и звуковые индикаторы могут работать посредством схемы считывателя 44. В других реализациях один или более этих индикаторов может работать посредством процессора 41 через команды ввода-вывода. Несмотря на то что Фиг. 6 иллюстрирует маркер как нечто подобное USB-флеш устройству, маркер может принимать другие формы. Например, он может быть частью аппаратного обеспечения или другим модулем, установленным в компьютер, потребительским устройством, или другим устройством.
Снова ссылаясь на фиг. 1, маркер 40 верификации дополнительно содержит различные коды, воплощенные на компьютерно-читаемом носителе 42, которые инструктируют процессору 41 данных выполнять соответствующие этапы (например, коды процессора, показанные на фиг. 5). Первый код инструктирует процессору 41 данных осуществлять связь с компьютером 10 посредством периферийного интерфейса 46, с тем чтобы получать доступ к сетевому средству 14 компьютера 10. Первый код может содержать код, который инструктирует процессору 41 данных отправлять драйвер устройства в компьютер 10, и инструкцию, чтобы устанавливать драйвер устройства в операционной системе компьютера, при этом драйвер устройства является набором инструкций, которые должны выполняться посредством компьютера 10, которые предоставляют возможность компьютеру 10 распознавать маркер верификации и осуществлять связь с маркером 40 верификации и предоставляют возможность процессору 41 данных маркера осуществлять вызовы функций в различные интерфейсы прикладного программирования (API) операционной системы компьютера, к примеру, связанные с организацией сетей и осуществлением доступа к сетевому средству 14. Так называемые "самоустанавливающиеся" драйверы являются известными в области техники и могут быть использованы здесь. Они содержат один или более вызовов функций в интерфейс прикладного программирования (API) операционной системы компьютера, к примеру API диспетчера устройств.
Первый код может быть сконфигурирован, чтобы работать с выбранной операционной системой, к примеру, Windows или Symbian OS или может быть сконфигурирован, чтобы работать с несколькими операционными системами. Во втором случае первый код может включать в себя несколько драйверов устройства для различных операционных систем и инструкции, которые запрашивают компьютер 10 на предмет типа его операционной системы и выбирают (и устанавливают) драйвер, наиболее подходящий для операционной системы компьютера. Драйверы устройства могут быть сохранены в сегменте компьютерно-читаемого носителя 42, как проиллюстрировано на пример по фиг. 5. Первый код дополнительно может включать в себя, в качестве варианта, инструкции, которые инструктируют процессору 41 формировать сигнал ввода-вывода, который инструктирует подсвечивание вышеописанного визуального индикатора в ответ на получение доступа посредством процессора 41 к сетевому средству 14 компьютера 10.
Снова ссылаясь на фиг. 1, второй код маркера 40 верификации инструктирует процессору 41 данных принимать идентификационную информацию, считанную из портативного потребительского устройства 5 посредством считывателя 44. Второй код может включать в себя код, который инструктирует процессору 41 данных принимать универсальный идентификатор ресурса (URID) объекта 80 проверки достоверности, считываемый из портативного потребительского устройства 5 посредством считывателя 44. Второй код может содержать инструкции, которые инструктируют процессору 41 контактировать со считывателем 44 с периодическими интервалами через команду ввода-вывода, чтобы определять то, имеет или нет считыватель какие-либо данные для процессора, и считывать данные, когда данные указываются как присутствующие. Второй код дополнительно может инструктировать процессору 41 контактировать со считывателем 44 через команду ввода-вывода, чтобы очищать данные после того, как процессор 41 считывает их, или считыватель 44 может быть сконфигурирован, чтобы очищать данные после того, как он обнаруживает, что процессор 41 считывает их, или после периода времени, превышающего периодический интервал контакта, используемый посредством процессора 41. В другой реализации считыватель 44 может быть сконфигурирован, чтобы формировать сигнал прерывания в процессор 41, когда данные присутствуют, и второй код может включать в себя инструкции, которые инструктируют процессору 41 отвечать на сигнал прерывания посредством считывания данных из считывателя 44 и очистки прерывания. Второй код дополнительно может включать в себя, в качестве варианта, инструкции, которые инструктируют процессору 41 формировать сигнал ввода-вывода, который инструктирует вышеописанному звуковому индикатору издавать звуковой сигнал в ответ на прием данных посредством процессора 41 из считывателя 44. Вышеуказанные инструкции могут включать в себя традиционные инструкции ввода-вывода, которые инструктируют связь со считывателем 44 и индикаторами. Различные портативные потребительские устройства 5 могут сохранять и предоставлять различный URID в различные объекты 80 проверки достоверности. Универсальный идентификатор ресурса (URID) может содержать унифицированный указатель ресурса (URL), адрес Интернет-протокола (IP-адрес) или любой другой тип идентификатора, который может идентифицировать объект в сети связи. Если портативное потребительское устройство 5 не предоставляет URID в объект 80 проверки достоверности, маркер 40 верификации может сохранять URID в объекте 80 проверки достоверности по умолчанию. В некоторых конфигурациях некоторые маркеры 40 верификации могут быть многомарочными с соответствующими банками-эмитентами и работать только на портативных потребительских устройствах, которые являются многомарочными с идентичными банками-эмитентами, и каждый банк-эмитент может иметь собственный объект 80 проверки достоверности с собственным URID. В этой конфигурации эти маркеры 40 верификации могут сохранять URID в своих соответствующих многомарочных объектах 80 проверки достоверности. Вместо или в дополнение к этой конфигурации некоторые маркеры 40 верификации могут быть ассоциированы с соответствующими сетями 70 обработки платежей, и каждая эта сеть может иметь собственный объект 80 проверки достоверности. В этой конфигурации данные маркеры 40 верификации могут сохранять URID в своих соответствующих ассоциированных объектах 80 проверки достоверности. Соответственно, второй код маркера 40 верификации может быть дополнительно сконфигурирован, чтобы инструктировать процессору 41 данных использовать только URID по умолчанию, сохраненный посредством маркера 40, или использовать URID по умолчанию, если потребительское портативное устройство 5 не предоставляет маркер 40 с URID в объект 80. В качестве еще одной другой реализации маркер 40 верификации может включать в себя код, который инструктирует процессору 41 выбирать один из определенного числа URID, сохраненных в маркере 40, на основе номера банка, предоставляемого в идентификационной информации или встраиваемого в номер счета. Вышеуказанное дополнительное инструктирование и коды могут быть реализованы с помощью традиционных инструкций ввода-вывода, инструкций доступа к памяти и логических и управляющих инструкций CPU. Один или более URID для объектов проверки достоверности могут быть сохранены на компьютерно-читаемом запоминающем устройстве 42, как проиллюстрировано в примере, показанном на фиг. 5.
Снова ссылаясь на фиг. 1, третий код маркера 40 верификации инструктирует процессору 41 данных устанавливать связь с объектом 80 проверки достоверности с использованием сетевого средства 14 компьютера 10. Операционная система компьютера 10 содержит один или более программных модулей и прикладных программ, в общем, называемых "модулями сетевых служб" в данном документе, которые могут осуществлять доступ к сетевому средству 14 и устанавливать сеансы связи с объектами в сети 31 связи. Эти модули сетевых служб включают в себя Windows Communications Foundation от Microsoft (например, .NET 3.0, .NET 4.0 и т.д.), CFNetwork Framework от Apple, сетевой модуль ядер операционных систем Unix и Linux, уровень служб ОС и уровень базовых служб операционной системы Symbian, Интернет-обозреватели и т.п. Каждый из этих модулей сетевых служб является неисключающим (например, допускающим обслуживание нескольких процессоров и нескольких процессов/приложений), и предоставляет интерфейс прикладного программирования (API) в набор функций, к которым процессор может осуществлять доступ с использованием соответствующих вызовов функций. С помощью этих API-средств набор вызовов функций может легко составляться для выполнения посредством процессора, что предоставляет возможность процессору устанавливать канал связи с объектом в сети связи, соединенной с сетевым средством 14, и обмениваться сообщениями и данными с объектом. Третий код маркера 40 верификации содержит такой набор вызовов функций в API модуля сетевых служб компьютера 10, включающий в себя один или более вызовов функций, которые предоставляют универсальный идентификатор ресурса (URID) для объекта 80 проверки достоверности, и инструкцию, чтобы устанавливать сеанс с объектом проверки достоверности. Сеанс может быть сеансом уровня защищенных сокетов (или защищенного транспортного уровня) (например, SSL-сеансом) со взаимной аутентификацией. В качестве части установления сеанса в некоторых реализациях третий код маркера 40 верификации может включать в себя инструктирование процессора 41 данных предоставлять или инструктировать предоставлять сетевой адрес для маркера в модуль сетевых служб компьютера и в объект 80 проверки достоверности. Сетевой адрес может быть статическим или динамическим, причем второй из них может получаться через вызовы API-функций в модуль сетевых служб компьютера. Сетевой адрес может быть IP-адресом.
Если маркер 40 хочет использовать Интернет-обозреватель для модуля сетевых служб, он дополнительно может содержать вызовы API-функций в операционную систему компьютера, чтобы инициировать экземпляр обозревателя и предоставлять ему доступ к экземпляру обозревателя. В некоторых реализациях, к примеру, когда объект 40 верификации сохраняет URID объекта 80 проверки достоверности, третий код может инструктировать процессору 41 данных устанавливать связь с объектом 80 проверки достоверности задолго до того, как пользователь 1 представляет потребительское портативное устройство 5 для считывателя 44, и до того, как процессор 41 считывает данные устройства из считывателя 44. Маркер 40 верификации и объект 80 проверки достоверности могут сохранять сеанс связи активным до тех пор, пока устройство 5 не представляется для считывателя 44, и между временами, когда устройство 5 представляется для считывателя 44, посредством обмена время от времени сообщениями "подтверждения работоспособности". Например, маркер 40 верификации может периодически, апериодически или произвольно отправлять в объект 80 проверки достоверности сообщения, подтверждающие его присутствие в сеансе, и объект 80 проверки достоверности может отправлять сообщение с ответом, подтверждающее его присутствие в сеансе.
Третий код может быть выполнен в ответ на прием данных посредством процессора 41 из считывателя 44 или может быть выполнен до приема данных из считывателя 44. Во втором случае третий код может включать в себя, в качестве варианта, инструкции, которые инструктируют процессору 41 отправлять команду ввода-вывода в считыватель 44, чтобы активировать его возможность считывания после того, как процессор 41 устанавливает связь с объектом 80 проверки достоверности.
Четвертый код маркера 40 верификации инструктирует процессору 41 данных передавать по меньшей мере часть идентификационной информации в объект 80 проверки достоверности посредством сетевого средства 14 компьютера 10, при этом идентификационная информация передается в зашифрованной форме. Если SSL-сеанс установлен, четвертый код может инструктировать процессору 41 данных передавать идентификационную информацию в модуль сетевых служб компьютера с использованием надлежащих вызовов функций в API для модуля сетевых служб, и идентификационная информация может быть передана в SSL-сеансе, причем передаваемые и принимаемые данные шифруются посредством сеансового ключа. Для дополнительного уровня безопасности четвертый код дополнительно может содержать код, который инструктирует процессору 41 шифровать идентификационную информацию посредством использования модуля 43 обеспечения безопасности с использованием ключа шифрования, сохраненного в маркере 40, до его предоставления в сетевое средство 14. Эти инструкции могут включать в себя традиционные инструкции ввода-вывода, которые инструктируют связь с модулем 43 обеспечения безопасности, чтобы передавать идентификационную информацию в модуль 43 и принимать обратно зашифрованную информацию. Ключ шифрования для этого может быть сохранен на компьютерно-читаемом носителе 42 или в модуле 43 обеспечения безопасности.
Пятый код маркера 40 верификации инструктирует процессору 41 данных принимать, после передачи упомянутой идентификационной информации, значение верификации устройства (например, значение dCVV2) из объекта 80 проверки достоверности посредством сетевого средства 14 компьютера 10. Этот код может содержать вызовы функций в API модуля сетевых служб компьютера, чтобы извлекать данные, отправляемые посредством объекта 80 в сеансе. Значение dCVV2 может шифроваться посредством объекта 80 проверки достоверности, когда пятый код маркера верификации дополнительно может инструктировать процессору 41 данных расшифровывать зашифрованное значение, к примеру, посредством использования модуля 43 обеспечения безопасности (с помощью вызовов инструкций ввода-вывода в модуль 43). Пятый код может включать в себя код, который инструктирует процессору 41 данных отображать принимаемое значение dCVV2 пользователю 1, к примеру, посредством пользовательского интерфейса 13 компьютера 10 или миниатюрного ЖК-экрана и т.п., интегрированного с маркером 40 верификации. В первом случае этот код может содержать вызовы API-функций в графический пользовательский интерфейс операционной системы компьютера 10, чтобы раскрывать отображаемый блок в пользовательском интерфейсе 13, чтобы отображать значение dCVV2 в буквенно-цифровой и/или графической форме. Во втором случае этот код может содержать инструкции ввода-вывода на миниатюрный ЖК-экран и т.п. В другой реализации маркер 40 верификации может вставлять принимаемое значение dCVV2 в поле CVV страницы покупок продавца. В этом случае пятый код дополнительно может включать в себя код, который инструктирует процессору 41 данных находить сеанс обозревателя на компьютере, который имеет поле формы для значения верификации устройства, и заполнять поле значением верификации устройства, принятым из объекта проверки достоверности. Он может включать в себя вызовы функций в API Интернет-обозревателя, чтобы искать на активной веб-странице или на всех открытых веб-страницах поле ввода, помеченное как CVV, и вводить значение dCVV2 в поле CVV.
В некоторых реализациях поле CVV на странице продавца может конфигурироваться как скрытое поле, которое является невидимым для пользователя. Это может осуществляться, чтобы уменьшать сложность для пользователя при проведении транзакции и уменьшать вероятности неудачного проведения транзакции вследствие путаницы пользователя, технических трудностей или явной потребности в слишком большом объеме информации. В этом случае и в качестве варианта пятый код может содержать инструкции, которые инструктируют процессору 41 данных находить сеанс обозревателя на компьютере, который имеет скрытое поле для значения верификации устройства (например, страница оплаты продавца), и заполнять поле значением верификации устройства, принятым из объекта проверки достоверности. В этом случае нет необходимости представлять значение верификации устройства в визуальной форме пользователю. Скрытое поле, на многих языках веб-программирования, может легко указываться посредством идентификатора тега или переменной обозревателя, которая является известной как продавцу, так и маркеру 40. Если процессор 41 не может находить скрытое поле, то пятый код дополнительно может инструктировать процессору 41 представлять принимаемое значение верификации устройства пользователю. Эти инструкции могут включать в себя вызовы функций в API Интернет-обозревателя, чтобы искать на активной веб-странице или на всех открытых веб-страницах скрытое поле скрытого поля (помеченное посредством идентификатора или имени переменной), вводить значение dCVV2 в скрытое поле, и инструкции ввода-вывода на ЖК-экран или в компьютер 10, чтобы визуально представлять значение dCVV2, если скрытое поле не может быть найдено, или вызовы функций в API Интернет-обозревателя, чтобы визуально представлять значение dCVV2 во временном окне обозревателя, если скрытое поле не может быть найдено.
В некоторых конфигурациях объект 80 проверки достоверности может предоставлять динамический номер счета (зачастую называемый "dPAN" в данной области техники) вместе со значением dCVV2. Для этих конфигураций пятый код может дополняться, чтобы принимать dPAN вместе со значением dCVV2 и отображать значение dPAN пользователю 1 или заполнять значение в поле счета страницы покупок продавца и включать в себя инструкции, аналогичные описанным выше для обработки значения dCVV2. В частности, пятый код дополнительно может включать в себя код, который инструктирует процессору 41 данных отображать принимаемое значение dPAN пользователю 1, к примеру, посредством пользовательского интерфейса 13 компьютера 10 или миниатюрного ЖК-экрана и т.п., интегрированного с маркером 40 верификации. В первом случае этот код может содержать вызовы API-функций в графический пользовательский интерфейс операционной системы компьютера 10, чтобы раскрывать индикаторное окно в пользовательском интерфейсе 13, чтобы отображать значение dPAN в буквенно-цифровой и/или графической форме. Во втором случае этот код может содержать инструкции ввода-вывода на миниатюрный ЖК-экран и т.п. В другой реализации маркер 40 верификации может вставлять принимаемое значение dPAN в поле счета страницы покупок продавца. В этом случае пятый код дополнительно может включать в себя код, который инструктирует процессору 41 данных находить сеанс обозревателя на компьютере, который имеет поля формы для номера счета и значения верификации устройства (например, поля CVV), и заполнять поле счета значением dPAN и поле значения верификации устройства значением dCVV2, принятым из объекта проверки достоверности. Он может включать в себя вызовы функций в API Интернет-обозревателя, чтобы искать на активной веб-странице или на всех открытых веб-страницах поля ввода, помеченные как "номер счета" (или "номер кредитной карты") и CVV, и вводить значение dPAN в поле "номера счета" и значение dCVV2 в поле CVV.
В некоторых конфигурациях объект 80 проверки достоверности может предоставлять расчетный адрес и/или адрес доставки (например, адрес проживания и/или служебный адрес пользователя), ассоциированный с портативным потребительским устройством 5 вместе со значением dCVV2. Информация адреса, возможно, ранее ассоциирована с устройством 5 посредством банка-эмитента или пользователя через онлайновый управленческий счет пользователя для устройства или маркера. Для этих конфигураций пятый код может дополняться, чтобы принимать расчетный адрес и/или адрес доставки вместе со значением dCVV2 и заполнять адрес в соответствующие поля страницы покупок продавца с использованием инструкций, аналогичных описанным выше для обработки значения dCVV2. В частности, пятый код дополнительно может включать в себя код, который инструктирует процессору 41 данных принимать информацию о расчетном адресе и адресе доставки из объекта 80 проверки достоверности (которая может предоставляться в конкретном формате с индикаторами полей), чтобы находить сеанс обозревателя на компьютере, который имеет поля формы для расчетного адреса(ов) и адреса доставки (например, фактический адрес, город, штат, почтовый индекс, страна), и заполнять эти поля информацией адреса, принятой из объекта проверки достоверности. Эти инструкции могут включать в себя вызовы функций в API Интернет-обозревателя, чтобы искать на активной веб-странице или на всех открытых веб-страницах поля ввода, помеченные с помощью индикаторов расчетного адреса и/или адреса доставки и вызовов функций, чтобы заполнять эти поля.
Использование вызовов функций в различные интерфейсы прикладного программирования (API) операционной системы компьютера 10, ее модулей поддержки, средств и приложений известно в области техники программного обеспечения, и специалисты в данной области техники должны иметь возможность составлять инструкции и вызовы API-функций, чтобы реализовывать вышеописанные коды и задачи с учетом этого раскрытия сущности без чрезмерного экспериментирования.
Фиг. 2 иллюстрирует примерный вариант осуществления 140 способа, который может быть использован посредством маркера 40 верификации. Примерный способ 140 содержит множество этапов 141-145. Этап 141 содержит установление линии связи между маркером верификации и компьютером, причем компьютер имеет сетевое средство, как описано выше. Этап 142 содержит установление сеанса связи между маркером верификации и объектом проверки достоверности с использованием сетевого средства компьютера и модуля сетевых служб для него. Этап 143 содержит считывание идентификационной информации из портативного потребительского устройства 5 в маркер верификации с использованием считывателя, к примеру считывателя 44. В некоторых реализациях этап 143 может предшествовать одному или обоим этапам 141 и 142. Этап 144 содержит передачу считанной идентификационной информации из маркера верификации в объект проверки достоверности через сеанс связи, причем идентификационная информация передается в объект проверки достоверности в зашифрованной форме. Этап 144 может содержать направление сеанса связи, чтобы шифровать идентификационную информацию, и/или шифрование идентификационной информации с использованием ключа шифрования, сохраненного в маркере. Алгоритм на основе DES с трехкратным шифрованием может использоваться для обоих шифрований. Этап 145 содержит, после передачи идентификационной информации, прием, в маркере верификации, значения верификации устройства из объекта проверки достоверности посредством сеанса связи. Этап 145 также может включать в себя прием dPAN и/или информации адреса, как описано выше.
Фиг. 3 иллюстрирует примерный вариант осуществления 150 способа для использования пользователем маркера 40 верификации и т.п. Примерный способ 150 содержит множество этапов 151-153. Этап 151 содержит соединение маркера верификации, к примеру маркера 40 с компьютером, к примеру компьютером 10, с использованием периферийного интерфейса компьютера. Этап 152 содержит представление портативного потребительского устройства 5 для считывателя маркера верификации, чтобы получать значение верификации устройства для устройства. Если устройство 5 имеет магнитную полосу, этап 152 может содержать проведение магнитной полосы через считыватель магнитных полос маркера верификации. Если устройство 5 содержит интерфейс беспроводной связи, этап 152 может содержать сигнальное устройство 5 рядом со считывателем маркера верификации. Этап 153 содержит предоставление полученного значения верификации устройства в объект, участвующий в транзакции между пользователем и объектом. Этап 153 может содержать ввод значения верификации устройства на веб-странице объекта или перенос значения по телефону представителю объекта.
Как указано выше, объект 80 проверки достоверности может использовать первый тест проверки достоверности, чтобы проверять достоверность маркера 40 верификации. Для этого маркер 40 верификации может отправлять свой порядковый номер в объект 80 проверки достоверности вместе с сообщением, зашифрованным посредством ключа шифрования, причем сообщение и ключ шифрования известны как для маркера 40, так и для объекта 80 (но не для широкой публики), и ключ шифрования дополнительно уникально назначается порядковому номеру маркера. Объект 80 проверки достоверности имеет базу данных порядковых номеров и соответствующих уникально назначаемых ключей шифрования (или сохраненных алгоритмов для формирования упомянутых ключей) и может проверять достоверность того, что маркер 40 верификации отправляет корректное сообщение для порядкового номера. Для этого маркер 40 верификации может содержать порядковый номер и уникальный ключ шифрования, воплощенный на компьютерно-читаемом носителе, причем уникальный ключ шифрования является уникальным для маркера 40 верификации (см. фиг. 5 для примерной реализации, "порядкового номера" и "элемента данных для зашифрованного сообщения"), и код, который инструктирует процессору 41 данных отправлять порядковый номер и сообщение, зашифрованное посредством уникального ключа шифрования, в объект 80 проверки достоверности. Сообщение может предварительно сохраняться на компьютерно-читаемом носителе (например, храниться в "элементе данных для зашифрованного сообщения" на фиг. 5) или получаться из информации, известной как для маркера 40 верификации, так и для объекта 80 проверки достоверности, к примеру, сообщения, извлеченного из алгоритма, применяемого к текущей дате, порядковому номеру маркера 40 и/или сеансовому ключу сеанса связи между маркером 40 и объектом 80. Таким образом, сообщение, отправляемое посредством маркера 40 в объект 80 проверки достоверности, является верифицируемым посредством объекта 80 проверки достоверности с использованием информации, сохраненной в объекте проверки достоверности. Компьютерно-читаемый носитель для вышеуказанных задач может находиться на компьютерно-читаемом носителе 42 и/или в модуле 43 обеспечения безопасности. Вышеуказанные коды могут включать в себя инструкции ввода-вывода в модуль 43 обеспечения безопасности и вызовы функций в API модуля сетевых служб компьютера.
В качестве варианта, маркер 40 верификации может отправлять, время от времени, один или более фрагментов уникальной для машины информации компьютера 10 в объект 80 проверки достоверности, который может сверять эту информацию с базой данных информации компьютеров, ассоциированной с известными мошенниками. Такая уникальная для машины информация может включать в себя порядковые номера процессоров, накопителей на дисках и операционных систем компьютера 10. Маркер 40 верификации может содержать код, который инструктирует процессору 41 данных получать один или более фрагментов уникальной для машины информации из компьютера 10 и отправлять специфичную для машины информацию в объект 80 проверки достоверности. Этот код может включать в себя вызовы функций в API операционной системы компьютера, чтобы получать информацию и вызовы функций в API модуля сетевых служб компьютера, чтобы отправлять информацию в объект 80 проверки достоверности.
В качестве другого варианта, маркер 40 верификации может быть сконфигурирован, чтобы предлагать пользователю 1 вводить пароль, чтобы активировать одну или более функциональных возможностей маркера 40. Пароль может быть сохранен на компьютерно-читаемом носителе, находящемся в модуле 43 обеспечения безопасности, или на компьютерно-читаемом носителе 42 (см. фиг. 5 для примерной реализации последнего). Пароль может предоставляться пользователю 1 на листе бумаги посредством поставщика или продавца маркера 40. Маркер 40 может отправляться пользователю 1 через почту посредством или от имени банка-эмитента либо может приобретаться пользователем 1 в магазине. Маркер 40 может быть сконфигурирован, чтобы требовать, чтобы пароль вводился каждый раз, когда пользователь хочет представлять потребительское портативное устройство 5, и/или каждый раз, когда маркер 40 соединяется с компьютером 10. Для этого маркер 40 верификации дополнительно может содержать код, воплощенный на компьютерно-читаемом носителе 42, который инструктирует процессору 41 данных предлагать пользователю вводить пароль на клавиатуре компьютера 10, считывать пароль, введенный пользователем, и сравнивать введенный пароль с сохраненным паролем, воплощенным на компьютерно-читаемом носителе. Этот код может содержать вызовы API-функций в графический пользовательский интерфейс операционной системы компьютера 10, чтобы раскрывать индикаторное окно в пользовательском интерфейсе 13, чтобы запрашивать и принимать пароль от пользователя 1, инструкции ввода-вывода, инструкции доступа к памяти и логические и управляющие инструкции CPU. Маркер 40 верификации дополнительно может содержать одно или более из следующего:
(1) код, воплощенный на компьютерно-читаемом носителе 42, который инструктирует процессору 41 данных инициировать и/или давать возможность вышеописанной связи с компьютером 10 в ответ на совпадение введенного пароля с сохраненным паролем;
(2) код, воплощенный на компьютерно-читаемом носителе 42, который инструктирует процессору 41 данных инициировать и/или давать возможность вышеописанной связи с объектом 80 проверки достоверности в ответ на совпадение введенного пароля с сохраненным паролем;
(3) код, воплощенный на компьютерно-читаемом носителе 42, который инструктирует процессору 41 данных активировать считыватель 44 и/или принимать идентификационную информацию из считывателя 44 в ответ на совпадение введенного пароля с сохраненным паролем; и
(4) код, воплощенный на компьютерно-читаемом носителе 42, который инструктирует процессору 41 данных инициировать и/или давать возможность вышеописанной передачи идентификационной информации в объект 80 проверки достоверности в ответ на совпадение введенного пароля с сохраненным паролем.
Эти коды могут быть осуществлены с помощью инструкций ввода-вывода, инструкций доступа к памяти и логических и управляющих инструкций CPU. Они, по отдельности или в комбинации, предотвращают передачу идентификационной информации в объект 80, когда введенный пароль не является идентичным сохраненному паролю, и тем самым содержат код, воплощенный на компьютерно-читаемом носителе, который инструктирует процессору данных выполнять это. Специалисты в данной области техники должны иметь возможность составлять инструкции и вызовы API-функций, чтобы реализовывать вышеописанные коды с учетом этого раскрытия сущности без чрезмерного экспериментирования. В качестве дополнительной защиты маркер 40 проверки достоверности дополнительно может содержать код, воплощенный на компьютерно-читаемом носителе 42, который инструктирует процессору 41 данных устанавливать имя пользователя для маркера посредством представления пользователю 1 диалогового окна, чтобы принимать ввод, обозначающий имя пользователя, и посредством сохранения имени пользователя на компьютерно-читаемом носителе 42 (пример показан на фиг. 5). Вышеуказанные коды для обработки пароля дополнительно могут дополняться, чтобы включать в себя запрос имени пользователя для маркера и сравнение принимаемого имени пользователя с сохраненным именем пользователя на предмет совпадения, и включение совпадения в качестве условия, которое должно удовлетворяться, в каждый из четырех выше кодов, которые инициируют или дают возможность выполнения различных этапов. Эти коды могут быть осуществлены с помощью инструкций ввода-вывода, инструкций доступа к памяти и логических и управляющих инструкций CPU.
В дополнительных реализациях, в качестве дополнительной защиты, маркер 40 проверки достоверности дополнительно может содержать код, воплощенный на компьютерно-читаемом носителе 42, который инструктирует процессору 41 данных устанавливать один или более адресов доставки и/или расчетных адресов в маркере, которые маркер 40 может использовать для того, чтобы заполнять в форме для заполнения местоположения страницы продавца. Каждый адрес доставки и/или расчетный адрес может быть ассоциирован с портативным потребительским устройством. Код может инструктировать процессору 41 представлять последовательность диалоговых окон пользователю посредством пользовательского интерфейса компьютера 13, чтобы принимать информацию адреса и номера счета (или последние его четыре цифры) портативного потребительского устройства 5, который должен быть ассоциирован с информацией адреса, и сохранять информацию адреса на компьютерно-читаемом носителе, к примеру носителе 42 (как проиллюстрировано посредством примера, показанного на фиг. 5). Маркер 40 дополнительно может содержать код, воплощенный на компьютерно-читаемом носителе 42, который инструктирует процессору 41 данных осуществлять доступ к информации адреса в ответ на отправку запроса в объект 80 проверки достоверности (информация адреса может выбираться из многих сохраненных адресов, на основе номера счета, отправляемого в запросе), и заполнять информацию адреса в надлежащие местоположения страницы оплаты продавца, к примеру, когда значение dCVV2 принимается обратно из объекта 80 проверки достоверности. Код может быть сконфигурирован, чтобы инструктировать процессору 41 заполнять информацию адреса только тогда, когда местоположения для информации о странице оплаты продавца являются пустыми, и когда объект 80 проверки достоверности не предоставляет информацию адреса, как описано выше. Код для заполнения может быть дополнительно сконфигурирован, чтобы инструктировать процессору 41 данных использовать информацию по доставке и/или расчетную информацию, сохраненную на портативном потребительском устройстве 5, когда информация по доставке и/или расчетная информация не сохраняется в маркере 40 для номера счета устройства 5, и дополнительно, если местоположения для информации по доставке на странице оплаты продавца являются пустыми, и объект 80 проверки достоверности не предоставляет информацию адреса, как описано выше. Код для заполнения может включать в себя код, который инструктирует процессору 41 данных находить сеанс обозревателя на компьютере, который имеет поля формы для информации адреса и/или значения верификации устройства, и заполнять поля адреса выбранной информацией адреса. Он может включать в себя вызовы функций в API Интернет-обозревателя, чтобы искать на активной веб-странице или на всех открытых веб-страницах поле ввода, помеченное как имя, адрес, город, почтовый индекс, страна и CVV, и вводить элемент данных выбранной информации адреса в надлежащие поля. Вышеуказанные коды могут быть реализованы с помощью вызовов API-функций, инструкций ввода-вывода, инструкций доступа к памяти и логических и управляющих инструкций CPU.
В каждом из вариантов осуществления, описанных в данном документе, относящихся к маркеру 40 верификации, маркер 40 может отправлять идентификационную информацию, относящуюся к портативному потребительскому устройству 5, в компьютер 10 в определенном числе форм, включающих в себя: (1) неизмененную форму ("открытую форму"), (2) зашифрованную форму, (3) хэшированную форму (например, кодированную), (4) подписанную форму, (5) или любую комбинацию этих форм. Эти формы могут формироваться посредством портативного потребительского устройства 5, маркера 40 верификации, компьютера 10 или любой комбинации вышеозначенного. Помимо этого, маркер 40 верификации и объект 80 проверки достоверности могут выполнять процесс взаимной аутентификации до того, как маркер 40 верификации отправляет идентификационную информацию.
В каждом из вариантов осуществления, описанных в данном документе, относящихся к маркеру 40 верификации, вышеуказанные коды маркера 40 и идентификационная информация, считанная из устройства 5 посредством маркера 40, могут быть сохранены независимо от компьютера 10 и могут быть защищены от программ (включающих в себя программы-шпионы и другие вредоносные программы), работающих на компьютере 10. В таких реализациях идентификационная информация переводится в защищенную форму (например, шифруется, хэшируется, подписывается, либо комбинация вышеозначенного) посредством маркера 40 верификации до того, как информация предоставляется в компьютер 10. Соответственно, защита информации не зависит от безопасности компьютера 10. Симметричные или асимметричные ключи могут использоваться для шифрования и подписания. Ключи для маркера 40 верификации могут быть уникальными относительно других маркеров верификации (т.е. ключи для маркера могут быть уникальными для этого маркера). Ключи для маркера и, в частности, симметричные ключи могут быть основаны на уникально назначенном порядковом номере для маркера верификации, который может осуществлять связь с объектом 80 проверки достоверности при начальной связи. Как маркер верификации, так и объект проверки достоверности могут иметь совместно используемый секрет относительно того, как извлекать ключ из порядкового номера маркера, к примеру, посредством обработки и/или замены выбранных цифр порядкового номера. Определенное число ключей может извлекаться из уникального порядкового номера с использованием соответствующих совместно используемых секретов. Таким образом, сообщения оклика и ответа, используемые в процессе взаимной аутентификации между маркером верификации и объектом проверки достоверности, могут быть подписаны с использованием соответствующих ключей, извлеченных из порядкового номера маркера верификации.
После описания различных вариантов осуществления и реализаций маркера 40 верификации различные варианты осуществления и реализации объекта проверки достоверности теперь описываются. Объект 80 проверки достоверности содержит систему, имеющую один или более серверов, соединенных с сетью связи, которая может принимать запрос из маркера 40 верификации, чтобы обрабатывать (например, проверять достоверность) идентификационную информацию, которую маркер считывает из портативного потребительского устройства 5, и предоставлять значение верификации устройства (dCVV2) в маркер и в сеть 70 обработки платежей, если идентификационная информация проходит один или более тестов проверки достоверности. Один из серверов объекта 80 показывается на фиг. 1; сервер содержит один или более процессоров 81, электрически соединенных с каждым из материального компьютерно-читаемого носителя 82, пользовательского интерфейса 83, одной или более баз 86 данных и сетевого средства 84, причем последнее из них соединяется с первой и второй сетями 31 и 32 связи. Пользовательский интерфейс 83 содержит одно или более устройств видеовывода (например, дисплеев, экранов) и одно или более устройств ввода (например, клавиатуру, мышь, шаровой манипулятор и т.д.), которые предоставляют возможность администратору объекта 80 принимать информацию из сервера и предоставлять ввод на сервер. Компьютерно-читаемый носитель 82 может содержать комбинацию полупроводникового запоминающего устройства и энергонезависимого устройства хранения, к примеру одного или более накопителей на дисках и/или энергонезависимого запоминающего устройства.
Компьютерно-читаемый носитель 82 сохраняет операционную систему для сервера, которая предоставляет возможность выполнения процессов и приложений посредством процессора(ов) 81 и предоставляет возможность выполнения кодов для инструктирования работы процессора(ов) 81. Операционная система предоставляет услуги этим процессам и приложениям и предоставляет возможность этим процессам и приложениям осуществлять доступ к компонентам пользовательского интерфейса 83, частям компьютерно-читаемого носителя 82, сетевому средству 84 и другим компонентам объекта 80. Операционная система может быть полнофункциональной. В частности, операционная система предоставляет один или более модулей связи ввода-вывода, которые предоставляют возможность процессору(ам) 81 осуществлять связь с пользовательским интерфейсом 83 и базами 86 данных. Каждый модуль связи ввода-вывода имеет интерфейс прикладного программирования (API) с набором функций, которые может вызывать процессор 81, чтобы осуществлять доступ к компонентам. Операционная система объекта 80 также содержит один или более модулей сетевых служб, которые могут осуществлять доступ к сетевому средству 84 и устанавливать сеансы связи с объектами в сетях 31 и 32 связи и с сервером 35 ретрансляции SMS. Эти модули сетевых служб включают в себя Windows Communications Foundation от Microsoft (например, .NET 3.0, .NET 4.0 и т.д.), CFNetwork Framework от Apple, сетевой модуль ядер операционных систем Unix и Linux и уровень служб ОС и уровень базовых служб операционной системы Symbian и т.п. Каждый из этих модулей сетевых служб может быть неисключающим (например, допускающим обслуживание нескольких процессоров и нескольких процессов/приложений), и каждый предоставляет интерфейс прикладного программирования (API), который имеет набор функций, которые может вызывать процессор 81, чтобы управлять связями с другим объектом. С помощью этих API-средств набор вызовов API-функций может легко составляться для выполнения посредством процессора, что предоставляет возможность процессору устанавливать канал связи с объектом в сети связи, соединенной с сетевым средством 84, и обмениваться сообщениями и данными с объектом. Вышеуказанная операционная система, модули и API включают в себя инструкции, которые инструктируют работу процессора(ов) 81.
Одна или более баз 86 данных могут конфигурироваться как серверы баз данных, к которым процессор(ы) 81 может осуществлять доступ через сетевое средство 84 по частной сети 87 связи, которая проиллюстрирована посредством пунктирной линии на фиг. 1. Объект 80 проверки достоверности традиционно имеет часы 88 для отслеживания времени и дат для различных приложений. Часы 88 могут быть простым счетчиком секунд или их долей, которые могут считываться посредством процессора 81 посредством операции ввода-вывода, или могут содержать более сложную компоновку аппаратного обеспечения или микропрограммного обеспечения, которая может предоставлять различные компоненты текущей даты и времени (год, месяц, день, час, минута и секунда) в различных регистрах, которые могут считываться посредством процессора 81 посредством выполнения одной или более операций ввода-вывода.
Объект 80 проверки достоверности может обрабатывать идентификационную информацию, передаваемую из множества различных маркеров 40 верификации (например, миллионов маркеров), и может обрабатывать любое число передач посредством конкретного маркера 40. Объект 80 проверки достоверности применяет один или более тестов проверки достоверности к маркеру 40 верификации и/или идентификационной информации, чтобы получать определенный уровень доверия относительно того, что портативное потребительское устройство 5 фактически представлено в маркер 40 верификации, чтобы запрашивать значение dCVV2. Когда один или более тестов проверки достоверности пройдены и предпочтительно когда ни один из тестов не завершен неудачно, объект 80 проверки достоверности отправляет значение dCVV2 в маркер 40 верификации и необязательно в сеть 70 обработки платежей вместе с номером счета, присутствующим в идентификационных данных. Для этих задач объект 80 проверки достоверности может содержать код, воплощенный на компьютерно-читаемом носителе 82, который инструктирует процессору 81 данных осуществлять связь с компьютером 10 и маркером 40 верификации с использованием сетевого средства 84 по сети 31 связи. Этот код может включать в себя инструкции, которые устанавливают сеанс связи с компьютером 10, включающий в себя вариант установления SSL-сеанса со взаимной аутентификацией и шифрованием, на основе алгоритма DES с трехкратным шифрованием, и инструкции для отправки и приема сообщений в маркер 40 верификации через сеанс связи. Объект 80 проверки достоверности дополнительно может содержать код, воплощенный на компьютерно-читаемом носителе 82, который инструктирует процессору 81 данных принимать зашифрованную идентификационную информацию, отправляемую посредством маркера 40 верификации, и код, который инструктирует процессору 81 данных расшифровывать зашифрованную идентификационную информацию. Идентификационная информация может шифроваться посредством сеансового ключа SSL-сеанса или посредством ключа шифрования, сохраненного в маркере 40 верификации и известного для объекта 80 проверки достоверности, или может шифроваться два раза посредством обоих ключей. Второй ключ может уникально назначаться маркеру. Объект 80 проверки достоверности дополнительно может содержать код, воплощенный на компьютерно-читаемом носителе 82, который инструктирует процессору 81 данных применять один или более тестов проверки достоверности, как описано выше, и отправлять значение dCVV2 в маркер 40 и необязательно отправлять значение dCVV2 и номер счета в сеть 70 обработки платежей, если выбранное число тестов проверки достоверности пройдено. Процессор 81 данных может осуществлять доступ к базам 86 данных при выполнении одного или более тестов проверки достоверности. Тесты проверки достоверности и коды для них подробнее описываются ниже. Эти коды и коды, описанные ниже для объекта 80 проверки достоверности, могут быть реализованы на любом числе языков программирования. Кроме того, специалисты в данной области техники должны иметь возможность легко составлять инструкции, чтобы реализовывать эти коды с учетом этого раскрытия сущности без чрезмерного экспериментирования.
Как описано выше, первый тест проверки достоверности, который может применять объект 80 проверки достоверности, относится к верификации того, что маркер 40 верификации является подлинным. Для этого маркер 40 верификации может отправлять свой порядковый номер в объект 80 проверки достоверности, вместе с тестовым сообщением, зашифрованным посредством ключа шифрования, причем тестовое сообщение и ключ шифрования (или соответствующий ключ расшифровки) известны как для маркера 40, так и для объекта 80 (но не для широкой публики), и ключ шифрования дополнительно уникально назначается порядковому номеру маркера. Объект 80 проверки достоверности может осуществлять доступ к базе данных порядковых номеров маркеров и соответствующих уникально назначаемых ключей шифрования (или соответствующих ключей расшифровки) в одной из баз 86 данных и может определять то, отправляет или нет маркер 40 верификации корректное тестовое сообщение для порядкового номера, который предоставляет маркер. Тестовое сообщение может быть фиксированным или переменным; во втором случае оно может формироваться на основе информации, известной как для маркера 40, так и для объекта 80. Тестовое сообщение может шифроваться и расшифровываться посредством алгоритма DES с трехкратным шифрованием, который может быть реализован посредством определенного числа известных наборов компьютерных инструкций с использованием одного симметричного ключа шифрования. Тестовое сообщение также может шифроваться посредством первого ключа набора асимметричных ключей шифрования в маркере 40 верификации и расшифровываться посредством второго ключа (ключа расшифровки) набора асимметричных ключей шифрования в объекте 80 проверки достоверности, который может быть реализован посредством определенного числа известных наборов компьютерных инструкций. Чтобы проверять достоверность зашифрованного тестового сообщения, отправляемого посредством маркера 40, объект 80 может расшифровывать тестовое сообщение с использованием ключа, который он имеет, и может сравнивать расшифрованное тестовое сообщение с набором приемлемых сообщений на предмет совпадения. Объект 80 также может проверять достоверность зашифрованного тестового сообщения обратным способом посредством шифрования набора приемлемых сообщений и сравнения зашифрованного тестового сообщения, отправляемого посредством маркера 40, с набором зашифрованных приемлемых сообщений. Если отправленное тестовое сообщение является корректным, первый тест проверки достоверности может считаться пройденным, в противном случае первый тест проверки достоверности считается завершившимся неудачно.
Чтобы реализовывать вышеуказанный тест проверки достоверности, объект 80 проверки достоверности может содержать код, воплощенный на компьютерно-читаемом носителе 82, который инструктирует процессору 81 данных принимать одно или более сообщений из маркера 40 верификации через сетевое средство 84, которые имеют порядковый номер маркера и зашифрованное тестовое сообщение, код, который инструктирует процессору 81 данных получать из одной из баз 86 данных ключ, который назначен принимаемому порядковому номеру маркера и одному или более приемлемым сообщениям, которые могут быть приняты в качестве корректного тестового сообщения, и код, который инструктирует процессору данных проверять достоверность зашифрованного тестового сообщения из маркера с использованием зашифрованного тестового сообщения, полученного ключа и полученного одного или более приемлемых сообщений. Второй код подтверждения достоверности может содержать код, который инструктирует процессору 81 данных расшифровывать зашифрованное тестовое сообщение с использованием полученного ключа, и код, который инструктирует процессору 81 данных сравнивать расшифрованное тестовое сообщение с одним или более приемлемыми сообщениями, чтобы определять то, пройден первый тест проверки достоверности (в случае совпадения между расшифрованным тестовым сообщением и приемлемым сообщением) или завершен неудачно (в случае отсутствия такого совпадения). Помимо этого или в качестве другого подхода, вышеуказанный код подтверждения достоверности может содержать код, который инструктирует процессору 81 данных шифровать полученные приемлемые сообщения с помощью ключа шифрования для маркера 40 (обнаруженного в базе данных согласно порядковому номеру маркера), сравнивать зашифрованное тестовое сообщение из маркера 40 с одним или более зашифрованными приемлемыми сообщениями, чтобы определять то, пройден первый тест проверки достоверности (в случае совпадения между зашифрованным тестовым сообщением и зашифрованным приемлемым сообщением) или завершен неудачно (в случае отсутствия такого совпадения). Приемлемое сообщение может получаться посредством осуществления доступа к нему непосредственно из одной из баз 86 данных или посредством формирования его из информации, сохраненной в одной или более базах 86 данных. В качестве варианта, если первый тест проверки достоверности завершается неудачно, объект 80 проверки достоверности может записывать порядковый номер ошибочного маркера 40 и исходный IP-адрес, из которого ошибочный маркер 40 выполнил запрос в одной из баз 86 данных. Для этого объект 80 проверки достоверности дополнительно может содержать код, который инструктирует процессору 81 данных получать исходный IP-адрес из сообщения с запросом и сохранять исходный IP-адрес и порядковый номер маркера в качестве одной записи или двух отдельных записей в одной из баз 86 данных, которая может называться базой 86 данных неудачных проверок достоверности. К этой информации может осуществляться доступ в качестве порта второго теста проверки достоверности, описанного ниже. Вышеуказанные коды могут быть реализованы с помощью традиционных инструкций ввода-вывода, вызовов API-функций в базы данных, инструкций доступа к памяти, арифметических и логических инструкций CPU и управляющих инструкций CPU. С учетом этого раскрытия сущности коды могут быть реализованы специалистами в данной области техники без чрезмерного экспериментирования.
В качестве второго теста проверки достоверности объект 80 проверки достоверности может иметь базу данных в базах 86 данных, которая отслеживает порядковые номера маркеров верификации, которые использованы в мошеннических действиях (например, подозрительных маркеров), и объект 80 проверки достоверности может сверять порядковый номер маркера 40 верификации с этой базой данных. Если проверка этой базы данных указывает, что маркер 40 верификации не участвовал в мошеннической активности или не является подозрительным в иных отношениях, второй тест проверки достоверности может считаться пройденным. Чтобы помогать в отслеживании мошеннической активности обратно в маркер верификации, объект 80 проверки достоверности может отправлять порядковый номер маркера 40 вместе со значением dCVV2 и номером счета, который он отправляет в сеть 70 обработки платежей. Если сеть 70 впоследствии узнает, что транзакция, обрабатываемая с номером счета, предоставляемым посредством маркера 40, является мошеннической, она может отправлять сообщение с этой целью в объект 80 проверки достоверности, и объект 80 затем может вводить порядковый номер маркера в базу данных маркеров, используемых в мошеннических действиях. Чтобы реализовывать второй тест проверки достоверности, объект 80 проверки достоверности может содержать код, воплощенный на компьютерно-читаемом носителе 82, который инструктирует процессору 81 данных принимать сообщение из маркера 40 верификации через сетевое средство 84, которое имеет порядковый номер маркера, код, который инструктирует процессору 81 данных сравнивать принимаемый порядковый номер с порядковыми номерами, сохраненными в базе данных из баз 86 данных, которая сохраняет порядковые номера подозрительных маркеров, используемых в мошеннических транзакциях, чтобы определять то, пройден второй тест проверки достоверности (мошенническая активность отсутствует) или завершен неудачно (мошенническая активность). Этот код дополнительно может включать в себя инструкции, которые инструктируют процессору 81 получать исходный IP-адрес сообщения из маркера 40 и сравнивать исходный IP-адрес и порядковый номер маркера 40 с IP-адресами и порядковыми номерами в базе 86 данных неудачных проверок достоверности на предмет совпадения. Если совпадение обнаружено, второй тест проверки достоверности может считаться завершившимся неудачно. Проверка порядковых номеров маркеров и IP-адресов тем самым предотвращает атаки с повторением пакетов посредством мошенников. Вышеуказанные коды могут быть реализованы с помощью традиционных инструкций ввода-вывода, вызовов API-функций в базы данных, инструкций доступа к памяти, логических инструкций CPU и управляющих инструкций CPU. С учетом этого раскрытия сущности, коды могут быть реализованы специалистами в данной области техники без чрезмерного экспериментирования.
В качестве третьего теста проверки достоверности объект 80 проверки достоверности может отправлять сообщение в маркер 40 верификации запросов, что маркер 40 отправляет один или более фрагментов специфичной для компьютера информации о компьютере 10, к примеру, порядковые номера одного или более из следующего: процессор компьютера, один или более накопителей на дисках компьютера, операционная система компьютера. Объект 80 проверки достоверности может принимать эту информацию и сверять ее с базой данных, сохраняющей специфичную для компьютера информацию подозрительных компьютеров, о которых известно то, что они участвовали в мошеннической активности. Если проверка этой базы данных указывает, что компьютер 10, используемый посредством маркера 40 верификации, не участвовал в мошеннической активности, третий тест проверки достоверности может считаться пройденным. Чтобы помогать в отслеживании мошеннической активности обратно в компьютер 10, объект 80 проверки достоверности может отправлять порядковый номер маркера 40 и специфичную для компьютера информацию вместе со значением dCVV2 и номером счета, который он отправляет в сеть 70 обработки платежей. Если сеть 70 впоследствии узнает, что транзакция, обрабатываемая с номером счета, предоставляемым посредством маркера 40, является мошеннической, она может отправлять сообщение с этой целью в объект 80 проверки достоверности, и объект 80 затем может вводить порядковый номер маркера в базу данных подозрительных маркеров, используемых в мошеннических действиях, и специфичную для компьютера информацию в базу данных подозрительных компьютеров, о которых известно то, что они участвовали в мошеннической активности. Чтобы реализовывать третий тест проверки достоверности, объект 80 проверки достоверности может содержать код, воплощенный на компьютерно-читаемом носителе 82, который инструктирует процессору 81 данных отправлять в маркер 40 верификации сообщение, запрашивающее специфичную для компьютера информацию (если маркер 40 верификации не отправляет эту информацию заранее без указания), код, который инструктирует процессору 81 данных принимать одно или более сообщений с данными из маркера 40 верификации через сетевое средство 84, которые имеют порядковый номер маркера и специфичную для компьютера информацию, и код, который инструктирует процессору 81 данных сравнивать принимаемую специфичную для компьютера информацию со специфичной для компьютера информацией, сохраненной в базе данных (из баз 86 данных), которая хранит специфичную для компьютера информацию подозрительных компьютеров, используемых в мошеннических транзакциях, чтобы определять то, пройден третий тест проверки достоверности (мошенническая активность отсутствует) или завершен неудачно (мошенническая активность). Вышеуказанные коды могут быть реализованы с помощью традиционных инструкций ввода-вывода, вызовов API-функций в базы данных, инструкций доступа к памяти, логических инструкций CPU и управляющих инструкций CPU. С учетом этого раскрытия сущности коды могут быть реализованы специалистами в данной области техники без чрезмерного экспериментирования.
Посредством проведения одного или более вышеуказанных трех тестов проверки достоверности объект 80 проверки достоверности может получать определенную степень достоверности, что идентификационная информация, отправляемая посредством маркера 40, является достоверной, и может, в некоторых реализациях, предоставлять значение dCCV2 в маркер 40 и сеть 70 обработки платежей. В этом случае маркеру 40 верификации нет необходимости отправлять цифровой отпечаток или переменный элемент данных портативного потребительского устройства 5 в идентификационной информации и нет необходимости получать этот элемент данных из устройства 5.
Чтобы повышать степень достоверности, объект 80 проверки достоверности может выполнять четвертый тест проверки достоверности, который сравнивает цифровой отпечаток, принятый в идентификационной информации, при наличии, с сохраненной копией достоверного цифрового отпечатка, который объект 80 имеет для номера счета, указываемого посредством идентификационной информации. Если цифровые отпечатки совпадают в приемлемой степени (например, степень подобия или корреляции этих двух отпечатков выше выбранного уровня подобия), объект 80 проверки достоверности может считать четвертый тест проверки достоверности пройденным. Степень подобия между этими двумя отпечатками может оцениваться посредством применения корреляционной функции к этим двум отпечаткам. Такие корреляционные функции известны в области техники. Перед приемом идентификационной информации для портативного потребительского устройства 5 из маркера, банк-эмитент для устройства может предоставлять в объект 80 проверки достоверности достоверный цифровой магнитный отпечаток устройства, который объект 80 может сохранять в одной из баз 86 данных. Когда объект 80 проверки достоверности принимает идентификационную информацию из маркера 40 верификации для специфичного портативного потребительского устройства 5, он осуществляет доступ к базам 86 данных на предмет записи достоверного цифрового отпечатка и сравнивает принимаемый отпечаток с достоверным цифровым отпечатком, чтобы оценивать степень подобия и определять то, пройден четвертый тест проверки достоверности (например, степень подобия между этими двумя отпечатками выше выбранного уровня) или завершен неудачно (например, степень подобия между этими двумя отпечатками ниже выбранного уровня). Чтобы реализовывать четвертый тест проверки достоверности, объект 80 проверки достоверности может содержать код, воплощенный на компьютерно-читаемом носителе 82, который инструктирует процессору 81 данных получать сохраненный достоверный цифровой отпечаток для счета из одной из баз 86 данных, и код, который инструктирует процессору 81 данных сравнивать принимаемый цифровой отпечаток и сохраненный достоверный цифровой отпечаток на предмет подобия, чтобы определять то, пройден дальше тест (достаточное подобие) или не пройден (недостаточное подобие). Второй код может содержать код, который инструктирует процессору 81 данных формировать значения, представляющие подобие между этими двумя отпечатками, посредством применения одной или более корреляционных функций к отпечаткам и сравнения значения с выбранным уровнем. Такие корреляционные функции, также известные как вероятностные модели, являются известными в области техники кредитных карт. Вышеуказанные коды могут быть реализованы с помощью традиционных инструкций ввода-вывода, вызовов API-функций в базы данных, инструкций доступа к памяти, арифметических инструкций CPU, логических инструкций CPU и управляющих инструкций CPU. С учетом этого раскрытия сущности коды могут быть реализованы специалистами в данной области техники без чрезмерного экспериментирования.
Чтобы также повышать степень достоверности по сравнению со степенью достоверности, предоставляемой посредством первых трех тестов проверки достоверности, описанных выше, объект 80 проверки достоверности может выполнять пятый тест проверки достоверности, который сравнивает переменный элемент данных (например, CVC3, dCVV, криптограмму), принятый в качестве части идентификационной информации, при наличии, с набором из одного или более приемлемых значений для переменного элемента данных, который объект 80 проверки достоверности имеет для номера счета, предоставляемого в качестве части идентификационной информации. Если значения совпадают, объект 80 проверки достоверности может считать пятый тест проверки достоверности пройденным. Существует определенное число способов, которыми переменный элемент данных может быть сконфигурирован, чтобы изменяться во времени. В качестве некоторых примеров, переменный элемент данных может быть сконфигурирован, чтобы менять свое значение в зависимости от каждого использования портативного потребительского устройства 5, и устройство 5 может предоставлять значение счетчика в элементе данных или вместе с элементом данных. Объект 80 проверки достоверности или сеть обработки платежей может использовать значение счетчика, чтобы определять то, какое значение переменный элемент данных должен иметь для данного значения счетчика. Это определение может быть выполнено на основе алгоритма, который является функцией от значения счетчика (и/или других возможных переменных), или таблицы поиска, записи которой коррелируются со значением счетчика (таблица может циклически повторяться). Алгоритм может содержать один или более генераторов случайных чисел, каждый из которых принимает начальное "затравочное" значение, значение которого может выбираться, чтобы настраивать алгоритм на конкретное портативное потребительское устройство 5. Значения таблицы поиска могут быть основаны на выводе алгоритма. Переменный элемент данных также может быть основан на времени, дате или другой информации, известной как для маркера 40 верификации, так и для объекта 80, который может использовать или не использовать значение счетчика. Дополнительные способы формирования значений переменного элемента данных поясняются в заявке на патент США номер 10/642878, озаглавленной "Method and System for generating the Dynamic Verification Value", поданной 18 августа 2003 года, и в заявке на патент США номер 11/764376, озаглавленной "On-Line Payment Transactions", поданной 29 января 2008 года. Обе эти заявки полностью включаются по ссылке в настоящий документ. В некоторых реализациях могут быть незначительные различия в начальной информации, которую устройство 5 и объект 80 используют при формировании своих соответствующих значений элемента данных, к примеру различия во временах их часах, и объект 80 может формировать набор приемлемых значений элемента данных на основе возможных незначительных различий в начальной информации и может сравнивать значение элемента данных, принятое из устройства 5, с каждым членом набора, чтобы определять то, существует или нет совпадение.
Криптограмма, которая типично имеет больше символов, чем значение CVC3 или значение dCVV, может формироваться посредством алгоритма похожим способом, как описано выше, за исключением того, что фрагмент информации транзакции обычно включается в качестве ввода в алгоритм. Как описано ниже, если маркер 40 ищет криптограмму из устройства 5 с поддержкой криптограмм, он предоставляет в устройство 5 фиктивную информацию транзакции, которая является известной как для маркера 40, так и для объекта 80 проверки достоверности, но не известной широкой публике. Когда переменный элемент данных, принятый посредством объекта 80 из маркера 40, содержит криптограмму (которая может быть выведена из длины в символах переменного элемента данных или номера счета устройства 5), проверка достоверности 80 может искать фиктивную информацию транзакции в одной из своих баз 86 данных на основе порядкового номера маркера 40. Объект 80 проверки достоверности может определять идентификационные данные банка-эмитента 60 для устройства 5 на основе номера счета устройства и может запрашивать текущее значение счетчика транзакций приложений (ATC) карты из банка-эмитента 60. Объект 80 затем может формировать криптограмму на основе фиктивной информации транзакции, ATC и другой информации, используемой в алгоритме, и сравнивать сформированную криптограмму с криптограммой, принятой из маркера 40. Если криптограммы совпадают, объект 80 проверки достоверности может считать пятый тест проверки достоверности пройденным. В некоторых реализациях могут быть незначительные различия в ATC-значениях, которые устройство 5 и объект 80 используют при формировании своих соответствующих криптограмм, и объект 80 может формировать набор приемлемых криптограмм на основе небольших инкрементных различий в ATC-значении и может сравнивать криптограмму, принятую из устройства 5, с каждым членом набора, чтобы определять то, существует или нет совпадение. Если совпадение не может быть обнаружено, пятый тест проверки достоверности считается завершившимся неудачно. В качестве другого подхода, объект 80 проверки достоверности может передавать запрос на предмет значения криптограммы в банк-эмитент 60 вместе с копией фиктивной информации транзакции. Объект 80 проверки достоверности затем может сравнивать криптограмму, принятую обратно из банка-эмитента, с криптограммой, принятой из маркера 40, чтобы определять то, существует или нет совпадение. В качестве еще одного другого подхода, объект 80 проверки достоверности может пересылать фиктивную информацию транзакции и криптограмму, принятую из маркера 40, в банк-эмитент 60 с запросом на то, чтобы банк определял, является криптограмма достоверной или нет, и отправлять ее определение в объект 80 проверки достоверности. Объект 80 проверки достоверности затем может определять то, что пятый тест проверки достоверности пройден, если банк отправляет индикатор, что криптограмма, принятая из маркера 40, является достоверной, и завершен неудачно - в противном случае.
Перед приемом идентификационной информации для портативного потребительского устройства 5 из маркера банк-эмитент для устройства может предоставлять в объект 80 проверки достоверности таблицу поиска, алгоритм (включающий в себя любые затравочные значения) или другие элементы данных, которые использует устройство, чтобы формировать переменный элемент данных устройства (например, CVC3, dCVV или криптограмму), который объект 80 может сохранять в одной из своих баз 86 данных. Когда объект 80 проверки достоверности принимает идентификационную информацию из маркера 40 верификации для конкретного портативного потребительского устройства 5, он осуществляет доступ к своей записи таблицы поиска, алгоритму или другим элементам данных для конкретного устройства 5, чтобы определять его значение или набор значений для переменного элемента данных устройства, и сравнивает принимаемое значение для переменного элемента данных (например, CVC3, dCVV или криптограммы) со значением или набором приемлемых значений для переменного элемента данных, чтобы определять то, пройден пятый тест проверки достоверности (например, совпадение в значениях обнаружено) или завершен неудачно (например, совпадение не обнаружено). Чтобы реализовывать пятый тест проверки достоверности, объект 80 проверки достоверности может содержать код, воплощенный на компьютерно-читаемом носителе 82, который инструктирует процессору 81 данных осуществлять доступ к одному или более элементам сохраненных данных, использованных для того, чтобы получать переменный элемент данных для счета из одной из баз 86 данных, код, который инструктирует процессору 81 данных получать одно или более приемлемых значений для переменного элемента данных из одного или более элементов сохраненных данных, и код, который инструктирует процессору 81 данных сравнивать принимаемый переменный элемент данных и одно или более приемлемых значений на предмет совпадения, чтобы определять то, пройден пятый тест (совпадение обнаружено) или не пройден (совпадение не обнаружено). Код, который инструктирует процессору 81 данных получать одно или более приемлемых значений, может быть основан на способе таблицы поиска, описанном выше, или любых способах на основе алгоритма, описанных выше. Коды могут включать в себя инструкции, которые инструктируют процессору 81 данных определять то, содержит или нет принимаемый переменный элемент данных криптограмму, и если да, получать фиктивную информацию транзакции из базы 86 данных на основе порядкового номера маркера. В зависимости от реализации для обработки криптограмм код дополнительно может включать в себя инструкции, которые инструктируют процессору 81 данных определять идентификационные данные банка-эмитента и получать ATC-значение для устройства 5 из банка и формировать одно или более приемлемых значений криптограммы с использованием фиктивной информации транзакции, ATC-значения и других вводов, используемых в алгоритме. Кроме того, код дополнительно может включать в себя инструкции, которые инструктируют процессору 81 данных отправлять информацию счета и фиктивную информацию транзакции в идентифицированный банк-эмитент с запросом одного или более приемлемых значений криптограммы. Кроме того, вместо инструктирования процессора 81 получать одно или более приемлемых значений криптограммы и сравнивать криптограмму, принятую из маркера 40, с приемлемыми значениями криптограммы, код может включать в себя инструкции, которые инструктируют процессору 81 данных получать фиктивную информацию транзакции, как описано выше, чтобы идентифицировать банк-эмитент, как описано выше, чтобы отправлять информацию счета, фиктивную информацию транзакции и криптограмму, принятую из маркера 40, в идентифицированный банк с запросом на то, чтобы банк отправлял индикатор обратно относительно того, является или нет криптограмма достоверной, и проходить или завершать неудачно пятый тест проверки достоверности на основе индикатора, отправляемого обратно посредством банка-эмитента. Вышеуказанные коды могут быть реализованы с помощью традиционных инструкций ввода-вывода, вызовов API-функций в базы данных, инструкций доступа к памяти, арифметических инструкций CPU, логических инструкций CPU и управляющих инструкций CPU. С учетом этого раскрытия сущности коды могут быть реализованы специалистами в данной области техники без чрезмерного экспериментирования.
Объект 80 проверки достоверности может быть сконфигурирован, чтобы осуществлять один или более вышеуказанных тестов проверки достоверности, и может быть сконфигурирован, чтобы отправлять значение dCCV2 в маркер верификации и сеть 70 обработки платежей, если один или более тестов проходит. Объект 80 проверки достоверности может содержать код, воплощенный на компьютерно-читаемом носителе 82, который инструктирует процессору 81 данных выполнять выбранный или более тестов проверки достоверности и отслеживать результаты прохождения/неудачного завершения, и код, который инструктирует процессору 81 данных формировать и отправлять значение dCVV2, если выбранное число тестов пройдено. Поскольку значение dCVV2 отправляется как продавцу (ретранслируется через маркер 40 верификации), так и в сеть 70 обработки платежей (которая может пересылать его в банк-эмитент), объект 80 проверки достоверности может использовать любой способ, чтобы формировать значение dCCV2, и ему нет необходимости использовать способ, используемый посредством портативного потребительского устройства 5, чтобы формировать переменный элемент данных (например, CVC3 или dCVV). Объект 80 проверки достоверности может формировать значения dCVV2 с использованием генератора псевдослучайных чисел или таблицы поиска, или последовательного счетчика (к примеру, при распределении значений из этого счетчика по различным счетам). Процесс формирования dCVV2 может выполняться на основе транзакций (полностью динамически) или для группы транзакций (полудинамически), причем последняя предназначена для конкретного устройства 5 или группы устройств 5. Если два или более устройств 5 назначаются с общим номером счета, идентификационная информация, отправляемая посредством маркера 40, может содержать идентификатор устройства, а также номер счета, и объект 80 проверки достоверности может использовать идентификатор устройства, чтобы отличать между устройствами и формировать различные значения dCVV2 для устройств, которые имеют общий номер счета. Объект 80 проверки достоверности может использовать конкретное значение dCVV2 для конкретного устройства 5 за выбранный период времени (к примеру, три дня) и затем выбирать другое значение dCVV2 для конкретного устройства для следующего выбранного периода времени и т.д. Кроме того, объект 80 проверки достоверности может принимать значения dCVV2, чтобы использовать во время выбранных периодов времени, из банка-эмитента устройства 5 перед выбранными периодами времени и сохранять их для последующего использования, как определено посредством часов объекта 80. Это разрешает объекту 80 проверки достоверности опускать этап отправки значений dCVV2 в сеть 70 обработки платежей. Значение верификации устройства, предоставляемое посредством объекта 80 проверки достоверности, может иметь формат, идентичный формату CVC3 и динамических CVV ("dCVV"), выводимых посредством существующих кредитных карт на основе смарт-карты (например, строка из 3 или 4 чисел). В качестве другого подхода, объект 80 проверки достоверности может отправлять сообщение в банк-эмитент 60, чтобы портативное потребительское устройство 5 запрашивало значение, чтобы предоставлять в качестве значения dCVV2; этот запрос может включать в себя номер счета и любой идентификатор устройства. Вышеуказанные коды и этапы могут быть реализованы с помощью традиционных инструкций ввода-вывода, инструкций доступа к памяти, арифметических инструкций CPU, логических инструкций CPU и управляющих инструкций CPU. С учетом этого раскрытия сущности коды могут быть реализованы специалистами в данной области техники без чрезмерного экспериментирования.
Как описано выше, объект 80 проверки достоверности может отправлять в маркер 40 информацию адреса доставки и/или информацию расчетного адреса пользователя, которая ранее ассоциирована с устройством 5. Ассоциирование может быть сохранено в базе 86 данных объекта 80 проверки достоверности или в банке-эмитенте 60 для устройства 5. Объект 80 проверки достоверности дополнительно может содержать код, который инструктирует процессору 81 данных получать информацию адреса для счета потребителя, указываемого посредством номера счета в принимаемой идентификационной информации, либо из базы 86 данных, либо из банка-эмитента 60 и отправлять информацию адреса в маркер 40 вместе со значением верификации устройства, если выбранное число тестов проверки достоверности пройдено, как описано выше. Вышеуказанные коды и этапы могут быть реализованы с помощью традиционных инструкций ввода-вывода, вызовов функций баз данных, вызовов сетевых функций, инструкций доступа к памяти, арифметических инструкций CPU, логических инструкций CPU и управляющих инструкций CPU. С учетом этого раскрытия сущности, коды могут быть реализованы специалистами в данной области техники без чрезмерного экспериментирования.
Как указано выше, объект 80 проверки достоверности может быть сконфигурирован, чтобы отправлять динамический номер счета (dPAN) в маркер 40 верификации и сеть 70 обработки платежей вместе со значением dCVV2. Объект 80 проверки достоверности может контактировать с банком-эмитентом 60 для устройства 5, чтобы получать dPAN, или может считывать его из списка dPAN, ранее отправляемого в объект 80 посредством банка 60 или созданного посредством объекта 80 или сети 70, или может формировать его из алгоритма, ранее предоставляемого в объект 80 посредством банка 60. Объект 80 проверки достоверности может содержать код, воплощенный на компьютерно-читаемом носителе 82, который инструктирует процессору 81 данных выполнять эти этапы требуемым образом посредством банка-эмитента. Когда сеть обработки платежей приняла значение dCCV2, значение dPAN и номер счета для устройства 5, она может пересылать все три элемента данных в банк-эмитент 60, так что банк-эмитент может коррелировать dPAN с номером счета устройства 5. Вышеуказанные коды и этапы могут быть реализованы с помощью традиционных инструкций ввода-вывода, инструкций доступа к памяти, арифметических инструкций CPU, логических инструкций CPU и управляющих инструкций CPU. С учетом этого раскрытия сущности коды могут быть реализованы специалистами в данной области техники без чрезмерного экспериментирования.
Объект 80 верификации дополнительно может содержать код, который инструктирует процессору 81 отправлять текстовое предупреждение в персональное устройство связи 7 пользователя 1 или отправлять предупредительное почтовое сообщение на электронный почтовый адрес пользователя 1, когда одно или более из следующих событий возникает: (1) когда маркер 40 верификации инициирует связь с объектом 80, (2) когда маркер 40 верификации считывает портативное потребительское устройство 5 пользователя 1, (3) когда объект 80 верификации принимает идентификационную информацию из портативного потребительского устройства 5 или маркера 40 верификации, ассоциированного с пользователем 1, (4) когда объект 80 верификации проверяет достоверность упомянутой идентификационной информации, (5) когда объект 80 верификации отправляет значение dCVV2 в маркер 40 верификации, и (6) когда объект 80 верификации отклоняет запрос значения dCVV2. Предупреждения, отправляемые посредством объекта 80, могут включать в себя информацию, связанную с событиями, которые инициируют предупреждения, к примеру часть соответствующего номера счета. Текстовые предупреждения могут отправляться из сетевого средства 84 на сервер 35 ретрансляции SMS, который соединяется с одной из сетей 31 и 32 связи, вместе с телефонным номером или сетевым адресом устройства связи 7 пользователя. Сервер ретрансляции SMS имеет интерфейс с одной или более сетями мобильной связи и может ретранслировать текстовое сообщение на телефонный номер или сетевой адрес, предоставляемый посредством процессора 81. Объект 80 проверки достоверности может содержать сервер ретрансляции. Предупреждения по электронной почте могут отправляться непосредственно на электронный почтовый адрес пользователя из сетевого средства 84. Для этого сетевое средство 84 может содержать традиционный почтовый агент, который известен в области техники.
Объект 80 проверки достоверности может содержать веб-узел, доступный для пользователя 1, который предоставляет возможность пользователю: (1) создавать защищенный паролем управленческий счет, ассоциированный с порядковым номером маркера, причем второй из них может предоставляться на листке бумаги, первоначально отправляемом с маркером; (2) ассоциировать почтовый адрес, который должен использоваться для одного или более вышеописанных предупреждений; (3) ассоциировать номер мобильного телефона и/или URID (например, сетевой адрес) устройства связи 5 пользователя, который должен использоваться для одного или более вышеописанных предупреждений; и (4) выбирать одну или более вышеописанных аварийных ситуаций. Веб-узел также может давать возможность пользователю предоставлять и ассоциировать номера счетов для одного или более устройств 5 пользователя с защищенным паролем счетом и дополнительно может предоставлять возможность пользователю ассоциировать электронные почты и номера мобильных телефонов для предупреждений в конкретные устройства 5 согласно их номерам счетов. Веб-узел также может предоставлять возможность пользователю ассоциировать адрес доставки и/или расчетный адрес с одним или более конкретными номерами счетов устройств, которые объект 80 проверки достоверности может предоставлять в маркер 40 для каждого запроса dCCV2, выполненного для такого указанного номера счета устройства. Это ассоциирование может включать в себя вариант, который пользователь может выбирать для указанного счета устройства, который инструктирует объекту 80 получать информацию адреса из банка-эмитента 60 для указанного счета устройства. Веб-узел также может предоставлять возможность пользователю ассоциировать адрес доставки и/или расчетный адрес с самим маркером, который объект 80 проверки достоверности может предоставлять в маркер 40 для каждого запроса dCCV2, при этом адрес доставки и/или расчетный адрес не ассоциированы с номером счета устройства, содержащимся в dCVV2-запросе.
Одной из баз 86 данных может назначаться хранить вышеописанные защищенные паролем счета пользователей. Когда объект 80 проверки достоверности принимает запрос на проверку достоверности из маркера 40 верификации, код в объекте 80 может инструктировать процессору 81 запрашивать эту базу 86 данных, чтобы обнаруживать защищенный паролем счет пользователя (например, идентифицировать пользователя из порядкового номера маркера и/или номера счета, отправляемого в идентификационной информации), чтобы определять то, какие предупреждения в виде текстового сообщения и почтовые сообщения должны формироваться и отправляться, на основе параметров, сохраненных в защищенном паролем счете, чтобы идентифицировать номер мобильного телефона или универсальный идентификатор ресурса (например, сетевой адрес) персонального устройства связи, на который следует отправлять сообщения, и/или идентифицировать адрес электронной почты, на который можно отправлять сообщения, и отправлять определенные сообщения в идентифицированные назначения. Одно или более предупреждений, относящихся к конкретному dCVV2-запросу, могут быть комбинированы в одно текстовое сообщение или почтовое сообщение пользователю. Объект 80 также может иметь код, который инструктирует процессору 81 данных определять из записи счета, должна или нет какая-либо информация адреса доставки или информация расчетного адреса отправляться с сообщением выполнения dCVV2, посредством поиска настроек, которые пользователь, возможно, предоставил для номера счета устройства, указываемого в сообщении dCVV2-запроса, и отправлять информацию адреса в маркер 40 согласно обнаруженным настройкам. Вышеуказанные коды и этапы могут быть реализованы с помощью кодов HTML-страниц, кодов XML-страниц и т.п. (например, веб-страниц), традиционных инструкций ввода-вывода, инструкций доступа к памяти, вызовов API-функций баз данных, арифметических инструкций CPU, логических инструкций CPU и управляющих инструкций CPU. С учетом этого раскрытия сущности коды могут быть реализованы специалистами в данной области техники без чрезмерного экспериментирования.
В случаях, если объект 80 проверки достоверности отправляет dPAN в маркер верификации, он может отправлять предупреждение по электронной почте и/или текстовое предупреждение пользователю, предоставляющее пользователю номер транзакции, который ассоциирован с dPAN. Номер транзакции может предоставлять возможность пользователю проще возвращать товар, приобретаемый в транзакции. Номер транзакции отличается от dPAN и номера счета, но предоставляет возможность отслеживания транзакции, осуществляемой с dPAN, в обратном направлении к продавцу и банку-эмитенту. Для этого объект 80 может содержать код, который инструктирует процессору 81 данных осуществлять доступ к управленческому счету пользователя на основе номера счета, полученного из идентификационной информации, принятой из маркера 40, чтобы получать номер мобильного телефона или универсальный идентификатор ресурса (например, сетевой адрес) персонального устройства связи, ассоциированного с номером счета, или адрес электронной почты, ассоциированный с номером счета, и на который должен отправляться номер транзакции. Объект 80 дополнительно может содержать код, который инструктирует процессору 81 данных отправлять номер транзакции вместе с dPAN, датой, временем и значением dCVV2 на полученный телефонный номер или универсальный идентификатор ресурса персонального устройства связи или полученный адрес электронной почты. Код также инструктирует процессору 81 данных отправлять эту информацию в сеть 70 обработки платежей и/или банк-эмитент 60, вместе с номером счета в целях корреляции. Код также может инструктировать процессору 81 данных отправлять номер транзакции в маркер 40, и маркер 40 может иметь код, который инструктирует его процессору 41 вводить эту информацию в видимое или скрытое поле страницы оплаты продавца. Код маркера 40 для этого может быть реализован способом, аналогичным коду для ввода значения dCVV2. Вышеуказанные коды и этапы могут быть реализованы с помощью вызовов функций баз данных, традиционных инструкций ввода-вывода, инструкций доступа к памяти, вызовов API-функций баз данных, арифметических инструкций CPU, логических инструкций CPU и управляющих инструкций CPU. С учетом этого раскрытия сущности коды могут быть реализованы специалистами в данной области техники без чрезмерного экспериментирования.
Фиг. 4 иллюстрирует примерный вариант осуществления 180 способа, который может быть использован посредством объекта 80 проверки достоверности. Примерный способ 180 содержит множество этапов 181-186. Этап 181 содержит установление линии связи между объектом 80 проверки достоверности и маркером 40 верификации с использованием сетевого средства объекта 80 проверки достоверности. Этап 182 содержит прием зашифрованной идентификационной информации, относящейся к устройству 5, и/или информации о маркере (например, порядкового номера и зашифрованного сообщения), отправляемой посредством маркера 40 верификации. Этап 183 содержит расшифровку зашифрованной информации (например, зашифрованной идентификационной информации и/или зашифрованного сообщения из маркера). Этап 184 содержит применение по меньшей мере одного теста проверки достоверности к расшифрованной информации. Этап 185 содержит передачу, если выбранное число тестов проверки достоверности пройдено, значения верификации устройства в маркер 40 верификации и необязательно в сеть 70 обработки платежей. В некоторых реализациях dPAN также может быть передан, как описано выше. В некоторых реализациях информация адреса доставки и/или информация расчетного адреса также может быть передана, как описано выше. Этап 186 содержит идентификацию пользователя из идентификационной информации и отправку текстовых предупреждений и/или предупреждений по электронной почте пользователю, как указано в защищенном паролем счете пользователя.
Еще дополнительные варианты осуществления и реализации описываются.
Можно принимать во внимание, что некоторые реализации маркера 40 верификации могут быть сконфигурированы, чтобы работать с выбранными потребительскими платежными устройствами 5, к примеру, выпущенными посредством выбранного банка, или сконфигурированы, чтобы работать с выбранным веб-узлом 20 продавца.
В еще дополнительных реализациях маркер 40 верификации может содержать URID объекта 80 проверки достоверности, который обрабатывает запросы на проверку достоверности для нескольких различных многомарочных портативных потребительских устройств 5. Помимо этого, каждое из этих многомарочных устройств 5 может хранить URID для многомарочного продавца. URID продавца считывается посредством маркера 40 верификации и предоставляется в объект проверки достоверности вместе с идентификационной информацией устройства. Объект 80 проверки достоверности может отправлять проверенную идентификационную информацию в URID продавца.
Варианты осуществления изобретения не ограничены системами аутентификации с участием транзакций. Идентичный подход может применяться для других систем аутентификации. Например, варианты осуществления могут быть использованы для того, чтобы аутентифицировать пользователя с использованием онлайнового банковского приложения. Держатель карты может вводить свой идентификатор пользователя в веб-узел банковского обслуживания. Держатель карты затем может представлять свое портативное потребительское устройство в маркер верификации. Веб-узел банковского обслуживания может проверять достоверность идентификатора пользователя и учетных данных маркера посредством связи с объектом проверки достоверности.
Варианты осуществления изобретения не ограничены вышеописанными вариантами осуществления. Например, хотя отдельные функциональные блоки показаны для эмитента, системы обработки платежей и эквайера, некоторые объекты выполняют все эти функции и могут быть включены в варианты осуществления изобретения.
В каждом из вариантов осуществления, описанном в данном документе, связи между компьютером 10 и объектом 80 проверки достоверности может способствовать шлюз и/или она может переноситься через шлюз (например, прокси-сервер, серверный объект и т.д.), который располагается между компьютером 10 и объектом 80 проверки достоверности. Такой шлюз показывается в 90 на фиг. 8. Шлюз 90 может выступать в качестве посредника между множеством маркеров 40-A, 40-B,..., верификации и их ассоциированными компьютерами 10-A, 10-B,..., с одной стороны, и множеством объектов 80-A, 80-B,..., проверки достоверности, с другой стороны. Маркеры, 40-A, 40-B,..., могут быть выполнены идентично маркеру 40, показанному на фиг. 1, и могут взаимодействовать с соответствующими компьютерами 10-A, 10B,..., соответствующими пользователями 1-A, 1-B,..., и соответствующими портативными потребительскими устройствами 5-A, 5-B,...,. Компьютеры 10-A, 10B,..., могут быть идентичными компьютеру 10, показанному на фиг. 1, и могут соединяться с первыми сетями 31 связи, как описано выше. Первая сеть 31 связи, вторая сеть 32 связи, веб-узлы 20 продавца, банки-эквайеры 50, банки-эмитенты 60 и сеть 70 обработки платежей соединяются друг с другом, как описано выше. Первая и вторая сети 31, 32 связи также соединяются с множеством объектов 80-A, 80-B, 80-C,..., проверки достоверности, каждый из которых может быть выполнен идентично объекту 80 проверки достоверности, показанному на фиг. 1.
В нижеприведенном пояснении вариантов осуществления и реализаций, показанных на фиг. 8, ссылка с номером без суффикса -A, -B или -C, в общем, означает каждый из снабженных суффиксом элементов (например, объект 80 означает каждый из 80-A, 80-B, 80-C).
Шлюз 90 может принимать одну или более начальных связей из одного из маркеров 40-A, 40-B,..., верификации (через один из компьютеров 10-A, 10B,..., осуществляющих связь с маркером), и может определять из информации при начальной связи надлежащий один из множества объектов 80-A, 80-B, 80-C,..., проверки достоверности, чтобы использовать для того, чтобы удовлетворять запрос к маркеру на предмет значения dCVV2. Например, каждый маркер 40-A, 40-B,..., верификации может быть сконфигурирован, чтобы работать с портативными потребительскими устройствами 5, выпущенными посредством множества различных банков-эмитентов 60 или других таких объектов, и один или более объектов 80 проверки достоверности могут быть сконфигурированы, чтобы обрабатывать запросы из портативных потребительских устройств 5, выпущенных посредством соответствующих банков-эмитентов 60 или других таких объектов. Шлюз 90 может определять надлежащий один из объектов 80-A, 80-B, 80-C,..., проверки достоверности на основе идентификационной информации, которую маркер считывает из портативного потребительского устройства и отправляет в шлюз при начальной связи. Например, часть номера счета в идентификационной информации может содержать уникальный идентификатор, назначаемый банку 60, который выпускает портативные потребительские устройства 5, из которого считана идентификационная информация.
В одной реализации, после того как шлюз 90 определяет надлежащий объект проверки достоверности для запроса в маркер, шлюз может перенаправлять маркер, чтобы осуществлять дополнительную связь с определенным надлежащим объектом проверки достоверности, или может направлять определенный объект проверки достоверности, чтобы контактировать с маркером, чтобы осуществлять дополнительную связь. В другой реализации все связи между маркером верификации и определенным надлежащим объектом проверки достоверности могут быть перенесены через шлюз 90 (после того, как шлюз первоначально определяет идентификационные данные надлежащего объекта проверки достоверности на основе одной или более начальных связей с маркером). Эта вторая реализация может содержать относительно простое прохождение связи между маркером и надлежащим объектом проверки достоверности с минимальной обработкой посредством шлюза 90 или может содержать виртуальное представление шлюза в качестве надлежащего объекта проверки достоверности в маркер верификации. Такое виртуальное представление может заключать в себе расшифровку посредством шлюза 90 каждого сообщения из маркера верификации, осуществление связи с надлежащим объектом проверки достоверности, чтобы формулировать ответ на сообщение маркера, и шифрование и отправку ответного сообщения в маркер верификации. В каждой из вышеуказанных реализаций и в других реализациях шлюз 90 также может осуществлять один или более тестов проверки достоверности от имени надлежащего объекта проверки достоверности, в частности тесты, связанные с проверкой достоверности маркера верификации. В этом случае шлюзу нет необходимости отправлять в определенный надлежащий объект проверки достоверности те связи, которые он принимает из маркера, который относится к тестам проверки достоверности, которые обрабатывает шлюз. Шлюз 90 может быть ассоциирован или управляться посредством сети 70 обработки платежей или владельца. Можно принимать во внимание, что, в каждой из этих реализаций, шлюз 90 выступает в качестве объекта, который может предоставлять значение верификации устройства (значение dCVV2) в маркер 40, как в случае, если объект 80 проверки достоверности может предоставлять значение верификации устройства в маркер 40, когда с объектом 80 непосредственно контактирует маркер 40.
Ссылаясь на фиг. 8, шлюз 90 содержит систему, имеющую один или более серверов, соединенных с сетью связи, которые могут принимать запрос из маркера 40 верификации, чтобы обрабатывать, как описано выше. Один из серверов шлюза 90 показывается на фиг. 8; сервер содержит один или более процессоров 91, электрически соединенных с каждым из материального компьютерно-читаемого носителя 92, пользовательского интерфейса 93, одной или более баз 96 данных и сетевого средства 94, причем последнее из них соединяется с первой и второй сетями 31 и 32 связи. Пользовательский интерфейс 93 содержит одно или более устройств видеовывода (например, дисплеев, экранов) и одно или более устройств ввода (например, клавиатуру, мышь, шаровой манипулятор и т.д.), которые предоставляют возможность администратору шлюза 90 принимать информацию из сервера и предоставлять ввод на сервер. Компьютерно-читаемый носитель 92 может содержать комбинацию полупроводникового запоминающего устройства и энергонезависимого устройства хранения, к примеру одного или более накопителей на дисках и/или энергонезависимого запоминающего устройства.
Компьютерно-читаемый носитель 92 хранит операционную систему для сервера, которая предоставляет возможность выполнения процессов и приложений посредством процессора(ов) 91 и предоставляет возможность выполнения кодов для инструктирования работы процессора(ов) 91. Операционная система предоставляет услуги этим процессам и приложениям и предоставляет возможность этим процессам и приложениям осуществлять доступ к компонентам пользовательского интерфейса 93, частям компьютерно-читаемого носителя 92, сетевому средству 94 и другим компонентам объекта 90. Операционная система может быть полнофункциональной. В частности, операционная система предоставляет один или более модулей связи ввода-вывода, которые предоставляют возможность процессору(ам) 91 осуществлять связь с пользовательским интерфейсом 93 и базами 96 данных. Каждый модуль связи ввода-вывода имеет интерфейс прикладного программирования (API) с набором функций, которые может вызывать процессор 91, чтобы осуществлять доступ к компонентам. Операционная система объекта 90 также содержит один или более модулей сетевых служб, которые могут осуществлять доступ к сетевому средству 94 и устанавливать сеансы связи с объектами в сетях 31 и 32 связи и с сервером ретрансляции SMS 35. Эти модули сетевых служб включают в себя Windows Communications Foundation от Microsoft (например, .NET 3.0, .NET 4.0 и т.д.), CFNetwork Framework от Apple, сетевой модуль ядер операционных систем Unix и Linux и уровень служб ОС и уровень базовых служб операционной системы Symbian и т.п. Каждый из этих модулей сетевых служб может быть неисключающим (например, допускающим обслуживание нескольких процессоров и нескольких процессов/приложений), и каждый предоставляет интерфейс прикладного программирования (API), который имеет набор функций, которые может вызывать процессор 91, чтобы управлять связями с другим объектом. С помощью этих API-средств набор вызовов API-функций может легко составляться для выполнения посредством процессора, что предоставляет возможность процессору устанавливать канал связи с объектом в сети связи, соединенной с сетевым средством 94, и обмениваться сообщениями и данными с объектом. Вышеуказанная операционная система, модули и API включают в себя инструкции, которые инструктируют работу процессора(ов) 91.
Одна или более баз 96 данных могут конфигурироваться как серверы баз данных, к которым процессор(ы) 91 может осуществлять доступ через сетевое средство 94 по частной сети 97 связи, которая проиллюстрирована посредством пунктирной линии на фиг. 8. Шлюз 90 традиционно имеет часы 98 для отслеживания времени и дат для различных приложений. Часы 98 могут быть простым счетчиком секунд или их долей, которые могут считываться посредством процессора 91 посредством операции ввода-вывода, или могут содержать более сложную компоновку аппаратного обеспечения или микропрограммного обеспечения, которая может предоставлять различные компоненты текущей даты и времени (год, месяц, день, час, минута и секунда) в различных регистрах, которые могут считываться посредством процессора 91 посредством выполнения одной или более операций ввода-вывода.
Шлюз 90 может содержать код, воплощенный на компьютерно-читаемом носителе 92, который инструктирует процессору 91 данных осуществлять связь с компьютером 10 и ассоциированным маркером 40 верификации с использованием сетевого средства 94 по сети 31 связи. Этот код может включать в себя инструкции, которые устанавливают сеанс связи с компьютером 10, включающий в себя вариант установления SSL-сеанса со взаимной аутентификацией и шифрованием, на основе алгоритма DES с трехкратным шифрованием, и инструкции для отправки и приема сообщений в маркер 40 верификации через сеанс связи. Шлюз 90 дополнительно может содержать код, воплощенный на компьютерно-читаемом носителе 92, который инструктирует процессору 91 данных принимать зашифрованную идентификационную информацию, отправляемую посредством маркера 40 верификации, и код, который инструктирует процессору 91 данных расшифровывать зашифрованную идентификационную информацию. Идентификационная информация может шифроваться посредством сеансового ключа SSL-сеанса или посредством ключа шифрования, сохраненного в маркере 40 верификации и известного для шлюза 90, или может шифроваться два раза посредством обоих ключей. Второй ключ может уникально назначаться маркеру, как описано выше. Шлюз 90 дополнительно может содержать код, воплощенный на компьютерно-читаемом носителе 92, который инструктирует процессору 91 данных определять, из принимаемой идентификационной информации и/или идентификационных данных маркера (например, порядкового номера маркера), надлежащий один из объектов 80-A, 80-B, 80-C,..., проверки достоверности, который должен использоваться для последующей обработки запроса из маркера 40 верификации. Для этого процессор 91 данных может осуществлять доступ к одной из баз 96 данных для списка корреляции, который связывает идентификационную информацию (или ее части) с объектами 80 проверки достоверности, и/или для списка корреляции, который связывает идентификаторы маркера с объектами 80 проверки достоверности, и затем может сравнивать информацию, принятую из маркера 40, со списком(ками) корреляции, чтобы определять надлежащий один из объектов 80 проверки достоверности. Шлюз 90 дополнительно может содержать код, воплощенный на компьютерно-читаемом носителе 92, который инструктирует процессору 91 данных применять один или более тестов проверки достоверности, как описано выше, и продолжать обработку запроса из маркера 40, если выбранное число тестов проверки достоверности пройдено. Различные способы продолжения обработки описываются ниже в различных возможных реализациях шлюза 90. Вышеуказанные коды для шлюза 90 и коды для шлюза 90, описанные ниже, могут быть реализованы на любом числе языков программирования. Кроме того, специалисты в данной области техники должны иметь возможность легко составлять инструкции, чтобы реализовывать эти коды с учетом этого раскрытия сущности без чрезмерного экспериментирования.
В одной реализации шлюз 90 дополнительно может содержать код, воплощенный на компьютерно-читаемом носителе 92, который инструктирует процессору 91 данных отправлять связь в маркер 40 (посредством ассоциированного компьютера 10), сообщающую маркеру, чтобы контактировать с определенным надлежащим объектом 80 проверки достоверности, чтобы получать значение dCVV2. Эта связь может включать в себя URID для определенного надлежащего объекта проверки достоверности. Маркер 40 затем может осуществлять связь с определенным надлежащим объектом 80, как описано выше, и изменения объекта 80 не требуются. В этой реализации шлюза 90 код дополнительно может инструктировать процессору 91 данных отправлять связь в определенный надлежащий объект 80 проверки достоверности, который сообщает в объект относительно запроса из маркера 40 (вместе с индикатором относительно идентификационной информации, отправляемой посредством маркера 40), и сообщает в объект, что маркер 40 должен контактировать с ним на предмет значения dCVV2 для идентификационной информации (отправленной в шлюз 90 посредством маркера 40). Эта связь посредством шлюза 90 может выступать в качестве дополнительной меры обеспечения безопасности, которая гарантирует для надлежащего объекта 80 проверки достоверности, что последующий контакт посредством маркера 40 является законным.
В другой реализации шлюз 90 дополнительно может содержать код, воплощенный на компьютерно-читаемом носителе 92, который инструктирует процессору 91 данных отправлять связь в определенный надлежащий объект 80 проверки достоверности с индикатором относительно идентификационной информации, принятой из маркера 40 верификации, и с запросом на то, чтобы объект проверки достоверности формировал значение dCVV2 для идентификационной информации и отправлял значение dCVV2 в маркер 40 верификации (посредством ассоциированного компьютера 10). Эта связь может включать в себя URID для маркера 40 верификации. Коды объекта 80 проверки достоверности, описанные выше, могут дополняться, чтобы инструктировать процессору 81 объекта принимать вышеописанную связь из шлюза 90 и инициировать связь с запрашивающим маркером 40. Коды объекта 80 проверки достоверности не обязательно должны инструктировать процессору 81 объекта принимать идентификационную информацию из запрашивающего маркера (поскольку она, возможно, предоставлена в объект посредством шлюза 90); тем не менее, в качестве дополнительной меры обеспечения безопасности, запрашивающий маркер 40 может предоставлять идентификационную информацию в объект 80, и объект может включать в себя код, чтобы принимать идентификационную информацию из маркера. В этой реализации шлюза 90 код для шлюза 90 дополнительно может инструктировать процессору 91 данных отправлять связь в маркер 40 верификации (через ассоциированный компьютер 10), сообщающую маркеру, что определенный надлежащий объект 80 проверки достоверности должен осуществлять связь с ним, чтобы потенциально отправлять значение dCVV2.
В еще одной другой реализации шлюза 90 шлюз дополнительно может содержать код, воплощенный на компьютерно-читаемом носителе 92, который инструктирует процессору 91 данных: (1) отправлять начальную связь из запрашивающего маркера 40 и/или индикатор относительно идентификационной информации, отправляемой посредством запрашивающего маркера 40, в определенный надлежащий объект 80 проверки достоверности, чтобы получать значение dCVV2; (2) принимать обратно значение dCVV2 из надлежащего объекта 80 проверки достоверности; и (3) отправлять значение dCVV2 в маркер 40 верификации. Эта реализация шлюза 90 предоставляет возможность объекту 80 проверки достоверности опускать код для установления связи с компьютером 10, используемым посредством запрашивающего маркера 40 верификации (эта задача может обрабатываться посредством шлюза 90). Те коды объекта 80, описанные выше, которые направляют связь с маркером 40, могут быть модифицированы, чтобы направлять связь на шлюз 90 вместо этого. Эта реализация шлюза 90 предоставляет возможность группировки запросов из многих маркеров 40 для более эффективной обработки посредством объекта 80. Помимо этого, поскольку шлюз 90 виртуально представляет себя в маркер 40 верификации в качестве объекта проверки достоверности, шлюз 90 может выступать в качестве Интернет-брандмауэра и защищать объекты 80-A, 80-B,..., проверки достоверности от злоумышленных Интернет-атак.
В еще одной другой реализации шлюз 90 обрабатывает начальную связь с маркером 40, чтобы определять надлежащий объект 80 проверки достоверности, и затем передает обслуживание канала связи определенному объекту 80 проверки достоверности, чтобы завершать удовлетворение запроса маркера. Все связи между запрашивающим маркером 40 и определенным объектом 80 могут переноситься через шлюз 90. Если шлюз 90 ранее установил SSL-сеанс с запрашивающим маркером 40, шлюз 90 может отправлять сеансовый ключ(и) и протоколы в определенный объект 80, так что объект может принимать управление сеансом (например, принимать управление шифрованием связи с маркером с сеансовыми ключами и протоколами). Для этой реализации шлюз 90 дополнительно может содержать код, воплощенный на компьютерно-читаемом носителе 92, который инструктирует, чтобы процессор 91 данных (1) отправлял связь в определенный надлежащий объект 80 проверки достоверности с указанием, что он должен обрабатывать дополнительную связь с запрашивающим маркером (маршрутизированный через шлюз 90) и, необязательно, информацию сеанса (которая может включать в себя ключи и протоколы SSL-сеанса), (2) пересылал дополнительную связь, которую шлюз 90 принимает из запрашивающего маркера 40, в определенный объект 80, и (3) пересылал связь, которую шлюз 90 принимает из определенного объекта 80, в запрашивающий маркер 40. Для этого шлюз 90 может поддерживать таблицу в запоминающем устройстве или в одной из своих баз 96 данных, которая отслеживает каналы, которые в настоящее время передаются через шлюз 90, причем каждая запись в таблице имеет идентификационные данные запрашивающего маркера, определенного объекта проверки достоверности и информацию сеанса. Чтобы выполнять вышеуказанный второй этап, код может инструктировать процессору 91 осуществлять доступ к таблице канала, чтобы находить определенный объект 80 для запрашивающего маркера 40, чтобы затем передавать пакеты связи из запрашивающего маркера в объект, который находится в таблице. Шлюз 90 может инкапсулировать эти передаваемые пакеты связи, чтобы сохранять их информацию заголовка, и может включать в себя индикатор относительно идентификационных данных запрашивающего маркера 40 в пользу определенного объекта 80. Чтобы упрощать вышеуказанный третий этап, определенный объект 80 проверки достоверности может отправлять свои пакеты связи для запрашивающего маркера 40 в шлюз 90 в инкапсулированной форме, необязательно вместе с идентификатором, который идентифицирует запрашивающий маркер в капсуле. Шлюз 90 затем может включать в себя код, который инструктирует процессору 91 данных извлекать, из инкапсулированного пакета, идентификатор маркера и пакет, который должен отправляться в запрашивающий маркер 40. Если извлеченный пакет уже имеет адрес назначения для компьютера 10, соединенного с запрашивающим маркером 40, то нет необходимости, чтобы инкапсулированный пакет включал в себя идентификационные данные запрашивающего маркера. Если извлеченный пакет не включает в себя адрес назначения, код шлюза 90 может инструктировать процессору 91 данных определять адрес назначения из извлеченного идентификатора маркера и вышеописанной таблицы информации канала и вставлять определенный адрес назначения в извлеченный пакет до его отправки в компьютер 10. Этот этап может предоставлять дополнительный уровень безопасности. Помимо этого, поскольку шлюз 90 виртуально представляет себя в маркер 40 верификации в качестве объекта проверки достоверности, шлюз 90 может выступать в качестве Интернет-брандмауэра и защищать объекты 80-A, 80-B,..., проверки достоверности от злоумышленных Интернет-атак.
Вышеуказанная реализация шлюза 90 предоставляет возможность объекту 80 проверки достоверности опускать код для установления связи с компьютером 10, используемым посредством запрашивающего маркера 40 верификации (эта задача обрабатывается посредством шлюза 90), и включать код, который инструктирует процессору 81 принимать индикатор из шлюза 90, что он должен обрабатывать дополнительную связь с запрашивающим маркером 40 (маршрутизированную через шлюз 90), и, необязательно, чтобы принимать информацию сеанса для дополнительной связи (которая может включать в себя ключи и протоколы SSL-сеанса). Коды объекта 80, описанные выше, которые направляют связь с маркером 40, могут быть модифицированы, чтобы направлять связь через шлюз 90. Для этого объект 80 проверки достоверности дополнительно может содержать код, воплощенный на компьютерно-читаемом носителе 82, который инструктирует процессору 81 данных создавать и поддерживать таблицу в запоминающем устройстве или в одной из своих баз 86 данных, которая отслеживает каналы, обслуживание которых передано от шлюза 90; каждая запись в таблице может иметь идентификационные данные запрашивающего маркера, идентификационную информацию шлюза 90 и информацию сеанса. Коды связи объекта 80 могут быть модифицированы, чтобы принимать инкапсулированные пакеты связи из шлюза 90, извлекать из этих пакетов пакеты связи из маркера 40 и обращаться к вышеуказанной таблице, чтобы обнаруживать идентификационные данные маркера 40 и информацию сеанса, если они не могут быть определены из исходного адреса извлеченных пакетов связи или идентификационных данных маркера, отправляемых посредством шлюза 90 в инкапсулированных пакетах. Коды связи объекта 80 также могут быть модифицированы, чтобы инкапсулировать пакеты связи для маркера 40 в пакетах, которые должны отправляться в шлюз 90, необязательно вместе с идентификатором, который идентифицирует запрашивающий маркер в капсуле, и отправлять инкапсулированные пакеты связи в шлюз 90.
Из вышеприведенного описания можно принимать во внимание, что объекты 80 проверки достоверности и шлюз 90 являются отдельными объектами от компьютеров 10 и являются отдельными объектами от маркеров 40 верификации. Также можно принимать во внимание, что в некоторых вариантах осуществления и их реализациях компьютеры 10, объекты 80 проверки достоверности и шлюз 90 адресуются в качестве отдельных сетевых узлов в сети 31 связи (например, имеют различные сетевые адреса в пакетах связи), и маркеры 40 осуществляют связь через сетевые узлы компьютеров 10 с объектами 80 и/или шлюзом 90 (например, компьютеры 10 составляют и декодируют пакеты сетевой связи для маркеров 40). Также можно принимать во внимание, что, в некоторых вариантах осуществления и реализациях маркера 40, маркер 40 может безусловно отправлять считанную идентификационную информацию в объект 80 проверки достоверности и/или шлюз 90 без необходимости проверки достоверности между маркером и пользователем, которая, например, может предоставляться посредством ввода PIN-кода или инициализации биометрического образца (например, отпечатков пальцев); и этот маркер 40 может отправлять считанную идентификационную информацию в относительно короткий срок (к примеру, в течение одной минуты после считывания, и типично в течение десяти секунд).
Можно принимать во внимание, что варианты осуществления изобретения предоставляют возможность пользователю получать динамическое значение верификации устройства для портативного потребительского устройства 5, к примеру кредитной карты, которое пользователь может предоставлять в веб-узел продавца в качестве данных оплаты для выполнения транзакции покупки. Динамическое значение верификации устройства уменьшает потенциал для мошенничества посредством третьих сторон, которые могут мошеннически получать номер счета портативного потребительского устройства (например, посредством скимминга). Помимо этого, взаимодействие портативного потребительского устройства с маркером 40 верификации предоставляет возможность маркеру эффективно сообщать в объект 80 проверки достоверности то, что портативное потребительское устройство 5 физически находится в присутствии маркера в момент, когда запрос значения верификации устройства выполнен, тем самым предоставляя состояние "физического наличия карты" для онлайновых покупок, осуществленных с помощью портативного потребительского устройства. Варианты осуществления изобретения также имеют полезность в предоставлении значений верификации устройства пользователю высокозащищенным способом, тем самым повышая безопасность и уменьшая мошенническое использование кредитных карт. Кроме того, варианты осуществления настоящего изобретения предоставляют эти услуги и преимущества пользователю с очень значимым фактором "простоты использования".
Следует понимать, что различные варианты осуществления настоящего изобретения, как описано выше, могут быть реализованы в форме управляющей логики с использованием компьютерного программного обеспечения модульным или интегрированным способом. На основе раскрытия сущности и идей, предусмотренных в данном документе, специалисты в данной области техники должны знать и принимать во внимание другие пути и/или способы для того, чтобы реализовывать варианты осуществления настоящего изобретения с использованием аппаратного обеспечения и комбинации аппаратного обеспечения и программного обеспечения.
Любые из программных компонентов или функций, описанных в данной заявке, могут быть реализованы как программный код, который должен выполняться посредством процессора с использованием любого надлежащего машинного языка, такого как, к примеру, C, C++, C#, Java, C++ или Perl, с применением, к примеру, традиционных или объектно-ориентированных технологий. Программный код может быть сохранен как последовательность инструкций или команд на компьютерно-читаемом носителе, таком как оперативное запоминающее устройство (RAM), постоянное запоминающее устройство (ROM), магнитный носитель, такой как жесткий диск или гибкий диск, или оптический носитель, такой как CD-ROM. Любой такой компьютерно-читаемый носитель может постоянно размещаться в рамках одного вычислительного устройства или может присутствовать или находиться внутри различных вычислительных устройств в системе или сети.
Вышеприведенное описание является иллюстративным и не является ограничивающим. Множество разновидностей изобретения и его вариантов осуществления должны становиться очевидными специалистам в данной области техники после прочтения этого раскрытия сущности. Следовательно, объем изобретения должен быть определен не со ссылкой на вышеприведенное описание, а вместо этого должен быть определен со ссылкой на прилагаемую формулу изобретения вместе с ее полным объемом или эквивалентами.
Один или более признаков из любого варианта осуществления могут комбинироваться с одним или более признаками любого другого варианта осуществления без отступления от объема изобретения.
Единственное число означает "один или более", если иное не указано конкретно.
Все патенты, заявки на патент, публикации и описания, упомянутые выше, полностью включены в настоящий документ по ссылке. Ничто из них не признается как предшествующий уровень техники.
Класс G06Q20/40 авторизация, например идентификация плательщика или получателя платежа, верификация покупателя или магазинных сертификатов; проверка и одобрение плательщиков, например проверка кредитных историй или черных списков