Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 62 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
62
Dung lượng
3,31 MB
Nội dung
ĐẠI HỌC QUỐC GIA TP.HCM TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA KHOA HỌC VÀ KỸ THUẬT MÁY TÍNH LUẬN VĂN TỐT NGHIỆP ĐẠI HỌC XÂY DỤNG HỆ THỐNG XÁC THỰC BẰNG ĐẶC TRƯNG KHN MẶT CĨ BẢO VỆ MẪU SINH TRẮC Ngành: KHOA HỌC MÁY TÍNH HỘI ĐỒNG: HỆ THỐNG THÔNG TIN GVHD: ThS NGUYỄN THỊ ÁI THẢO GVPB: ThS TRẦN THỊ QUẾ NGUYỆT -o0o SVTH: LÊ ĐĂNG BẢO - 1610165 TP HỒ CHÍ MINH, 09/2022 TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA KH & KT MÁY TÍNH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập - Tự - Hạnh phúc -Ngày 19 tháng 09 năm 2022 PHIẾU CHẤM BẢO VỆ LVTN (Dành cho người hướng dẫn/phản biện) Họ tên SV: Lê Đăng Bảo (1610165) Ngành (chuyên ngành): Khoa học máy tính Đề tài: Xây dựng hệ thống xác thực đặc trưng khn mặt có bảo vệ mẫu sinh trắc Họ tên người phản biện: TRẦN THỊ QUẾ NGUYỆT Tổng quát thuyết minh: Tổng quát vẽ: Những ưu điểm LVTN: - Sinh viên tìm hiểu giải thuật liên quan đến xác thực đặc trưng khuôn mặt, lựa chọn giải pháp có ưu điểm để thực, đánh giá so sánh - Hệ thống demo chạy ổn định, có kết tin cậy Những thiếu sót LVTN: - Sinh viên chưa có cải tiến gỉai pháp lựa chọn - Sinh viên nên thực thêm thành hệ thống cung cấp dịch vụ xác thực đặc trưng khuôn mặt Đề nghị: Được bảo vệ Bổ sung thêm để bảo vệ câu hỏi SV phải trả lời trước Hội đồng: 10 Đánh giá chung (bằng chữ: giỏi, khá, TB): Khá Không bảo vệ Điểm : /10 Ký tên (ghi rõ họ tên) ThS Trần Thị Quế Nguyệt Trường ĐH Bách Khoa TP HCM – Khoa Khoa học Kỹ thuật Máy tính Lời cam đoan Đề cương luận văn tốt nghiệp có tham khảo sử dụng nhiều phương pháp, thuật tốn từ nhiều nguồn khác trích dẫn mục "Tài liệu tham khảo" Tôi xin cam đoan ngồi tài liệu trích dẫn trên, tồn nội dung báo cáo đề tài tự soạn thảo từ nghiên cứu thân, khơng chép tài liệu khác Nếu có bất gian lận phát hiện, tơi chịu hồn tồn trách nhiệm nội dung luận văn chịu hình thức kỷ luật từ phía Ban chủ nhiệm khoa Khoa học Kỹ thuật máy tính, Ban giám hiệu nhà trường Báo cáo luận văn tốt nghiệp Trang 1/58 Trường ĐH Bách Khoa TP HCM – Khoa Khoa học Kỹ thuật Máy tính Lời cảm ơn Bắt đầu từ câu chuyện sinh viên thấy thân yếu mà bỏ dở việc hồn thành việc học hết lần tới lần khác, hoàn thành báo cáo đề cương vào tháng 1/2021 với suy nghĩ "mình làm rồi, có thiết phải hồn thành việc học hay khơng, dù chả hiểu làm mà" Và coi tất thứ không cần thiết, bỏ ngang việc tốt nghiệp mà cách luận văn Và có lẽ khơng phải câu chuyện khác, phải, tơi Khi tơi thật hèn nhát, sợ thân không làm được, sợ tường mà khơng vượt qua được, sợ đối diện với yếu thân từ bỏ đương nhiên đường dễ dàng mà Rồi khoảng 10 tháng sau, sau thời gian làm việc, tự học, biết thêm nhiều điều, thấy nhiều đường khác làm thân muốn thay đổi, muốn hiểu biết nhiều hơn, muốn học chuyên sâu nhiều thứ để thực hóa giấc mơ Và lúc tơi thấy định từ bỏ ngu ngốc tới mức Nhưng cịn chút hội, tơi liên lạc với nhờ Trang giúp đỡ, chưa phải q muộn nên tơi cịn hội để hồn thiện luận văn Và tơi biết ơn Thảo cho tơi hội để hồn thiện nốt bỏ lỡ Và báo cáo luận văn tiếp nối tơi cịn giang dở lúc trước, thời gian cách tương đối dài, nên trình nghiên cứu gặp nhiều khó khăn, nhiều vấn đề tơi cần tìm hiểu Nhưng lúc thấy việc học tuyệt vời tới Nếu sau có bạn sinh viên đọc dịng đừng từ bỏ giống tơi Ngay lúc bạn khơng hiểu phải làm thế, tất bạn học, bạn làm tảng để bạn thực hóa giấc mơ sau Và để hoàn thành luận văn này, chắn quên kiến thức mà thầy cô trường Đại học Bách Khoa TPHCM thân yêu thầy cô khoa Khoa học Kỹ thuật máy tính nói riêng truyền lại cho tôi, dù hiểu tới đâu giúp tơi nhiều trình vận dụng thứ học Một góc nhỏ đó, tơi tiếp tục nhờ gia đình, bạn bè, lời khuyên, lời la mắng, giúp đỡ họ giúp tơi hồn thành luận văn Nhìn lại trải qua, thứ thực nhanh, thứ đọng lại thật đẹp Bài báo cáo khơng thể tránh khỏi thiếu sót, điểm cần phải cải thiện Do tơi mong nhận góp ý chân thành lời bảo thêm từ phía thầy để hồn thiện thêm báo cáo Và lời cuối cùng, xin gửi lời cảm ơn chân thành tốt đẹp tới thầy cô, người thân bạn bè lần Xin chân thành cảm ơn Báo cáo luận văn tốt nghiệp Trang 2/58 Trường ĐH Bách Khoa TP HCM – Khoa Khoa học Kỹ thuật Máy tính Tóm tắt đề tài Trong sống nhận diện sinh trắc học điều q lạ lẫm Phổ biến kể tới cơng nghệ mở khóa điện thoại vân tay, gương mặt, hệ thống cửa mở vân tay, Nó hoạt động sao? Bảo vệ thông tin mẫu nào? câu hỏi câu hỏi tơi đặt cho trình thực luận văn Sinh trắc học có ưu điểm phức tạp nó, khó giả mạo khó cơng so với công nghệ dùng mật thông thường (dùng kí tự), kèm với khả nhiễu cao, lần lấy mẫu sinh trắc không cho kết hồn tồn tương đồng mà có sai lệch Đó vấn đề mở cho câu hỏi thứ Nó hoạt động sao? Khi hiểu cách thức mà mẫu sinh trắc xử lý phương pháp trích xuất đặc trưng, phương pháp kiểm tra, đối chiếu mẫu để xác thực, câu hỏi tiếp tục đặt ra, có mẫu đặc trưng lưu server lợi dụng để có lợi cho thân hay khơng? Thì vấn đề mà luận văn đề cập, sử dụng phương pháp bảo mật kết hơp phương pháp Thứ Random Projection để giảm chiều liệu đảm bảo mẫu sinh trắc người dùng dễ dàng thay đổi phát bất thường kẻ cơng dù có lấy mẫu sau biến đổi khơng thể có mẫu sinh trắc gốc người dùng Sau để tăng tính phân biệt bị giảm bước thứ nhất, phép biến đổi nhằm tăng khả phân biệt lên gọi Discriminability Preserving Transform Và cuối cùng, để trình xác thực dễ dàng thực hiện, ý tưởng phương pháp Fuzzy Commitment áp dụng Và phương pháp gọi phương pháp lai nhằm bảo vệ mẫu sinh trắc người dùng Quá trình thực tập trung chủ yếu vào phương pháp lai Nhưng để hệ thống hồn thiện, cần phương pháp xử lý ảnh gương mặt người dùng trước áp dụng phương pháp bảo mật Những nội dung giới thiệu phân tích theo tiến trình xử lý mẫu sinh trắc người dùng Báo cáo luận văn tốt nghiệp Trang 3/58 Mục lục Giới 1.1 1.2 1.3 1.4 thiệu đề tài Giới thiệu Nội dung mục tiêu Phạm vi đề tài Cấu trúc báo cáo 10 10 Cơ sở lý thuyết 2.1 Sinh trắc học 2.1.1 Định nghĩa 2.1.2 Đặc tính 2.2 Về nhận diện gương mặt 2.2.1 Giới thiệu 2.2.2 Quá trình nhận diện gương mặt 2.3 Xử lý hình ảnh ban đầu 2.3.1 Nguồn ảnh 2.3.2 Xác định gương mặt 2.3.3 Tiền xử lý ảnh 2.3.4 Trích xuất đặc trưng 2.4 Phương pháp bảo mật mẫu 2.4.1 Cơ sở bảo mật mẫu 2.4.2 Phân loại 2.4.3 Phương pháp lai việc bảo mật mẫu sinh 2.4.4 Random Projection 2.4.5 Discriminability Preserving Transform 2.4.6 Fuzzy Commitment Scheme trắc 11 11 11 13 14 14 15 15 15 17 18 19 24 25 25 28 30 32 39 Hệ thống đề xuất 3.1 Mô tả hệ thống 3.2 Chi tiết hệ thống 3.2.1 Enrollment Phase 3.2.2 Authentication Phase 41 41 42 43 44 Hiện thực hệ thống 4.1 Thông tin hệ thống 4.1.1 Yêu cầu 4.1.2 Client Flowchart 4.1.3 Server Flowchar 4.2 Chức hệ thống 4.2.1 Chức xử lý ảnh 4.2.2 Chức sinh ma trận chiếu 4.2.3 Chức xử lý Random Projection 4.2.4 Chức chuyển đổi DP 4.2.5 Chức sinh mã nhị phân ngẫu nhiên 4.2.6 Chức Fuzzy Commitment 4.2.7 Chức Matching 4.2.8 Chức phụ trợ khác 4.3 Cơ sở liệu 45 45 45 45 46 47 47 48 48 48 49 49 49 50 50 51 51 52 52 52 52 Kết 5.1 5.2 5.3 đánh giá Mô tả liệu Phương pháp đánh giá Quá trình thực 5.3.1 Train model Fisherface 5.3.2 Q trình đăng kí Trường ĐH Bách Khoa TP HCM – Khoa Khoa học Kỹ thuật Máy tính 5.4 5.5 5.3.3 5.3.4 Đánh Đánh 5.5.1 5.5.2 5.5.3 5.5.4 Quá trình xác thực Quá trình kiểm thử giá kết giá bảo mật Biometric Template Attack Insider Attack Brute-force Attack Masquerade Attack 53 53 55 56 56 56 56 56 Kết luận hướng phát triển 57 6.1 Kết luận 57 6.2 Hướng phát triển 57 Báo cáo luận văn tốt nghiệp Trang 5/58 Danh sách hình vẽ 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 Minh họa sinh trắc học (Nguồn: Internet) Xác thực sinh trắc dựa khuôn mặt (Nguồn: Internet) Xác thực sinh trắc dựa dấu vân tay (Nguồn: Internet) Xác thực sinh trắc dựa tròng mắt (Nguồn: Internet) Xác thực sinh trắc dựa giọng nói(Nguồn: Internet) Xác thực sinh trắc dựa chữ kí (Nguồn: Internet) Luồng xử lý thông thường hệ thống nhận diện gương mặt Mẫu tập liệu AT&T (Nguồn: Internet) Mẫu tập liệu Yale (Nguồn: Internet) Mẫu tập liệu FERET (Nguồn: Internet) Mẫu tập liệu face94 (Nguồn: Internet) Xác định gương mặt có ảnh với Cascade Classifier Ví dụ cân Histogram (Nguồn: Internet) Ví dụ chuẩn hóa độ sáng Ví dụ phương pháp PCA (Nguồn: Internet) Ví dụ hình ảnh sử dụng (Nguồn: Internet) Biểu diễn hình ảnh Ii thành vector Γi (Nguồn: Internet) Hình ảnh so sánh PCA FLD toán hai lớp, nơi liệu cho lớp nằm gần không gian tuyến tính (Nguồn: Internet) Sơ đồ phân loại phương pháp bảo vệ mẫu Sơ đồ ý tưởng Feature Transfrom (Nguồn: Internet) Sơ đồ ý tưởng Key Binding (Nguồn: Internet) Sơ đồ ý tưởng Key Generation (Nguồn: Internet) Phương pháp lai việc bảo mật sinh trắc Hệ thống xác thực sinh trắc sử dụng phương pháp lai Mô tả Random Projection việc giảm chiều liệu từ m k Minh họa Discriminability Preserving Transform (Nguồn: Internet) Minh họa trình phân cụm (Nguồn: Internet) Sử dụng phép đo định hướng trình phân cụm (Nguồn: Internet) Vị trí điểm phân biệt vector emi < Vị trí điểm phân biệt vector emi > Trường hợp Bi Ms emi hướng Trường hợp Bi Ms emi ngược hướng Sơ đồ ý tưởng phương pháp Fuzzy-Commitment Sơ đồ hệ thống xác thực sử dụng Fuzzy-Commitment Chi tiết hệ thống Q trình đăng kí Quá trình xác thực Luồng thực thi client Luồng thực thi server Chức xử lý ảnh Chức Random Projection Chức tạo điểm phân biệt ngưỡng phép chuyển đổi DP Chức tạo chuyển đổi mẫu dựa điểm phân biệt ngưỡng phép chuyển đổi DP Chức tạo chuỗi nhị phân ngẫu nhiên C xử lý thu ‘δ‘ Chức tái tạo chuỗi ngẫu nhiên C Chức matching Mẫu tập liệu face94 (Nguồn: Internet) Độ xác hệ thống kr = 40 Độ xác hệ thống kr = 100 Độ xác hệ thống kr = 150 Độ xác hệ thống kr = 200 11 12 12 12 13 13 15 16 16 17 17 17 18 19 20 20 21 24 25 26 27 27 28 29 30 33 34 34 35 35 36 37 39 40 42 43 44 46 47 47 48 48 49 49 49 50 51 53 54 54 54 Trường ĐH Bách Khoa TP HCM – Khoa Khoa học Kỹ thuật Máy tính • Bước 2: Từ v mẫu trung bình Ms tính tốn Mẫu Ms tính tốn với điểm phân biệt Bi ngưỡng ti tương ứng để thu mẫu nhị phân w tương ứng với mẫu gương mặt người dùng • Bước 3: Một chuỗi nhị phân C có độ dài với w tạo ngẫu nhiên • Bước 4: Mẫu nhị phân w C thực phép XOR để giá trị δ • Bước 5: Giá trị δ Hash(C), điểm phân biệt Bi , ngưỡng ti lưu vào sở liệu server để dùng cho trình xác thực sau 3.2.2 Authentication Phase Hình 37: Quá trình xác thực Quá trình thực client theo bước sau: • Bước 1: Hình ảnh gương mặt người dùng (đã tiền xử lý) đưa vào hệ thống (T ′ ) xử lý để lấy đặc trưng sinh trắc phương pháp Fisherface để mẫu đặc trưng sinh trắc u′ • Bước 2: Ma trận chiếu ngẫu nhiên R sử dụng để biến đổi mẫu sinh trắc thành mẫu hủy bỏ v ′ • Bước 3: Mẫu v ′ gửi lên xử lý phía server Sau nhận yêu cầu xác thực, server thực bước sau: • Bước 1: Lấy thơng tin điểm phân biệt Bi ngưỡng phân biệt ti tương ứng user truy vấn • Bước 2: Sử dụng mẫu truy vấn điểm phân biệt Bi , ngưỡng phân biệt ti để biến đổi v ′ thành mẫu nhị phân w′ • Bước 3: Giá trị w′ thực phép XOR với δ • Bước 4: Giá trị sau phép XOR hash so sánh với giá trị Hash(C) lưu lại server • Nếu kết so sánh giống trả thơng tin xác thực thành công cho user ngược lại kết so sánh khác trả thông tin xác thực thất bại cho user Báo cáo luận văn tốt nghiệp Trang 44/58 Trường ĐH Bách Khoa TP HCM – Khoa Khoa học Kỹ thuật Máy tính Hiện thực hệ thống 4.1 4.1.1 Thơng tin hệ thống Yêu cầu Một số yêu cầu thực hệ thống: • Ngơn ngữ lập trình: Python • Thư viện sử dụng: – NumPy – OpenCV – spherecluster – imageio 4.1.2 Client Flowchart Luồng thực thi sau: • Bước 1: Kết nối với server • Bước 2: Client gửi yêu cầu (đăng kí hay xác thực) với liệu cần thiết • Bước 3: Nhận thông tin trả từ server, thông báo cho người dùng lưu thông tin cần thiết Báo cáo luận văn tốt nghiệp Trang 45/58 Trường ĐH Bách Khoa TP HCM – Khoa Khoa học Kỹ thuật Máy tính Hình 38: Luồng thực thi client 4.1.3 Server Flowchar Luồng thực thi sau: • Bước 1: Server hoạt động đợi kết nối từ client • Bước 2: Xử lý yêu cầu từ client • Bước 3: Phản hồi lại yêu cầu cho client lưu thông tin cần thiết Báo cáo luận văn tốt nghiệp Trang 46/58 Trường ĐH Bách Khoa TP HCM – Khoa Khoa học Kỹ thuật Máy tính Hình 39: Luồng thực thi server 4.2 4.2.1 Chức hệ thống Chức xử lý ảnh Trong trình này, hình ảnh đọc xác định gương mặt crop theo size quy ước Và cuối trích xuất mẫu đặc trưng dựa thuật tốn Fisherface Hình 40: Chức xử lý ảnh Các module nhỏ dùng để thực flow chức này: • Module đọc thơng tin gương mặt chuyển đổi thành dạng ảnh xám • Module xác định khn mặt crop theo vị trí khn mặt xác định • Module resize kích thước gương mặt thu theo kích thước xác định sẵn • Module trích xuất đặc trưng Module lấy thơng tin khơng gian fisherface có để chuyển đổi hình ảnh thành mẫu đặc trưng sinh trắc Báo cáo luận văn tốt nghiệp Trang 47/58 Trường ĐH Bách Khoa TP HCM – Khoa Khoa học Kỹ thuật Máy tính 4.2.2 Chức sinh ma trận chiếu Quá trình tạo ma trận trực giao thực sau: • Bước 1: Tạo ma trận chiều ngẫu nhiên với kích thước cho trước axb, với a kích thước mẫu đặc trưng sinh trắc (ví dụ hình ảnh input có kích thước nxn kích thước mẫu đặc trưng sinh trắc 2n) b kích thước mẫu hủy bỏ sau q trình chuyển đổi • Bước 2: Trựa giao hóa ma trận thu với giải thuật Gram Schmidth • Bước 3: Lưu lại thông tin ma trận chiếu thu client 4.2.3 Chức xử lý Random Projection Chức dùng để tạo mẫu hủy bỏ từ từ mẫu sinh trắc đầu vào Client đọc ma trận chiếu lưu sử dụng ma trận để biến đổi mẫu sinh trắc sang khơng gian Kết q trình cho ma trận hủy bỏ với kích thước nhỏ Q trình có khó khăn thực tế việc lựa chọn kích thước không gian chiếu Hiện lựa chọn thực thông qua thực nghiệm thông qua giá trị FAR FRR để tìm giá trị tối ưu Hình 41: Chức Random Projection 4.2.4 Chức chuyển đổi DP Chức dùng để tạo mẫu nhị phân từ mẫu hủy bỏ người dùng Quá trình xử lý khác dựa u cầu người dùng • Q trình đăng kí): Quá trình nhằm tìm điểm phân biệt ngưỡng tương ứng Khi thực hiện, tập liệu training sử dụng với mẫu nhận từ người dùng để giúp tìm điểm phân biệt so với mẫu sinh trắc người dùng Quá trình gồm nhiều bước xử lý mơ tả phần trước Trong q trình này, giá trị độ dài mẫu nhị phân lựa chọn dựa thực nghiệm Và cuối cùng, điểm phân biệt ngưỡng chọn lưu lại Hình 42: Chức tạo điểm phân biệt ngưỡng phép chuyển đổi DP • Q trình xác thực: Q trình nhằm chiếu mẫu hủy bỏ để tìm mẫu nhị phân tương ứng người dùng Mẫu truy vấn điểm phân biệt sử dụng để tính khoảng cách, khoảng cách sau so sánh với ngưỡng tương ứng để xác định mẫu nhị phân tương ứng mẫu tham chiếu Báo cáo luận văn tốt nghiệp Trang 48/58 Trường ĐH Bách Khoa TP HCM – Khoa Khoa học Kỹ thuật Máy tính Hình 43: Chức tạo chuyển đổi mẫu dựa điểm phân biệt ngưỡng phép chuyển đổi DP 4.2.5 Chức sinh mã nhị phân ngẫu nhiên Chức dùng để tạo mẫu nhị phân ngẫu nhiên dùng cho trình Fuzzy Commitment Với đầu vào kích thước mong muốn đầu chuỗi nhị phân có độ dài 4.2.6 Chức Fuzzy Commitment Chức dùng để tạo mẫu bảo mật Với trình đăng kí xác thực, q trình thực thi có khác biệt: • Q trình đăng kí: Trong trình chuỗi nhị phân ngẫu nhiên C với kích thước xác định ứng với người dùng tạo Cùng với mẫu nhị phân nhận vào, giá trị δ tính tốn lưu lại để dùng cho trình xác thực Hình 44: Chức tạo chuỗi nhị phân ngẫu nhiên C xử lý thu ‘δ‘ • Q trình xác thực: Trong q trình này, việc tính tốn thực với mẫu nhị phân truy vấn giá trị δ để xác định giá trị C ′ Giá trị C ′ sử dụng cho trình matching Hình 45: Chức tái tạo chuỗi ngẫu nhiên C 4.2.7 Chức Matching Chức sử dụng cho trình xác thực Từ mẫu nhị phân C ′ , hàm Hash sử dụng thu Hash(C ′ ) so sánh giá trị với giá trị Hash(C) có sở liệu Nếu kết tương đồng việc xác thực thành cơng, cịn kết so sánh khơng tương đồng việc xác thực thất bại Báo cáo luận văn tốt nghiệp Trang 49/58 Trường ĐH Bách Khoa TP HCM – Khoa Khoa học Kỹ thuật Máy tính Hình 46: Chức matching 4.2.8 Chức phụ trợ khác Ngồi q trình thực sử dụng nhiều tính khác như: • Chức lưu data người dùng: Chức nhận vào data người dùng sau trình đăng kí lưu lại cho q trình sử dụng sau • Chức đọc data người dùng: Chức đọc data người dùng dùng cho q trình xác thực • Chức tạo không gian Fisherface: Chức nhận lượng data với kích thước tương ứng với mẫu đặc trưng người dùng cho không gian chiếu Được sử dụng cho q trình trích xuất đặc trưng sinh trắc • Chức sinh mã hash: Chức dùng cho trình hash chuỗi nhị phân dùng cho trình Fuzzy Commitment 4.3 Cơ sở liệu Các thông tin lưu trữ với dạng liệu tương ứng sau: • Ma trận chiếu R: Được lưu dạng nhị phân định dạng npy • Các thông tin khác: Các thông tin bao gồm điểm phân biệt Bi , , ngưỡng phân biệt ti , δ, Hash(C) lưu dạng bảng định dạng file db Báo cáo luận văn tốt nghiệp Trang 50/58 Trường ĐH Bách Khoa TP HCM – Khoa Khoa học Kỹ thuật Máy tính Kết đánh giá 5.1 Mơ tả liệu Trong q trình đánh giá tơi sử dụng tập liệu có sẵn tập liệu ‘face94‘[10] Dữ liệu tập bao gồm hình ảnh cá nhân khoảng cách so với máy ảnh chụp với nhiều biểu cảm khác Hình 47: Mẫu tập liệu face94 (Nguồn: Internet) Đây tập liệu Hiện tập liệu bao gồm: Bảng 4: Thông tin tập liệu Số lượng tập ảnh Số lượng ảnh tập Độ phân giải ảnh Thành phần 153 20 180x200 pixels 20 tập ảnh nữ, 133 ảnh nam Với thông tin ảnh sau: Bảng 5: Thông tin ảnh Nền Sự thay đổi vị trí đầu, nghiêng đầu Vị trí gương mặt Biến thể có thay đổi ánh sáng Xanh thay đổi nhỏ thay đổi nhỏ lớp không Trong luận văn sử dụng phần tập liệu bao gồm: Bảng 6: Thông tin tập liệu sử dụng Số lượng tập ảnh Số lượng ảnh tập Thành phần 132 20 19 tập ảnh nam, 133 ảnh nữ Hiện mẫu có dạng ảnh màu Trước dùng cho hệ thống ảnh chuyển đổi sang ảnh xám trước sử dụng Sau gương mặt người ảnh xác định scale lại kích thước ảnh 120x120 pixels Hình ảnh phân thành tập ảnh nhỏ sau: Bảng 7: Phân chia tập liệu Báo cáo luận văn tốt nghiệp Trang 51/58 Trường ĐH Bách Khoa TP HCM – Khoa Khoa học Kỹ thuật Máy tính Tập train model Fisherface (Tập 1) Tập đăng kí (Tập 2) Tập xác thực (Tập 3) 5.2 Chọn 40 tập ảnh 40 người, có nữ 31 nam Mỗi người có 20 ảnh Tập chứa ảnh 92 người cịn lại Được dùng cho q trình đăng kí người dùng Các ảnh số {0, 7, 14, 19} chọn cho tập Tập chứa 16 ảnh 92 người lại Được dùng cho trình xác thực Các ảnh số {1, 2, 3, 4, 5, 6, 8, 9, 10, 11, 12, 13, 15, 16, 17, 18} chọn cho tập Phương pháp đánh giá Sử dụng giá trị ta có thang đo để đánh giá hệ thống sau: • FAR (False Acceptance Rate): Là tỉ lệ chấp nhận sai, chấp nhận truy cập người truy cập không hợp lệ Xác xuất kẻ mạo danh đăng nhập thành cơng Được tính tỉ lệ người dùng thật xác thực không thành công tổng số người dùng thật đánh giá • FRR (False Reject Rate): Là tỉ lệ từ chối bị sai, từ chối truy cập người truy cập hợp lệ Xác suất khách hàng đăng nhập bị từ chối Được tính tỉ lệ kẻ xâm nhập thành cơng tổng số kẻ xâm nhập đánh giá • EER (Error Rate) tỉ lệ lỗi, giao điểm đường FAR FRR Tại tỉ lệ chấp nhận bị sai tỉ lệ từ chối bị sai 5.3 Quá trình thực 5.3.1 Train model Fisherface Quá trình thực cụ thể sau: • Tập ảnh train cho F isherF aceRecognizer có sẵn thư viện cv2 • Tập eigenvector lấy Ta lấy 25 giá trị eigenvector đầu để làm sở chiếu cho trình chuyển đổi ảnh gương mặt thành mẫu đặc trưng sinh trắc Sau trình này, khơng gian fisherface tạo lưu lại để dùng sau Chiếu ảnh gương mặt người dùng qua không gian ta thu đặc trưng sinh trắc dùng cho q trình đăng kí xác thực 5.3.2 Q trình đăng kí Q trình thực sau: • Tập gương mặt dùng cho q trình đăng kí trích xuất đặc trưng • Chiếu tập ảnh qua vector chiếu ngẫu nhiên ta thu mẫu hủy bỏ • Sử dụng mẫu hủy bỏ người dùng khác làm sở, ta tiến hành chạy thuật tốn Spherical K-means mẫu trung người dùng để thu điểm ngưỡng phân biệt tương ứng • Chuyển đổi mẫu hủy bỏ trung bình người dùng sang mẫu nhị phân cách tính khoảng cách từ mẫu tới điểm phân biệt so sánh với ngưỡng tương ứng • Một chuỗi nhị phân có kích thước với mẫu nhị phân tạo ra, sau phép xor thực với mẫu nhị phân chuỗi ngẫu nhiên vừa tạo ta thu mẫu bảo mật Ta lưu lại giá trị vừa có để thực phép kiểm tra sau Giá trị hash mã ECC tạo giá trị ngưỡng phân biệt điểm phân biệt tương ứng Báo cáo luận văn tốt nghiệp Trang 52/58 Trường ĐH Bách Khoa TP HCM – Khoa Khoa học Kỹ thuật Máy tính 5.3.3 Q trình xác thực Quá trình xác thực thực sau: • Ảnh truy vấn chuyển đổi thành mẫu đặc trưng sinh trắc • Ảnh chuyển sang mẫu hủy bỏ ma trận chiếu tương ứng người dùng • Mẫu hủy bỏ chuyển thành mẫu nhị phân cách tính khoảng cách từ mẫu tới điểm phân biệt so sánh với ngưỡng tương ứng • Thực phép xor với giá trị mẫu bảo mật lưu ta thu giá trị chuỗi ngẫu nhiên tạo (ECC) Thực hash giá trị so sánh với giá trị lưu lại q trình đăng kí ta kết trình xác thực 5.3.4 Quá trình kiểm thử Dựa theo trình ta xây dựng q trình kiểm thử độ xác hệ thống Với tập liệu đề cập Chúng ta tiến hành kiểm thử mức độ xác hệ thống với thao tác sau: • Mỗi người dùng đăng kí với hệ thống với tập liệu chiếu thông tin đăng kí người dùgn cịn lại thơng tin đăng kí lưu lại • Có thao tác thực trình đăng nhập: – Đăng nhập với thông tin người dùng Mẫu người dùng chọn để đăng nhập nhằm kiểm tra tính từ chối sai hệ thống – Đăng nhập với thông tin người dùng khác Mẫu người dùng khác chọn để đăng nhập nhằm kiểm tra tính chấp nhận sai hệ thống Các thông tin lưu lại cho trình đánh giá sau Nhưng hệ thống chịu ảnh hưởng biến độ dài mẫu nhị phân độ dài mẫu hủy bỏ Nên ta tiến hành chạy thử phân tích mức độ hiệu hệ thống sở giá trị khác giá trị Hiệu hệ thống đánh giá dựa giá trị FAR FRR Trước hết cần xác định độ dài mẫu nhị phân tối ưu Với tập liệu có, chọn ngẫu nhiên giá trị kc = 200 kr ∈ 40, 100, 150, 200 ta thu kết hình đây: Hình 48: Độ xác hệ thống kr = 40 Báo cáo luận văn tốt nghiệp Trang 53/58 Trường ĐH Bách Khoa TP HCM – Khoa Khoa học Kỹ thuật Máy tính Hình 49: Độ xác hệ thống kr = 100 Hình 50: Độ xác hệ thống kr = 150 Hình 51: Độ xác hệ thống kr = 200 Nhận xét: Với kết thu được, giá trị kr tăng lên, tỉ lệ F AR có xu hướng tăng lên tỉ lệ nghịch với giá trị kc tỉ lệ thuận với kr Và đồng thời khoảng cách tỉ lệ F AR F RR tăng lên nhiều độ dài mẫu hủy bỏ tăng lên Chứng tỏ độ dài mẫu hủy bỏ lớn sau trình chuyển đổi DP, độ phân biệt mẫu không tăng lên với tỉ lệ mực nên tỉ lệ chấp nhận sai tăng lên nhiều Do đó, giá trị kr = 40 chọn cho trình đánh giá sau Tiếp theo, thử nghiệm hệ thống với giá trị độ dài mẫu hủy bỏ 40 để tìm độ dài tối ưu mẫu nhị phân Kết thể qua biểu đồ đây: Báo cáo luận văn tốt nghiệp Trang 54/58 Trường ĐH Bách Khoa TP HCM – Khoa Khoa học Kỹ thuật Máy tính Hình 52: Lựa chọn giá trị độ dài mẫu nhị phân Nhận xét: Khi độ dài mẫu nhị phân tăng lên giá trị F AR có xu hướng giảm đồng thời giá trị F RR có xu hướng tăng giá trị giao độ dài mẫu nhị phân 230 Tại giá trị EER vào khoảng 7% Chứng tỏ trình chuyển đổi DP làm tăng tính phân biệt mẫu hủy bỏ, đảm bảo tỉ lệ chấp nhận sai từ chối sai mức độ chấp nhận Một số kết thể qua bảng sau: Bảng 8: Kết chạy thử nghiệm Độ dài mẫu nhị phân 50 100 150 200 250 350 5.4 FRR (%) 11,38 7,93 7,55 7,22 7,03 6,72 FAR (%) 5,57 6,52 6,73 6,86 7,13 7,27 Đánh giá kết Dựa vào kết chạy thực tế từ tập mẫu, ta rút số kết luận sau: • Ta thấy rằng, tương quan giá trị mẫu hủy bỏ mẫu nhị phân Nếu độ dài mẫu hủy bỏ khơng q khác biệt so với mẫu nhị phân tính phân biệt sau q trình chiếu ngẫu nhiên khơng tăng lên mực Có nghĩa mức độ phân biệt mẫu người dùng không khác biệt Điều làm cho tỉ lệ chấp nhận sai hệ thống tăng lên nhiều Đặc biệt độ dài mẫu hủy bỏ tương đương lớn với độ dài mẫu nhị phân Đây ràng buộc cho trình lựa chọn độ dài mẫu Độ dài mẫu hủy bỏ phải nhỏ độ dài mẫu nhị phân Báo cáo luận văn tốt nghiệp Trang 55/58 Trường ĐH Bách Khoa TP HCM – Khoa Khoa học Kỹ thuật Máy tính • Khi chênh lệch kích thước mẫu hủy bỏ mẫu nhị phân lớn (độ dài mẫu hủy bỏ lớn độ dài mẫu nhị phân) kết khả quan Giá trị từ chối sai chấp nhận sai tương đối thấp lúc tính phân biệt mẫu tăng cường, chứng tỏ giải thuật chuyển đổi DP sử dụng có hiệu tốt Với giá trị EER hệ thống khoảng 7% hiệu hệ thống tương đối tốt • Q trình kiểm thử cịn nhiều hạn chế, chưa thử nghiệm với tập liệu thực tế nhiều nguồn liệu khác 5.5 Đánh giá bảo mật Để dễ dàng đánh giá hiệu bảo mật, trước tiên ta tìm hiểu rủi ro liệu gặp phải Trong hệ thống, ta giả định trường hợp xấu thơng tin sau bị lộ: • Ma trận chiếu R • Các điểm phân biệt ngưỡng chuyển đổi DP • Giá trị δ khơng mã hóa Phân tích bảo mật hệ thống thông qua dạng công sau: 5.5.1 Biometric Template Attack Bất kì hệ thống lưu thông tin mẫu sinh trắc người dùng để thực phép so sánh xác thực sau Dạng công công vào mẫu sinh trắc lưu sử dụng mạo danh người dùng Trong hệ thống mã sinh trắc gốc người dùng thông qua nhiều phép biến đổi server lưu giá trị biến đổi cuối thay đặc trưng gốc, nên khơng có khả phục hồi lại đặc trưng người dùng với thông tin lưu server Và hệ thống cho phép người dùng hủy bỏ lại mẫu lưu, thay vào mẫu cách thay đổi ma trận chiếu R Vì qua nhiều trình biến đổi, đặc biệt phép biến đổi DP dựa vào tập điểm phân biệt nên việc truy ngược lại mẫu sinh trắc gốc gần khơng thể 5.5.2 Insider Attack Hình thức cơng xảy người quản lý server ăn cắp thông tin đăng nhập người dùng Hệ thống giúp ngăn chặn ma trận chiếu lưu client, nên sử dụng thơng tin có sẵn server khơng thể đăng nhập 5.5.3 Brute-force Attack Hệ thống xử lý qua trình biến đổi mẫu sinh trắc lần mã hóa nên khả chống lại công cao Với bước Random Projection, mẫu có số chiều lớn biến đổi số chiều Với bước chuyển đổi DP, mẫu biến đổi thơng qua kc điểm phân biệt Nên có tới ekc tổ hợp Với kc = 230 số lớn 5.5.4 Masquerade Attack Trong dạng công này, kẻ công cố gắng khôi phục lại mẫu sinh trắc gốc người dùng từ thơng tin có mẫu sinh trắc qua biến đổi, hashcode, Trong bước Random Projection chuyển đổi DP khả chống lại dạng cơng chưa cao Tuy nhiên bước Fuzzy Commitment, cách sử dụng mã hash cho C, kẻ cơng khó để khơi phục lại C để lấy thơng tin hữu ích từ giá trị δ Mặt khác kẻ cơng muốn đốn giá trị C vơ khó (với kc > 230) Báo cáo luận văn tốt nghiệp Trang 56/58 Trường ĐH Bách Khoa TP HCM – Khoa Khoa học Kỹ thuật Máy tính Kết luận hướng phát triển 6.1 Kết luận Trong luận văn này, tơi tìm hiểu phương pháp bảo vệ mẫu sinh trắc nhằm chống lại nhiều dạng công nhờ kết hợp nhiều trình biến đổi mẫu với nhiều phương pháp (biến đổi mã hóa mẫu sinh trắc) Mục đích hệ thống nhằm bảo vệ mẫu sinh trắc tốt hơn, tránh rủi ro bảo mật cho người dùng Các trình kết hợp nhằm khắc phục điểm yếu Phương pháp chống lại nhiều kiểu công, bên lẫn bên ngồi 6.2 Hướng phát triển Q trình tìm hiểu thực lý thuyết mình, tơi nhận thấy cịn nhiều thiếu sót Nhưng vấn đề mà tơi nghĩ tìm hiểu thêm để cải thiện hệ thống như: • Hệ thống tạo với nhiều thông số cần điều chỉnh kích thước mẫu hủy bỏ, mẫu nhị phân, Do đó, khó vận dụng thực Do tơi nghĩ cần có chỉnh sửa để chọn giá trị phù hợp với thực tế • Q trình xử lý ảnh cịn đơn giản, u cầu khn mặt vị trí định (chính diện) Có thể nghiên cứu thêm để hỗ trợ trình xử lý hệ thống Quá trình trích xuất đặc trưng tơi sử dụng kế thừa ý tưởng cách thức thực từ nguồn khác, chưa đáp ứng tốt với mơ hình • Những đánh giá phía dựa tập liệu mẫu, nên áp dụng với tập liệu thực tế để có đánh giá đầy đủ hơn, • Hệ thống chuyển đổi thành dạng services cho hệ thống khác • Ứng dụng với đầu vào khuôn mặt dạng 3D Báo cáo luận văn tốt nghiệp Trang 57/58 Trường ĐH Bách Khoa TP HCM – Khoa Khoa học Kỹ thuật Máy tính Tài liệu [1] PGS.TS Nguyễn Thị Hồng Lan – Hệ thống an ninh thơng tin dựa sinh trắc học - PK (Bio-PKI Based Information Security System), 2009 [2] Jain, Anil and Nandakumar, Karthik and Nagar, Abhishek - Biometric Template Security [3] A Singh and S Kumar - Face Recognition Using PCA, 2012 [4] Face Recognition with OpenCV (n.d.) Retrieved from OpenCV 2.4.13.1 documentation - http://docs opencv.org/2.4/modules/contrib/doc/facerec/facerec_tutorial.html#fisherfaces [5] Nguyễn Nam Tiệp, Th.s Nguyễn Thị Ái Thảo - Bảo vệ mẫu sinh trắc xác thực từ xa sử dụng đặc trưng sinh trắc, 2016 [6] Đoàn Phạm Anh Linh, TS Phan Trọng Nhân - Phát triển hệ thống xác thực đặc trưng gương mặt Android có bảo vệ mẫu đặc trưng [7] Feng, Yi and Yuen, P C - A Hybrid Approach for Generating Secure and Discriminating Face Template [8] R C Gonzalez, R E Woods, - Digital Image Processing, 4th edition, Pearson, 2018 [9] Cascade Classifier - https://docs.opencv.org/3.4/db/d28/tutorial_cascade_classifier.html [10] Facial Images: Faces94 - https://cmp.felk.cvut.cz/~spacelib/faces/faces94.html [11] Ahsan, Md Manjurul - Face Recognition in Unconstrained Environment, 2020 [12] Histogram Equalization with Open-CV -http://labs.eecs.tottori-u.ac.jp/sd/Member/oyamada/ OpenCV/html/py_tutorials/py_imgproc/py_histograms/py_histogram_equalization/py_ histogram_equalization.html [13] W B Johnson and J Lindenstrauss - Extensions of Lipschitz Mappings into a Hilbert Space Conference in modern analysis and probability (New Haven, Conn., 1982), 189–206 Contemp Math 26 (1984) [14] Random Projection - https://scikit-learn.org/stable/modules/random_projection.html [15] Alawi A Al-saggaf - A FUZZY COMMITMENT SCHEME [16] Spherical Kmeans https://coclust.readthedocs.io/en/v0.2.1/_modules/coclust/ clustering/spherical_kmeans.html#SphericalKmeans Báo cáo luận văn tốt nghiệp Trang 58/58