Интеграция платежей Google Pay с использованием прямой токенизации

Мое приложение, использующее одну вещь для продажи и использующую платежи, - это Google Pay. В Google Pay существует два метода токенизации. Я ссылаюсь на платежный документ Google. Но это очень сложно понять.

Есть метод прямой токенизации.

1) Как интегрировать прямую токенизацию ?.

2) Что такое соответствие PCI DSS?

3) Что такое открытый ключ и как шифрование и дешифрование?


person Arti    schedule 07.08.2019    source источник


Ответы (1)


Для контекста, есть два способа интеграции с Google Pay:

  1. Через поддерживаемого поставщика платежных услуг (PSP) - рекомендуется, и
  2. Путем ПРЯМОЙ интеграции - не рекомендуется

Рекомендуется использовать метод PSP, поскольку партнерские PSP несут ответственность за управление учетными данными пользователя и находятся на крючке для PCI и Соответствие DSS.

Используя метод прямой интеграции, вы должны взять на себя обязательства по соблюдению требований PCI и предоставить Google доказательства того, что вы Совместимость с PCI:

При выполнении интеграции типа DIRECT tokenizationSpecification необходимо ежегодно меняйте свой открытый ключ шифрования через профиль разработчика Google Pay и предоставляйте Google аттестацию PCI. Аттестация PCI может быть представлена ​​сторонним или квалифицированным оценщиком безопасности, сертифицированным Советом по стандартам безопасности PCI, и одобрено утвержденным поставщиком или Квалифицированный эксперт.


Вернемся к актуальным вопросам:

Благодаря прямой интеграции Google Pay будет шифровать платежные данные пользователя с помощью открытого ключа, который вы указываете в консоли разработчика Google Pay. (для доступа к этой странице необходимо зарегистрироваться как продавец) и запрос на оплату. Затем вы должны взять зашифрованную полезную нагрузку и расшифровать ее, используя свой закрытый ключ.

Информацию о том, как управлять шифрованием и расшифровкой, можно найти здесь: https://developers.google.com/pay/api/android/guides/resources/payment-data-cryptography#using-openssl

Важные биты:

# generate private key
openssl ecparam -name prime256v1 -genkey -noout -out key.pem

# generate a base64-encoded public key
openssl ec -in key.pem -pubout -text -noout 2> /dev/null | grep "pub:" -A5 | sed 1d | xxd -r -p | base64 | paste -sd "\0" -

Хороший источник информации о соответствии требованиям PCI можно найти здесь: https://www.pcicomplianceguide.org/faq/

К вашему сведению, я предоставил аналогичный ответ с более подробной информацией об общем процессе здесь: Где находится учетная запись разработчика Google Pay и как сгенерировать открытый ключ для загрузки в нее?

person Soc    schedule 14.11.2019
comment
Спасибо, на самом деле после использования Stripe я расстроен, потому что их лимит споров в 1% безумен. Как только вы достигнете, они сохранят ваши деньги. Таким образом, прямая интеграция - это НЕ непредсказуемый способ, как я испытал. Спасибо за ответ, но знаете ли вы ссылку для проверки сценариев прямой интеграции? - person user3304007; 23.01.2021