4.1.1 Sơ đồ giao dịch với thẻ EMV
Sơ đồ dưới đây chỉ ra luồng giao dịch từ khi thẻ được đưa vào thiết bị đọc tại điểm chấp nhận thẻ cho đến khi nó được đưa ra khỏi thiết bị.
Cho thẻ vào Lựa chon ứng dụng Xử lý ứng dụng ban đầu Đọc dữ liệu của ứng dụng Xác thực dữ liệu ngoại tuyến Những hạn chế xử lý Kiểm tra chủ thẻ Quản lý rủi ro của terminal Phân tích hoạt động thiết bị đọc lần thứ nhất Phân tích hoạt động của thẻ lần thứ nhất Giao dịch trực tuyến Phân tích hoạt động của terminal lần thứ hai Không thể xác thực trực tuyến Xử lý trực tuyến Y Xác thực của ngân hàng phát hành Phân tích hoạt động của thẻ lần thứ hai Xử lý các script của ngân hàng phát hành Hoàn thành giao dịch Cho thẻ ra Hình 4-1: Sơ đồ giao dịch
Khi thẻ được đưa vào thiết bị đọc, thiết bị xác định danh sách những ứng dụng được thẻ và thiết bị hỗ trợ. Nếu không có ứng dụng nào được thẻ và thiết bị đọc hỗ trợ thì giao dịch của thẻ bị hủy bỏ.
Thiết bị đọc thực hiện chức năng xử lý ứng dụng ban đầu. Thiết bị đọc thông báo cho thẻ EMV biết về môi trường giao dịch tại điểm chấp nhận dịch vụ, điều sẽ giúp cho thẻ phù hợp với điều kiện giao dịch hiện tại. Thẻ cung cấp một bản đồ trên những AEF công khai trong AFL và một hồ sơ trao đổi giao dịch trong AIP.
Sau đó tùy thuộc vào thông tin đã lưu trong AIP, thiết bị đọc quyết định xem có phải thực hiện xác thực dữ liệu ngoại tuyến hay không để tăng cường dịch vụ bảo mật xác thực của thẻ. Nếu câu trả lời là có thì thiết bị đọc xác định xem DDA ngoại tuyến hay DDA ngoại tuyến là kỹ thuật mã hóa được sử dụng để thực hiện dịch vụ bảo mật.
Tiếp theo, thiết bị đọc thực hiện chức năng hạn chế xử lý, chức năng này đánh giá xem thẻ có được quyền yêu cầu cho một dịch vụ tài chính nào đó tại điểm chấp nhận dịch vụ hay không. Nếu thẻ thích là hợp cho loại dịch vụ đã yêu cầu thì trao đổi giao dịch được tiếp tục còn không giao dịch sẽ bị hủy bỏ.
Thiết bị đọc thực hiện việc xác nhận chủ thẻ nếu thẻ EMV đưa ra chức năng này trong AIP. Nếu chức năng này được ứng dụng thẻ hỗ trợ, thì thiết bị đọc xác định một kỹ thuật kiểm tra chủ thẻ mà có hỗ trợ qua lại giữa thẻ EMV và thiết bị đọc. Sau đó, sử dụng kỹ thuật này, thiết bị đọc và thẻ thiết lập liên kết giữa người sử dụng thẻ và chủ thẻ hợp pháp.
Thiết bị đọc cũng thực hiện chức năng quản lý rủi ro thiết bị đọc. Chức năng này cho phép thiết bị đọc thiết lập số tiền giao dịch trong khoảng hạn mức cho phép. Thiết bị đọc cũng có thể quyết định xem giao dịch đó có nên được truyền trực tuyến theo số lớn những giao dịch đã được xác thực ngoại tuyến hay không.
Sau khi thực hiện chức năng quản lý rủi ro thiết bị đọc có một bộ những kết quả thu được từ việc hoàn thành những giao dịch trước đó. Những kết quả này được gom lại trong một thanh ghi 5 byte. Thiết bị đọc so sánh kết quả trong thanh ghi này với lại những mã hoạt động của NHPH và mã hoạt động của thiết bị đọc, những mã này xác định hành động được thiết bị đọc thực hiện trong trường hợp việc trao đổi giao dịch không hoàn thành như mong muốn. Tiếp theo đó là giai đoạn phân tích hoạt động của thiết bị đọc, thiết bị đọc cũng có thể từ chối hoặc chấp nhận giao dịch. Sau đó, thiết bị đọc có lựa chọn việc hoàn thành giao dịch tại chỗ (ngoại tuyến) khi không có rủi ro nghiêm trọng nào được phát hiện ra, hoặc nó có thể yêu cầu sự trợ giúp trực tiếp từ NHPH. Ứng dụng thẻ được yêu cầu để đưa ra một mã hóa ứng dụng, hoặc thậm chí là một chữ ký số, mã hóa này sẽ phục vụ cả hai mục đích là xác thực thẻ trực tuyến với NHPH hoặc có hoạt động như một bằng chứng không thể chối bỏ của việc tham gia thanh toán trong một giao dịch nào đó.
Thẻ EMV thực hiện thủ tục quản lý rủi ro của nó, theo chính sách bảo mật của NHPH, trong phạm vi của chức năng này, chức năng này được gọi là chức năng phân tích hoạt động của thẻ. Theo chức năng quản lý rủi ro của thẻ, thẻ EMV có thể chấp nhận loại giao dịch được thiết bị đọc đưa ra hoặc nó có thể yêu cầu loại giao dịch cuối cùng khác. Ví dụ, thay cho việc chấp nhận hoàn thành giao dịch ngoại tuyến, thẻ có thể yêu cầu thiết bị đọc thực hiện yêu cầu xác thực trực tuyến với NHPH. Sau khi thực hiện chức năng phân tích hoạt động thẻ, việc quyết định hoàn tất giao dịch ngoại tuyến hay trực tuyến của thẻ EMV mới được đưa ra.
Trong trường hợp thiết bị đọc phải kết nối trực tuyến với NHPH, thì mạng thanh toán phải thực hiện phần xử lý của nó, như được minh họa trong Hình 4-2.
4.1.2 Giao dịch thanh toán với thẻ EMV
Mạng thanh toán
Thiết bị đọc
Ngân hàng thanh toán
Trung tâm điều hành hệ
thống thanh toán Ngân hàng phát hành
Gói tin thanh toán
Tạo một yêu cầu xác thực từ gói tin thanh toán, có bao gồm mã hóa ứng dụng
Yêu cầu xác thực
Gửi yêu cầu xác thực trực tiếp đến ngân hàng phát hành thích hợp
Yêu cầu xác thực
Kiểm tra xem chủ thẻ có đủ tiền trong tài khoản hay không
Kiểm tra xem thẻ có phải là thẻ thật hay không
Chấp nhận hay từ chối giao dịch, tạo phản hồi xác thực, bao gồm dữ liệu xác thực của ngân hàng phát hành
Bổ sung những kịch bản của ngân hàng phát hành nếu thấy cần thiết
Phản hồi xác thực + Dữ liệu xác thực + Những script của Issuer Phản xồi xác thực +
Dữ liệu xác thực + Những script của Issuer
Tương tự như xử lý thực hiện với thẻ từ, quan sát gói tin thanh toán được gửi cho NHTT chứa những thông tin bổ sung được thiết bị đọc tập hợp từ xử lý giao dịch thẻ. Sau khi nhận thông tin này NHPH có thể đánh giá tốt hơn việc thẻ có phải là thẻ thật hay thẻ giả, khi mã hóa ứng dụng được thẻ đưa ra là "mới‖ cho những giao dịch mới. Phản hồi xác thực được IH gửi lại cho phép thiết bị đọc và thẻ từ chối hoặc chấp nhận giao dịch, theo chỉ dẫn được NHPH truyền tới. Từ đây, NHPH phải tự xác thực thẻ, do đó sự tin cậy của thẻ là quyết định cuối cùng cho giao dịch thẻ EMV hiện tại xuất phát từ IH thật.
Điều quan trọng là phản hồi xác thực có thể cũng chứa một dãy những lệnh được thiết bị đọc truyền đến thẻ, tập lệnh này do NHPH yêu cầu. Đây là chức năng xử lý kịch bản của NHPH, qua đó NHPH có thể cập nhật những tham số của ứng dụng thẻ trong ICC khi nó vẫn còn hoạt động, sau khi đã cá thể hóa. Để thực hiện việc xử lý những kịch bản của NHPH, việc xác thực của NHPH phải thành công, do đó thẻ có thể được tin tưởng rằng NHPH chính thống gửi dãy những lệnh này qua thiết bị đọc tại điểm chấp nhận dịch vụ.
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)
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