GIỚI THIỆU CHỨNG CHỈ DÙNG VỚI THẺ EMV

Một phần của tài liệu Một số giải pháp hạn chế rủi ro trong thanh toán thẻ (Trang 58)

3.1.1 Các loại chứng chỉ dùng với thẻ EMV

Có hai loại chứng chỉ sử dụng với thẻ EMV là:

1) Chứng chỉ khóa công khai EMV:

Chứng chỉ này xác nhận khóa công khai của thực thể EMV. Chứng chỉ khóa công khai của EMV gồm khóa công của thực thể.

2) Chứng chỉ xác thực dữ liệu cố định:

Chứng chỉ khóa công khai của NHPH cung cấp, chứng chỉ này xác nhận chìa khóa công khai của NHPH nhờ chìa khóa này mà người ta có thể kiểm tra được thông tin trong thẻ không bị thay đổi kể từ khi được phát hành (khi NHPH đã ký vào dữ liệu của thẻ).

3.1.2 Kỹ thuật ký số và mã hóa dùng với chứng chỉ

1) Kỹ thuật ký số để xác minh chứng chỉ số

Trong thẻ EMV, đơn vị cấp chứng chỉ là tổ chức phát hành chứng chỉ EMV sử dụng sơ đồ chữ ký RSA để ký.

Chọn 2 số nguyên tố lớn pq sao cho pq. n = pq. Tính Φ(n) = (p – 1)(q – 1)

Chọn số ngẫu nhiên e sao cho 1 < e < Φ(n).

Tính d sao cho de ≡ 1 (mod Φ(n)).

Tham số khóa công khai trong RSA ở đây là: n – tham số khóa công khai và e – số mũ khóa công khai, khóa công khai này được sử dụng để kiểm tra chứng chỉ. Tham số khóa bí mật d kết hợp với tham số n dùng để tạo chữ ký.

2) Kỹ thuật ký số và mã hóa theo thuật toán RSA

Thực thể yêu cầu chứng chỉ khóa công khai của EMV cũng thực hiện một sơ đồ RSA. Do đó, tham số: khóa công khai n của thực thể và khóa công khai e

của thực thể được đưa để chứng thực. Đối với lý do Bộ chỉ thị thuật toán khóa công khai (là một trường trong chứng chỉ xác định loại thuật toán sử dụng những tham số được chứng thực) được đặt giá trị duy nhất là 01, tương ứng với thuật toán RSA.

Khóa ký bí mật của thực thể được ký hiệu là (ns, ds) có thể được sử dụng để tạo chữ ký số cho gói tin. Những ai có khóa kiểm tra công khai của thực thể tương ứng được ký hiệu là (ns, es) và gói tin được ký có thể kiểm tra sự đúng đắn của chữ ký.

Thực thể có thể sử dụng khóa giải mã bí mật của thực thể (nE, dE) để giải mã phong bì số mà được tính với khóa mã hóa công khai của thực thể tương ứng được ký hiệu là (nE, eE).

3.1.3 Chứng chỉ cho các thực thể liên quan

3.1.3.1 Chứng chỉ khóa công khai cho NHPH

Khi NHPH là thực thể yêu cầu chứng chỉ khóa công khai của thẻ EMV thì cái được chứng thực là khóa công khai của NHPH, khóa này bao gồm khóa công

nINI byte độ dài và khóa công khai của NHPH eI. Chứng chỉ tương ứng được xem như Chứng chỉ khóa công khai của NHPH. Giới hạn thực tế của NI là 248 byte, trong khi e cũng có thể là 3 hoặc 216 + 1.

Trong trường hợp nhà cung cấp chứng chỉ là CA, thì CA này thực hiện sơ đồ chữ ký RSA. Sơ đồ này được tham số hóa với khóa công khai của CA nCA có độ dài NI byte, khóa công khai công khai của CA eCA, và khóa bí mật của CA

dCA. Giới hạn thực tế của NCA là 248 byte, trong khi giá trị của eCAcũng có thể là 3 hoặc 216

3.1.3.2 Chứng chỉ khóa công khai cho thẻ EMV

Khi thẻ EMV là thực thể yêu cầu một chứng chỉ khóa công khai của EMV, thì cái được chứng thực có thể là:

- Tham số khóa công khai của thẻ nICNIC byte độ dài, và khóa công khai của thẻ eIC. Khóa công khai của thẻ có thể bao gồm cặp (nIC, eIC). Chứng chỉ tương ứng được xem như Chứng chỉ khóa công khai của thẻ. Giới hạn thực tế trên NIC là 248 byte, trong khi eIC cũng có thể là 3 hoặc 216 + 1. RSA được thẻ sử dụng cho thông tin ký số, thông tin này bao gồm ít nhất một số ngẫu nhiên đã nhận được từ thiết bị đọc. Việc này được thực hiện với khóa bí mật của thẻ tương ứng (nIC, dIC).

