4. Các phiên bản HCST
4.1 Mô hình thế hệ thứ nhất
Ba giao thức mã hoá đặc tả trong tài liệu ICAO được sử dụng trong mô hình này nhằm đảm bảo tính đúng đắn và bảo mật của dữ liệu. Đó là : Xác thực thụ động (Passive Authentication), Kiểm soát truy cập cơ sở (Basic Access Control), và Xác thực chủ động (Active Authentication).
4.1.1 Passive Authentication (PA)
Xác thực thụ động là giao thức mã hoá bắt buộc sử dụng trong thế hệ HCST thứ nhất. Mục đích chính là cho phép một đầu đọc thẩm định rằng dữ liệu của HCST là xác thực hay không. Trong cơ chế này thẻ (Tag) không phải thực hiện một xử lý nào. Nhưng nhược điểm của nó là không phát hiện được việc làm nhái chip lưu trong thẻ. Tức là nó chỉ phát hiện được dữ liệu là đúng, còn dữ liệu đó có phải do sao chép hay không thì sẽ không phát hiện ra.
Các bước hoạt động
1. Đọc SOD từ chíp.
34
3. Kiểm tra CDS bằng KPuCSCA có được từ PKD hoặc từ cơ sở dữ liệu cục bộ của hệ thống kiểm tra (trao đổi trực tiếp giữa hai quốc gia thông qua đường công hàm).
4. Kiểm tra chữ ký số SOD.Signature sử dụng KPuDS. Bước này nhằm khẳng định thông tin SOLDS đúng là được tạo ra bởi cơ quan cấp hộ chiếu và SOLDS không bị thay đổi.
5. Đọc các thông tin cần thiết từ LDS.
6. Tính hàm băm các thông tin ở bước 4 sau đó so sánh với SOLDS. Bước này khẳng định được nhóm dữ liệu là xác thực và toàn vẹn.
4.1.2 Active Authentication (AA)
Xác thực chủ động là một giao thức tuỳ chọn trong thế hệ HCST thứ nhất. Với việc sử dụng cơ chế Thách đố - Trả lời (Challenge - Response), nó phát hiện ra chip có bị thay thế hay làm nhái không. Nếu HCST sử dụng AA, chip sẽ lưu trữ một khoá công khai (KPuAA) trong DG15 và bảng băm của nó trong SOD. Khoá bí mật tương ứng (KPrAA) được lưu trữ trong vùng nhớ bí mật của chip.
Các bước thực hiện
1. Đầu đọc (kí hiệu là R hay IS) gửi một chuỗi ngẫu nhiên 64 bit cho RFID (hay Tag).
2. RFID kí chuỗi này với khoá KPrAA và gửi chữ kí này cho IS. 3. IS sử dụng khoá công khai KPuAA lưu trong DG15.
4. IS thẩm định tính đúng đắn của chuỗi đã ký bằng cách sử dụng “sự hiểu biết” của nó và KPuAA.
4.1.3 Basic Access Control (BAC)
BAC là một giao thức tuỳ chọn đảm bảo rằng chỉ đầu đọc có thẩm quyền mới có thể đọc được dữ liệu lưu trong HCST. Khi một đầu đọc cố gắng truy cập vào HCST, nó bắt đầu một giao thức yêu cầu đầu đọc chứng minh “sự hiểu biết” về cặp khoá bí mật (được gọi là các khoá truy cập) có được từ dữ liệu trên vùng MRZ. Từ các khoá này, một khoá phiên được sử dụng để truyền các thông báo bảo mật.
35
Các khoá truy cập (KENC, KMAC) có được từ các thông tin trên MRZ: số hộ chiếu (Doc No), ngày sinh người mang hộ chiếu (DOB), ngày hiệu lực của hộ chiếu (DOE), 3 chữ số kiểm tra (C).
Kseed = 128msb(SHA-1(DocNo||DOB||DOE||C)) KENC = 128msb(SHA-1(Kseed||1))
KMAC = 128msb(SHA-1(Kseed||2))
Ở đây ký hiệu hàm 128msb(K) tương ứng MostSignificantBytes(K, 16)
tức là lấy 16 Bytes (~128 bits) quan trọng nhất của của K.
Đầu đọc bắt đầu cơ chế Thách đố – Trả lời để chứng minh quyền sở hữu các khoá truy cập và từ đó đưa ra một khoá phiên.
Các bước thực hiện
1. RFID sinh ra và gửi đến IS một chuỗi 64bit (RT).
2. IS nhận RT và sinh ra 2 chuỗi ngẫu nhiên 64bit (RR,KR).
3. IS mã hoá chuỗi RR||RT||KR sử dụng thuật toán 3-DES và khoá KENC. 4. IS tính MAC của bản mã hoá sử dụng ANSI MAC với khoá KMAC. 5. IS gửi bản mã và MAC tới RFID.
6. RFID kiểm tra MAC, giải mã bản mã hoá. Nó thẩm định tính đúng đắn của RT và sau đó lấy ra KR.
7. RFID sinh ra một chuỗi ngẫu nhiên 64 bit khác KT.
8. RFID mã hoá RR||RT||KT sử dụng thuật toán 3-DES và khoá KENC. 9. RFID tính MAC của bản mã hoá sử dụng ANSI MAC với khoá KMAC. 10.RFID gửi bản mã và MAC tới IS.
11.IS kiểm tra MAC, giải mã bản mã hoá. Nó thẩm định tính đúng đắn của RR và sau đó lấy ra KT.
12.IS và RFID cùng tính khoá phiên Kseed (KR KT).
Bây giờ cả hai bên sinh ra một khoá mã hoá phiên mới KE và khoá phiên MAC KM:
KE = 128msb(SHA-1(Kseed||1)) KM = 128msb(SHA-1(Kseed||2))
36