nghiên cứu tìm hiểu về mật mã sinh trắc

76 472 0
nghiên cứu tìm hiểu về mật mã sinh trắc

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ VŨ THANH MINH NGHIÊN CỨU TÌM HIỂU VỀ MẬT MÃ SINH TRẮC KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công nghệ thông tin HÀ NỘI - 2010 1 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ VŨ THANH MINH NGHIÊN CỨU TÌM HIỂU VỀ MẬT MÃ SINH TRẮC KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công nghệ thông tin Giáo viên hướng dẫn : TS Hồ Văn Hương HÀ NỘI - 2010 2 LỜI CÁM ƠN Em xin chân thành cám ơn toàn thể các thầy cô giáo trong trường Đại học Công nghệ, Đại học Quốc gia Hà Nội đã hết lòng dạy dỗ, chỉ bảo, tạo điều kiện tốt cho em trong suốt quá trình học tập cũng như trong thời gian thực hiện khoá luận tốt nghiệp này. Đặc biệt, em gửi lời cám ơn chân thành và sâu sắc tới TS Hồ Văn Hương –Ban cơ yếu chính phủ, người đã trực tiếp quan tâm, tận tình hướng dẫn, giúp đỡ và tạo điều kiện hết sức thuận lợi cho em trong quá trình thực hiện khoá luận. Cảm ơn các bạn đồng khoá và gia đình đã động viên, giúp đỡ tôi rất nhiều trong quá trình học tập tại Khoa Công nghệ cũng như trong thời gian thực hiện khoá luận. Hà nội, ngày 21 tháng 05 năm 2010 VŨ THANH MINH 3 DANH MỤC CÁC HÌNH 4 Tên hình Trang Hình 1.1: Quá trình mã hóa và giải mã 8 Hình 1.2: AddRoundKey bản rõ và khóa 9 Hình 1.3: Bước SubBytes 10 Hình 1.4: Bước ShiftRow 10 Hình 1.5: Bước MixColumns 11 Hình 1.6: Bước InvShiftRow 11 Hình 1.7: Hộp S-nghịch 12 Hình 1.8: Sơ đồ hệ mật RSA 13 Hình 1.9: Chữ ký số RSA 14 Hình 1.10:Quá trình băm thông điệp 15 Hình 1.11:Quá trình ký số 15 Hình 1.12:Gửi thông điệp 15 Hình 1.13:Xác minh chữ ký số 16 Hình 1.14:Băm thông điệp 16 Hình 1.15:Xác minh thông điệp 17 Hình 1.16:Băm nhiều thông điệp cho ra cùng một kết quả băm 17 Hình 1.17: Mảng 64 hằng số 32-bit Ki{256} 22 Hình 1.18 : Các giá trị khởi tạo của giá trị băm 23 Hình 2.1: Một số vân tay tìm được từ thời xưa 26 Hình 2.2: Các loại vân tay 30 Ký hiệu các cụm từ viết tắt 5 Viết tắt Tiếng Anh Tiếng Việt AES Advanced Encryption Standard Chuẩn mã hóa tiên tiến Bio Biometric Sinh trắc CA Certificate Authority Chủ quyền chứng nhận MỤC LỤC Chương 1: TỔNG QUAN VỀ MẬT MÃ 8 1.1.Hệ mật mã 8 1.2.Hệ mật mã khóa đối xứng và thuật toán mã hóa AES 8 1.2.1 Hệ mật mã khóa đối xứng 8 1.2.2 Thuật toán mã hóa AES 9 1.3.Hệ mật mã khóa công khai 12 1.4.Chữ ký số 13 1.5.Hàm băm 17 1.5.1.Hàm băm: 17 1.5.2.Hàm băm SHA - 256 19 1.5.2.1 Các tham số, ký hiệu và thuật ngữ 19 1.5.2.2 Phép toán 20 1.5.2.3 Chuyển đổi dữ liệu 20 1.5.2.4 Các thuật toán 21 1.5.2.5 Các hàm chức năng sử dụng trong SHA-256 21 1.5.2.6 Các hằng số sử dụng trong SHA-256 21 1.5.2.7 Quá trình tiền xử lý thông điệp M 22 1.5.2.8 Thuật toán băm SHA-256 23 1.6. Kết luận 25 CHƯƠNG 2. SINH TRẮC HỌC KẾT HỢP VỚI MẬT MÃ 26 2.1.Sinh trắc học: 26 2.2.Các khái niệm sinh trắc học về vân tay 27 2.2.1 Khái niệm vân tay 27 2.2.2 Các loại vân tay 28 2.2.3.Các đặc trưng của vân tay 30 2.2.3.1 Đặc trưng tổng thể 31 2.2.3.1 Đặc trưng cục bộ 32 2.3.Sinh trắc học kết hợp với mật mã: 34 2.4.Kết luận 36 CHƯƠNG 3:THUẬT TOÁN MÃ HÓA SINH TRẮC 37 3.1 Xử lý ảnh nhận dạng 37 3.2. Sự tương quan 37 3.3. Những yêu cầu của hệ thống 38 3.4 Thiết kế hàm lọc 38 3.5 Độ an toàn của hàm lọc 40 3.6 Bộ lọc tạm thời 40 3.7 Thiết kế bộ lọc an toàn 42 6 3.8 Quá trình đăng ký và xác thực 43 3.8.1 Quá trình đăng ký 43 3.8.2 Quá trình xác thực 47 3.9 Kết luận 51 Chương 4: XÂY DỰNG ỨNG DỤNG 52 4.1 Giới thiệu 52 4.2 Các thuật toán được sử dụng 52 4.2.1 Xử lý ảnh 52 4.2.2 Biến đổi Fourier rời rạc 53 4.2.3 Sinh mảng ngẫu nhiên 54 4.2.4 Các phép toán 55 4.2.4.1 Các phép toán với số phức 55 4.2.4.2 Các phép toán liên quan tới ma trận 55 4.3 Xây dựng ứng dụng mật mã sinh trắc 57 4.3.1 Sinh khóa sinh trắc 57 4.3.2 Mã hóa sử dụng khóa sinh trắc 60 4.4 Giao diện ứng dụng “mật mã sinh trắc” và cách sử dụng 61 4.1 Kết luận 65 KẾT LUẬN…………………………………………………………………. 66 TÀI LIỆU THAM KHẢO ………………………………………………… .67 7 CHƯƠNG 1 . TỔNG QUAN VỀ MẬT MÃ VÀ ỨNG DỤNG Với sự phát triển nhanh chóng của Internet và việc lưu trữ các dữ liệu nhạy cảm trên mạng, mật mã đang trở thành một công cụ khá quan trọng của bảo mật máy tính. Nhiều thuật toán mã hóa đã được sử dụng rất phổ biến trên thế giới để đảm bảo an toàn cho thông tin. Hai hệ mật phổ biến nhất hiện nay là hệ mật khóa đối xứng và hệ mật khóa công khai. 1.1 Hệ mật mã Hệ mật mã được định nghĩa là bộ 5 (P, C, K, E, D), trong đó: P : tập hữu hạn các bản rõ có thể C : tập hữu hạn các bản mã K : tập các khóa E : tập các hàm lập mã D : tập các hàm giải mã Với mỗi k ∈ K có một hàm lập mã e k ∈ E, e k : P → C và một hàm giải mã d k ∈ D, d k : C → P sao cho dk(ek(x)) = x với ∀ x ∈ P. Hình 1.1 Quá trình mã hóa và giải mã 1.2 Hệ mật mã khóa đối xứng và thuật toán mã hóa AES 1.2.1 Hệ mật mã khóa đối xứng Hệ mật mã khóa đối xứng là hệ mật mã sử dụng khóa lập mã và khóa giải mã giống nhau. Cứ mỗi lần truyền tin bảo mật cả người gửi A và người nhận B sẽ thỏa thuận với nhau một khóa chung k, sau đó người gửi sẽ dùng ek để lập mã cho thông báo gửi đi 8 và người nhận sẽ dùng dk để giải mã thông điệp nhận được từ người gửi A. Các hệ mật mã dịch chuyển, thay thế là hệ mật mã khóa đối xứng, nhưng điển hình cho hệ mật mã khóa đối xứng là hệ mã hóa chuẩn AES, DES. DES được xây dựng tại Mỹ trong những năm 70 theo yêu cầu của Văn phòng quốc gia về chuẩn(NBS) và được sự thẩm định của ủy ban an ninh quốc gia. DES kết hợp cả hai phương pháp thay thế và chuyển dịch. DES thực hiện mã hóa trên từng khối bản rõ theo từng xâu 64bit với khóa là xâu 56 bit và cho ra bản mã là xâu 64bits. Hiện nay DES và biến thể của nó 3DES vẫn được sử dụng thành công trong nhiều ứng dụng. 1.2.2 Thuật toán mã hóa AES Thuật toán mã hóa AES là thuật toán mã hóa khối đối xứng, xử lý các khối dữ liệu có độ dài 128 bit, sử dụng khóa mã có độ dài 128 bit, 192 bit hoặc 256 bit tương ứng với “AES-128”, “AES-192”, “AES-256”. Trong khóa luận này, chúng ta sử dụng thuật toán AES với độ dài khóa là 256 bit tương ứng với “AES-256”. Chuẩn mã hóa tiên tiến AES: AES là một thuật toán mã hóa khối được chính phủ hoa kỳ áp dụng làm chuẩn mã hóa. AES có thể dễ dàng thực hiện với tốc độ cao bằng phần mềm hoặc phần cứng và không đòi hỏi nhiều bộ nhớ. Do AES là một tiêu chuẩn mã hóa mới, nó đang được tiến hành để sử dụng đại trà. AES làm việc với từng khối dữ liệu 4x4. Quá trình mã hóa bao gồm 4 bước: • AddRoundKey: mỗi byte của khối được kết hợp với khóa con. Mỗi khóa con trong chu trình khóa được tạo ra từ khóa chính với quá trình tạo khóa con Rijdael. Mỗi khóa có độ dài như các khối. Quá trình được thực hiện bằng phép XOR từng bit của khóa con vơi khối dữ liệu. Hình 1.2: AddRoundKey bản rõ và khóa 9 • Bước SubBytes: các bytes được thay thế thông qua bảng S-box. Đây chính là quá trình phi tuyến của thuật toán. Hộp S-box này được tạo ra trong từ nghịch đảo trong trường hữu hạn GF( 28 ) có tính chất phi tuyến. Để chống lại các tấn công trên các đặc tính đại số, hộp S-box này được tạo nên bằng cách kết hợp nghịch đảo với một phép biến đổi affine khả nghịch. Hình 1.3: Bước SubBytes • Bước ShiftRow: các hàng được dịch vòng một số vị trí nhất định. Đối với AES hàng đầu được giữ nguyên. Mỗi byte của hàng thứ hai được dịch sang trái một bit. Tươnng tự mỗi byte của hàng thứ 3 và thứ 4 lần lượt được dịch sang trái 2 hoặc 3 bit. Hình 1.4: Bước ShiftRow • Bước MixColumns: bốn byte trong từng cột được kết hợp lại theo một phép [...]... lựa chọn để bảo mật khóa mã Xác thực sinh trắc học đưa ra một cơ chế mới bằng cách sử dụng một đặc trưng sinh trắc học để bảo mật khóa mã Việc nhập mật mã để truy nhập khóa mã được thay bằng quá trình xác thực sinh trắc Khi người dùng muốn truy nhập khóa mã thì họ sẽ được yêu cầu một mẫu sinh trắc( trong khóa luận này chúng ta sử dụng dấu vân tay là đặc trưng sinh trắc học), mẫu sinh trắc này cùng với... Trong chương “Tổng quan về mật mã chúng ta đã tìm hiểu về khái niệm mật mã, các hệ mật mã khóa đối xứng và hệ mật mã khóa công khai, chữ ký số… Chúng ta cũng đã tìm hiểu về chuẩn mã hóa AES – chuẩn mã hóa tiên tiến đang ngày càng được sử dụng rộng rãi, thuật toán băm SHA-256 là thuật toán băm phổ biến ngày nay, nó đang được sử dụng để thay thế thuật toán băm MD5 Các thuật toán mã hóa và thuật toán băm... tảng cơ bản để xây dựng lên một hệ thống mật mã an toàn 25 CHƯƠNG 2 SINH TRẮC HỌC KẾT HỢP VỚI MẬT MÃ 2.1 Sinh trắc học Sinh trắc học được định nghĩa như là các đặc điểm sinh học duy nhất đo được để nhận dạng tự động hoặc xác thực một người Việc phân tích thống kê các đặc điểm sinh học này được gọi theo tên khoa học là sinh trắc học Ngày nay, công nghệ sinh trắc học chủ yếu được sử dụng để phân tích... bước AddRoundKey trong quá trình giải mã 1.3 Hệ mật mã khóa công khai Khóa mã hóa còn gọi là khóa công khai dùng để mã hóa dữ liệu Khóa giải mã còn gọi là khóa bí mật dùng để giải mã dữ liệu Trong hệ mật này khóa mã hóa và khóa giải mã là khác nhau Về mặt toán học, khi biết khóa công khai ta khó có thể tính được khóa bí mật Khóa bí mật (private key) được giữ bí mật trong khi khóa công khai (public key)... vào mã dễ nhớ để giải khóa mã Tuy nhiên, trong thực tế nhiều người có xu hướng sử dụng các từ đơn giản, dễ nhớ hoặc các dữ liệu cá nhân hoặc ghi lại mật mã ra giấy để tránh quên mật mã Điều này làm tăng nguy cơ rủi ro về bảo mật Ngoài ra, vì không có sự liên kết trực tiếp giữa mật mã và người dùng nên hệ thống không thể phân biệt người dùng hợp lệ với kẻ tấn công đoạt được mật mã Do vậy, sinh trắc. .. là chỉ có người sử dụng hợp lệ mới có thể dùng được khóa Hệ thống mật mã sinh trắc gồm hai quá trình : mã hóa và giải mã Quá trình mã hóa bắt đầu bằng việc nhập bản rõ và sử dụng đặc trưng sinh trắc làm khóa mã Quá trình này kết thúc khi cho ra văn bản đã được mã hóa Quá trình giải mã được thực hiện ngược lại, đầu vào là đặc trưng sinh trắc và đầu ra là bản rõ Tuy nhiên, quá trình này phải chịu trách... lưu trữ mẫu sinh trắc Nếu mẫu xác thực này tương đương với mẫu có trong cơ sở dữ liệu lưu trữ thì hệ thống sẽ cho phép truy nhập khóa mã từ nơi lưu trữ an toàn và có thể dùng để mã hóa hoặc giải mã dữ liệu yêu cầu Do đó xác thực sinh trắc học có thể thay thế cho việc sử dụng mật mã để bảo vệ mật khóa Việc làm này có hai ưu điểm: thứ nhất là người dùng không phải nhớ mật mã và xác nhận bảo mật; thứ hai... khai kB để mã hóa dữ liệu muốn gửi tới người B và người B sẽ dùng khóa bí mật của mình để giải mã thông điệp nhận được Có nhiều hệ thống mật mã sử dụng khóa công khai được triển khai rộng rãi như hệ mật RSA, hệ mật Elgamal sử dụng giao thức trao đổi khóa Diffie – Hellman và nổi lên 12 trong những năm gần đây là hệ mật dựa trên đường cong Eliptic Trong số những hệ mật mã trên thì hệ mật mã RSA được... thực tế, hệ mật mã khóa đối xứng được sử dụng để bảo mật dữ liệu, còn hệ mật mã khóa công khai được sử dụng cho chữ ký số và thay đổi khóa bí mật giữa những người sử dụng Tuy nhiên, bất kể hệ mật nào thì mức bảo mật cũng phụ thuộc vào các khóa mã tương ứng Do độ dài khóa lớn nên người dùng rất khó nhớ và nhập lại mỗi khi được yêu cầu Thay vào đó người ta sử dụng một mã dễ nhớ để mã hóa khóa mã, khóa này... việc thực thi hệ mã hóa công khai Hệ mật RSA do Rivest, Shamir, và Adlman phát minh ra, được công bố đầu tiên vào tháng 8 năm 1977 trên tạp chí Scientific American Tính bảo mật của hệ mật mã RSA được bảo đảm bằng độ phức tạp của một bài toán số học nổi tiếng là bài toán phân tích 1 số thành tích của các số nguyên tố Sơ đồ hệ mật mã RSA: Hình 1.8 Sơ đồ hệ mật RSA 1.4 Chữ ký số Mật mã khóa công khai . LỤC Chương 1: TỔNG QUAN VỀ MẬT MÃ 8 1.1.Hệ mật mã 8 1.2.Hệ mật mã khóa đối xứng và thuật toán mã hóa AES 8 1.2.1 Hệ mật mã khóa đối xứng 8 1.2.2 Thuật toán mã hóa AES 9 1.3.Hệ mật mã khóa công khai. Quá trình mã hóa và giải mã 1.2 Hệ mật mã khóa đối xứng và thuật toán mã hóa AES 1.2.1 Hệ mật mã khóa đối xứng Hệ mật mã khóa đối xứng là hệ mật mã sử dụng khóa lập mã và khóa giải mã giống nhau MINH NGHIÊN CỨU TÌM HIỂU VỀ MẬT MÃ SINH TRẮC KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công nghệ thông tin HÀ NỘI - 2010 1 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ VŨ THANH MINH NGHIÊN

Ngày đăng: 24/08/2014, 00:11

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan