XỬ LÝ ỨNG DỤNG

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Một số giải pháp hạn chế rủi ro trong thanh toán thẻ (Trang 82 - 88)

Chương 4 : XỬ LÝ GIAO DỊCH THẺ EMV

4.2 XỬ LÝ ỨNG DỤNG

Sau khi thiết bị đọc hoàn thành việc lựa chọn ứng dụng EMV cuối cùng trong thẻ, nó bắt đầu luồng giao dịch EMV xử lý ứng dụng.

Xử lý ứng dụng ban đầu

Thẻ EMV Thiết bị đọc

Xử lý việc chọn ứng dụng

được hoàn thành Khởi tạo lại TVR và TSI

FCI của ADF được chọn

Kiểm tra xem có một PDOL nào trong FCI không 1) Nếu có, thì Data Field = ‘8300’ và Lc = ‘2’ 2) Nếu có một PDOL = (TL)1, (TL)2, …, (TL)n Trong trường hợp bất cứ thành phần số tiền được đưa ra trong PDOL, thì lấy số tiền từ giao diện liên quan

Tính L = L1 + L2 + … + Ln, V = V1 || V2 || … || Vn Tính Data Field = ‘83’ || L || V và Lc = L + 2

GET PROCESSING OPTIONS(Data Field) Kiểm tra những điều kiện thi hành

Kiểm tra sự đúng đắn của những tham số Tăng ATC

Chia Data Field theo PDOL

Lắp AFL và AIP theo tình huống giao dịch đã nhận trong Data Field

AFL, AIP SW1SW2 = 9000

4.2.1 Khái niệm

4.2.1.1 Những dữ liệu của thiết bị đọc được sử dụng trong xử lý ứng dụng

a) Dữ liệu kết quả kiểm tra của thiết bị đọc - TVR (Terminal Verification Results):

Dữ liệu này chỉ ra những kết quả được thiết bị đọc xử lý. Dữ liệu này có độ dài là 5 byte. Mỗi byte của TVR làm chứng kết quả mà thiết bị đọc đã thực hiện xử lý cho mỗi giao dịch của thẻ EMV.

 Xác thực dữ liệu ngoại tuyến (byte 1);  Những hạn chế xử lý (byte 2);

 Kiểm tra chủ thẻ (byte 3);

 Quản lý rủi ro thiết bị đọc (byte 4);

 Xử lý script của NHPH/xử lý xác thực của NHPH (byte 5); Ví dụ: Byte 1 của TVR

b8 b7 b6 b5 b4 b3 b2 b1 Ý nghĩa

1 X x X x x x x Xác thực dữ liệu ngoại tuyến được thực hiện x 1 x X x x x x SDA bị lỗi

x X 1 X x x x x Dữ liệu của thẻ bị lỗi

x X x 1 x x x x Thẻ có trong danh sách file thu hồi của thiết bị đọc x X x X 1 x x x Thẻ mới

x X x X x 1 x x Dùng cho tương lai x X x X x x 1 x Dùng cho tương lai x X x X x x x 1 Dùng cho tương lai

b) Dữ liệu thông tin trạng thái giao dịch – TSI (Transaction Status Infomation):

Dữ liệu này chỉ ra những chức năng được thiết bị đọc thực hiện. Dữ liệu này có độ dài 2 byte. Hiện tại chỉ có 6 bít trong byte đầu tiên của TSI là được sử dụng, phần còn lại được chờ sử dụng trong tương lai (RFU). Mỗi bit trong 6 bit đó chứng thực xem thiết bị đọc đã thực hiện (bit được đặt là 1) hoặc không thực hiện chức năng nào (bit được đặt là 0) :

 Bit 8: Xác thực dữ liệu ngoại tuyến;  Bit 7: Kiểm tra chủ thẻ;

 Bit 6: Xác thực NHPH (xác thực của NHPH đã được thực hiện);  Bit 4: Quản lý rủi ro của thiết bị đọc;

4.2.1.2 Những dữ liệu của thẻ được sử dụng trong xử lý ứng dụng

