Chương 2. CÁC NGHIÊN CỨU LIÊN QUAN
2.1 Hướng tiếp cận dùng mã sửa lổi
2.1.1 Juels & Wattenberg - A Fuzzy Commitment Scheme (1999)
A.Juels và M.Wattenberg [2], đã ứng dụng mã sửa lỗi vào việc bảo vệ khóa bằng đặc trưng sinh trắc học.
Quá trình đăng ký:
- Giả sử mẫu sinh trắc học được biểu diễn bằng một chuỗi n bit nhị phân x ∈{0,1}n
- C(n,k,d) là một mã sửa lỗi có chiều dài n bit, k chiều và khoảng cách tối thiểu là d. Giả sử khóa cần được bảo vệ là c ∈ C
- Kết quả của quá trình đăng ký là δ = x – c = (x1 – c1 , …, xn – cn) = (x1⊕ c1, …. , xn⊕ cn) (trong trường nhị phân, phép cộng và phép trừ cho kết quả như nhau).
Quá trình kiểm tra:
- Giả sử mẫu sinh trắc học được biểu diễn bằng một chuỗi n bit nhị phân x’∈{0,1}n
- c’ = x’ – δ
- Nếu x’ khác x không quá (d-1)/2 bit, ta có thể giải mả c’ từ c ban đầu Nhận xét
- Đây là một trong những phương pháp đầu tiên ứng dụng mã sửa lỗi vào việc bảo vệ dữ liệu bằng đặc trưng sinh trắc học, dùng mã sửa lỗi để loại bỏ những sai số trong đặc trưng sinh trắc học. Tuy nhiên, không phải đặc trưng sinh trắc học nào cũng có thể biểu diễn dưới dạng một chuỗi bit nhị phân vàthay đổi không quá nếu đo đạc trên cùng một đối tượng. Do đó, để có thể áp dụng được phương pháp này vào thực tế, ta
Đánh giá hệ thống xác thực trên thiết bị di động sử dụng kỹ thuật rút trích mờ từ dữ
liệu sinh trắc học
cần phải biến đổi đặc trưng sinh trắc học sao cho đáp ứng được giả định đó.
2.1.2 Juels & Sudan - A Fuzzy Vault Scheme(2003)
A.Juels và M.Sudan [3] giới thiệu một khái niệm gọi là “Fuzzy Vault”. Một bí mật K được khóa bằng một tập A, sau đó có thể được mở khóa bằng một tập B nếu vàchỉ nếu B gần giống với A, hay nói cách khác A ∩ B đủ lớn.
Quá trình khóa bí mật K bằng tập A:
- Bí mật k được biểu diễn bởi một vector k = (k0, k1, …, kn-1) - Biểu diển k dưới dạng đa thức p(x) = !!!!!! 𝑘!𝑥!
- R = { (x,p(x)| x∈ A) } được gọi là “tập các điểm chính danh”
- - Ta thêm vào R một số điểm, gọi là điểm gây nhiễu:
𝑅 ← 𝑅 ∪ { 𝑥, 𝑦 𝑥 ∈ 𝑈 − 𝐴, 𝑦 ≠ 𝑝(𝑥))}
Các “điểm gây nhiễu” này chính là thành phần tạo nên tính bảo mật của hệthống, kẻ tấn công sẽ không biết được đâu là “điểm gây nhiễu”, đâu là “điểm chính danh”, số lượng “điểm gây nhiễu” càng nhiều, tính bảo mật của hệthống càng cao, nhưng bù lại, đòi hỏi không gian lưu trữ càng lớn.
Quá trình mở khóa bí mật k bằng tập B:
Q = { (x,y | x ∈ B ˄ (x,y) ∈ R }
- Nếu phần giao nhau giữa tập B và tập A là đủ lớn, Q sẽ chứa một số lượng “điểm chính danh” đủ lớn, lúc này, ta dùng mã Reed-Solomon để giải mã Qđể tính k. Ngược lại, quá trình giải mã Reed-Solomon sẽ cho ra kết quả khác k.
2.1.3 Dodis et. al. – Fuzzzy Extractor (2008)
Y.Dodis et. al. [4] đã giới thiệu hai khái niệm “Secure Sketch” và “Fuzzy Extractor”, do phương pháp được đề xuất trong luận văn này được xây dựng dựa trên khái niệm “Fuzzy extractor” kết hợp với “Secure Sketch”, phần 3.4.5 sẽ trình bày chi tiết khái niệm này, bài báo cũng đưa ra phương pháp đánh giá mức độ bảo mật của “Secure Sketch” và “Fuzzy Extractor” dựa trên khái niệm “Min Entropy”, khái niệm này cũng sẽ được trình bày chi tiết trong phần3.4.1.
Bài báo xây dựng “Secure Sketch” cho 3 không gian metric khác nhau:
“Hamming”, “Set Different” và “Edit”, trong đó “Secure Sketch” dựa trên
“Hamming” là phương pháp nền tảng, “Set Different” và “Edit” được biến đổi để đưa về “Hamming” và sử dụng các phương pháp mã sửa lỗi dựa trên khoảng cách
Đánh giá hệ thống xác thực trên thiết bị di động sử dụng kỹ thuật rút trích mờ từ dữ
liệu sinh trắc học
“Hamming”. Công trình của Y.Dodis trở thành nền tảng cho các nghiên cứu về sau.
2.1.4 Những công trình nghiên cứu khác
U.Martini và S.Beinlich [5] đưa ra mô hình dựa trên lý thuyết mã sửa lỗi như là một phần của dự án “Virtual PIN Based on Biometrics (ViPBoB)” được tài trợ bởi Liên Minh Châu Âu (EU). Hình 2.1 mô tả phương pháp của Martini, về cơ bản, nó giốngnhư “Fuzzy Commitment” của A.Juels và M.Wattenberg [2]. Tuy nhiên, U.Martini đã giới thiệu một phương pháp biến đổi dấu vân tay thành một chuỗi bit để có thể được áp dụng cho mã sửa lỗi.
Y.Sutcu et. al. [6] đã giới thiệu một phương pháp khác để biến đổi dấu vân tay thành một chuỗi bit nhị phân. Mỗi một điểm đầu mút trên dấu vân tay (minutiae point) được biểu diễn bởi 3 tham số: tọa độ x, y và góc φ cho biết hướng của đường vân tay tại điểm đầu mút. Như vậy, vector đặc trưng của dấu vân tay sẽ là một tậpcác điểm trong không gian 3 chiều. Tiếp theo sau đó, một tập các hình khối lập phương (cuboid) được sinh ra một cách ngẫu nhiên, tương ứng với mỗi cuboid sẽ định ra một giá trị ngưỡng tùy vào thể tích của cuboid. Nếu số điểm trong cuboid vượt quá ngưỡng tương ứng, giá trị tương ứng sinh ra sẽ là 1, ngược lại là 0.
Hình 2.1Thuật toán biến đổi vector đặc trưng của Yagiz Sutcu
Các phương pháp của Y.Dodis [4] dựa trên dữ liệu rời rạc (số nguyên) trong khi các vector đặc trưng của dữ liệu sinh trắc học thường ở dạng liên tục (số thực), do đó ta cần phải biến đổi chúng về dạng rời rạc bằng cách lượng tử hóa chúng.
Q.Li [7], đã đưa ra khái niệm “relative entropy loss” để đánh giá một cách tương đối lượngentropy bị mất do hàm lượng tử hóa. “relative entropy loss” cho biết giới
Đánh giá hệ thống xác thực trên thiết bị di động sử dụng kỹ thuật rút trích mờ từ dữ
liệu sinh trắc học
hạn của lượng entropy cộng thêm nếu ta dùng một hàm lượng tử hóa tối ưu mặc dù rất khó để xác định hàm lượng tử hóa tối ưu này.
Feng Hao et. al. [8] đã sử dụng mã Reed-Solomon và mã Hadamard, trích xuất khóa có chiều dài 140 bit từ dữ liệu mống mắt.
Felix Fontein et. al. [9] đã xây dựng mã sửa lỗi có thể sửa được những lỗi xãy ra trên một cụm các bit gần nhau cũng như lỗi xảy ra trên các bit riêng biệt.
Trên thực tế, những lỗi theo cụm kiểu này thường xảy ra do mộ t tác động mạnh nào đó từ môi trường, ví dụ vệt mờ trên camera, hoặc một xung điện có thể làm thay đổi giá trị của nhiều bit nằm gần nhau.