Việc xử lý những mẫu kịch bản của NHPH

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 160 - 162)

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

4.10 NHỮNG KỊCH BẢN (SCRIPTS) CỦA NHPH

4.10.1 Việc xử lý những mẫu kịch bản của NHPH

IH có thể nhóm những lệnh sau phát hành theo hai loại mẫu sau:

1) Mẫu kịch bản của NHPH 1 (nhãn 71) nhóm những lệnh sau phát hành riêng được truyền cho thẻ trước khi gửi lệnh GENERATE AC thứ hai đến thẻ.

2) Mẫu kịch bản của NHPH 2 (nhãn 72) nhóm những lệnh sau phát hành riêng được truyền cho thẻ sau khi gửi lệnh GENERATE AC thứ hai cho thẻ.

Mỗi mẫu kịch bản của NHPH (không quan tâm đến việc nó là loại 1 hay loại 2) có thể bao gồm những đối tượng dữ liệu sau:

- Định danh kịch bản của NHPH (nhãn 9F18), định danh này được biểu diễn trên 4 byte ở dạng nhị phân. Định danh này là tùy chọn và không được thiết bị đọc thể hiện ra. Định danh kịch bản của NHPH cho phép NHPH phân biệt nhiều mẫu kịch bản của NHPH mà có thể được bao gồm trong cùng gói tin phản hồi xác thực.

- APDU lệnh kịch bản của NHPH (nhãn 86) có một số byte thay đổi phụ thuộc vào loại C-APDU được gửi cho thẻ. Nhiều lệnh APDU kịch bản của NHPH có thể được bao gồm trong một mẫu kịch bản của NHPH.

NHPH có thể gửi nhiều hơn một mẫu kịch bản trong cùng một gói tin phản hồi xác thực. Giới hạn là tổng độ dài của mẫu kịch bản của NHPH là nhỏ hơn hoặc bằng 128 byte.

Sau khi tiếp nhận gói tin phản hồi xác thực, thiết bị đọc xử lý mỗi mẫu kịch bản của NHPH theo thứ tự lệnh xuất hiện trong trường 55 của gói tin phản hồi xác thực. Đối với mỗi mẫu thiết bị đọc thực hiện những xử lý sau:

- Tạo một kịch bản của NHPH có cấu trúc dữ liệu mới kết quả trên 5 byte, cấu trúc mới này sẽ lưu kết quả liên quan đến việc xử lý của những lệnh được chứa trong mẫu kịch bản của NHPH hiện tại. Bổ sung cấu trúc dữ liệu này vào cuối của một chuỗi byte chứa những cấu trúc dữ liệu tương ứng với những mẫu khác mà đã được xử lý.

- Khởi động lại biến đếm lệnh mà giữ số APDU lệnh kịch bản của NHPH được xác định trong mẫu kịch bản của NHPH hiện tại.

- Phân trường giá trị của mẫu hiện tại.

+ Kiểm tra xem có định danh kịch bản của NHPH hay không. Trong trường hợp chắc chắn có, sao chép trường giá trị của đối tượng dữ liệu vào byte 2 đến byte 5 trong kết quả kịch bản của NHPH. Định danh kịch bản của NHPH có ý nghĩa đối với NHPH khi thể hiện kết quả kịch bản của NHPH được báo cáo bởi thiết bị đọc sau khi gửi những lệnh sau phát hành cho thẻ.

+ Tạo một ngăn xếp FIFO, mỗi thành phần chứa trường giá trị của một đối tượng dữ liệu APDU lệnh kịch bản của NHPH (nhãn 86) được ngăn cách từ trường giá trị của mẫu. Mỗi thành phần mới được thêm vào trong ngăn xếp làm tăng biến đếm lệnh.

- Xứ lý tuần tự mô tả dưới đây được thực hiện trước lệnh GENERATE AC thứ hai, nếu mẫu hiện tại được xác định với nhãn 71, hoặc sau lệnh GENERATE AC thứ hai trong trường hợp mẫu hiện tại được xác định có nhãn 72. Lặp lại những bước sau một số lần bằng biến đếm lệnh:

+ Pop C-APDU giữ trong thành phần hiện tại của ngăn xếp FIFO được biểu thị bởi con trỏ stack.

+ Chuyển giao C-APDU này cho thẻ.

+ Chỉ kiểm tra từ trạng thái SW1 trong R-APDU được thẻ chuyển giao. + Nếu SW1 chỉ ra việc xử lý bình thường (SW1 = 90) hoặc cảnh báo (SW1 = 62 hoặc 63), xử lý tiếp tục với APDU lệnh kịch bản của NHPH được lưu trong ngăn xếp. Nếu biến đếm lệnh chỉ ra đây là C-APDU đầu tiên được xử lý, thì đặt bit 3 là 1, ―Xử lý kịch bản được thực hiện‖ trong byte 1 của TSI.

+ Nếu SW1 chỉ ra một điều kiện bị lỗi, thì không tiếp tục xử lý với APDU khác trong ngăn xếp nữa. Thiết bị đọc sẽ đặt nibble đầu tiên của byte đầu tiên trong những kết quả kịch bản của NHPH là 1, ―Việc xử lý kịch bản bị lỗi‖. Thiết bị đọc sẽ ghi dãy số APDU lệnh kịch bản của NHPH mà được báo cáo lỗi trong nible thứ hai của byte đầu tiên trong những kết quả kịch bản của NHPH. Dãy lệnh này bằng giá trị của biến đếm lệnh, khi nhỏ hơn E, còn không dãy số được đặt là F. Thiết bị đọc đặt bit 6 bằng 1, ―Xử lý kịch bản bị lỗi trước GENERATE AC cuối cùng‖ trong byte 5 của TVR, nếu mẫu hiện tại được ghi với nhãn 71. Thiết bị đọc đặt bit 5 là 1, ―Xử lý kịch bản bị lỗi sau lệnh GENERATE AC cuối cùng‖ trong byte 5 của TVR, nếu như mẫu hiện tại được ghi có nhãn là 72.

- Khi xử lý toàn bộ APDU lệnh kịch bản của NHPH được thực hiện thành công, thiết bị đọc đặt nibble đầu tiên của byte đầu tiên trong những kết quả kịch bản của NHPH là 2, ―Việc xử lý kịch bản thành công‖. Thiết bị đọc sẽ ghi giá trị 0 trong nibble thứ hai của byte đầu tiên trong những kết quả kịch bản của NHPH.

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 160 - 162)

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

(167 trang)