a) Dữ liệu hồ sơ trao đổi ứng dụng – AIP (Appication Interchange Profile): Dữ liệu này chỉ ra khả năng của thẻ hỗ trợ những chức năng xác định trong ứng dụng thẻ (Xác thực dữ liệu tĩnh, Xác thực dữ liệu động, Kiểm tra chủ thẻ, và Xác thực của NHPH). Dữ liệu này bao gồm 2 byte, byte thứ nhất chỉ giai đoạn giao dịch thẻ EMV và những chức năng tương ứng của ứng dụng được thẻ hỗ trợ thực sự. Ý nghĩa của những bit trong byte đầu tiên như sau

Bảng 4.1: Byte 1 của AIP

Bit 8 Dùng cho tương lai

Bit 7 Xác định SDA ngoại tuyến có được hỗ trợ hay không: 0 – không hỗ trợ; 1 – có hỗ Bit6 Xác định DDA ngoại tuyến có được hỗ trợ không

Bit 5 Xác định kiểm tra của chủ thẻ có được hỗ trợ hay không

Bit 4 Xác định thẻ có yêu cầu thiết bị đọc thực hiện chức năng quản lý rủi ro của thiết bị đọc (bit 4 = 1) hoặc không (bit 4 = 0)

Bit 3 Xác định thẻ có hỗ trợ sự xác thực của NHPH.

Bit 2 Xác định thẻ có hỗ trợ kết hợp DDA ngoại tuyến và lệnh GENERATE AC hay không Bit 1 Dùng cho tương lai

b) Dữ liệu ranh giới file ứng dụng – AFL (Application File Locator):

Dữ liệu này chỉ ra nội dung thông tin công khai được ứng dụng thẻ cung cấp mà được thiết bị đọc đọc ra để sử dụng trong giao dịch. Đối với mỗi file được đọc, thì AFL chứa những thông tin sau:

- Byte 1: ghi SFI.

- Byte 2: ghi số bản ghi của bản ghi đầu tiên được đọc. - Byte 3: ghi số bản ghi cuối cùng được đọc.

- Byte 4: xác định số hồ sơ trong AEF, bắt đầu từ số hồ sơ đầu tiên, số sẽ được thiết bị đọc xem xét trong xử lý xác thực dữ liệu ngoại tuyến.

c) Dữ liệu thông tin kiểm soát file – FCI (File Control Information)

Thông tin như tên file, ngôn ngữ sử dụng, nhãn ứng dụng... mà được thẻ cung cấp trong phản hồi đến lệnh SELECT được thiết bị đọc đưa ra.

d) Dữ liệu danh sách đối tượng dữ liệu tùy chọn xử lý – PDOL (Processing Options Object Data)

PDOL là một thành phần dữ liệu tùy chọn. PDOL chứa danh sách nhãn mà ứng dụng thẻ có thể cần (ngôn ngữ sử dụng, loại thiết bị đọc...), danh sách này có thể thu được từ thiết bị đọc. Dữ liệu này giúp ứng dụng thẻ hiểu những quy tắc lựa chọn tại điểm chấp nhận dịch vụ đó.

4.2.1.3 Lệnh GET PROCESSING OPTIONS

Thiết bị đọc cho thẻ EMV biết xử lý giao dịch thẻ EMV mới bắt đầu với lệnh GET PROCESSING OPTIONS.

- Phần dữ liệu của lệnh chứa thành phần dữ liệu của thiết bị đọc mà được thẻ yêu cầu trong PDOL.

- Phần dữ liệu phản hồi chứa Dữ liệu hồ sơ trao đổi ứng dụng (AIP) và Dữ liệu ranh giới file ứng dụng (AFL).

4.2.2 Xử lý ứng dụng

Thiết bị đọc gửi lệnh GET PROCESSING OPTIONS đến thẻ. Thiết bị đọc thực hiện:

- Trích PDOL (nếu có) từ FCI được thẻ cung cấp trong phản hồi đến lệnh SELECT.

- Đặt dữ liệu thông tin trạng thái là 0.

- Đặt dữ liệu kết quả kiểm tra của thiết bị đọc là 0. - Gửi lệnh GET PROCESSING OPTIONS cho thẻ.

- Nhận phản hồi của thẻ qua lệnh GET PROCESSING OPTIONS.

- Nếu có điều kiện hạn chế về khu vực thì phản hổi của thẻ ‖Điều kiện không được thỏa mãn‖ thiết bị đọc sẽ bỏ ứng dụng trong danh sách lựa chọn ứng dụng và quay lại giai đoạn Lựa chọn ứng dụng.

