Alex Xu

Alex Xu



/1 How do Apple Pay and Google Pay handle sensitive card info? The diagram below shows the differences. Both approaches are very secure, but the implementations are different. To understand the difference, we break down the process into two flows.

/2 1. Registering your credit card flow 2. Basic payment flow

/3 1️⃣ The registration flow is represented by steps 1~3 for both cases. 𝐀𝐩𝐩π₯𝐞 𝐏𝐚𝐲: It doesn’t store any card info. It passes the card info to the bank. Bank returns a token called DAN (device account number). iPhone then stores DAN into a special hardware chip.

/4 𝐆𝐨𝐨𝐠π₯𝐞 𝐏𝐚𝐲: When you register the credit card with Google Pay, the card info is stored in the Google server. Google returns a payment token to the phone.

/5 2️⃣ When you click the β€œPay” button on your phone, the basic payment flow starts. Here are the differences: 𝐀𝐩𝐩π₯𝐞 𝐏𝐚𝐲: For iPhone, the e-commerce server passes the DAN to the bank.

/6 𝐆𝐨𝐨𝐠π₯𝐞 𝐏𝐚𝐲: The e-commerce server passes the payment token to the Google server. Google server looks up the card info and passes it to the bank. In the diagram, the red arrow means the credit card info is available on the public network, although it is encrypted.

/7 πŸ‘‰ Over to you: Apple needs to discuss the DAN details with banks. It takes time and effort, but the benefit is that the credit card info is on the public network only once. If you are an architect and have to choose between security and cost, which solution do you prefer?

/8 I hope you've found this thread helpful. Follow me @alexxubyte for more. Like/Retweet the first tweet below if you can:

Follow us on Twitter

to be informed of the latest developments and updates!

You can easily use to @tivitikothread bot for create more readable thread!
Donate πŸ’²

You can keep this app free of charge by supporting 😊

for server charges...