- Tham số khóa công khai mã hóa PIN của thẻ, được ký hiệu là nPE có độ dài là NPE byte và khóa công khai mã hóa PIN của thẻ ePE. Khóa công khai mã hóa PIN của thẻ bao gồm cặp (nPE, ePE) tương ứng được xem là Chứng chỉ khóa công khai mã hóa PIN của thẻ. Giới hạn thực tế của NPE là 248 byte, trong khi của ePE có thể là 3 hoặc 216 + 1. Thiết bị đọc sử dụng khóa công khai mã hóa PIN của thẻ (nPE, ePE) để tạo một phong bì số bao gồm số PIN của chủ thẻ, số này được mã hóa gửi để kiểm tra thẻ tại chỗ. Thẻ sử dụng khóa bí mật mã hóa PIN của thẻ tương ứng (nPE, dPE) để giải phong bì số. Tham số dPE được xem như mũ khóa bí mật mã hóa PIN của thẻ.

Trong trường hợp nhà cung cấp chứng chỉ là NHPH của thẻ, thì nó thực hiện một sơ đồ chữ ký số RSA. Sơ đồ bao gồm tham số khóa công khai của NHPH nI, khóa công khai của NHPH eI, và khóa bí mật của NHPH dI. Khóa bí mật của NHPH (nI, dI) được sử dụng để ký chứng chỉ cho thẻ. Với điều kiện là

3.1.3.3 Thành phần khóa công khai của thực thể

Tham số khóa công khai của NHPH, của thẻ hoặc của mã hóa PIN của thẻ được đưa ra để chứng thực có thể chia như hai phần M = MR || M’. Phần đầu tiên gồm những số cực trái của khóa công khai mà có thể khôi phục lại đươc từ chứng chỉ. Trong khi phần thứ hai được xem như phần còn lại của khóa công khai, phần này phải gửi riêng đến đơn vị kiểm tra để kiểm tra chứng chỉ.

Bảng 3.1 Tổng hợp sự phân chia này tham số khóa công khai của NHPH, thẻ, mã hóa PIN của thẻ.

Bảng 3.1 Chia khóa công khai của thực thể

Tham số Phần khôi phục

lại được từ chứng chỉ

Phần được gửi riêng từ chứng chỉ

Khóa công khai của NHPH: nI

Nếu NI ≤ NCA - 36 thì nI có thể

được khôi phục lại từ chứng chỉ. Còn không thì chỉ NCA – 36 byte quan trọng của tham số khóa công khai của NHPH có thể khôi phục lại được từ chứng chỉ.

Nếu NI ≥ NCA – 36, một số phần của nI (được coi như phần còn

lại của khóa công khai của NHPH), không thể khôi phục lại được từ chứng chỉ. Phần này được truyền đến đơn vị kiểm tra.

Khóa công khai của thẻ: nIC

Nếu NIC ≤ NI – 42 thì nIC có thể khôi phục lại được từ chứng chỉ. Còn không, chỉ NI – 42 byte quan trọng nhất của khóa công khai của thẻ có thể khôi phục lại được từ chứng chỉ.

Nếu NIC ≥ NI – 42, thì một số phần của nIC (được xem như phần còn lại khóa công khai của thẻ), không thể khôi phục lại được từ chứng chỉ, phần này được truyền đến đơn vị kiểm tra.

Khóa công khai mã hóa PIN của thẻ: nPE

Nếu NPENI – 42 thì nPE có thể khôi phục lại từ chứng chỉ. Còn không thì chỉ NI – 42 byte quan trọng nhất của khóa công khai mã hóa PIN của thẻ có thể khôi phục lại từ chứng chỉ.

Nếu NPENI – 42 thì một số phần của nPE (được xem như

phần còn lại) của khóa công khai mã hóa PIN của thẻ không thể khôi phục lại được từ chứng chỉ, và phần này được truyền đến đơn vị kiểm tra.

3.1.4 Chứng thực sử dụng với thẻ EMV

Khóa công khai của CA bao gồm tham số khóa công khai của CA và khóa công khai của CA. Khóa này phải được lưu trong tất cả thiết bị đọc để kiểm tra chứng chỉ bắt nguồn từ CA này.

Khi một NHTT quyết định tham gia thanh toán thẻ EMV, thì thiết bị đọc tại đơn vị chấp nhận thẻ của họ phải lưu cơ sở dữ liệu, cơ sở dữ liệu này giữ một hồ sơ cho mỗi khóa công khai hoạt động của mỗi CA được NHTT chấp nhận. Ví dụ về cơ sở dữ liệu được biểu diễn trong Bảng 3.2. Trong cơ sở dữu liệu này một hồ sơ tương ứng một khóa công khai của CA được xác định trong hai trường sau:

