Chƣơng 3 .XÁC THỰC VÀ BẢO MẬT VỚI THẺ THễNG MINH
3.2 GIAO THỨC XÁC THỰC VÀ BẢO MẬT VỚI THẺ THễNG MINH
3.2.2 Bảo toàn dữ liệu với thẻ thụng minh
Thụng điệp trờn đường truyền cú thể được bảo vệ bởi mó xỏc thực thụng điệp (Message Authentication Code – MAC) hoặc được bảo vệ bởi MAC và mó hoỏ.
Để tớnh toỏn MAC hoặc mó hoỏ dữ liệu, khoỏ bớ mật được chia sẻ bởi TTN và thẻ thụng minh.
a. Bảo toàn dữ liệu ghi vào thẻ thụng minh
TTN Thẻ TM
Gửi số ngẫu nhiên r
Ghi có bảo vệ (file, offset, len, MAC)
ext file
Tạo và ghi lại số ngẫu nhiên r
Tính MAC cho dữ liệu, dùng r và k
Tính MAC’ cho
dữ liệu, dùng r và k Ghi dữ liệu vào thẻ
nếu MAC = MAC’
Yêu cầu gửi số ngẫu nhiên r
1. TTN yờu cầu thẻ TM gửi số ngẫu nhiờn r.
2. Thẻ TM tạo và ghi lại số ngẫu nhiờn r, gửi nú tới TTN.
3. TTN tớnh MAC cho phần đầu (header) của lệnh APDU ghi và dữ liệu sẽ ghi
vào thẻ.
Để tớnh MAC, nú dựng số ngẫu nhiờn r làm vector khởi tạo ICV và khoỏ kext, phự hợp với khoỏ kfile bảo vệ file trong thẻ.
Nú xõy dựng cõu lệnh gồm phần đầu APDU, dữ liệu, MAC, và gửi lại cho thẻ. 4. Thẻ TM nhận lệnh ghi. Nú tớnh MAC‟ cho phần đầu của lệnh APDU và dữ liệu
b. Bảo toàn dữ liệu đọc từ thẻ thụng minh
TTN Thẻ TM
Gửi số ngẫu nhiên r
Dữ liệu + MAC
Ghi lại số r
Đọc có bảo vệ (file, offset, len)
ext
file
Tạo và ghi lại số ngẫu nhiên r
Tính MAC’ cho
dữ liệu, dùng r và k
MAC = MAC’ ?
Đọc dữ liệu, tính MAC cho dữ liệu,
dùng r và k Gửi lại dữ liệu
và MAC Gửi đáp ứng đã có r
1. TTN tạo số ngẫu nhiờn r và gửi tới thẻ TM như một yờu cầu. 2. Thẻ TM ghi lại số ngẫu nhiờn r, gửi lại đỏp ứng rằng đó cú số r.
3. TTN gửi lệnh đọc dữ liệu từ thẻ TM. Dữ liệu cú độ dài xỏc định, từ một file bắt đầu ở chỉ mục cho trước, trong chế độ được bảo vệ.
4. Thẻ TM nhận lệnh đọc dữ liệu từ file thuộc vựng lưu trữ cố định trong thẻ. Thẻ TM dựng khoỏ kfilevà số r (như là vector khởi tạo ICV), để tớnh MAC cho dữ liệu. Thẻ gửi dữ liệu và MAC cho TTN.
5. TTN nhận dữ liệu từ thẻ cựng với MAC. Nú tớnh MAC‟ cho dữ liệu vừa nhận được với khoỏ kext phự hợp với kfile và số r (như là vector khởi tạo ICV).