- Nếu phản hổi của thẻ có AFL và AIP, thì thiết bị đọc sẽ xử lý Chức năng đọc ứng dụng.

4.3 ĐỌC DỮ LIỆU CỦA ỨNG DỤNG 4.3.1 Khái niệm

Giai đoạn đọc dữ liệu của ứng dụng, giai đoạn này diễn ra ngay sau giai đoạn xử lý ứng dụng ban đầu, thiết bị đọc tiếp tục đọc theo AFL của thông tin có sẵn công khai từ thẻ. Trong khi thu lại những đối dữ liệu sẵn có trong thẻ, thiết bị đọc kiểm tra xem có tất cả những đối tượng dữ liệu bắt buộc hay không. Xử lý được cả thẻ và thiết bị đọc thực hiện.

Giai đoạn đọc dữ liệu của ứng dụng được minh họa trong Hình 4-4 sau.

Đọc dữ liệu của ứng dụng

Thẻ EMV Thiết bị đọc

Lưu thông tin tài chính của chủ thẻ trong AEF dưới

ADF của thẻ EMV AFL sẵn có khi xử lý ứng dụng ban đầu, nó phải được thực hiện thành công trước khi đọc dữ liệu của ứng dụng

Đọc nội dung của AEF theo AFL = F1 || F2 || … || Fn

P2 (tham số điều khiển liên quan) = SFI đọc được từ byte thứ nhất của Fi Thực hiện lặp lại với I = 1, …, n

Lặp lại với

RecordCounter = số bản ghi đầu tiên, …, số bản ghi cuối cùng

P1 (số bản ghi) = RecordCounter

READ RECORD (P1, P2, ... ‘70’ || L || Mẫu bản ghi

SW1 SW2 = 9000

Tạo đống những đối tượng dữ liệu EMV và biên dịch dữ liệu tĩnh được xác thực chuỗi byte từ mẫu hồ sơ đã nhận

4.3.2 Xử lý dữ liệu AFL

Đầu tiên, thiết bị đọc xử lý liên tiếp các lối vào của AFL = F1 || F2 || … || Fn, theo thuật toán sau:

Bước 1:

Đối với mỗi lối vào 4-byte Fi trong AFL, i = 1, ..., n, lặp lại tiếp theo các bước dưới đây.

Bước 2:

Cài đặt tham số P2 của lệnh READ RECORD với giá trị SFI đọc được từ byte đầu tiên của Fi, biểu diễn sự liên quan của AEF hiện tại.

Bước 3:

Kiểm tra xem Fi có được định dạng đúng theo qui định hay không. Nếu không có một sự không đồng, thì bỏ qua xử lý giao dịch hiện tại.

Đặt giá trị biến đếm ReadCounter là số bản ghi đầu tiên của AEF, đọc trong byte thứ hai của Fi. Đặt LastRecordNumber giá trị là số bản ghi cuối cùng của AEF, thu được từ byte thứ 3 của Fi.

Bước 4:

Đặt tham số P1 (số bản ghi) của lệnh READ RECORD giá trị biến đếm RecordCounter. Gửi lệnh READ RECORD cho thẻ.

Bước 5:

Nếu R-APDU nhận được báo cáo của thẻ SW1SW2 = 9000, thì chia mẫu dữ liệu AEF (có nhãn là 70) nhận được trong R-APDU. Lưu tất cả những đối tượng dữ liệu thu được từ thẻ và kiểm tra tính nhất quán của chúng.

Nếu các quy tắc nhất quán theo dữ liệu thu được từ thẻ không được tuân thủ thì thiết bị đọc sẽ bỏ qua việc xử lý.

Bước 6:

Nếu LastRecordNumber lớn hơn RecordCounter, thì tăng biến đếm này lên và trở lại bước 4. Còn không thì tiếp tục với bước 7.

Bước 7:

Nếu lối vào file AEF hiện tại Fi không phải là cuối cùng, thì xem lối vào AEF tiếp theo có chỉ số i + 1, và quay lại bước 2, Còn không thì chức nằng xử lý đọc dữ liệu của ứng dụng được kết thúc.

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Một số giải pháp hạn chế rủi ro trong thanh toán thẻ (Trang 82 - 88)

Tải bản đầy đủ (PDF)

(167 trang)