Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C Một cách hiện thực khác của hệ thống bảo mật dùng đặc trưng sinh trắc trên thiết bị di động là toàn bộ hệ thống sẽ được tí
Trang 1ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC BÁCH KHOA
-o0o -
BÁO CÁO TỔNG KẾT ĐỀ TÀI NGHIÊN CỨU KHOA HỌC CẤP ĐHQG-HCM LOẠI C
Tên đề tài:
KẾT HỢP NHIỀU ĐẶC TRƯNG SINH TRẮC SINH LÝ ĐỂ
MÃ HÓA DỮ LIỆU TRONG THIẾT BỊ DI ĐỘNG THÔNG
MINH
(COMBINATION OF PHYSIOLOGICAL BIOMETRICS IN CRYPTOGRAPHY FOR
SMART MOBILE DEVICES)
Thuộc chương trình:
CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
268 Lý Thường Kiệt, Phường 14, Quận 10, Tp HCM
Tp Hồ Chí Minh, 4/2015
Trang 2Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
MỤC LỤC
MỤC LỤC I DANH MụC HÌNH IV DANH MụC BảNG V
TÓM TắT 1
ABSTRACT 2
LờI CảM ƠN 3
CHƯƠNG 1: TỔNG QUAN VỀ SINH TRẮC HỌC 4
1.1 Định nghĩa 4
1.2 Các đặc trưng sinh trắc 5
1.3 Các vấn đề của đặc trưng sinh trắc 9
1.3.1 Thu nhận mẫu sinh trắc không ổn định 9
1.3.2 Giả mạo các đặc trưng sinh trắc 9
1.3.3 Thu hồi đặc trưng sinh trắc 10
1.3.4 Sự thiếu đa dạng đặc trưng sinh trắc 10
1.3.5 Sự thay đổi đặc trưng sinh trắc 10
1.3.6 Sự chấp nhận của người dùng 10
1.4 Bảo mật dùng đặc trưng sinh trắc với thiết bị di động 10
CHƯƠNG 2: BảO MậT DÙNG ĐặC TRƯNG SINH TRắC 12
2.1 Các tiêu chuẩn của lược đồ bảo mật dùng đặc trưng sinh trắc 12
2.2 Các hướng tiếp cận 12
2.3 Các nghiên cứu liên quan 14
2.3.1 Fuzzy Commitment 14
2.3.2 Fuzzy Vault 14
2.3.3 Secure Sketch và Fuzzy Extractor 15
2.3.4 Lược đồ sinh khóa từ vân tay và võng mạc của Jagadeesan và các cộng sự 15
Trang 3Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
2.3.5 Lược đồ sinh khóa từ vân tay và gương mặt của Sutcu và các cộng sự 17
CHƯƠNG 3: LƯợC Đồ Đề XUấT CHO SINH KHÓA Từ ĐA ĐặC TRƯNG SINH TRắC 20
3.1 Tổng quan lược đồ 20
3.2 Trích rút đặc trưng 21
3.3 Sinh vector ngẫu nhiên 21
3.4 ANN 21
3.5 Trích rút độ ổn định chung đầu ra 22
3.6 Trích rút phạm vi 23
3.7 Phác thảo bảo mật 23
3.8 Phục hồi mẫu 23
3.9 Phân tích bảo mật 24
3.10 Mã hóa kết hợp đa đặc trưng sinh trắc 27
CHƯƠNG 4: MÃ HÓA Dữ LIệU 29
4.1 Tổng quan mật mã hóa dữ liệu 29
4.2 Một số giải thuật mật mã 31
4.2.1 Mã hóa khóa bí mật (Secret Key Cryptography) 31
4.2.2 Mã hóa khóa công khai (Public Key Cryptography) 33
4.2.3 Hàm băm (Hash function) 33
4.3 Đa mã hóa 35
4.4 Giải pháp đa mã hóa 36
CHƯƠNG 5: PHầN MềM ứNG DụNG 38
5.1 Hệ điều hành Android 38
5.2.1 Tầng hạt nhân Linux 38
5.2.2 Tầng Libraries 39
5.2.3 Tầng Android runtime 39
5.2.4 Tầng Application Framework 40
5.2.5 Tầng Application 40
Trang 4Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
5.2.6 Lập trình ứng dụng trên nền tảng Android 40
5.2 Trích rút đặc trưng sinh trắc 46
5.2.1 Trích rút đặc trưng sinh trắc gương mặt 46
5.2.2 Trích rút đặc trưng giọng nói 48
5.3 Lược đồ sinh khóa 53
5.4 Yêu cầu chức năng ứng dụng 53
5.5 Hiện thực phần mềm 54
5.6 Giao diện phần mềm 56
5.7 Thực nghiệm và đánh giá 58
CHƯƠNG 6: TổNG KếT 62
TÀI LIệU THAM KHảO 63
Trang 5Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
DANH MụC HÌNH
Hình 1: Một số đặc trưng sinh trắc 6
Hình 2 Tổng quan hoạt động Fuzzy Commitment 14
Hình 3 Tổng quan hoạt động của Fuzzy Vault 15
Hình 4 Phác thảo bảo mật 15
Hình 5 Tổng quan lược đồ sinh khóa từ đa đặc trưng 20
Hình 6 Phân loại mã hóa 31
Hình 7 Kiến trúc hệ điều hành Android 38
Hình 8 Vòng đời của một Activity 43
Hình 9 Vòng đời hoạt động của service 44
Hình 10 Các bước tiền xử lý tín hiệu âm thanh 48
Hình 11 Trích rút đặc trưng giọng nói MFCC 51
Hình 12 Kiến trúc tổng quan phần mềm 54
Hình 13 Giao diện File Explorer 57
Hình 14 Giao diện cung cấp đặc trưng khuôn mặt 57
Hình 15 Giao diện cung cấp đặc trưng giọng nói 58
Hình 16 Giao diện thiết lập các thông số 58
Hình 16 Hiệu suất nhận diện khuôn mặt theo giá trị δ 59
Hình 17 Hiệu suất nhận diện giọng nói theo giá trị δ 59
Hình 18 Hiệu suất nhận diện của trộn mẫu theo giá trị δ 60
Hình 19 Hiệu suất nhận diện của trộn đặc trưng theo giá trị δ size 60
Hình 20 Cân bằng giữa hiệu suất và độ bảo mật 60
Trang 6Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
DANH MụC BảNG
Bảng 1: So sánh các đặc trưng sinh trắc [2] 6
Trang 7Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
TÓM TắT
Ngày nay, các thiết bị di động như laptop, máy tính bảng, điện thoại thông minh (smart phone)đã
và đang phát triển mạnh mẽ ở cả sức mạnh phần cứng,phần mềm tiện ích và dịch vụ Các thiết bị này ngày càng được sử dụngmột cách phổ biến không chỉ vì thị hiếu chung mà phần lớn là ở đặc trưng, tính năng mà nó mang lại cho người dùng như: gọn nhẹ, sẵn sàng, tiện dụng và chi phí hợp lý Chức năng mà nó mang lại đáp ứng hầu hết các nhu cầu của người dùng.Nhiều tiện ích, dịch vụ hỗ trợ hiệu quả thì càng nhiều dữ liệu, thông tin riêng tư, bí mật (hình ảnh, tài liệu, lịch công tác …) của người dùng được lưu trữ trong các thiết bị di động mà trong đó phổ biến nhất là điện thoại thông minh Vì vậy yêu cầu bảo vệ dữ liệu trên những thiết bị này này trở nên thiết yếu và cần thiết
Tuy nhiên, một nhược điểm lớn của các thiết bị di động là tính dễ mất cắp của nó.Một khi bị đánh cắp, nếu không có các phần mềm bảo vệ dữ liệu hiệu quả thì thiệt hại rất lớn cho người sử dụng.Dữ liệu mật, thông tin riêng tư khi đó bị phơi bày và thiệt hại sẽ lớn gấp rất nhiều lần so với giá trị của thiết bị bị đánh cắp.Những cơ chế bảo vệ dữ liệu truyền thống sử dụng mật khẩu, khóa mật mã hay thẻ (token) để xác thực và bảo vệ dữ liệu Các giải pháp truyền thống có bất lợi là người dùng dễ dàng quên mật khẩu hay đánh mất thẻ Hơn nữa mật khẩu cũng có tính bảo mật không cao nên dễ dàng bị tấn công
Đề tài sẽ hướng đến việc nghiên cứu để tìm ra một kỹ thuật để sinh khóa mạnh từ đặc trưng sinh trắc phù hợp với thiết bị di động Hướng nghiên cứu này sẽ mang lại một lợi ích thiết thực vì nó mang lại sự tiện lợi và an toàn cho người dùng Người dùng không còn phải nhớ mật khẩu hay luôn mang theo những chiếc thẻ trong khi tính bảo mật của hệ thống được đảm bảo với khóa mã hóa mạnh được sinh ra.Đề tài sẽ tập trung vào hai nội dung chính sau nhằm tăng cường tính an toàn của hệ thống bảo mật dùng đặc trưng sinh trắc
Đề xuất một kỹ thuật sinh khóa mã hóa từ một hay nhiều đặc trưng sinh trắc
Đề xuất một giải pháp đa mã hóa Khi mỗi khóa được sinh từ một đặc trưng sinh trắc, tất
cả những khóa này được dùng cho mục đích bảo vệ dữ liệu
Trang 8Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
ABSTRACT
Nowadays, mobile devices such as laptops, tablets,smartphones have been rapidly developed in hardware power, utility software and services These devices are more and more popularly used because of not only the trend of modern but their features, functions providing to users as compactness, readiness, utility, and reasonablecost Mobile devices’ supported functions have satisfied most of users’ demands The more utilities and services are effectively supported, the more sensitive and secret data (images, documents, working schedule, etc.) are stored in these devices which are most popular with smartphones Thereby, the demand of data protection for the mobile devices is becoming more and more vital and necessary
However, mobile devices possess a considerable threat is that they are easily stolen With a stolen mobile device with no effective data protection software, the owner maybe faces with a heavy loss Meanwhile, the secret and private data will be compromised, and the loss is many larger than the stolen device’s value Traditional security mechanisms basically based on password and/or token to authenticate and protect data These traditional approaches have a drawback is that the users easily forget password or lose token In addition, the password is not
of strong security so it is not hard to be attacked
Our research aims to propose a strong key generation scheme from one or many biometrics which is appropriate for mobile devices This research will provide a practical usefulness due to
it give convenience and safety to users The users will be no longer remember password and always bring worrisome tokens while the security is guaranteed with generated strong keys from biometrics Our work focuses on the two following contents to enhance the security degree of a biometric-based security system
Propose a scheme of key generation from one or many biometrics
Propose a solution of multi-encryption When a key is generated from a biometrics, all generated keys are utilized to encrypt/decryption a data file
Trang 9Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
LờI CảM ƠN
Trong suốt quá trình đăng kí và thực hiện nghiên cứu đề tài này, chúng tôi đã nhận được rất nhiều sự giúp đỡ từ các tổ chức, phòng ban, gia đình, đồng nghiệp, bạn bè Với lòng tôn trọng và biết ơn sâu sắc, xin được gửi lời cảm ơn chân thành nhất đến với:
Ban lãnh đạo Đại học Quốc Gia thành phố Hồ Chí Minh, ban giám hiệu trường Đại học Bách Khoa thành phố Hồ Chí Minh đã tạo điều kiện cho chúng tôi thực hiện đề tài
Phòng Khoa Học Công Nghệ trường Đại học Bách Khoa thành phố Hồ Chí Minh đã giúp đỡ, hỗ trợ nhiều mặt trong suốt quá trình đăng kí và thực hiện đề tài
Ban lãnh đạo và các đồng nghiệp khoa Khoa Học và Kỹ Thuật Máy Tính trường Đại học Bách Khoa thành phố Hồ Chí Minh đã động viên, giúp đỡ trong suốt quá trình thực hiện đề tài
Các thầy cô tham gia phản biện đề tài đã đóng góp những ý kiến quý báu
Các thầy cô, học viên, sinh viên đã tham gia thực hiện đề tài
Xin chân thành cảm ơn!
Trang 10Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
CHƯƠNG 1: TỔNG QUAN VỀ SINH TRẮC HỌC
1.1 Định nghĩa
Sinh trắc học (biometrics) là sự nhận diện tự động các cá thể con người dựa trên các đặc điểm về hành vi hay sinh lý riêng của họ (Biometrics is the automated recognition of individuals based on their behavioral and biological characteristics)1
Sinh trắc học không phải là một ngành khoa học chính xác vì các mẫu sinh trắc bản chất chứa đựng nhiễu Cùng một sinh trắc của cùng một người nhưng các mẫu thu được ở những thời điểm khác nhau thì không hoàn toàn giống nhau Mức độ giống nhau này tùy thuộc vào nhiều yếu tố như: thiết bị thu nhận, môi trường xung quanh, hoạt động của người cung cấp sinh trắc v.v Kết quả của việc nhận diện dựa vào tỷ lệ phần trăm giống nhau giữa mẫu truy vấn (queried template)
và mẫu đăng ký (enrollment template) được lưu trong CSDL Một hệ thống nhận diện cá thể dựa trên sinh trắc sẽ định nghĩa trước một ngưỡng (threshold).Nếu tỷ lệ giống nhau giữa mẫu truy vấn và mẫu đăng ký lớn hơn hoặc bằng ngưỡng thì hai mẫu này được xem là từ cùng một người, trường hợp ngược lại thì hai mẫu trên được xem từ hai người khác nhau.Hệ thống xác thực dựa trên sinh trắc có 2 loại tỷ lệ sai (error rates):
Tỷ lệ chấp nhận sai FAR (False Accept Rate): phần trăm trường hợp một người dùng giả mạo nhưng được hệ thống nhận diện là người mà kẻ tấn công này muốn mạo danh
Tỷ lệ từ chối sai FRR (False Reject Rate): phần trăm trường hợp một người dùng đúng nhưng bị hệ thống nhận diện là một kẻ mạo danh
Khi ngưỡng tương tự được thiết lập càng cao thì FAR sẽ giảm (tăng tính bảo mật) đồng thời FRR
sẽ tăng (giảm tính tiện dụng) và ngược lại Ngoài 2 tỷ lệ sai trên, hệ thống sinh trắc sử dụng độ
đo tỷ lệ lỗi ngang bằng EER (Equal Error Rate) để đo hiệu suất nhận diện EER chính là điểm giao nhau của FAR và FRR Độ đo EER càng thấp thì hiệu suất nhận diện càng cao
Một đặc trưng sinh trắc có thể dùng trong việc nhận diện khi đáp ứng đủ 7 yếu tố sau [1]:
Tính phố biến (Universality): Mọi người đều sở hữu đặc tính này
Tính duy nhất (Uniqueness): Không tồn tại 2 người khác nhau nhưng có các đặc điểm giống nhau ở đặc trưng sinh trắc này
Tính ổn định (Permanence): Tính chất không thay đổi theo thời gian hoặc thay đổi không đáng kể
Tính khả đo lường (Measurability): Đặc tính sinh học có thể số hóa và so sánh được giữa các cá nhân
1 ISO/IEC JTC1/SC37 Standing Document 2: Harmonized Biometric Vocabulary
Trang 11Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
Tính hiệu quả (Performance): Đặc tính phải so sánh được trong thời gian và nguồn tài nguyên giới hạn
Tính khả chấp nhận (Acceptability): Mọi ngườichấp nhận cung cấp mẫu đặc trưng sinh trắc đó cho hệ thống với hệ thống
Tính không thể gian lận (Circumvention): Đặc trưng sinh trắc đó phải không thể hoặc khó làm giả
1.2 Các đặc trưng sinh trắc
Các đặc trưng sinh trắc được phân vào 2 nhóm như sau:
Đặc điểm sinh lý (Physiological)
o Khuôn mặt (face)
o Mống mắt (iris)
o Võng mạc (retina)
o Vân tay (fingerprint)
o Hình học bàn tay (hand geometry)
o Hình học ngón tay (finger geometry)
o Tĩnh mạch tay (hand vein)
o Biểu đồ nhiệt trên khuôn mặt (facial thermography)
o Hình dạng lỗ tai (ear shape)
Trang 12Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
Hình 1: Một số đặc trưng sinh trắc
Biometrics
Univer-sality
ness
Unique- nence
Perma- ability
Collect- mance
Perfor- ability
Accept- tion
Hand geo-
Facial
Bảng 1: So sánh các đặc trưng sinh trắc[2]
Sau đây sẽ giới thiệu một vài đặc trưng sinh trắc thông dụng:
Khuôn mặt
Trang 13Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
Nhận diện khuôn mặt là phương pháp tự nhiên nhất của nhận diện sinh trắc Phương pháp phân biệt các cá nhân với một người khác là một khả năng bẩm sinh của hầu hết mỗi con người.Khả năng phân biệt thông qua gương mặt của não người là vô cùng chính xác, thậm chí vẫn có thể nhận ra nhau dù gương mặt đã có sự thay đổi lớn theo thời gian Trái ngược với khả năng của bộ não, những phương pháp nhận diện gương mặt hiện nay vẫn bị xem là kém hiệu quả và có độ chính xác không cao
Hầu hết các máy ảnh trên thị trường đều có thể sử dụng để có được những hình ảnh của khuôn mặt.Hệ thống nhận dạng khuôn mặt thường chỉ sử dụng thông tin gray-scale.Màu sắc (nếu nguồn hình ảnh có sẵn) được sử dụng như một sự trợ giúp trong việc định vị khuôn mặt trong hình ảnh duy nhất.Điều kiện ánh sáng ảnh hưởng rất lớn đến hiệu suất nhận diện khuôn mặt Trong điều kiện ánh sáng kém, các đặc điểmkhuôn mặt có thể không dễ dàng nhận thấy rõ
Để tăng độ chính xác, một phương pháp khác là nhận diện khuôn mặt bằng phương pháp ba chiều Phương pháp này sử dụng cảm biến ba chiều để lấy thông tin về hình dạng khuôn mặt Thông tin này sẽ được sử dụng để xác định những đặc tính riêng biệt trên khuôn mặt, như hốc mắt, mũi và cằm Lợi thế của nhận diện khuôn mặt bằng phương pháp ba chiều là phương pháp này không bị ảnh hưởng bởi sự thay đổi của ánh sáng, và nó có thể nhận diện được khuôn mặt từ những góc nhìn khác nhau, bao gồm góc nhìn nghiêng
Để ngăn chặn việc sử dụng hình ảnh hay mặt nạ khi được quét bằng chương trình nhận dạng, hệ thống sẽ có thêm những yêu cầu để xác nhận.Khi đang quét, chương trình sẽ yêu cầu người dùng phải nháy mắt, cười hoặc lắc đầu Một đặc tính bảo mật khác sẽ được dùng như là máy ghi nhiệt
độ khuôn mặt để đo nhiệt độ trên khuôn mặt người sử dụng Nhận dạng khuôn mặt trên video (hình ảnh động) tốt hơn hình ảnh tĩnh.Việc này nhằm chống lại phương pháp tấn công đưa hình chụp trước camera
Nhận diện khuôn mặt nếu được sử dụng kết hợp với các phương pháp sinh trắc học khác có thể cải thiện hiệu suất nhận diện một cách đáng kể
Dấu vân tay
Nhận dạng bằng vân tay có lẽ là kỹ thuật lâu đời nhất trong các kỹ thuật nhận dạng sinh trắc Vân tay từng được sử dụng ở Trung Hoa thời xưa như là phương tiện nhận danh một người có phải là tác giả của một loại tài liệu không Đến năm 1960 bắt đầu xuất hiện nhiều hệ thống có thể
tự động kiểm tra vân tay của người dùng
Vân tay thường không được so sánh và lưu trữ dưới dạng ảnh thô Thay vào đónhững điểm đặc trưng được trích rút bao gồm điểm kết thúc của gờ vân tay (ridge ending), vị trí nơi gờ vân tay chia làm nhiều đường (bifurcation), điểm vân tay (dot) Vấn đề gặp phải là rất khó để tách lấy những điểm đặc trưng một cách chính xác khi chất lượng hình ảnh vân tay không được đảm bảo
Trang 14Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
Ngày nay, những đầu đọc vân tay chủ yếu dựa vào quang học, nhiệt độ, silicon hoặc sóng siêu âm.Đầu đọc quang học là hệ thống phổ biến nhất ở thời điểm hiện tại.Đầu đọc này hoạt động dựa trên nguyên lý sự phản xạ ánh sáng bị thay đổi tại vị trí đường vân tay chạm vào đầu đọc
Đầu đọc bằng silicon ra đời trước kỹ thuật quang học Chúng dựa vào điện dung của ngón tay
Bộ cảm ứng ngón tay bằng dòng điện 1 chiều và điện dung bao gồm một dãy các tụ điện hình chữ nhật Một mặt của điện dung là ngón tay, mặt còn lại là một khu vực nhỏ (một điểm ảnh) trên bề mặt chip vi xử lý Ngón tay sẽ tiếp xúc với bề mặt con chip (thực ra là bề mặt phủ cách điện của con chip) Những gờ nhô lên của dấu vân tay sẽ gần hơn với điểm ảnh, và do đó sẽ có điện dung cao hơn Phần “thung lũng” (nằm giữa các gờ của dấu vân tay) nằm xa hơn do đó sẽ
có điện dung thấp hơn.Chất lượng hình ảnh vân tay quét bởi đầu đọc silicon thường bị ảnh hưởng bởi độ ẩm của ngón tay vì đổ ẩm ảnh hưởng nhiều đến điện dung của ngón tay Điều này
có nghĩa là với những ngón tay quá khô hoặc quá ướt sẽ không thể cho một hình ảnh vân tay chất lượng
Đầu đọc vân tay bằng sóng siêu âm là hình thức mới nhất và ít phổ biển nhất Đầu đọc sử dụng sóng siêu âm để xác định bề mặt vân tay Sóng siêu âm không bị ảnh hưởng bởi bụi bẩn vả chất lượng hình ảnh quét từ đầu đọc có chất lượng khá tốt.Đầu đọc vân tay bằng sóng siêu âm có kích thước tương đối lớnvà giá cao
Mống mắt
Mống mắt là vòng màu của các dải mô nằm xung quanh con ngươi của mắt, nó có tính phân biệt rất cao và rất khó bị làm giả Ngay cả anh chị em song sinh hay giữa mắt phải và mắt trái cũng khác nhau Kết quả kiểm chứng của Iridian Technologies2: xác suất kết quảkhác nhau của 2 mẫu mống mắt sinh từ cùng một mống mắt là khoảng1:278, xác suất để 2 người có cùng một mống mắt là rất nhỏ, khoảng 1:252
Máy quét mống mắt không cần một điều kiện sáng hay một nguồn sáng đặc biệt nào Một vài máy quét mống mắt cung cấp sẵn nguồn sáng và có thể sẵn sàng sử dụng nếu điều kiện ánh sáng không đủ tốt Các mẫu mống mắt được duy trì ổn định mà khó bị thay đổi theo thời gian, nó có thể bị tác động khi gặp một vài bệnh tật đặc biệt Có hai yếu tố cần quan tâm khi trích rút đặc trưng mống mắt đó là: ánh sáng và kích thước mốn mắt thay đổi động theo kích thước con ngươi
Giọng nói
Sự khác nhau giữa các giọng nói của các cá thể khác nhau được thể hiện bằng ảnh phổ thể hiện
âm thanh Ảnh phổ là một đồ thị thể hiện tần số của âm thanh trên trục Y và thể hiện thời gian theo trục X Những giọng nói khác nhau thể hiện hình ảnh khác nhau trên đồ thị Giọng nói của từng người là hoàn toàn khác nhau (bao gồm các cặp song sinh) và không bao giờ bị trùng
2 http://www.iriscan.com/
Trang 15Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
lặp.Giọng nói bao gồm 2 thành phần: 1 thành phần là giọng nói sinh học (dải âm thanh) và thành phần là giọng nói gây ra bởi hành vi (như âm sắc khác nhau)
Trong quá trình nhận dạng giọng nói, người dùng sẽ được yêu cầu lặp lại một đoạn văn ngắn hoặc một chuỗi số.Quá trình nhận diện giọng nói có thể hỗ trợ nhiều thiết bị ghi nhận khác nhau như microphone hay điện thoại Hiệu suất của quá trình nhận dạng âm thanh có thể thay đổi tùy theo chất lượng của tín hiệu âm thanh
Nhận diện giọng nói có thể chia ra làm hai phương pháp: phương pháp phụ thuộc vào văn bản (text-dependent) và phương pháp độc lập với văn bản (text- independent) Phương pháp phụ thuộc văn bản hoạt động dựa vào quá trình phát âm một đoạn văn bản đã được xác định trước còn phương pháp hoạt động độc lập với văn bản có thể dùng với bất kỳ đoạn văn bản hay dòng chữ nào
1.3 Các vấn đề của đặc trưng sinh trắc
Đối với sinh trắc học, do các mẫu sinh trắc thu nhận được và các biểu diễn của chúng phụ thuộc rất nhiều vào yếu tố: phương pháp lấy mẫu, môi trường lấy mẫu, tương tác của người lấy mẫu với thiết bị và tùy theo loại sinh trắc thu nhận, tẩt cả đều ảnh hưởng đến độ ổn định và chất lượng
hệ thống
1.3.1 Thu nhận mẫu sinh trắc không ổn định
Tín hiệu sinh trắc thu nhận được phụ thuộc vào đặc trưng sinh lý, hành vi tương tác của người dùng…Ví dụ như với thu nhận mẫu vân tay từ máy quét, sự khác nhau về lực ấn của ngón tay lên thiết bị quét, vị trí ấn ngón tay lên mặt phẳng quét đều ảnh hưởng tới kết quả thu nhận ảnh vân tay Vì các ngón tay không phải là đối tượng cố định và quá trình chiếu bề mặt đầu ngón tay lên mặt phẳng quét không tuyệt đối chính xác, nên với lực ấn khác nhau, các phần khác nhau của vân tay sẽ được quét Vì thế các mẫu thu được đều có sai khác với nhau.Các tác động của môi trường tại thời điểm thu nhận cũng ảnh hưởng tới kết quả mẫu sinh trắc Ví dụ như độ ẩm, độ sạch của da, ảnh hưởng của tuổi tác, bệnh tật về da… ảnh hưởng tới mẫu vân tay
1.3.2 Giả mạo các đặc trưng sinh trắc
Việc giả mạo các đặc trưng sinh trắc không hẳn là quá khó khăn như nhiều người nghĩ Trong thực tế, đã có một số thí nghiệm thực hiện việc tạo ra các dấu vân tay giả để đánh lừa các hệ thống nhận diện bằng vân tay một cách dễ dàng [3, 4, 5]
Một vấn đề nữa là các đặc trưng sinh trắc của một người dùng thường không phải là điều gì bí mật Người dùng có thể để lại dấu vân tay của mình trên những vật dụng họ chạm vào hoặc các đặc điểm về mắt, khuôn mặt đều có thể dễ dàng quan sát và ghi lại
Trang 16Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
1.3.3 Thu hồi đặc trưng sinh trắc
Việc thu hồi/hủy bỏ (revoke) các đặc trưng sinh trắc không hoàn toàn dễ dàng như với mật khẩu (password) Mỗi người chỉ có một vài đặc trưng sinh trắc và nó tồn tại gần như suốt đời người
Do vậy, có thể xem như là mỗi người chỉ có vài “password sinh trắc” để dùng suốt đời Một khi dấu vân tay của người dùng đã bị làm giả thì việc xác thực bằng dấu vân tay không còn an toàn nữa Một người gần như không có cơ hội để thay đổi đặc trưng sinh trắc của mình một khi nó đã
bị lộ và làm giả [6]
1.3.4 Sự thiếu đa dạng đặc trưng sinh trắc
Trong xác thực bằng password, người dùng có thể dùng nhiều password khác nhau cho nhiều ứng dụng khác nhau.Tuy nhiên, với xác thực bằng sinh trắc, người dùng gần như sử dụng lặp đi lặp lại các đặc trưng sinh trắc của mình để xác thực.Người sử dụng càng sử dụng xác thực bằng sinh trắc ở nhiều hệ thống khác nhau thì càng dễ bị mất thông tin về đặc trưng sinh trắc của mình [6]
1.3.5 Sự thay đổi đặc trưng sinh trắc
Một số đặc điểm có thể thay đổi theo từng thời điểm Ví dụ: dấu vân tay có thể mất hoặc thay đổi khi người dùng lao động dùng tay nhiều, bị thương hoặc giọng nói của người dùng thay đổi do tuổi tác, bệnh tật, …Khi đặc trưng sinh trắc của người dùng thay đổi thì việc đăng ký lại rất phức tạp vì phải cần đến bên thứ 3 tin cậy để xác thực người dùng đó dựa trên các yếu tố khác trước khi thực hiện việc đăng ký lại
1.3.6 Sự chấp nhận của người dùng
Vấn đề cuối cùng khi đưa hệ thống xác thực dựa trên sinh trắc vào sử dụng là sự chấp nhận của người dùng [7] Người dùng sẽ quan tâm đến thông tin sinh trắc của mình sẽ do ai quản lý, có an toàn không
1.4 Bảo mật dùng đặc trưng sinh trắc với thiết bị di động
Các hệ thống bảo mật dựa vào đặc trưng sinh trắc thể được tích hợp vào thiết bị di động theo hai hướng Hướng thứ nhất thiết bị di động đóng vài trò như là thiết bị thu thập dữ liệu sinh trắc và hướng thứ hai thiết bị di động là một hệ thống độc lập sử dụng đặc trưng sinh trắc để bảo vệ dữ liệu trên thiết bị động Trong hướng đầu tiên, thiết bị di động sẽ lấy dữ liệu sinh trắc từ người dùng và truyền qua Internet đến một hệ thống an ninh chuyên biệt để được xử lý và so trùng Cách này đã chứng minh được sự hữu dụng khi giao dịch ở khoảng cách xa và yêu cầu người dùng cần phải được xác minh.Ví dụ như có một khách hàng gọi đến ngân hàng và yêu cầu một giao dịch, khách hàng đó sẽ giới thiệu danh tính, anh ta được yêu cầu phải đọc mật khẩu.Giọng nói của anh ta sẽ được ghi lại, xử lý và so sánh với mẫu dữ liệu mà hệ thống đã ghi lại được khi người dùng đăng nhập vào hệ thống Khuôn mặt, giọng nói hay chữ ký là những đặc trưng sinh trắc mà điện thoại ngày nay có khả năng ghi lại và chuyển chúng sang địa điểm ở khoảng cách
xa
Trang 17Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
Một cách hiện thực khác của hệ thống bảo mật dùng đặc trưng sinh trắc trên thiết bị di động là toàn bộ hệ thống sẽ được tích hợp trên thiết bị di động và nó sẽ phục vụ cho mục đích ngăn chặn
sự truy xuất không được cho phép vào điện thoại hay bảo vệ dữ liệu bằng cách mã hóa thông qua khóa được sinh từ đặc trưng sinh trắc Đây cũng là hướng mà đề tài này nhắm đến
Do đặc tính nhỏ gọn và tiện dụng nên việc áp dụng bảo mật dùng đặc trưng sinh trắc trên thiết bị
di động cần dựa vào các thiết bị được tích hợp sẵn trên thiết bị Một số đặc trưng sinh trắc có tính khả thi khi áp dụng trên thiết bị di động:
Khuôn mặt: thông qua camera của thiết bị
Giọng nói: thông qua microphone
Chữ ký: thông qua màn hình cảm ứng
Vân tay: Một số các điện thoại di động hiện đại ngày nay đã tích hợp các thiết bị đọc vân tay
Trang 18Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
CHƯƠNG 2: BảO MậT DÙNG ĐặC TRƯNG SINH TRắC
Chương này sẽ trình bày hệ thống phân loại các hướng tiếp cận khác nhau của lĩnh vực sử dụng đặc trưng sinh trắc cho mục đích bảo mật, các yêu cầu chức năng cũng như các nghiên cứu liên quan về sinh khóa mã hóa sử dụng một hoặc nhiều đặc trưng sinh trắc
2.1 Các tiêu chuẩn của lược đồ bảo mật dùng đặc trưng sinh trắc
Theo góc nhìn ứng dụng, một hệ thống bảo mật dùng đặc trưng sinh trắc có thể được sử dụng cho xác thực cũng như bảo vệ dữ liệu bằng giải pháp mã hóa dữ liệu từ khóa sinh ra từ đặc trưng sinh học.Những hệ thống này nên đảm bảo những tính chất sau đây [8]
Tính đa dạng (diversity): Mẫu sinh trắc đăng ký phải không cho phép so trùng chéo giữa các cơ sở dữ liệu để đảm bảo tính riêng tư người dùng
Tính khả thu hồi (revocability): Mẫu sinh trắc đăng ký khi đã bị lộ có thể được thu hồi, một mẫu sinh trắc đăng ký khác có thể được sinh ra một cách dễ dàng với cùng một đặc trưng sinh trắc
Tính bảo vệ mẫu sinh trắc (template protection): Việc tính toán để suy ngược ra mẫu sinh trắc gốc không từ mẫu sinh trắc đăng ký phải đủ khó
Hiêu suất (performance): Các lược đồ bảo mật dùng đặc trưng sinh trắc không nên làm giảm hiệu suất nhận diện vốn có của đặc trưng sinh trắc gốc Hiệu suất nhận diện này dựa vào hai độ đo: chấp nhận sai FAR (False Accept Rate) và từ chối sai FRR (False Reject Rate)
2.2 Các hướng tiếp cận
Với góc nhìn kỹ thuật, một cách tổng quan việc sử dụng đặc trưng sinh trắc trong bảo mật có thể được chia thành hai phân loại chính bởi [9]: Biến đổi đặc trưng (FT- Feature Transformation và Mật mã hóa sinh trắc (BC - Biometric Cryptosystem)
Cách tiếp cận FT áp dụng một hàm biến đổi F, hàm này sử dụng một khóa ngẫu nhiên hay một
mật khẩu người dùng để biến đổi mẫu đặc trưng sinh trắc T thành một mẫu sinh trắc đã được biến đổi F(T, K).Sau đó mẫu biến đổi này được lưu trữ cho mục đích so trùng Cách tiếp cận FT
có thể cung cấp tính đa dạng (diversity) và tính khả hủy bỏ (revocability) bởi vì với một mẫu đặc
trưng sinh trắc của cùng một người, mỗi khóa K hay mật khẩu sẽ có tương ứng một mẫu sinh trắc
biến đổi được sinh ra Phụ thuộc vào hàm F có thể là ánh xạ ngược hay không ánh xạ ngược mà tương ứng cách tiếp cận FT được phân loại thành hai phân loại nhỏ hơn là: biến đổi khả suy ngược(Salting) hay biến đổi không suy ngược (Non-invertible)
Salting: Tính bảo mật của cách tiếp cận này chủ yếu dựa vào tính bảo mật của khóaK hay
mật khẩu người dùng nên tính chất bảo vệ mẫu sinh trắc không được đảm bảo vì mẫu
Trang 19Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
sinh trắc gốc có thể bị phơi bày khi khóaK và mẫu sinh trắc được biến đổi bị lộ Một vài
nghiên cứu được xếp vào cách tiếp cận này là [10,11; 12; 13]
Non-invertible: Trường hợp biến đổi không ánh xạ ngược, hàm một chiều (one-way function) được áp dụng để biến đổi mẫu sinh trắc Nên ngay cả khi khóa hay mật khẩu
Kngười dùng bị lộ, vẫn rất khó khăn cho kẻ tấn công suy ngược lại được mẫu đặc trưng
sinh trắc gốc Hay nói cách khác, biến đổi không ánh xạ ngược đảm bảo tính chất bảo vệ mẫu sinh trắc (template protection) Tuy nhiên, nó có giới hạn là sự đối nghịch giữa tính phân biệt và tính chất không ánh xạ ngược của hàm biến đổi Tính phân biệt nghĩa là hàm biến đổi nên duy trì nhiều nhất có thể sự tương tự và sự khác biệt của những mẫu sinh trắc được biến đổi lần lượt của cùng một người và của những người khác nhau trong không gian mẫu đặc trưng sinh trắc Thiết kế một hàm biến đổi thõa mãn đồng thời hai tiêu chuẩn này thì khó Một kỹ thuật tiêu biểu cho hướng tiếp cận này là nghiên cứu của Ratha [14]với các biến đổi không suy ngược để bảo vệ mẫu sinh trắc vân tay Tuy nhiên, Quan cùng các đông sự[15] phát biểu rằng những biến đổi trong lược đồ của Ratha là có thể bị tấn công
Cách tiếp cận BC kết hợp đặc trưng sinh trắc và mã hóa cho một trong hai mục đích sau:(1) bảo
vệ khóa mã hóa bằng đặc trưng sinh trắc mà được gọi là trộn khóa Key Binding - KB (trộn khóa
mã hóa với mẫu đặc trưng sinh trắc lại với nhau),(2) sinh trực tiếp một khóa mã hóa từ mẫu đặc trưng sinh trắc, cách này được gọi là sinh khóa Key Generating - KG Với cách tiếp cận BC, một vài thông tin công cộng về mẫu sinh trắc được lưu lạicho mục đích phục hồi khóa từ đặc trưng sinh trắc trong giai đoạn đăng nhập hệ thống.Thông tin này được gọi là dữ liệu trợ giúp (helper data), dữ liệu này phải không được rò rỉ bất kỳ thông tin quan trọng về mẫu sinh trắc gốc hay khóa
Key Binding: Cách tiếp cận này có ưu điểm là tính độc lập giữa khóa và đặc trưng sinh trắc vì thế mà khóa được sinh mới một cách dễ dàng, ngẫu nhiên và tính hỗn độn cao (high entropy) Nhưng một cách tổng quát, nhược điểm của nó là tính đa dạng, tính khả hủy bỏ và tính bảo vệ mẫu không được đảm bảo một khi khóa bị lộ Để khắc phục những hạn chế này, cách tiếp cận Key Binding cần kết hợp với những cách tiếp cận khác như Salting mànghiên cứu của Nandakumar cùng các đồng sự[16] là một đại diện, các tác giả
sử dụng một hàm biến đổi ngẫu nhiên sử dụng mật khẩu người dùng Một vài tiêu biểu nhất cho hướng tiếp cận Key Binding là Fuzzy Commitment [17] và Fuzzy Vault [18]
Key Generating:Với hướng tiếp cận này, khóa được sinh trực tiếp từ mẫu đặc trưng sinh trắc, vì vậy đây là một lựa chọn tốt cho các ứng dụng mã hóa với yêu cầu đảm bảo tính chất bảo vệ mẫu sinh trắc Tuy nhiên, cách tiếp cận này vướng phải vấn đề đối nghịch giữa tính ổn định của khóa và độ mạnh của khóa (tính hỗn độn của khóa – key entropy) Công trình đặc trưng cho hướng tiếp cận này là [19], mà giới thiệu khái niệm phác thảo bảo mật (Secure Sketch) và trích rút mờ (Fuzzy Extractor) Một vài xây dựng thực cho khái niệm phác thảo bảo mật là [20,21,22,23]
Trang 20Báo cáo
Cuối cùng, ngoài những cách tiếp c
hơn một cách tiếp cận cơ bản ở
và khắc phục nhược điểm của các hư
invertible được theo sau hay trướ
này là Nandakumar cùng các đồng s
2.3 Các nghiên cứu liên quan
2.3.1 Fuzzy Commitment
Kỹ thuật này được đề xuất bởi Juels and Wattenberg
dựa trên mã sữa lỗi nhị phân (binary error
được biến đổi về dạng chuỗi nhị
dựa trên khoảng cách Hamming
(codeword) Cmà được xem như là khóa v
sinh trắc xác thực W’ với với mẫ
xác định trước, một từ mã C’ (đư
tưởng của kỹ thuật này được miêu t
Hình 2 Tổng quan hoạt động Fuzzy Commitment
Một vài xây dựng thực cho kỹ thu
như [25,26]
2.3.2 Fuzzy Vault
Fuzzy Vault thuộc phân loại Key Binding K
Trong đó, các tác giả xem các đ
trường hữu hạn với độ khác biệt t
Một dữ liệu bí mật N được che d
vd: N = p(0) hay N là tổng hợp từ
thông qua một Vault công khai đư
thức (các điểm thực (a i , p(a i)) đư
trên đồ thị của đa thức) Trong giai đo
sinh trắc xác thực) đủ tương tự v
Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG
p cận trên, một hướng khác nữa là tiếp cận lai mà trong đó nhi trên được kết hợp lại với nhau nhằm mục đích k
a các hướng tiếp cận cơ bản Ví dụ như một biến đ
ớc Key Binding/Key Generating Một ví dụ cho hư
ng sự [16, 24]
u liên quan
Juels and Wattenberg [17], thuộc hướng tiếp cận Key Binding và phân (binary error-correcting codes) Trong đó mẫu đặ
phân và độ tương tự giữa các chuỗi nhị nhân này đư
ng cách Hamming Dữ liệu trợ giúp S được sinh ra từ sự kết h
c xem như là khóa với mẫu đặc trưng sinh trắc đăng ký
ẫu sinh trắc đăng ký W khác nhau không quá m
’ (được dẫn ra từ S và W‘) có thể được sửa lỗi thành t
c miêu tả như hình bên dưới
ổng quan hoạt động Fuzzy Commitment
thuật Fuzzy Commitment dựa trên đặc trưng sinh tr
i Key Binding Kỹ thuật này được đề xuất bởi Juels and Sudan [xem các đặc điểm của đặc trưng sinh trắc như là tập A các ph
t tập hợp như là hàm khoảng cách để đo lường m
c che dấu bởi một đa thức p bậc k.Thông tin Nđược xem như là khóa
ừ các hệ số của một đa thức.Việc sữa lỗi dựa vào n
t Vault công khai được sinh ra.Một Vault gồm một số điểm thực n
)) được sinh từ tập A, trong đó a i A) và một số điểm c) Trong giai đoạn xác thực, với tập đặc trưng B (sinh t
với với tập A (nghĩa số phần tử giữa A và B trùng nhau ít nh
ứu khoa học cấp ĐHQG-HCM loại C
n lai mà trong đó nhiều
c đích kế thừa ưu điểm
n đổi cho hướng tiếp cận
Salting/Non-n Key BiSalting/Non-ndiSalting/Non-ng và
ặc trưng sinh trắc nhân này được đo lường
t hợp của từ mã
c đăng ký W Khi một mẫu
khác nhau không quá một ngưỡng được
c xem như là khóa
a vào nội suy đa thức
c nằm trên đồ thị đa
m ảo (không nằm
c trưng B (sinh từ mẫu đặc trưng
a A và B trùng nhau ít nhất là
Trang 21Báo cáo
k) thì đa thức phục hồi p’ p Vì th
kỹ thuật Fuzzy Vault như[27,28,29
Hình 3 Tổng quan hoạt động của
2.3.3 Secure Sketch và Fuzzy E
Nghiên cứu này được Dodis cùng các đ
sinh khóa (Key Generation) mà bao g
trích rút mờ (Fuzzy Extractor).Phác th
và phục hồi (Rec) Cho trước mộ
cho mục đích phục hồi T Với m
Rec có thể phục hồi chính xác T
thuộc nền tảng mật mã, mục đích là làm tăng tính h
dưới mô tả hoạt động của phác th
niệm độ hỗn độn đánh mất (entropy los
từ thông tin công cộng P để đoán m
thảo bảo mật là [20, 21, 22, 23]
Hình 4 Phác thảo bảo mật
2.3.4 Lược đồ sinh khóa từ vân tay và võng m
Nghiên cứu này được đề xuất bở
cũng như hiệu suất nhận dạng b
sinh khóa mã hóa Trước tiên, các đ
mạc Sau đó, các đặc trưng này s
một mẫu sinh trắc kết hợp Sau đó, m
Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG
p Vì thế mà khóa bí mật N sẽ được phục hồi Một vài hi
27,28,29] cho khuôn mặt, [30,31] cho vân tay, và [32]
ủa Fuzzy Vault
Secure Sketch và Fuzzy Extractor
c Dodis cùng các đồng sự [19]đề xuất Hướng tiếp cận này thusinh khóa (Key Generation) mà bao gồm hai thành phần là phác thảo bảo mật (Secure Sketch) và
(Fuzzy Extractor).Phác thảo bảo mật bao gồm hai thành phần là: sinh phác t
ột mẫu sinh trắc bảo mật T, SS sinh thông tin công c
i một mẫu sinh trắc xác thực T’ đủ tương tự T, thành ph
T với trợ giúp của P Thành phần trích rút mờ là m
c đích là làm tăng tính hỗn độn, ngẫu nhiên của khóa sinh ra Hình
a phác thảo bảo mật Ngoài ra, Dodis cùng các đồng sự
t (entropy loss) dùng đo lường mức thuận lợi mà kẻ t
đoán mẫu sinh trắc gốc T.Một vài xây dựng thực cho khái ni
vân tay và võng mạc của Jagadeesan và các cộng s
ởi Jagadeesan cùng các cộng sự [33] nhằm nâng cao tính b
ng bằng sự kết hợp hai đặc trưng sinh trắc vân tay và v
c tiên, các đặc trưng sinh trắc sẽ được rút trích từ dấu vân tay và võng
c trưng này sẽ được trộn lại với nhau ở mức đặc điểm (feature level) đ
p Sau đó, mẫu này sẽ được dùng để sinh ra một khóa mã hóa 256 bits
ứu khoa học cấp ĐHQG-HCM loại C
t vài hiện thực của ] cho mống mắt
n này thuộc phân loại (Secure Sketch) và
c cho khái niệm phác
ng sự
m nâng cao tính bảo mật
c vân tay và võng mạc để
u vân tay và võng
m (feature level) để tạo ra
t khóa mã hóa 256 bits
Trang 22Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
Trong quá trình thực nghiệm, nhóm tác giả đã tiến hành đánh giá trên các cơ sở dữ liệu vân tay
và võng mạc CASIA Iris Kết quả thực nghiệm chỉ ra rằng, khóa 256 bits được sinh ra có khả năng nhận dạng người dùng tốt hơn và bảo mật tốt hơn
Đối với dấu vân tay, các điểm đặc trưng sẽ được biểu diễn thông qua tọa độ (x,y) trên mặt phẳng hai chiều Vector M1 dùng để lưu lại danh sách các điểm tọa độ x và vector M2 dùng để lưu lại
danh sách tọa độ y
M1 = x 1 , x 2 , x 3 , ,x n ; |M 1 | = n
M 2 = y 1 , y 2 , y 3 , y n ; |M 2 | = n
Đối với võng mạc, đặc trưng về kết cấu thu được thông qua phương pháp log-gabor là những số
ảo có dạng (a + ib) Cũng tương tự như dấu vân tay, đặc trưng võng mạc sẽ được lưu trữ thông qua 2 vector C1 và C2
C 1 = a 1 , a 2 , a, ,a m; |C 1 | = m
C 2 = b 1 , b 2 , b 3 , b m; |C 2 | = m
Tiếp theo, 4 vector M 1 , M 2 , C 1 , C 2 sẽ được hoán đổi vị trí các phần tử và sau đó được trộn lại với nhau để tạo ra một mẫu sinh trắc kết hợp được dùng cho việc sinh khóa mã hóa Các bước hoán
đổi cho M 1 như sau
1 vector ngẫu nhiênR có kích thước |M 1| được tạo ra
Phần tử thứ icủa vector M 1 được xáo trộn bằng cách hoán chuyển với phần tử thứ j được
xác định bằng công thức sau với MAX_INTEGER là một số nguyên lớn:
Bước trên được lặp lại với mọi phần tử của vector M 1
Quá trình xáo trộn này được áp dụng tương tự cho các vector M 2 , C 1 và C 2 Kết thúc quá trình, ta
thu được 4 vector đặc trưng mới là M 1 P 1 , M 2 P 2 , C 1 P 3 và C 2 P 4 Sau đó P 1 được kết hợp
với P 3 và P 2 với P 4.Các vector sau khi được xáo trộn sẽ được thực hiện việc kết nối chéo với nhau khi một vector đặc trưng vân tay sẽ được kết hợp với một vector đặc trưng võng mạc Quá
trình kết nối của P 1 và P 3 cho ra vector J 1 sẽ được thực hiện như sau
Với mỗi phần tử i của P 3 , thực hiện phép mũ P 3 (i) ^ P 1 (i) Nếu như giá trị này lớn hơn một ngưỡng cho trước thì sẽ được lưu lại vào giá trị J1(i)
Trong trường hợp ngược lại, tiếp tục thực hiện các phép mũ theo dạng P 3 (i) ^ P 1 (i) ^
P 1 (i+1) cho đến khi giá trị vượt qua ngưỡng thì lưu lại vào giá trị J 1 (i)
Trang 23Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
Quá trình tương tự cũng được thực hiện cho hai vector P 2 và P 4 , kết quả thu được vector J 2 Hai
vector J 1 và J 2 sau đó được kết hợp thành một vector J B tổng hợp như sau
Tìm số nguyên tố lớn hơn thành phần i th của mỗi vector J 1 và J 2
Lấy tích của hai số nguyên tố này
Kết quả sẽ được lưu trữ vào thành phần i th của vector T B
Quá trình được lặp lại cho mọi thành phần của vector J 1 và J 2 Vector T B được xem như vector
đặc trưng sinh trắc kết hợp dấu vân tay và võng mạc của người dùng Tuy nhiên T B chưa là khóa
mã hóa Vì vậy một khóa mã hóa k-bit được sinh từ T B là cần thiết Vector T B sẽ được chuẩn hóa
thành vector N có k chiều Cuối cùng, quá trình sinh khóa sẽ được thực hiện như sau:
Nghiên cứu của nhóm tác giả đã được hiện thực trên Matlab và được áp dụng trên tập dữ liệu CASIA Iris Image Kết quả thực nghiệm chứng tỏ rằng phương pháp đề xuất kết hợp 2 đặc trưng sinh trắc nâng cao độ bảo mật của khóa mã hóa được sinh ra Tuy nhiên, hiệu quả của hệ thống chưa được đánh giá một cách thỏa đáng khi mà các thông số về hiệu suất của hệ thống như các tỷ
lệ lỗi chấp nhận sai (FAR) và từ chối sai (FRR) chưa được xem xét, so sánh với các hệ thống sử dụng một đặc trưng sinh trắc
2.3.5 Lược đồ sinh khóa từ vân tay và gương mặt của Sutcu và các cộng sự
Nghiên cứu được đề xuất bởi Sutcu cùng các cộng sự [34].Nhóm tác giả đã đưa ra giải pháp kết hợp vân tay và gương mặt của người dùng thành một mẫu đặc trưng sinh trắc kết hợp và dùng phác thảo bảo mật (Secure Sketch) để bảo vệ dữ liệu, kết hợp với việc thực hiện xác thực Do có tính kháng nhiễu tốt, nên hệ thống hiện thực đem lại hiệu suất cao khi mà các tỷ lệ FAR và FRR
là rất thấp
Đầu tiên đặc trưng vân tay được trích rút Giả sử ta có danh sách gồm m điểm (x i , y i) là tọa độ của các điểm đặc trưng của dấu vân tay trên không gian 2 chiều Fr = {(x 1 ,y 1 ), (x 2 ,y 2 ), , (x m ,y m)} Đặc trưng được biến đổi và trích rút qua các bước sau:
Tính điểm trung tâm của cụm C = (x c ,y c) theo công thức:
Trang 24Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
Với thông số cho trước, phân hoạch danh sách các điểm cắt trên đường tròn thành k
phần riêng biệt, thu được vector V = (v 1 ,v 2 , v k ) với k = 360/ và vi là số lượng các điểm
cắt có trong mỗi thành phần
Giả sử ta có một ma trận Mr có kích thước k x k (Mr được gọi là ma trận biến đổi ngẫu
nhiên) Vector đặc trưng F 1 cuối cùng thu được bằng công thức sau:
F 1 = (z 1 ,z 2 , , z k) = V.Mr
Việc rút trích đặc trưng gương mặt được thực hiện theo giải thuật SVD(Singular Value Decomposition) Quá trình rút trích được thực hiện qua các bước sau:
Với hình ảnh gương mặt cho trước, tính toán các giá trị SVD, lưu lại (n – k) giá trị quan
trọng nhất Giả sử vector thu được là Fs = (vk + 1 , , v n)
Tương tự như với dấu vân tay, giả sử ta có ma trận biến đổi ngẫu nhiên Ms vớikích thước
(n – k) x (n – k), thực hiện Fs.Ms = (u k+1 , ,u n)
Lượng tử hóa vector trên với bước lượng tử hóa λj cho phần tử uj được xác định dựa vào
độ lệch của uj Vector đặc trưng sau quá trình lượng tử hóa thu được có dạng
F 2 =(z k+1 , ,z n)
Sau khi các vector đặc trưng vân tay và gương mặt đã được rút trích, chúng được nối lại với nhau
để hình thành một vector đặc trưng kết hợp F = F 1 || F 2 = (z 1 ,z 2 , , z n) Và một vector đặc trưng
khác F’ = (w 1 ,w 2 w n) được xem là tương đồng nếu như độ chênh lệch của tất cả các thành phần không vượt quá 1 ngưỡng ij nào đó (ij được xem như khả năng kháng nhiễu của hệ thống).Giả
sử vector đặc trưng của người thứ i là F i = (z i1 ,z i2 , ,z in), quá trình xây dựng phác thảo bảo mật trải qua các bước sau:
Xây dựng một danh sách từ mã (codebook) C i,j và mỗi từ mã (codeword) được xác định
bằng công thức c = k (2i,j + 1) với k là một số nguyên
Tìm tập các từ mã c ij C ij mà gần với z ij nhất
Tính toán giá trị của sketch p ij = z j – c ij
Giá trị sketch của người thứ i là vector P i = (p i1 ,p i2 , ,p in ) với -ij p ij ij
Thông tin lưu trữ cho người dùng thứ i được lưu trữ bao gồm thông tin sketch P i, ma trận biến
đổi ngẫu nhiên M i , codebook C i,j , và một hàm băm một chiều ash(F i) Các thông số toàn cục
phục vụ cho quá trình xác thực gồm R, , T phục vụ cho quá trình rút trích vân tay
Khi một người dùng thứ i thực hiện việc xác thực, thông tin về gương mặt và dấu vân tay của
người đó sẽ được trích rút Sau đó, việc rút trích các đặc trưng sẽ được thực hiện như các bước
được trình bày ở trên để thu được vector F’ i Nếu như F’ i tương đồng với F i, thì quá trình khôi
Trang 25Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
phục sẽ tìm ra được đúng vector F i Sau đó, vector F’ i này sẽ được đưa vào hàm hash một chiều
vàHash(F’ i ) được so trùng với ash(F i) để xác minh người đăng nhập
Hệ thống được tiến hành thử nghiệm với tập dữ liệu dấu vân tay NIST Special Database 27
Error! Reference source not found Tập dữ liệu này bao gồm 258 cặp dấu vân tay, và tác giả
tiến hành lựa chọn 152 cặp dấu vân tay để thử nghiệm, trùng với số lượng mẫu gương mặt thực nghiệm Dữ liệu gương mặt được lấy từ tập dữ liệu Face94 [40] Kết quả của quá trình thực nghiệm được đánh giá thông qua các thông số FAR và FRR Hệ thống tỏ ra có khả năng chịu nhiễu cao, khi mà các tỷ lệ chấp nhận sai và từ chối sai là tương đối thấp
Trang 26Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
CHƯƠNG 3: LƯợC Đồ Đề XUấT CHO SINH KHÓA Từ ĐA ĐặC TRƯNG SINH TRắC
Mục tiêu của giải pháp đề xuất là sử dụng một hoặc nhiều đặc trưng sinh trắc để sinh khóa bí mật dùng cho mã hóa và giải mã dữ liệu.Giải pháp đề xuất cần phải thõa mãn được một số tiêu chuẩn thiết yếu của một lược bảo mật dùng đặc trưng sinh trắc
Khóa sinh ra cần đảm bảo tính ngẫu nhiên, đủ mạnh để có thể sử dụng cho mục đích mã hóa
Với cùng một đặc trưng sinh trắc từ một người, nhiều khóa có thể được sinh ra một cách
dễ dàng
Kẻ tấn công không thể suy ngược lại đặc trưng sinh trắc gốc từ dữ liệu trợ giúp (helper data) và khóa bị lộ
3.1 Tổng quan lược đồ
Hình 5 Tổng quan lược đồ sinh khóa từ đa đặc trưng
Tổng quan các bước xử lý được trình bày trong hình 5 ở trên.Trong giai đoạn đăng ký, đầu ra của bước trích rút đặc trưng (feature extraction) là các vector đặc trưng được trích rút từ các đặc
trưng sinh trắc.Tập những vector đặc trưng này sau đó được chia làm 2 tập con: TI và TI’ lần
lượt đóng vai trò là những ngõ nhập huấn luyện (training inputs) và ngõ nhập kiểm tra (testing
inputs) cho mạng ANN (Artificial Neuron Network) [35, 36].Một vector số TO được sinh ngẫu nhiên bởi Random Vector Generation Vector TO đóng vai trò ngõ ra huấn luyện cho mạng ANN Mỗi một vector trong tập TI cùng với vector TO tạo thành một mẫu huấn luyện cho mạng ANN Sau khi bước huấn luyện kết thúc, tất cả các vector từ hai tập TI và TI’ được đưa vào mạng ANN đã được huấn luyện để cho ra hai tập vector tương ứng là O và O’ Tất cả các vector
O được xử lý ở bước Common Extraction để sinh ra một vector P mà thể hiện độ ổn định của
Trang 27Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
những vector đầu ra mạng ANN Vector P được xem như một phần của dữ liệu trợ giúp phục hồi Sau đó, Range Extraction sẽ nhận vector P và tất cả vector O’ để sinh ra vector RV Mỗi chiều của RV là một miền số nguyên Cuối cùng một vector HD và vector mẫu đăng ký ES được sinh ra ở bước Secure Sketch với thông số đầu vào là vector RV và một số nguyên δ Vector HD cũng là một thành phần của dữ liệu trợ giúp cho mục đích phục hồi khóa δ là giá trị thể hiện
mức độ chịu đựng lỗi của lược đồ Dữ liệu trợ giúp phục hồi khóa sẽ bao gồm: mạng ANN đã
được huấn luyện, vector P và vector HD Vector ES được xem như là khóa bí mật sinh ra bởi lược đồ, tuy nhiên nó chưa có dạng của một khóa mã hóa.Vì vậy ES cần được biến đổi bởi một giải thuật mã hóa để đưa về dạng khóa mã hóa, gọi là khóa K Vì K là khóa bí mật nên không thể
được lưu trữ, nhưng cần một cơ chế để xác minh nhanh chóng một khóa khi được tái phục hồi có
chính xác bằng với khóa K hay không Do đó một phiên bản băm Hash(K) của K sẽ được lưu trữ thay cho K
Trong giai đoạn xác thực (hay gọi là phục hồi khóa), mạng ANN đã được huấn luyện nhận một
vector đặc trưng để sinh một vector đầu ra O Sau đó vector O được lượng tử hóa thành một vector số nguyên V với sự trợ giúp của vector P và một vector ES’ được phục hồi từ vector V và
HD Một phiên bản băm Hash(K’) của khóa mã hóa K’ mà được sinh từ ES’sẽ được so sánh với Hash(K) để xác minh khóa bí mật có được sinh ra đúng hay không Nếu chính xác, khóa K’ có
thể được dùng cho mã hóa hoặc giải mã dữ liệu
3.2 Trích rút đặc trưng
Feature Extraction là một thành phần trích rútcác vector đặc trưng kiểu ℝm
từ những đặc trưng sinh trắc như khuôn mặt, giọng nói, chữ ký, vân tay v.v Các vector đặc trưng này có thể: (1) hoặc là các vector đặc trưng đơn mà được trích rút từ một đặc trưng sinh trắc (2) hoặc là các vector đặc trưng tổng hợp mà được ghép nối tuần tự bởi nhiều vector đặc trưng đơn Đề tài hướng đến thiết bị di động như điện thoại thông minh, do đó đặc trưng khuôn mặt, giọng nói hay chữ ký là lựa chọn phù hợp bởi hầu hết các máy tính bảng hay điện thoại thông minh ngày nay đều tích hợp sẵn camera, micro và màn hình cảm ứng Để trích rút đặc trưng khuôn mặt, chúng tôi dùng phương pháp Eigenface [37] và phương pháp MFCC [38] (Mel-Frequency Cepstrum Coefficients) để trích rút vector đặc trưng giọng nói.Đây là hai đặc trưng mà chúng tôi tiến hành thực nghiệm trong đề tài
3.3 Sinh vector ngẫu nhiên
Bước này sinh ra một vector ngẫu nhiên TO có kiểu ℝ n
để chuẩn bị một ngõ ra huấn luyện cho tập mẫu huấn luyện mạng ANN Mỗi mẫu huấn luyện gồm một vector đặc trưng đóng vai trò là
thông số nhập và vector TO là thông số ra Tất cả các mẫu huấn luyện cùng chia sẻ chung vector
ngẫu nhiên này vì tất cả các vector đặc trưng dùng trong huấn luyện là từ một người
3.4 ANN
Trang 28Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
Chi tiết mạng ANN có thể được tìm thấy trong [35] chương 19, [36] phần 6.6.Một số đặc trưng quan trọng được trình bày như sau.Một ANN bao gồm một số nút (node) được kết nối với nhau bởi các liên kết.Các liên kết này được đánh trọng số Có nhiều kiểu cấu trúc mạng ANN Nhưng phổ biến nhất là mạng neuron đa tầnglan truyền thẳng (multilayer feed-forward neural network) Mạng này gồm một tầng nhập, một hay nhiều tầng ẩn và một tầngxuất [36] Mạng này sở hữu hai thuộc tính quan trọng sau và chúng cũng là lý do mạng ANN được sử dụng trong giải pháp đề xuất để nhận diện người dùng trên các mẫu sinh trắc nhiễu thu được từ thiết bị
Với một tầng ẩn, mạng này có thể xấp xỉ bất kì hàm liên tục nào và với hai tầng ẩn, nó có thể xấp xỉ bất kì hàm số nào [35]
Có tính kháng nhiễu cao [36]
Bên cạnh hai lý do ở trên, một lý do nữa là mạng ANN giả lập cơ sở hoạt động của bộ não con người Rất rõ ràng rằng con người có khả năng nhận diện đối tượng rất tốt, đặc biệt với những khuôn mặt của những người quen thuộc như những người thân trong gia đình, họ hàng, bạn bè v.v Trong giải pháp này, mỗi ANN được sử dụng để học nhận dạng chỉ một người duy nhất đó chính là người đăng ký Ý tưởng này bắt nguồn một cách trực giác rằng một người sẽ làm nhiệm
vụ học nhận diện một người sẽ tốt hơn là nhiệm vụ học nhận diện nhiều người.Trong giai đoạn học, mạng ANN học bằng cách điều chỉnh các trọng số.Sau đó, các trọng số và cấu trúc mạng được lưu trữ để dự đoán mà được dùng trong giai đoạn xác thực.Trước khi mạng ANN được huấn luyện, một vài thông số cần được xác định
Tốc độ học (Learning rate) trong đoạn [0, 1] quyết định tốc độ mạng ANN được huấn luyện Giá trị này càng lớn mạng ANN càng nhanh hội tụ Nhưng nếu giá trị này quá lơn mạng ANN có thể không thể xấp xỉ được hàm đúng
Momen quán tính (Momentum) giúp mạng ANN thoát khỏi cực tiểu cục bộ và nó nên đủ lớn
Hàm tích cực (Activation function) mà còn gọi là làm biến đổi (Transform function), nó đảm bảo rằng đầu ra của mỗi nút ở tầng xuất luôn trong một miên xác định mà thường là [0, 1] hoặc [-1, 1]
Trong thực nghiệm, mạng neuron lan truyền thẳng một tầng ẩn được sử dụng với số node ẩn được xác định dựa vào (1) Tốc độ học là 0.3, momen quán tính là 0.8 và hàm tích cực là
3.5 Trích rút độ ổn định chung đầu ra
Sau khi mạng ANN được huấn luyện, tất cả k vector đặc trưng được đưa vào mạng ANN để cho
ra tương ứng k vector O j = (O j1 O j2 …O jn ), (j=1 k) có kiểu ℝn
Mục đích của bước Common
Trang 29Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
Extraction này là sinh ra vector P = (p 1 , p 2 , …, p n) thể hiện độ ổn định chung của những vector
O j này Vector P được xác định bởi (2)
Ví dụ với k = 2, n = 3, O 1 = (0.8365, 0.247892, 0.64829) and O 2 = (0.8364, 0.2478968, 0.6477);
vector P = (3, 5, 2)
3.6 Trích rút phạm vi
Định nghĩa 1: Mộtphạm vi (range) là một miền trị của tập tất cả các số nguyên không âm và
được giới hạn bởi một cận dưới được gọi là “min” và một cận trên gọi là “max” Một phạm vi được biểu diễn bởi [min, max]
Cũng tương tự như bước Common Extraction, k’ vector đặc trưng TI’ j được đưa vào mạng ANN
để cho ra tương ứng k’ vector ngõ ra O’ j = (O’ j1 O’ j2 …O’ jn ), (j=1 k’) Mục đích của bước này là xác định vector phạm viRV = (RV 1 , RV 2 , …,RV n ) Trong đó mỗi chiều RV ilà phạmvi cho mỗi chiều của vector ngõ ra tương ứng với thông số nhập là các vector đặc trưng từ người đăng ký
Vector RV được xác định thông qua (3) dựa vào các vector O’ j và vector P
3.7 Phác thảo bảo mật
Dựa trên ý tưởng phác thảo bảo mật(Secure Sketch) [19], đề tài đề xuất một xây dựng thực cho phác thảo bảo mật.Như đã trình bày tổng quát ở phần 3.1, thông số nhập của phác thảo bảo mật
là một vector phạm vi RV và một ngưỡng chịu lỗi δ Đầu tiênmỗi phạm vi thành phần của vector
RV được mở rộng theo công thức (4) về hai cận với một lượng δ Vector RV sau khi được mở rộng với lượng δ được xem như là mẫu đăng ký ES=(ES 1 , ES 2 , …, ES n) hay khóa bí mật sinh
ra.Không mất tính tổng quát, mỗi chiều của ES có thể được biểu diễn như sau.ES i = {v i , v i+1,
…,v i +r i -1}, vớir i =|ES i | Mỗi ES i được là một phạm vi đích được dùng để sinh ra vector HD = (HD 1 , HD 2 , …,HD n ) Mỗi một HD i được xác định bởi (5)
3.8 Phục hồi mẫu
Bước phục hồi mẫu đăng ký được hoạt động trong giai đoan xác thực Đầu tiên một vector đặc
trưng được trích rút và đưa vào mạng ANN đã được huấn luyện để cho ra một vector đầu ra O Thông qua vector P trong dữ liệu trợ giúp, một phiên bản làm tròn V=(V 1 , V 2 , …, V n ) của Ođược
Trang 30Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
sinh ra theo (6) Thông qua vector V, một phiên bản phục hồi ES’ của khóa bí mật được tạo ra
bởi (7)
Hàm Position trả về vị trí của V i trong phạm viES i Vì vị trí của V i trong phạm vi ES i và vị trí của
giá trị phần dư của V i chia cho ri trong HDi là như nhau, với r i =|ES i |=|HD i| Hàm Recover tái khôi
phục khóa bí mật thông qua các thành phần ES’ i như sau
1 Đưa V i vào một phạm vị rỗng, gọi là ES’ i
2 Thêm vào bên phải V i với (r i - β) số nguyên liên tiếp mà số đầu tiên là (V i +1)
3 Thêm vào bên trái V i với (β - 1) số nguyên liên tiếp mà số cuối cùng là (V i - 1)
ES’ i = ES i nếu và chỉ nếuV i thật sự thuộc về phạm vi đíchES i
Có thể thấy rằngδkhông cần được lưu trữ bởi vì nó không được sử dụng trong giai đoạn phục hồi
khóa.Giá trị này cũng có thể được thay đổi để tinh chỉnh sự cần bằng giữa hiệu suất nhận diện và
độ bảo mật của khóa sinh ra Một cách tổng quát, khi δ tăng thì hiệu suất nhận diện tăng và đồng thời độ mạnh của khóa sinh ra giảm xuống Sự thay đổi giá trị δ có thể được thực hiện mà không cần phải huẩn luyện lại mạng ANN Khi δ thay đổi thì vector ES sẽ được mở rộng hoặc nén lại,
vì vậy mà vector HD cũng được cập nhật theo
3.9 Phân tích bảo mật
Đầu tiên, chúng tôi phân tích tính bảo vệ mẫu của lược đồ đề xuất (tính chất thứ 3 được phát biểu
ở đầu chương) Nghĩa rằng ta phải xét trường hợp một khóa bí mậtESđã bị lộ thì kẻ tấn công có
thể suy ngược lại được vector đặc trưng gốc hay không Như đã được giới thiệu, dữ liệu trợ giúp
phục hồi bao gồm mạng ANN đã được huấn luyện, vector P và HD Rõ ràng sự suy ngược này phải dựa vào mạng ANN Theo thiết lập thì mạng ANN có M nútở tầng nhập vàNnút ở tầng xuấtvới M>N Một cách tổng quát thì mạng ANN như một hệ phương trình tuyến tính với số biến
là Mnhiều hơn số phương trình là N Hệ phương trình tuyến tính có tính chất này được gọi là hệ
phương trình tuyến tính không thể xác định (underdetermine linear systems) với vô hạn nghiệm
Hiệu sốK – Lcàng lớn thì không gian nghiệm càng lớn; do đó càng khó biết những nghiệm nào là những vector đặc trưng gốc của người đăng ký Hơn nữa mỗi chiều của ESlà các phạm vi, việc xây dựng một vector Vđúng bằng cách lựa chọn từng giá trị trong mỗi phạm vi thì không được đảm bảo Thêm vào đó, một vectorV (giả định là được tái lập đúng)chỉ là một phiên bản làm tròn của các vector đầu ra O của mạng ANN trong khi chỉ các vectorOmới là giá trị đầu ra đúng Vì
những lý do trên, việc suy ngược từ ES về vector đặc trưng gốc là rất khó Hay nói cách khác, lược đồ này đảm bảo tính bảo vệ mẫu (Template Protection)
Trang 31Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
Tiếp theo, tính chất nhiều khóa có thể được sinh từ cùng đặc trưng sinh trắc được xem xét Khi
một khóa bí mật ESbị lộ, lược đồ sẽ sinh lại một vector số ngẫu nhiên mớiTO, tiến trình huấn luyện mạng ANN bắt đầu.Theo qui trình của lược đồ, một khóa bí mật mới ES được tạo ra.Như
vậy một khóa bí mật được thay thế bởi một khóa bí mật mới dễ dàng nên tính khả hủy bỏ(Revocable) cũng được đảm bảo
Tiếp tục với không gian tìm kiếm khóa được xem xét.Biết rằng khóa bí mật ESlà một vector vớiNphạm vi.Trong đó mỗi chiều ES ilà một phạm vi con trong phạm vị [0, 10 ] Bởi vìESđược
sinh từ vector ngẫu nhiênTO, nên vị trí của mỗi thành phầnES i trong phạm vi [0, 10 ] cũng được kế thừa tính ngẫu nhiên đó Vì vậy mà không gian tìm kiếm thực sự được đo lường bởi (8)
Không gian tìm kiếm được chỉ ra ở (8) thì lớn, vì vậy một tấn công vét cạn trên không gian này
rõ ràng không hiệu quả Thay vào đó, một tấn công láng giềngcó thể mạng lại hiệu quả hơn tìm
kiếm vét cạn nếu khoảng cách từ một vector Vcủa những người khác đến khóa bí mật của người
đăng ký hầu hết là nhỏ hơn một nữa không gian tìm kiếm vét cạn đo bởi (8).Chi tiết ước lượng không gian tìm kiếm láng giềng như sau
Định nghĩa 2: Khoảng cách từ một số nguyên dương nđến một phạm vi [min, max] là một số
dương và được xác đinh bởi (9)
Định nghĩa 4: Bước nhảy là việc tăng hay giảm một lượng không đổi và lớn hơn không từ một
giá trị nguyên dương n, lượng không đổi này được gọi là chiều dài bước nhảy
Định nghĩa 5: Cho trước một phạm vi R, một chiều dài bước nhảy là tối ưu nếu nó đảm bảo rằng
mọi giá trị nkhông “matching” với R sẽ trở nên “matching” với R sau một số bước nhảy tối thiểu
Bổ đề 1: Cho trước một phạm vi[min, max], chiều dài bước nhảy tối ưu là (max – min + 1)
Bổ đề2: Cho trước một phạm viR = [min, max], một chiều dài bước nhảy lớn hơn λ = (max – min
+ 1) sẽ không đảm bảo một giá trị ntừ không “matching” trở nên “matching” với R sau một số bước nhảy S (S ≥ 1)
Trang 32Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
Bổ đề3: Cho trước một phạm vi R = [min, max], môt chiều dài bước nhảy λ’ mà bằng hoặc nhỏ
hơn λ = (max – min + 1) đảm bảo rằng mọi giá trị không “matching”nsẽ trở nên “matching” với
R sau một số bước nhảyS (S ≥ 1)
Từ bổ đề 2 và 3, ta dễ dàng thấy bổ đề 1 là đúng Khi mọi thành phần của vector V k (của người
thứ k khác người đăng ký) là “matching” với phạm vi thành phần tương ứng trong ES, thì khóa
bí mật ES bị lộ Với tấn công láng giềng này, kẻ tấn công sẽ tìm kiếm trên không gian lân cận của V k bằng cách thay đổi giá trị các thành phần của V k Theo bổ đề 1 thì chiến lược duyệt trên
không gian lân cận của V k hiệu quả nhất là sử dụng chiều dài bước nhảy |ES i| cho chiều tương ứng
V k,i trong vector V k Thực tế, chiều dài bước nhảy này thì được biết bởi kẻ tấn công vì |ES i | =
|HD i | Số bước nhảy từ một V k,i đến một ES iđược xác định bởi (10)
, = , ,
Cho trước một khóa bí mật ES, không gian láng giềng của một vector V kđảm bảo có chứa một
vector V’ k mà “matching” với ES được đo bởi (11) và (12) theo số bit hỗn độn (entropy bit) và
được gọi là độ hỗn độn còn lại (remaining entropy) Trong đó, (11) là cận dưới và (12) là cận
trên của không gian láng giềng của V k.Trong (11) và (12) số các bước nhảy ở mỗi thành phần
được nhân 2 vì kẻ tấn công không biết phải tăng hay giảm mỗi V k,i để “matching” với ES itương ứng
( ) = , ≥ 1
Phương trình (11) đo lường trường hợp tốt nhất mà kẻ tấn công với mộtV kcó thể tìm thấy khóa bí
mậtES Thực tế, trường hợp này thì khó xảy ra vì kẻ tấn công không biết chính xác bao nhiêu bước nhảy từ mỗi một V k,i đến một phạm viES i Thông thường, kẻ tấn công phải giả định một số
bước nhảy lớn nhất NScho tất cả các cặp V k,i vàES i Sau đó, anh ta sẽ tìm kiếm trên không gian
láng giếng với độ lớn được chỉ ra bởi (12).Dĩ nhiên, kẻ tấn công không biết chính xác giá trị NS
này.Vì vậy, khi một tìm kiếm vét cạn trên không gian (12) không thành công, kẻ tấn công phải
dùng một NS’ >NSvà bắt đầu tìm kiếm trên không gian láng giềng mới tương ứng với NS’.Không gian láng giềng tương ứng với NS không phải là không gian con của không gian láng giềng tương ứng với NS’
Các phương trình (11) và (12) ở trên đo lường tính bảo mật của một khóa ES chống lại một V k
của một người nào đó khác người đăng ký Để ước lượng độ bảo mật của lược đồ, đề tài đưa ra khái niệm độ hỗn độn còn lại trung bình (average remaining entropy) Nó có ý nghĩa là số bit trung bình phân biệt một người đăng ký với một dân số Các ước lượng cụ thể được chỉ ra ở (15)
Trang 33Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
và (16) mà có ý nghĩa tương tự như (11) và (12).Tuy nhiên, (15) và (16) có ý nghĩa là các cận
của không gian láng giềng trung bình của một tập các vector V ktừ một dân số đối với một khóa bí
và đô đo ở (16) được gọi là LARE (Lower Average Remaining Entropy)
3.10 Mã hóa kết hợp đa đặc trưng sinh trắc
Như đã trình bày ở trên, lược đồ sinh khóa đề xuất áp dụng cho thông số đầu vào có thể là các vector đặc trưng sinh trắc đơn mà được trích rút từ một đặc trưng sinh hay là một vector đặc trưng sinh trắc tổng hợp mà được ghép nối tuần tự từ những vector đặc trưng đơn Ở phần này,
đề tài trình bày một số mức kết hợp đa đặc trưng khả áp dụng cho lược đồ Nhận thức một cách trực giác rằng việc sử dụng nhiều đặc trưng sinh trắc trong lược đồ sinh khóa sẽ mang tính chất
“và” mà yêu cầu sự phục hồi chính xác tất cả các mẫu đăng ký/khóa từ tất cả các đặc trưng sinh trắc được sử dụng.Điều này sẽ làm tăng FRR và đồng thời làm giảm FAR.Hay nói cách khác, nó
sẽ tăng cường độ bảo mật nhưng đồng thời làm giảm hiệu suất nhận diện.Để thuận tiện trong
việc mô tả, một vài ký hiệu sau được sử dụng.SCH là lược đồ đề xuất, F ilà vector đặc trưng trích
rút từ đặc trưng sinh trắc thứ i, KeyGen là hàm sinh khóa mã hóa từ một thông tin bí mật như ES,
và Klà khóa mã hóa.Ba mức kết hợp khả áp dụng cho lược đồ như sau
1 Trộn khóa (key fusion): K i = KeyGen(SCH(F i )), i=1…n, n>1 Trường hợp này sẽ có
nhiều khóa được sinh ra Do đó đa mã hóa sẽ được sử dụng để bảo vệ dữ liệu
2 Trộn mẫu (template fusion): K = KeyGen(SCH(F 1 ) || … || SCH(F i ) || … || SCH(F n )), i
=1…n, n>1, || is a string concatenation function
3 Trộn đặc trưng (Feature fusion): K = KeyGen(SCH(F 1 || … || F i || … || F n )), i=1…n, n>1 Trường hợp với trộn khóa và trộn mẫu, chỉ cần một mẫuSCH(F i) không được phục hồi đúng sẽ dẫn đến một phục hồi sai toàn cục.Điều này có nghĩa sẽ làm giảm đồng thời TAR (True Accept Rate) và FAR (False Accept Rate).Cụ thể là TAR ≤ min[TARi] and FAR ≤ min[FARi] Giả sử
hàm KeyGen có thể sinh khóa có chiều dài bit đủ lớn thì khóa K trong trường hợp trộn mẫu và tổng hợp các khóaK= K 1 K 2… K ntrong trường hợptrộn khóa có độ bảo mật bằng nhau Nhưng trong trường hợp trộn khóa, do phải áp dụng đa mã hóa nên thời gian mã hóa hay giải mã sẽ chiếm nhiều thời gian hơn ở trường hợp trộn mẫu Thời gian dài hơn này có thể không đáng kể
Trang 34Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
hoặc rất nhiều tùy vào việc áp dụng một giải pháp đa mã hóa cụ thể.Vì vậy giải pháp trộn khóa không chiếm ưu thế so với giải pháp trộn mẫu
Trong trường hợp trộn đặc trưng, gọiF i , F’ i vàF” ilần lượt là vector đặc trưng từ đặc trưng sinh
trắc thứicủa người đăng ký tại giai đoạn đăng ký, của người đăng ký tại giai đoạn khôi phục khóa, vàcủa kẻ mạo danh.Gọiε i vàω i là độ khác biệt giữa F i vàF i ’, giữaF i vàF” i Vì vậy, sự khác biệt giữa F’ i vàF” i làF” i – F’ i = ω i –ε i Dĩ nhiên rằng ta phải có (ω i –ε i) > 0 ∀ = 1…n, n>1.Sau khi trộn đặc trưng, vector tổng hợp của người đăng ký ở giai đoạn đăng ký, của người đăng ký ở giai
đoạn khôi phục khóa, và của kẻ mạo danh lần lượt làF=F 1 ||F 2 || …||F n , F’=F’ 1 ||F’ 2 || …||F’ n,
vàF”=F” 1 ||F” 2 || …||F” n Cũng theo đó mà sự khác biệt giữa F”vàF’làF” – F’ = (F” – F) – (F’ – F) = (F” 1 ||F” 2 || …||F” n –F 1 ||F 2 || …||F n )– (F’ 1 ||F’ 2 || …||F’ n –F 1 ||F 2 || …||F n) =∑ ( ′′ − ) −
∑ ( ′ − ) =∑ – ∑ = ∑ ( − )> (ω i –ε i ) = F” i – F’ i Viết ngắn gọn cho dễ thấy là F” – F’>F” i – F’ i.Bất đẳng thức này chỉ ra rằng sự khác biệt của vector tổng hợp của người đăng ký lúc phục hồi khóa và của kẻ mạo danh thì lơn hơn sự khác biệt của vector đơn của người đăng ký lúc phục hồi khóa và của kẻ mạo danh.Điều này là một lợi thế giúp lược đồ phân biệt hiệu quả hơn giữa người đăng ký và kẻ mạo danh.Vì vậy mà nó có thể dẫn đến việc đạt một cân bằng tốt hơn giữa hiệu suất nhận dạng và độ bảo mật.Với mức trộn đặc trưng này thì cũng chỉ có một khóa duy nhất được sinh ra từ lược đồ, vì vậy thời gian mã hóa hay giải mã sẽ bằng ở trường hợp trộn mẫu
Một điểm cần thảo thuận nữa là bởi vì các nút nhập ở tầng nhập của mạng ANN có vai trò như nhau, nên vị trí của mỗi phần tử (từ vector đặc trưng đơn) trong vector đặc trưng tổng hợp thì không quan trọng, miễn là vị trí của những phần tử này trong vector tổng hợp là như nhau trong giai đoạn đăng ký và giai đoạn phục hồi khóa
Trang 35Báo cáo tổng kết đề tài nghiên cứu khoa học cấp ĐHQG-HCM loại C
CHƯƠNG 4: MÃ HÓA Dữ LIệU
Sau khi các đặc trưng sinh trắc đi qua lược đồ, khóa mã hóa được sinh ra và sẵn sàng để mã hóa/giải mã dữ liệu Việc tiếp theo là chọn lựa một giải thuật mã hóa phù hợp để bảo vệ dữ liệu Trong trường hợp có nhiều hơn một khóa sinh ra từ các đặc trưng sinh trắc, giải pháp đa mã hóa
sẽ được áp dụng để bảo vệ dữ liệu
4.1 Tổng quanmật mã hóa dữ liệu
Mật mã (Cryptography) là một khoa học biểu diễn thông tin con người hiểu được dưới dạng mã
bí mật mà con người không thể hiểu được một cách trực tiếp Ngày nay, lĩnh vực mật mã đã trở nên vô cùng quan trọng và không thể thiếu trong mọi ứng dụng cần đến tính tin cậy và an toàn
dữ liệu Một số ứng dụng cụ thể của lĩnh vực mật mã như:
Mã hóa/giải mã dữ liệu nhằm mục đích bảo vệ dữ liệu không bị đánh cắp bởi những người không liên quan (dữ liệu ở đây có thể là cục bộ hay được truyền thông qua một kênh truyền không tin cậy)
Chứng thực số (Digital Certificates) nhằm đảm bảo rằng thông tin là từ một người hay tổ chức mà đã được khẳng định bởi chứng thực, ứng dụng này nhằm bảo vệ thông tin khỏi
Có nhiều cách để phân loại các giải thuật mã hóa.Tuy nhiên sự phân loại dựa vào số lượng khóa tham gia trong quá trình mã hóa/giải mã và phương thức hoạt động là phổ biến nhất Theo cách phân loại này, có 3 loại như sau:
Mã hóa khóa bí mật (Secret Key Cryptography - SKC): Hay còn gọi là mã hóa khóa đối xứng (Symmetric Key Cryptography) Trong đó, việc mã hóa và giải mã chỉ sử dụng chung một khóa Một cách tổng quan, mã hóa loại này có ưu điểm là tốc độ thực thi nhanh gấp rất nhiều lần so với mã hóa khóa công khai, tính bảo mật có thể từ yếu cho đến rất mạnh tùy thuộc vào từng giải thuật cụ thể cũng như chiều dài khóa sử dụng Do đó mà những giải thuật thuộc phân loại này được sử dụng để bảo vệ dữ liệu có kích thước lớn (tương ứng với ứng dụng đầu tiên được đề cập ở trên) Vì sử dụng chung khóa ở thời điểm mã hóa và giải mã nên khó khăn lớn nhất là việc phân phối khóa khi dùng những giải thuật thuộc phân loại này Dựa vào phương thức hoạt động mà các giải thuật mã hóa