1) RID của ứng dụng chấp nhận CA này;

2) Chỉ số được hiệp hội thẻ hoặc trung tâm điều hành hệ thống thanh toán chỉ định thực hiện vai trò của CA đối với mỗi khóa công khai CA của nó, khóa này có thể sẵn sàng tại một thời điểm xác định nào đó. Chỉ số này được lưu trong đối tượng dữ liệu và có nhãn là 9F22 của thiết bị đọc.

Bảng 3.2 Cơ sở dữ liệu khóa công khai của CA được NHTT chấp nhận.

RID Chỉ số khóa công khai của CA (nhãn 9F22) Chỉ thị thuật toán Tham số khóa công khai – nCA Khóa công khai của CA: eCA

RID 1 Chỉ số của CA1 1 AlgInd11 Khóa công khai của CA1 1 Khóa công khai của CA1 1 RID 1 Chỉ số của CA1 2 AlgInd12 Khóa công khai của CA1 2 Khóa công khai

của CA2 2 RID 2 Chỉ số của CA2 1 AlgInd21 Khóa công khai của CA2 1 Khóa công khai

của CA2 1

... ... ... ... ...

RID n Chỉ số của CAn 1 AlgIndn Khóa công khai của CAn 1 Khóa công khai của CAn 1

Hồ sơ tương ứng với một CA chứa nCA, khóa công khai eCA của mỗi khóa công khai của CA, cũng như các chỉ số thuật toán để xác định loại thuật toán được sử dụng cùng với khóa công khai của CA để kiểm tra một chứng chỉ. Trong ví dụ được trình bày trong Bảng 3.2, chứng thực CA1 có hai khóa công khai CA sẵn sàng hoạt động được phân thành hai chỉ số khác nhau, chỉ số 1 và chỉ số 2.

Nếu một thiết bị đọc cần kiểm tra Chứng chỉ khóa công khai của NHPH nhận được từ một thẻ để khôi phục lại khóa công khai của NHPH tương ứng, thì thiết bị đọc cũng cần nhận chỉ số khóa công khai CA (nhãn 8F) từ thẻ.

Khi sử dụng chỉ số này thiết bị đọc xác định trong cơ sở dữ liệu khóa công khai của CA, khóa công khai thích hợp của CA sẽ được sử dụng để kiểm tra chứng chỉ khóa công khai của NHPH. Nếu chứng chỉ này kiểm tra là đúng, thì thiết bị đọc có thể thu khóa công khai của NHPH (gồm tham số khóa công khai của NHPH và khóa công khai của NHPH).

- Thiết bị đọc có thể sử dụng khóa công khai của NHPH để kiểm tra tính xác thực của chứng chỉ trên dữ liệu được cá thể hóa trong thẻ, dữ liệu này được xem như dữ liệu của ứng dụng tĩnh đã ký. Thiết bị đọc kiểm tra chứng chỉ này trong trường hợp xác thực dữ liệu tĩnh ngoại tuyến.

- Mặt khác, khóa công khai của NHPH đã khôi phục có thể sử dụng để kiểm tra chứng chỉ khóa công khai của thẻ hoặc chứng chỉ khóa công khai mã hóa PIN của thẻ, nó biểu diễn ở mức hai của chứng chỉ trong chuỗi chứng chỉ của EMV.

Một khi chứng chỉ khóa công khai của thẻ kiểm tra là đúng, thì thiết bị đọc có thể khôi phục lại modun khóa công khai mã hóa PIN của thẻ và mũ khóa công khai mã hóa PIN của thẻ. Sử dụng khóa công khai này thiết bị đọc có thể kiểm tra bất cứ chữ ký nào được thẻ đưa ra với khóa này.

Nếu chứng chỉ khóa công khai mã hóa PIN của thẻ kiểm tra đúng, thiết bị đọc có thể khôi phục lại modun khóa công khai mã hóa PIN của thẻ và khóa công khai mã hóa PIN của thẻ. Sử dụng khóa công khai này, thiết bị đọc có thể đem lại một phong bì số và mã hóa PIN của chủ thẻ. Chỉ có thẻ mới có thể giải mã phong bì số này với khóa bí mật tương ứng.

3.2 CHỨNG CHỈ KHÓA CÔNG KHAI CỦA THẺ EMV 3.2.1 Tạo lập chứng chỉ khóa công khai của thẻ EMV 3.2.1 Tạo lập chứng chỉ khóa công khai của thẻ EMV

Chứng chỉ khóa công khai của thẻ EMV được đưa ra cùng với sơ đồ chữ ký số (khôi phục lại được gói tin) dựa trên thuật toán RSA.

3.2.1.1 Các trường dữ liệu trong chứng chỉ

M = MR || M’ là dữ liệu khóa công khai của thực thể được ký bởi người cấp chứng chỉ. Độ dài của dữ liệu là L, và byte độ dài khóa công khai của người cung cấp chứng chỉ là N. Thực thể có thể là NHPH (nếu như người cung cấp chứng chỉ là CA) hoặc thực thể có thể là thẻ hoặc mã hóa PIN của thẻ (nếu người cung cấp chứng chỉ là NHPH).

Sau đó MR của gói tin M có khả năng khôi phục lại từ chứng chỉ khóa công khai của thực thể bao gồm N -22 byte, chứa những trường dữ liệu sau:

Trường 1 – Định dạng của chứng chỉ (1 byte):

Trường này phân biệt vài định dạng chứng chỉ có khả năng tương ứng với chứng chỉ khóa công khai của NHPH (02h), hoặc chứng chỉ khóa công khai mã hóa PIN của thẻ EMV/thẻ EMV (04h).

Trường 2 – Định dang của thực thể:

Trường này xác định thực thể sở hữu chứng chỉ khóa công khai. Định dạng của nó phụ thuộc vào thực thể yêu cầu chứng chỉ:

- Số định danh của NHPH – IIN (4 byte): Số này là 3-8 số bên trái của số

thẻ, trong trường hợp NHPH là thực thể có yêu cầu một chứng chỉ được CA ký;

- PAN của ứng dụng (8 byte): Được bổ sung bên phải với số hexa F tận biên của 8 byte, trường hợp thẻ EMV là thực thể yêu cầu chứng chỉ được ký bởi NHPH.

Trường 3 – Ngày hiệu lực của chứng chỉ (2 byte):

Trường 4 Số serial của chứng chỉ (3 byte):

Trường dữ liệu này được biểu diễn ở dạng nhị phân, xác định một số duy nhất được kết hợp với chứng chỉ. Số này được chỉ định bởi CA trong trường hợp chứng chỉ khóa công khai của NHPH, hoặc được do NHPH chỉ định trong trường hợp chứng chỉ khóa công khai mã hóa PIN của thẻ/thẻ.

Trường 5 – Bộ chỉ thị thuật toán băm (1 byte):

Xác định thuật toán băm được sử dụng để đưa ra mã hàm băm H. Giá trị của chỉ dẫn thuật toán băm được đặt là 01h.

Trường 6 Bộ chỉ thị thuật toán khóa công khai của thực thể (1 byte):

Cho biết loại thuật toán khóa công khai được sử dụng một thực thể cùng với khóa công khai được chứa trong chứng chỉ. Bộ chỉ thỉ đặt này được đặt là 01h, chỉ thị thuật toán RSA.

Trường 7 Độ dài khóa công khai của thực thể (1 byte):

Cho biết độ dài byte khóa công khai của thực thể hiện tại được chứng thực. Độ dài này được ký hiệu là: NI, NIC, NPE, phụ thuộc vào việc thực thể là NHPH hay thẻ EMV hay mã hóa PIN của thẻ EMV.

Trường 8 – Độ dài mũ khóa công khai của thực thể (1 byte):

Cho biết độ dài byte mũ khóa công khai của thực thể hiện tại được chứng thực. Độ dài này cũng có thể là 1 hoặc 3, phụ thuộc mũ là 3 hay 216

Trường 9 - Khóa công khai của thực thể:

Trường có độ dài thay đổi phụ thuộc vào loại thực thể:

- Khi thực thể là NHPH, độ dài của trường này là NCA – 36. Nếu NI ≤ NCA

– 36, thì trường này bao gồm toàn bộ tham số khóa công khai của NHPH, được bổ sung vào bên phải NCA – 36 – NI byte có giá trị BBh. Nếu NI > NCA – 36, thì trường này bao gồm NCA – 36 tất cả những byte quan trọng nhất của tham số khóa công khai của NHPH.

- Khi thực thể là thẻ, độ dài của trường này là NI – 42. Nếu NIC ≤ NI – 42, thì trường này bao gồm toàn bộ tham số khóa công khai của thẻ, được bổ sung vào bên phải NI – 42 – NIC byte có giá trị BBh. Nếu NIC > NI – 42, thì trường này gồm NI – 42 byte quan trọng nhất của tham số khóa công khai của thẻ.

- Khi thực thể là mã hóa PIN của thẻ, độ dài trường này là NI – 42. Nếu

Một phần của tài liệu Một số giải pháp hạn chế rủi ro trong thanh toán thẻ (Trang 58)