Đồ án Nghiên cứu, tìm hiểu chữ ký số và ứng dụng của nó để kiểm soát, xác thực và bảo vệ thông tin trong hộ chiếu điện tử

pdf 58 trang huongle 1670
Bạn đang xem 20 trang mẫu của tài liệu "Đồ án Nghiên cứu, tìm hiểu chữ ký số và ứng dụng của nó để kiểm soát, xác thực và bảo vệ thông tin trong hộ chiếu điện tử", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfdo_an_nghien_cuu_tim_hieu_chu_ky_so_va_ung_dung_cua_no_de_ki.pdf

Nội dung text: Đồ án Nghiên cứu, tìm hiểu chữ ký số và ứng dụng của nó để kiểm soát, xác thực và bảo vệ thông tin trong hộ chiếu điện tử

  1. LỜI CẢM ƠN Làm Đồ án tốt nghiệp là cơ hội để sinh viên ngành CNTT vận dụng những kiến thức trong quá trình học tập vào thực tiễn. Trong quá trình làm Đồ án em đã đƣợc sự giúp đỡ tận tình của các thầy cô giáo, các cơ quan nơi em thực tập và xin tài liệu. Em xin chân thành gửi lời cảm ơn tới Ban giám hiệu trƣờng Đại học Dân lập Hải Phòng, các thầy cô giáo; em xin chân thành cảm ơn TSKH Thầy giáo Hồ Văn Canh đã tận tình chỉ bảo và giúp đỡ em trong quá trình tiếp cận đề tài và thực hiện hoàn thành đồ án tốt nghiệp; Đồ án tốt nghiệp là kết quả từ sự cố gắng, nỗ lực của em sau một thời gian nghiên cứu và tìm hiểu đề tài, là bƣớc tập dƣợt cần thiết và bổ ích cho công việc của em trong tƣơng lai. Mặc dù đã có nhiều cố gắng song khả năng của bản thân có hạn nên đồ án của em còn nhiều thiếu sót, em mong nhận đƣợc sự đóng góp ý kiến, chỉ bảo của các thầy cô giáo, các bạn sinh viên để em có thể rút ra những kinh nghiệm bổ ích cho bản thân. Em xin chân thành cảm ơn! Hải Phòng, ngày tháng năm 2010 Sinh viên Bùi Đức Tuấn
  2. MỤC LỤC LỜI NÓI ĐẦU 1 CHƢƠNG 1: TỔNG QUAN HẠ TẦNG CƠ SỞ MÃ HÓA CÔNG KHAI VÀ CHỮ KÍ SỐ 2 1.1. TỔNG QUAN HẠ TẦNG CƠ SỞ MÃ HÓA CÔNG KHAI 2 1.1.1 Giới thiệu về mật mã học 2 1.1.2 Hệ thống mã hóa (cryptosystem) 3 1.1.3. Hàm băm 11 1.2. CHỮ KÍ SỐ 15 1.2.1. Giới thiệu về chữ kí số 15 1.2.2. Quá trình kí và xác thực chữ kí 17 CHƢƠNG 2: CÁCH THỨC LƢU TRỮ VÀ XỬ LÝ THÔNG TIN TRONG CON CHIP ĐIỆN TỬ 22 2.1. HỘ CHIẾU ĐIỆN TỬ 22 2.1.1. Hộ chiếu điện tử là gì? 22 2.1.2. Sự cần thiết phải triển khai hộ chiếu điện tử 23 2.2. TIÊU CHUẨN CỦA ICAO VỀ HỘ CHIẾU ĐIỆN TỬ 24 2.2.1. Cấu trúc và tổ chức hộ chiếu điện tử 24 2.2.2. Cấu trúc dữ liệu của chip ICC 26 2.2.3. Lƣu trữ vật lý 29 CHƢƠNG 3: ỨNG DỤNG CỦA CHỮ KÝ SỐ VÀO VIỆC KIỂM SOÁT, XÁC THỰC VÀ BẢO VỆ THÔNG TIN TRONG HỘ CHIẾU ĐIỆN TỬ 34 3.1. MỤC ĐÍCH, YÊU CẦU CỦA VIỆC BẢO MẬT HỘ CHIẾU ĐIỆN TỬ 34 3.2. CƠ CHẾ BẢO MẬT HỘ CHIẾU ĐIỆN TỬ DO ICAO ĐƢA RA 34 3.2.1. Các thuật toán đƣợc sử dụng trong hệ thống bảo mật 37 3.2.2. Hệ thống cấp phát và quản lý chữ ký số trong hộ chiếu điện tử 38 CHƢƠNG 4: LẬP TRÌNH ỨNG DỤNG THỬ NGHIỆM CHỮ KÍ SỐ ĐỂ MÃ HÓA BẢO VỆ THÔNG TIN 50 KẾT LUẬN 54 DANH MỤC TÀI LIỆU THAM KHẢO 55
  3. DANH MỤC CÁC TỪ VIẾT TẮT BAC Basic Access Control – Phƣơng pháp kiểm soát truy cập cơ bản DES Data Encryption Standard – Thuật toán mã hóa dữ liệu chuẩn CSCA Country signing Certificate Authority – Cơ quan có thẩm quyền cấp phát chữ kí quốc gia CA Certificate Authority – Cơ quan có thẩm quyền cấp phát chữ kí số CRL Certificate Revocation List – Danh sách chứng chỉ bị thu hồi PKC Public Key Crytography – Thuật t oán mã hóa khóa công khai DV Document Verifier – xác thực tài liệu EAC Advanced Access Control – Phƣơng pháp kiểm soát truy cập nâng cao PKI Public Key Infrastructure – Cơ sở hạ tầng khóa công khai PKD Public Key Directory – Thƣ mục khóa công khai do ICAO thiết lập để các nƣớc thành viên truy cập sử dụng ICAO International Civil Aviation Orgnization – Tổ chức hàng không dân dụng quốc tế ICC Intergrated Circuit Chip – Vi mạch tích hợp SHA Secure Hash Standard – Thuật toán băm dữ liệu chuẩn IS Inspection System – Hệ thống kiểm soát tại các cửa khẩu quốc tế ISO International Organization for Standardization – Tổ chức tiêu chuẩn quốc tế LDS Logical Data Structure – Cấu trúc dữ liệu lôgic NIST National Institute of Standard and Technology – Học viện quốc gia về kĩ thuật và tiêu chuẩn (thuộc Mỹ) MRZ Machine Readable Zone – Vùng đọc đƣợc bằng máy trên hộ chiếu RFIC Radio Frequency Integrated Chip – Vi mạch tích hợp có khả năng trao đổi dữ liệu bằng sóng vô tuyến (radio) RFID Radio Frequency Identification – Nhận dạng bằng sóng vô tuyến
  4. LỜI NÓI ĐẦU Hiện nay, công nghệ sinh trắc học nói riêng và các công nghệ bảo vệ hộ chiếu, thị lực, các loại giấy tờ lien quan xuất nhập cảnh nói chung đang đƣợc nghiên cứu, phát triển rất mạnh mẽ trên thế giới. Đặc biệt là sau sự kiện 11/9/2001 nƣớc Mĩ bị tấn công khủng bố, tất cả các nƣớc trên thế giới đều rất quan tâm đến việc củng cố hệ thống an ninh, áp dụng nhiều biện pháp kĩ thuật nghiệp vụ để bảo vệ, chống làm giả hôh chiếu giấy tờ xuất nhập cảnh, đồng thời tăng cƣờng kiểm tra, kiểm soát tại các cửa khẩu quốc tế để kịp thời phát hiện và ngăn chặn các phần tử khủng bố quốc tế. Mặt khác tình hình xuất nhập cảnh trái phép cũng diễn ra phức tạp. Hộ chiếu truyền thống không đáp ứng đƣợc hết yêu cầu đặt ra về tính tiện lợi của loại giấy tờ mang tính tƣơng tác toàn cầu đó là độ an toàn và bảo mật thông tin, tránh làm giả và phải dễ dàng thuận tiện cho cơ quan kiểm soát xuất nhập cảnh cũng nhƣ công dân các quốc gia khi xuất nhập cảnh. Vì vậy trong bản nghị quyết của Tổ chức hàng không dân dụng thế giới (ICAO) phát hành năm 2003, tất cả các thành viên của tổ chức này sẽ triển khai ứng dụng hộ chiếu điện tử trƣớc năm 2010. Ngày nay, với những ứng dụng của CNTT, hộ chiếu điện tử đã nghiên cứu và đƣa vào triển khai ,ứng dụng thực tế tại nhiều nƣớc phát triển trên thế giới nhƣ Mỹ, Châu Âu, Việc sử dụng hộ chiếu điện tử đƣợc xem nhƣ là 1 trong những biện pháp có thể tăng cƣờng khả năng xác thực, bảo mật và an ninh cho cả ngƣời mang hộ chiếu cũng nhƣ quốc gia. Việt Nam đang trên con đƣờng hội nhập toàn diện với quốc tế, Chính phủ Việt Nam sẽ triển khai hộ chiếu điện tử trƣớc năm 2010. Việc nghiên cứu công nghệ, xây dựng mô hình bảo mật hộ chiếu điện tử của Việt Nam đang đƣợc đặt ra. Với thực tế đó em đã mạnh dạn nghiên cứu về bảo mât thông tin trong hộ chiếu điện tử và phát triển thành luận văn tốt nghiệp với đề tài: “ Nghiên cứu, tìm hiểu chữ ký số và ứng dụng của nó để kiểm soát, xác thực và bảo vệ thông tin trong hộ chiếu điện tử”. 1
  5. Chƣơng 1: TỔNG QUAN HẠ TẦNG CƠ SỞ MÃ HÓA CÔNG KHAI VÀ CHỮ KÍ SỐ 1.1. TỔNG QUAN HẠ TẦNG CƠ SỞ MÃ HÓA CÔNG KHAI 1.1.1 Giới thiệu về mật mã học 1.1.1.1. Giới thiệu Lý thuyết mật mã là khoa hoc nghiên cứu về cách viết bí mật, trong đó bản rõ đƣợc biến đổi thành bản mã, quá trình biến đổi đó đƣợc gọi là sự mã hóa. Quá trình ngƣợc lại biến đổi bản mã thành bản rõ đƣợc gọi là sự giải mã. Quá trình mã hóa đƣợc sử dụng chủ yếu để đảm bảo tính bí mật của các thông tin quan trọng, chẳng hạn nhƣ công tác tình báo, quân sự hay ngoại giao cũng nhƣ các bí mật về kinh tế, thƣơng mại. Trong những năm gần đây lĩnh vực hoạy động của kĩ thuật mật mã đã đƣợc mở rộng: mật mã hiện đại không chỉ duy nhất thực hiện giƣ bí mật mà còn cung cấp cơ chế cho nhiều hoạt đông khác và có 1 loạt các ứng dụng nhƣ: chứng thực khóa công khai, chữ kí số, bầu cử điện tử hay thanh toán điênh tử. Cả hai quá trinh mã hóa và giải mã đều đƣợc điều khiển bởi một hay nhiều khóa mật mã. Mã hóa và giải mã dễ dàng khi khóa đã biết, nhƣng giải mã gần nhue không thể nếu không sử dụng khóa. Quá trình tìm thử một phƣơng pháp ngắn gọn để giải mã bản mã khi khóa chƣa biết gọi là “thám mã”. 1.1.1.2. Các yêu cầu an toàn bảo mật thông tin Hiện nay các biện pháp tấn công ngày càng tinh vi, đe dọa tới sự an toàn và bảo mật thông tin. Vì vậy chúng ta cần thiết lập các phƣơng pháp đề phòng cần thiết. Mục đích cuối cùng của an toàn bảo mật là bảo vệ các thông tin và tài nguyên theo các tiêu chí sau: 1/. Tính bí mật Đảm bảo dữ liệu đƣơc truyền đi một cách an toàn và không thể bị lộ thông tin nếu nhƣ có ai đó cố tình muốn có đƣợc nội dung của dữ liệu gốc ban đầu. Chỉ có ngƣời nhận đã xác thực mới có thể lấy ra đƣợc nội dung của thông tin của dữ liệu đã đƣợc mã hóa. 2
  6. 2/. Tính xác thực Thông tin không thể bị truy nhập trái phép bởi những nguời không có thẩm quyền, giúp cho ngƣời nhận dữ liệu xác định đƣợc chắc chắn dữ liệu họ nhận đƣợc là dữ liệu gốc ban đầu của ngƣời gửi. Kẻ giả mạo không thể có khả năng để gỉa dạng một ngƣời khác hay nói cách khác là không thể mạo danh để gửi dữ liệu. Ngƣời nhận có khả năng kiểm tra nguồn gốc thông tin mà họ nhận đƣợc. 3/. Tính toàn vẹn Thông tin không thể bị sửa đổi, bị làm giả bởi những nguời không có thẩm quyền, giúp cho ngƣời nhận dữ liệu kiểm tra đƣợc rằng dữ liệu không bị thay đổi trong quá trình truyền đi. Kẻ giả mạo không thể có khả năng thay thế dữ liệu dữ liệu ban đầu bằng dữ liệu giả mạo. 4/. Tính không thể chối bỏ Thông tin đƣợc cam kết về mặt pháp luật của ngƣời cung cấp. Ngƣời gửi hay ngƣời nhận không thể chối bỏ sau khi đã gửi hoặc nhận thông tin . 5/. Đảm bảo tính sẵn sàng Thông tin luôn sẵn sàng để đáp ứng sử dụng cho ngƣời có thẩm quyền. Ngƣời gửi không thể bị từ chối việc gửi thông tin đi. 6/. Tính chốnƣg lặp lại Không cho phép gửi thông tin nhiều lần đến ngƣời nhận mà ngƣời gửi không hề hay biết. 1.1.2 Hệ thống mã hóa (cryptosystem) 1). Định nghĩa: Hệ mật mã là một hệ gồm có 5 thành phần: M, C, K, E, D M (Message): là tập hữu hạn các bản rõ. C (Ciphertext): là tập hữu hạn các bản mã. K (key): là tập các khóa. E (Encryption): là tập các quy tắc mã hóa có thể D (Decryption): là tập các quy tắc giải mã. C = Ek(P) và P = Dk(C); 3
  7. 2). Sơ đồ Bản Bản rõ mã Mã hóa Hình 1.1: Quá trình mã hóa C = Ek(P) Bản Bản mã rõ Giải mã Hình 1.2: Quá trình giải mã M = Dk(C) 1.1.2.1. Mã hóa đối xứng Là phƣơng pháp mã hóa sử dụng một cặp khóa đỗi xứng nhau: biết đƣợc khóa gửi thì cũng suy ra đƣợc khóa nhận và ngƣợc lại. Vì vậy đòi hỏi cả hai khoá đều phải đƣợc giữ bí mật, chỉ có ngƣời gửi và ngƣời nhận biết. Đây là phƣơng pháp mã hóa sơ khai nhất, điển hình là phƣơng pháp mã hóa Caesar: thay mỗi kí tự trong thông điệp bởi một kí tự đứng trƣớc hoặc sau nó k vị trí trong bảng chữ cái hoặc mã hóa theo phƣơng pháp thay thế. Việc mã hóa đƣợc thực hiện dựa trên một bảng chữ cái và một bảng chữ cái thay thế tƣơng ứng. Các phƣơng pháp mã hóa đối xứng là: - Mã dịch vòng (shift cipher): Giả sử M = C = K với 0<k<25, định nghĩa: Ek(M) = M + k mod 26 Và Dk(M) = C + k mod 26 Với M, C Є Z25 (nếu k = 3, hệ mật thƣờng gọi là mã Caesar). 4
  8. Ta sẽ sử dụng mã dịch vòng (với modulo 26) để mã hóa một văn bản tiếng anh thông thƣờng bằng cách thiết lập sự tƣơng ứng giữa các kí tự và các số dƣ theo modulo 26 nhƣ sau: A 0, B 1, Z 25. Ví dụ khóa cho mã dịch vòng là k = 11 và bản rõ là: wewillmeetatmidnight Trƣớc tiên biến đổi bản rõ thành dãy các số nguyên nhờ dùng phép tƣơng ứng trên. Ta có: w-22, e-4, w-22, i-8, l-11, m-12, e-4, e-4, t-19, a-0, t-19, m-12, i-8, d-3, n-13, i-8, g-6, h-7, t-19. Sau đó cộng 11 vào mỗi giá trị rồi rút gọn tổng theo modulo 26: 7 15 7 19 22 22 23 15 15 4 11 4 23 19 14 24 19 17 18 4 Cuối cùng biến đổi dãy số nguyên này thành các kí tự và thu đƣợc bản mã sau: HPHTWWXPPELEXTOYTRSE Và để giải bản mã này, ngƣời nhận sẽ biến đổi bản mã thành dãy các số nguyên, rồi trừ mỗi giá trị cho 11 (rút gọn theo modulo 26) và cuối cùng biến đổi lại dãy thành các kí tự. - Mã thay thế (M, C, K, E, D) M = C = Z26, K = S (Z26). Ta có: eπ(x) = π(x), -1 dπ(y) = π (y), với mọi x Є M, y Є C, π Є K là một phép hoán vị trên Z26. Ta thƣờng đồng nhất Z26 với bảng kí tự tiếng Anh, do đó phép hoán vị trên Z26 cũng đƣợc hiểu là một phép hoán vị trên tập hợp các kí tự tiếng Anh, Ví dụ một phép hoán vị π đƣợc cho bởi bảng: a b c D e f g h i j k l m n O p q r s t u v w x Y z X N Y A H P O G Z Q W B T S F L R C V M U E K J D I Với hệ mật mã thay thế có khóa π, bản rõ x= hengapnhauvaochieuthubay sẽ đƣợc chuyển thành bản mật mã y= ghsoxlsgxuexfygzhumgunxd Thuật toán giải mã với khóa π, ngƣợc lại sẽ biến y thành bản rõ x. 5
  9. - Mã Affine. Mã dịch vòng là một trƣờng hợp đặc biệt của mã thay thế chỉ gồm 26 trong số 26! các hoán vị có thể của 26 phần tử. Một trƣờng hợp đặc biệt khác của mã thay thế là mã Afine. - Mã Vigenère. Các phƣơng pháp mã hóa sơ khai này có ƣu điểm là việc mã hóa và giải mã đơn giản tuy nhiên rất dễ bị phá mã dựa trên việc tính toán xác suất xuất hiện của các chữ cái đƣợc sử dụng cùng với các kiến thức về ngôn ngữ và nhất là đƣợc trợ giúp đắc lực của các máy tính có tốc độ cao hiện nay. Để khắc phục nhƣợc điểm này, hầu hết các các thuật toán cải tiến khóa đối xứng cuối thế kỉ XX đều dựa trên nguyên lí của Claude Shannon về sự hỗn loạn (confiusion) và khuyếch tán (diffusion) thông tin. Tính hỗn loạn giúp phá vỡ mối quan hệ giữa thông điệp nguồn và thông điệp mã hóa, còn sự khuyếch tán sẽ phá vỡ và phân tán các phần tử trong các mẫu xuất hiện trong thông điệp nguồn để không thể phát hiện ra các mẫu này trong thông điệp sau khi mã hóa. Shanmon cho rằng có thể sử dụng phép thay thế và biến đổi tuyến tính để tạo ra sự hỗn loạn và khuyếch tán thông tin. Hiện nay, hai kiến trúc chính của các phƣơng pháp mã hóa theo khối là mạng thay thế - hoán vị (substitution Permutation Network - SPN) và mạng Feistel. DES (Data Encryption Standard) là một trong số các thuật toan đó. Đây là thuật toán dựa trên kiến trúc mạng Fiestel đƣợc Viện tiêu chuẩn và Công nghệ Quốc gia (National Institute of Standard and Technology - NIST) của Mĩ đƣa ra giữa thập kỉ 1970. Theo đó, khóa là một số nhị phân có độ dài 56bits và dữ liệu cần mã hóa là một số nhị phân có đọ dài 64 bits. Thời gian đầu, DES đƣợc ứng dụng rộng dãi và đƣợc đầu tƣ nghiên cứu rất nhiều. Tuy nhiên, với sự phát triển của các thế hệ máy tính, phƣơng pháp này đã trở lên không còn đủ an toàn để bảo vệ các thông tin quan trọng và nhạy cảm. Vào năm 1997, có tài liệu đã công bố rằng với độ dài khóa là 54bits khóa DES có thể bị bẻ trong vòng 4 tháng bởi brute-force attack. Đó là lí do để năm 1997 NIST đã kêu gọi các nhà nghiên cứu xây dựng thuật toán mã hóa theo khối an toàn hơn để chọn ra thuật toán chuẩn mã hóa nâng cao ASE (Advanced Encryption Standaed). Ngày 2 tháng 10 năm 2000, phƣơng pháp Rijndael của hai tác giả ngƣời Bỉ và Vincent Rijmen và Joan Daemen, đƣợc xây dựng theo kiến trúc SPN, đã chính thức đƣợc chọn trở thành chuẩn AES (tên của một thuật toán đƣợc lấy từ các chữ cái đầu trong tên của hai tác giả). Rijndael là phƣơng pháp mã hóa theo 6
  10. khối có kích thƣớc khối và khóa thay đổi linh hoạt với các gía trị 128, 192 hay 256 bit. Nhƣ vậy, ta có 9 khả năng chọn lựa kích thƣớc khối và khóa cho thuật toán này. Tuy nhiên, tài liệu đặc tả chuẩn AES đã giới hạn lại kích thƣớc khối và khóa đều là 128 bit. Nhƣ vậy, khi đề cập đến chuẩn AES, chúng ta đang nói đến trƣờng hợp có kích thƣớc khối và khóa ngắn nhất của thuật toán Rijndael; còn khi nhắc đến phƣơng pháp Rijndael, chúng ta đang đề cập đến thuật toán gốc với khả năng thay đổi kích thƣớc khối và khóa. Ngƣời ta cũng đã chứng minh đƣợc rằng nếu giả sử thời gian để brute-force bẻ một khóa DES khóa 56-bits là 1 giây thì phải mất tới 149 nghìn tỉ (trillion -1012) năm mới có thể bẻ đƣợc một khóa ASE. 1.1.2.2. Mã hóa công khai Ta đã biết, trong các thuật toán mã hóa đối xứng, khóa mã và khóa giải mã đối xứng với nhau, ngƣời gửi và ngƣời nhận cần phải thỏa thuận trƣớc và giữ bí mật cặp khóa này, nếu cặp khóa này đƣợc trao đổi qua các môi trƣờng khác thì cũng có khả năng bị “ăn cắp” .Chính vì thế ý tƣởng về t hệ thống mã hóa công cộng đã đƣợc Whitfield Diffie và Martin Hellman đƣa ra và giải quyết vào năm 1976. Bản chất của các thuật toán khóa công khai (PKC- Public Key Crytography) là mỗi bên (ngƣời gửi, ngƣời nhận) sử dụng một cặp khóa (một khóa dùng để mã hóa và một khóa dùng để giải mã). Trong đó khóa mã đƣợc công khai (PK- Public key), khóa giải mã là bí mật (SK- secret key), ngƣời gửi không cần biết không cần biết khóa bí mật của ngƣời nhận. Quá trình truyền và sử dụng mã hóa khóa công khai đƣợc thực hiện nhƣ sau: - Bên gửi yêu cầu cung cấp hoặc tự tìm khóa công khai của bên nhận trên một máy chủ chịu trách nhiệm quản lí khóa. - Sau đó bên gửi sử dụng khóa công khai của bên nhận cùng với thuật toán đã thống nhất để mã hóa thông tin đƣợc gửi đi. - Khi nhận đƣợc thông tin đã mã hóa, bên nhận sử dụng khóa bí mật của mình để giải mã và lấy ra thông tin ban đầu. Sau đây em xin trình bày về một số hệ mật khóa công khai nhƣ: hệ mật xếp ba lô (Knapsack), hệ RSA, Elgamal. 7
  11. A. Hệ RSA Năm 1978, Rivest, Sharmir và Adleman (RSA) là những ngƣời đầu tiên công bố việc thực hiện hệ mật khóa công khai dựa trên cơ sở tính các lũy thừa trong số học modulo. Tính mật của hệ dựa trên đọ khó của việc phân tích ra thừa số nguyên tố. Nhiều hệ mật khóa công khai sau này đã đƣợc phát triển nhƣng đều thua kém hệ RSA. a. Phương pháp lập mã và giải mã - Tạo khóa Trƣớc khi lập mã và giải mã phải tạo một cặp khóa gồm khóa công khai và khóa bí mật. Giả sử Alice cần trao đổi thông tin với Bob thì Bob cần tính các bƣớc sau: 1. Chọn 2 số nguyên tố lớn p và q với p ≠ q, lựa chọn ngẫu nhiên và độc lập. 2. Tính n = pq 3. Tính giá trị hàm số Ơle: φ(n)= (p - 1)(q - 1). 4. Chọn một số tự nhiên e sao cho 1< e < φ(n) và là số nguyên tố cùng nhau với φ(n). 5. Tính: d sao cho de ≡1 (mod φ)(n)). Cặp số nguyên dƣơng (n,e) gọi là khóa lập mã công khai, số d gọi là khóa giải mã bí mật. - Mã hóa Để mã hóa thông báo M, đầu tiên biểu diễn thông báo M nhƣ là một số nguyên giữa 0 và n-1 bằng cách sử dụng mã ASCII tuơng ứng (từ 0 đến 255). Chia khối thông báo thành một dãy các khối có kích thƣớc thích hợp. Một kích thƣớc thích hợp của khối là số nguyên i nhỏ nhất thỏa mãn 10i-1 <n < 10i. Sau đó ta mã hóa từng khối riêng biệt bằng cách nâng nó lên lũy thừa e modulo n. Bản mã C là kết quả của phép tính C= E(M)= Me mod n. - Giải mã Sau khi nhận đƣợc bản mã C, Bob sẽ dùng khóa bí mật d của mình để giải mã theo công thức: M= D(C)= Cd mod n. b. Ví dụ Mã hóa bản rõ AGRICULTURES với p =113, q = 83 Ta có: n = p*q = 9379 và φ(n) = (p-1)*(q-1) = 9184 Chọn e = 157 ta có d = e-1 = 117 8
  12. Cặp (n,e) = (9379, 157) làm thành khóa lập m ã công khai và d = 117 là khóa giải mã bí mật. Vì 103< n< 104, do đó ta sẽ chia bản rõ thành các khối, mỗi khối gồm 4 chữ số Bản rõ ban đầu đƣợc chuyển thành: 6571 8273 6785 7684 8582 6983 - Lập mã: 6571157 mod 9379 = 6783 8273157 mod 9379 = 8000 . 6983157 mod 9379 = 2101 Giải mã: 6783117 mod 9379 = 6571 8000117 mod 9379 = 8273 . Ta thu đƣợc bản rõ. B. Hệ mật xếp ba lô a. Mô tả hệ mật xếp ba lô Cho một tập hợp các số nguyên dƣơng s. Hãy xác định xem có hay không một tập hợp con các aj mà tổng của chúng bằng s. Một cách tƣơng đƣơng , hãy xác định xem có n hay không các xi Є {0,1} (1≤ i≤ n) sao cho ∑ aixi = s. i=1 Bài toán quyết định tổng các tập con là một bài toán NP đầy đủ. Điều kiện đó có nghĩa là trong số các thuật toán khác nhau, không có một thuật toán với thời gian đa thức nào tìm đƣợc quyết định lựa chọn phù hợp. Điều này cũng đúng với bài toán tìm tổng các tập con. Song ngay cả khi một bài toán không có thuật giải với thời gian đa thức nói chung thì vẫn có những trƣờng hợp nhất định có thể giải với thời gian đa thức nói chung thì vẫn có những trƣờng hợp nhất định có thể giải với thời gian đa thức. Điều này cũng đúng với trƣờng hợp bài toán tổng các tập con. Tuy nhiên nếu ta hạn chế bài toán trên các dữ liệu I = ({a1,a2, ,an},T), trong đó {a1,a2, ,an} là dãy siêu tăng, tức là dãy thỏa mãn điều kiện: 9
  13. j-1 j = 2,3, ,n: aj > ∑ ai , tức là các thành phần đƣợc sắp i=1 xếp tăng dần và từ thành phần thứ hai trở đi nó sẽ lớn hơn tổng các thành phần đứng trƣớc nó thì việc tìm câu trả lời là khá dễ dàng, chẳng hạn có thể bằng thuật toán đơn giản trƣớc đây: 1. for i = n downto 1 do if T > ai then T = T - ai xi = 1 else xi = 0 n 2. if ∑ xi.ai = T then i=1 3. X = (x1, ,xn) là giải pháp cần tìm Else Không có giải pháp. Bây giờ, để chuẩn bị xây dựng một sơ đồ hệ mật xếp ba lô, ta chọn trƣớc một số nguyên dƣơng n và một số nguyên tố p đủ lớn. Với mỗi ngƣời tham gia sẽ đƣợc chọn một bộ khóa K = (K‟, K”), trong đó khóa bí mật K” = n (A, p, a) gồm một dãy siêu tăng A = {a1, a2, , an} thỏa mãn ∑ai < p, và i=1 một số a, 1 ≤ a ≤ p-1; khóa công khai K‟ = {b1, , bn} với bi = a.ai mod p. Sơ đồ hệ mật xếp ba lô: S = (M, C, K ,E, D) Trong đó P = {0,1}n, C = {0,1, , n(p-1)}, là tập hợp các bộ khóa K = (K’,K”) nhƣ đƣợc xây dựng ở trên. Các thuật toán lập mật mã và giải mã đƣợc xác định bởi: 10
  14. Với mọi x = (x1, , xn ) Є P, thuật toán lập mã cho ta: n E (K’,x) = ∑xi.bi ; i=1 và với mọi y Є C tức 0 ≤ y ≤ n(p-1), ta xác định z = a-1y mod p, rồi sau đó giải bài toán sắp ba lô đối với dữ liệu I=({a1,a2, , an}, z) ta sẽ đƣợc lờ giải (x1, ,xn), lời giải đó là giá trị của D (K”, y) = (x1, , xn) = x. b. Thực thi hệ mật xếp ba lô Chọn n = 6, khóa bí mật có p = 737, A= {12, 17, 33, 74, 157, 316}, a=635. Tính đƣợc khóa công khai là {250, 477, 319, 559, 200, 196}. Với bản rõ x = 101101 ta có bản mã tƣơng ứng là y = 1324. Khi Bob nhận đƣợc bản mã y, đầu tiên anh ta tính: z = a-1y mod p = 635-1.1324 mod 737 = 435 sau đó, Bob sẽ giải trƣờng hợp I =(a, z) của bài toán sắp ba lô với dãy siêu tăng a và z ta đƣợc: 435 = 12 + 33 +74 + 316, tức đƣợc lời giải x = (1,0,1,1,0,1). 1.1.3. Hàm băm Hàm băm mật mã là hàm toán học chuyển đổi một thông điệp có độ dài bất kì thành một chuỗi bit có độ dài cố định (tùy thuộc vào thuật toán băm). Dãy bit này đƣợc gọi là thông điệp rút gọn (message digest) hay giá trị băm (hash value), đại diện cho thông điệp ban đầu. 11
  15. A To B Message 1 Message Messagenplus signed digest Hash A‟s Private Encrypt Signed digest Digest Hình 1.3: Mô hình sử dụng hàm băm bên gửi B From A Message A‟s Public Decrypt Hash Compare Digest Digest Hình 1.4: Mô hình sử dụng hàm băm bên nhận 12
  16. Một số tính chất của hàm băm: - Các thuật toán băm là hàm một chiều, do đó rất khó để xây dựng lại thông điệp ban đầu từ thông điệp rút gọn. - Tuy nhiên hàm băm h không phải là một song ánh. Do đó, với thông điệp x bất kì, tồn tại thông điệp x’ ≠ x sao cho h(x) = h(x‟). Lúc này, ta nói rằng “có sự đụng độ xảy ra ” – Đây cũng là môt đăc điểm dễ bị lợi dụng để mã hóa các hàm băm, khi không tìm đƣợc thông điệp gốc x, các thuật toán phá khóa sẽ đi tìm các hàm x’ ≠ x sao cho h(x) = h(x’). Một hàm băm h đƣợc gọi là an toàn (hay “ít bị đụng độ”) khi không thể xác định đƣợc (bằng cách tính toán) cặp thông điệp x và x’ thỏa mãn x’ ≠ x và h(x) = h(x’). - Hàm băm giúp xác định đƣợc tính toàn vẹn dữ liệu của thông tin: mọi thay đổi, dù là rất nhỏ, trên thông điệp cho trƣớc, ví dụ nhƣ đổi giá trị 1 bit, đều làm thay đổi thông điệp rút gọn tƣơng ứng. Tính chất này hữu ích trong việc phát sinh, kiểm tra chữ kí điện tử, các đoạn mã chứng nhận thông điệp, phát sinh số ngẫu nhiên, tạo ra khóa cho quá trình mã hóa Thuật toán băm phổ biến : - Thuật toán Secure Hash Standard (SHS) - Thuật toán Secure Hash Standard (SHS) do NIST và NSA (National Security Agency) xây dựng đƣợc công bố trên Federal Rigister vào ngày 31 tháng 1 năm 1992 và sau đó chính thức trở thành phƣơng pháp chuẩn từ ngày 13 tháng 5 năm 1993. Thông điệp rút gọn có độ dài 160 bit. - Ngày 26 tháng 8 năm 2002, Viện tiêu chuẩn và Công nghệ quốc gia của Hoa Hỳ (National Institue of Standard and Technology - NIST) đã đề xuất hệ thống chuẩn hàm băm an toàn (Secure Háh Standard) gồm 4 thuật toán hàm băm SHA-1, SHA-256, SHA-384, SHA- 512. Đến 25/03/2004, NIST đã chấp nhận them thuật toán hàm băm SHA-224 vào hệ thống chuẩn hàm băm. Các thuật toán hàm băm do NIST đề xuất đƣợc đặc tả trong tài liệu FIPS180-2. Các thuật toán hàm băm SHA gồm 2 bƣớc: tiền xử lí và tính toán giá trị băm.  Bước tiền xử lí bao gồm các thao tác:  Mở rộng thông điệp  Phân tích thông điệp đã mở rộng thành các khối m bit  Khởi tạo giá trị băm ban đầu 13
  17.  Bước tính toán giá trị băm bao gồm các thao tác:  Làm n lần các công việc sau: . Tạo bảng phân bố thông điệp (message schedule) từ khối thứ i. . Dùng bảng phân bố thông điệp cùng với các hàm, hằng số, các thao tác trên từ để tạo ra giá trị băm i.  Sử dụng giá trị băm cuối cùng để tạo thông điệp rút gọn. Thông điệp M đƣợc mở rộng trƣớc khi thực hiện băm. Mục đích của việc mở rộng này nhằm đảm bảo thông điệp mở rộng có độ dài là bội số 512 hoặc 1024 bit tùy thuộc vào thuật toán. Sau khi thông điệp đã mở rộng thông điệp cần đƣợc phân tích thành N khối m- bit trƣớc khi thực hiện băm. Đối với SHA-1 và SHA-256, thông điệp mở rộng đƣợc phân tích thành N khối 512-bit M(1), M(2), , M(n). Do đó 512 bit của khối dữ liệu đầu vào có thể đƣợc thể hiện (i ) (i) bằng 16 từ 64-bit, M0 chứa 32 bit đầu của khối thông điệp i, M1 chứa 32 bit kế tiếp Đối với SHA-384 và SHA-512, thông điệp mở rộng đƣợc phân tích thành N khối 1024-bit M(1), M(2), , M(n). Do đó 1024 bit của khối dữ liệu đầu vào có thể đƣợc (i ) (i) thể hiện bằng 16 từ 64-bit, M0 chứa 64 bit đầu của khối thông điệp i, M chứa 64 bit kế tiếp Trƣớc khi thực hiện băm, với mỗi thuật toán băm an toàn, giá trị băm ban đầu H(0) phải đƣợc thiết lập. Kích thƣớc và số lƣợng từ trong H(0) tùy thuộc vào kích thƣớc thông điệp rút gọn. Các cặp thuật toán SHA-224 và SHA-256; SHA-384 và SHA-512 cáo các thao tác thực hiện giống nhau, chỉ khác nhau về số lƣợng bit kết quả của thông điệp rút gọn. Nói cách khác, SHA-224 sử dụng 224 bit đầu tiên trong kết quả thông điệp rút gọn sau khi áp dụng thuật toán SHA-256. Tƣơng tự SHA-384 sử dụng 384 bit đầu tiên trong kết quả thông điệp rút gọn sau khi áp dụng thuật toán SHA-512. Trong các hàm băm SHA, chúng ta cần sử dụng thao tác quay phải một từ, ký hiệu là ROTR, và thao tác dịch phải một từ, ký hiệu là SHR. 14
  18. Nhận xét: Mỗi thuật toán có bảng hằng số phân bố thông điệp tƣơng ứng.Kích thƣớc bảng hằng số thông điệp (scheduleRound) của SHA-224 và SHA-256 là 64, kích thƣớc bảng hằng số thông điệp của SHA-384 và SHA-512 là 80. Chuẩn SHA đặc tả 5 thuật toán băm an toàn SHA-1, SHA-2241, SHA-256, SHA- 384 và SHA-512. Sự khác biệt chính của các thuật toán là số lƣợng bit bảo mật của dữ liệu băm – điều này có ảnh hƣởng trực tiếp đến chiều dài của thông điệp rút gọn. Khi một thuật toán băm đƣợc sử dụng kết hợp với thuật toán khác đòi hỏi phải cho kết quả số lƣợng bit tƣơng ứng. Ví dụ, nếu một thông điệp đƣợc kí với thuật toán chữ kí điện tử cung cấp 128bit thì thuật toán chữ kí đó có thể đòi hỏi sử dụng một thuật toán băm an toàn cung cấp 128bit nhƣ SHA-256. Kích thƣớc (bit) Độ an toàn2 Thuật toán Thông Khối Từ Thông điệp (đơn vị: bit) điệp rút gọn SHA-1 < 264 512 32 160 80 SHA-224 < 264 512 32 224 112 SHA-256 < 264 512 32 256 128 SHA-384 < 2128 1024 64 384 192 SHA-512 < 2128 1024 64 512 256 Các tính chất của thuật toán băm an toàn Tuy nhiên, tháng 2 năm 2005 SHA-1 bị tấn công và giải mã bởi 3 chuyên gia ngƣời Trung Quốc thông qua phƣơng pháp tính phân bổ. 1.2. CHỮ KÍ SỐ 1.2.1. Giới thiệu về chữ kí số Để hiểu về chữ kí số trƣớc tiên ta tìm hiểu thế nào là chữ ký điện tử? Chữ ký điện tử là thông tin đi kèm dữ liệu (văn bản, hình ảnh, video, ) nhằm mục đích xác định ngƣời chủ của dữ liệu đó. Ta cũng có thể sử dụng định nghĩa rộng hơn, bao hàm cả mã nhận thực, hàm băm và các thiết bị bút điện tử. Chữ ký khóa số công khai (hay hạ tằng khóa công khai) là mô hình sử dụng các mật mã để gắn với mỗi ngƣời sử dụng một cặp khóa công khai – bí mật và qua đó có 15
  19. thể ký các văn bản điện tử cũng nhƣ trao đổi các thông tin mật. Khóa công khai thƣờng đƣợc phân phối thông qua chứng thực khóa công khai. Quá trình sử dụng chữ ký số bao gồm 2 quá trình: tạo chữ ký và kiểm tra chữ ký. Khái niệm chữ ký điện tử mặc dù thƣờng đƣợc sử dụng cùng nghĩa với chữ ký số nhƣng thực sự có nghĩa rộng hơn. Chữ ký điện tử chỉ đến bất ký phƣơng pháp nào (không nhất thiết là mật mã) để xác định ngƣời chủ của văn bản điện tử. Chữ ký điện tử bao gồm cả địa chỉ telex và chữ ký trên giấy đƣợc truyền bằng fax. Khi nhận đƣợc một văn bản bằng giấy, các khía cạnh sau đây thƣờng đƣợc xem xét từ phía ngƣời nhận: Ai là ngƣời viết ra, có trách nhiệm với văn bản này? Từ khi đƣợc gửi đi từ ngƣời viết đến khi nhận đƣợc từ ngƣời đọc, nội dung văn bản có bị thay đổi gì không? Ngƣời viết văn bản không chối bỏ những nội dung mà mình đã viết ra và gửi đi. Từ khi đƣợc gửi đi từ ngƣời viết đến khi nhận đƣợc từ ngƣời đọc, nội dung văn bản không bị đọc từ ngƣời thứ ba khác? Nếu đƣợc diễn giải dƣới góc độ chuyên môn của an toàn thông tin (Information Security), văn bản này đƣợc xem xét dƣới các khía cạnh: Tính xác thực của ngƣời gửi (Authentication) Tính toàn vẹn của văn bản (Integrity) Tính chống từ chối, chống chối bỏ (Non-repudiation) Tính bí mật hay tính riêng tƣ (Privace) Quay lại một văn bản bằng giấy, các vấn đề trên đƣợc giải quyết nhƣ thế nào: Ai là ngƣời viết ra, có trách nhiệm với văn bản này: kiểm tra họ, tên ngƣời kí văn bản Từ khi đƣợc gửi đi từ ngƣời viết đến khi nhận đƣợc từ ngƣời đọc, nội dung văn bản có bị thay đổi gì không: xem xét các chữ kí trên từng trang, tính liên tục của đánh số trang, Ngƣời viết văn bản không chối bỏ những nội dung mà mình viết ra và gửi đi: kiểm tra chữ kí cuối cùng của văn bản là chữ kí hợp lệ của ngƣời gửi, so sánh chữ kí này với chữ kí mẫu của ngƣời đó mà mình đã có. Từ khi văn bản đƣợc gửi đi từ ngƣời viết đến khi ngƣời nhận nhận đƣợc văn bản đó thì nội dung văn bản không bị đọc bởi một ngƣời thứ ba khác: kiểm tra phong bì đựng văn bản có còn nguyên trạng không? Khi trao đổi một “văn bản” trong môi trƣờng điện tử (một email, một đoạn dữ liệu trong giao dịch, một file dữ liệu, ) cả bốn khía cạnh nêu trên cũng cần đƣợc xem xét trong điều kiện không có “chữ kí”, “phong bì”, Tuy nhiên các vấn đề nêu trên đã đƣợc giải quyết về mặt công nghệ khi các tiến trình và giải thuật sử dụng khóa phi đối xứng 16
  20. (asymmetric key) đƣợc phát triển và hoàn thiện. Sau đây em xin trình bày về tiến trình xử lý kí và xác thực chữ kí số nhƣ sau: 1.2.2. Quá trình kí và xác thực chữ kí 1.2.2.1. Quá trình kí Đoạn dữ liệu cần đƣợc bảo mật đƣợc đƣa qua hàm băm (hashing), kết quả của hàm băm là một đoạn bit đảm bảo 2 tính chất: - Tính duy nhất: mỗi một đoạn dữ liệu khác nhau thì sẽ có một đoạn bit khác nhau, không trùng lặp, có đọ dài không đổi. - Tính một chiều: Từ đoạn bit đặc trƣng này không suy ngƣợc lại đƣợc nội dung văn bản. Đoạn bit đặc trƣng này đƣợc mã hóa bằng khóa bí mật của ngƣời gửi và đƣợc đính kèm vào “văn bản”, rồi gửi đến ngƣời nhận – đoạn bit đƣợc mã hóa này chính là chữ kí số (digital signature) Lƣợc đồ kí đƣợc mô tả bằng hình vẽ dƣới đây: Bản tin điện tử Khóa bí mật của ngƣời gửi Hàm băm Bản tóm lƣợc Mã hóa Chữ kí số (CKS) Gắn CKS vào bản tin điện tử Bản tin rõ đã kí Gửi đi Hình 1.5 Lƣợc đồ kí 17
  21. 1.2.2.2. Quá trình kiểm tra chữ kí số Ngƣời nhận khi nhận đƣợc văn bản có kèm chữ kí số, tiến trình kiêm tra sẽ thực hiện nhƣ sau: Lấy đoạn dữ liệu gốc, đƣa qua hàm băm đã nói ở trên, thu đƣợc một đoạn bit là kết quả băm. Lấy đoạn bit đƣợc mã hóa (chữ kí số), giải mã bằng khóa công khai của ngƣời gửi, thu đƣợc đoạn bit đăc trƣng So sánh đoạn bit vừa thu đƣợc với đoạn bit thu đƣợc trong bƣớc 1, nếu 2 đoạn trùng nhau và tin rằng khóa công khai chắc chắn là do ngƣời gửi phát hành thì kết luận: - Dữ liệu nhận đƣợc có tính toàn vẹn (vì kết quả băm là duy nhất, một chiều) - Dữ liệu nhận đƣợc là do chính ngƣời gửi gửi đi vì chỉ duy nhất ngƣời nhận đƣợc xác thực mới có khóa bí mật phù hợp với khóa công khai đã đƣợc sử dụng để giải mã. Nhƣ vậy tính chống từ chối và tính xác thực đƣợc kiểm tra và xác nhận. Lúc này ngƣời nhận tin rằng, khóa công khai đó đại diện hợp pháp cho ngƣời gửi. Lƣợc đồ xác thực chữ kí số đƣợc mô tả bằng hình vã dƣới đây: Bản tin đăng kí Tách bản tin và CKS Khóa công khai an của ngƣời gửi CKS Bản tin điện tử Giải mã Hàm băm có Bản tóm lƣợc 1 Giải mã đƣợc? Đúng ngƣời gửi không không Bản tóm lƣợc 2 Giống nhau? Bản tin bị thay đổi Giống nhau Không đúng ngƣời gửi Bản tin toàn vẹn Hình 1.6: Lƣợc đồ xác thực 18
  22. Sau khi kí “văn bản”,nếu cần thiết phải cho vào “phong bì” nhằm bảo đảm tính bí mật khi gửi đi, toàn bộ dữ liệu gốc và chữ kí có thể đƣa vào mã hóa bằng khóa đối xứng, chìa khóa của mã khóa đối xứng đƣợc mã 1 lần bởi khóa công khai của ngƣời nhận “văn bản”. Khi nhận đƣợc, ngƣời nhận sẽ sử dụng khóa bí mật của mình đang sở hữu để giải mã và lấy đƣợc khóa mã, tiếp tục sử dụng khóa mã này để giải mã đƣợc văn bản. Nhƣ vậy, tính bí mật của giao dịch sẽ đƣợc đảm bảo từ ngƣời gửi đến ngƣời nhận. 1/. Lƣợc đồ chữ kí số RSA Lƣợc đồ chữ kí số RSA đƣợc xây dựng dựa theo phƣơng pháp mã khóa công cộng RSA. Ở phần tiếp theo này, em sẽ trình bày về lƣợc đồ chữ kí RSA. Lƣợc đồ chữ kí RSA đƣợc mô tả nhƣ sau: Cho n=pq, p và q là các số nguyên tố lớn khác nhau. Cho M = C = Zn và định nghĩa K = {(n,p,q,a,b): n = pq, p, q nguyên tố, ab ≡ 1(modφ(n))} φ(n) = (p-1)(q-1) Các giá trị n và b công khai, các giá trị p, q, a là bí mật. Với K = (n,p,q,a,b), ta định nghĩa : a Sigk(x) = x mod n (a là khóa bí mật của ngƣời gửi) b Và verk(x,y) = true  x ≡ y mod n. (x,y Є Zn). 2/. Lƣợc đồ chữ kí Elgamal Phƣơng pháp chữ kí điện tử Elgamal đƣợc giới thiệu vào năm 1985. Sau đó viện tiêu chuẩn và công nghệ Quốc gia Hoa Kì đã sửa đổi bổ sung phƣơng pháp này thành chuẩn chữ kí điện tử DSS (Digital Sigital Signature Standard). Nó đƣợc thiết kế với mục đích dành riêng cho chữ kí số. Lƣợc đồ chữ kí Elgamal đƣợc mô tả nhƣ sau: Cho p là số nguyên tố sao cho bài toán logarit rời rạc trong Zp là khó và * giả sử α Є Zp là phần tử nguyên thủy. * * Cho P = Zp , A = Zp x Zp-1 và định nghĩa: = {(p,α,a,β) : β ≡ αa (mod p)} Các giá trị p, α, β là công khai, còn a là bí mật. * Với K = (p, α, a, β) và một số ngẫu nhiên bí mật k Є Z p-1, ta định nghĩa chữ kí số: sig (x,k) = (γ,δ) k k Trong đó: γ = α mod p Và δ = (x - aγ) . k-1 mod(p-1) * Với x,γ Є Z p và δ Є Zp-1, ta định nghĩa: 19 Ver(x,y,δ) = True βγ γδ ≡ αx (mod p)
  23. Nếu chữ kí đƣợc thiết lập đúng thì xác minh sẽ thành công vì : βγ γδ ≡ αa γ ak δ (mod p) ≡ αx (mod p). Ở đây ta dùng hệ thức: a γ + k δ ≡ x (mod p-1). Ngƣời dùng tính chữ kí bằng cách dùng cả giá trị mật (là một phần của khóa) lẫn số ngẫu nhiên mật k (dùng để kí lên bức điện x). Việc xác minh có thể thực hiện duy nhất bằng thông tin công khai. Ta xét một ví dụ sau: Giả sử: Cho p = 467, α = 2, a = 127 khi đó: β = αa mod p = 2127 mod 467 = 132. Nếu ngƣời gửi muốn kí lên bức điện x = 100 và chọn số ngẫu nhiên k = 213 ( chú ý là UCLN(213,466)=1 và 213-1 mod 466 = 431). Khi đó: γ = 2213 mod 467 = 29 và: δ = (100 – 127 . 29).431 mod 466 = 51 Bất kì ai cũng có thể xác minh chữ kí này bằng cách kiểm tra: 132292951 ≡ 189 (mod 467) Và: 2100 ≡ 189 (mod 467) Vì thế chữ kí hợp lệ. 20
  24. Kết chƣơng Trong chƣơng này em đã tập trung giới thiệu về mật mã học, cơ sở hạ tầng khóa công khai. Với mục đích sử dụng cho việc xác thực hộ chiếu điện tử nên em đã đặc biệt tập trung giới thiệu về hàm băm và chữ kí số. Trong đó em đi sâu vào hệ mã hóa công khai RSA và chữ kí sử dụng thuật toán RSA để ứng dụng bảo vệ thông tin trong con chip của hộ chiếu điện tử. Chƣơng tiếp theo em đi vào trình bày những quy định của ICAO về hộ chiếu điện tử và cách thức lƣu trữ dữ liệu trong hộ chiếu điện tử. Đây là một phần rất quan trọng, phải hiểu rõ về hộ chiếu điện tử và con chip của nó để xác định đƣợc cách thức bảo vệ hiệu quả nhất. 21
  25. Chƣơng 2: CÁCH THỨC LƢU TRỮ VÀ XỬ LÝ THÔNG TIN TRONG CON CHIP ĐIỆN TỬ 2.1. HỘ CHIẾU ĐIỆN TỬ 2.1.1. Hộ chiếu điện tử là gì? Hộ chiếu là một loại giấy tờ tùy thân xác nhận công dân mang quốc tịch của một quốc gia. Thông thƣờng, hộ chiếu chứa các thông tincow bản nhƣ họ tên, ngày sinh, quê quán, quốc tịch, ảnh khuôn mặt, các thông tin về cơ quan cấp hộ chiếu, ngày cấp, thời hạn có giá trị Với sự ra đời của chip khồg tiếp xúc sử dụng công nghệ nhận dạng tần số radio RFID (Radio frequency identification), rõ rang những thông tin cá nhân thể hiện trong một hộ chiếu của công dân hoàn toàn có thể đƣợc lƣu trữ trên chip không tiếp xúc. Việc lƣu trữ những thông tin cá nhân của hộ chiếu trong chip không tiếp xúc cho phép nâng cao hiệu quả của quy trình cấp phát, kiểm duyệt hộ chiếu thông qua các hệ thống xác thực tự động. Các tiếp cận này cho phép xây dựng và phát triển mô hình hộ chiếu mới: “Hộ chiếu điện tử”(HCDT). Hộ chiếu điện tử là hộ chiếu tích hợp chip điện tử ICC (Integrated Cỉcuit Chip) có chức năng mã hóa và lƣu trữ thông tin cá nhân ngƣời dùng. Thông tin cá nhân ngƣời dùng này phải đƣợc bảo vệ chống truy nhập trái phép và phải đƣợc xác thực tính chính xác, duy nhất của hộ chiếu. Một trong những công cụ bảo vệ dữ liệu mà hiện nay trên thé giới sử dụng đó là phƣơng pháp mã hóa dữ liệu. Chữ kí số đƣợc sử dụng để kí vào các dữ liệu cơ bản và chúng đƣợc lƣu trữ trong chip. Trong hộ chiếu điện tử lƣu trữ những thông tin cá nhân trong đó có cả những cơ sở dữ liệu sinh trắc học của ngƣời mang hộ chiếu. Vì lí do này mà hộ chiếu điện tử còn có tên gọi khác là hộ chiếu sinh trắc học (biometric passport). Hiện nay yêu cầu về tiêu chuẩn cho hộ chiếu điện tử đã đƣợc cung cấp bởi tổ chức hang không dân dụng quốc tế ICAO (International Civil Aviation Organization). Và các yêu cầu này sẽ đáp ứng đƣợc an ninh tại cửa khẩu, kiểm tra tại biên giới các nƣớc. Hộ chiếu điện tử tích hợp 3 công nghệ: - Nhận dạng tần số Radio (RFID) - Sinh trắc (vân tay, mống mắt) - Cơ sở hạ tầng khóa công khai PKI (Public key infrastructure). 22
  26. Trong khi nhận dạng tần số RFID đƣợc sử dụng cho các lí do thực tế trong công việc giao tiếp vật lí với các hệ thống kiểm tra, thì việc nhận dạng thông tin sinh trắc và cơ sở hạ tầng khóa công khai PKI đƣợc coi là có khả năng giảm thiểu gian lận và tăng cƣờng an ninh trên toàn thế giới trong kĩ thuật nhận dạng số. Do vậy yêu cầu cấp thiết đặt ra cho mỗi nƣớc xây dựng hộ chiếu điện tử là phải xây dựng đƣợc một hạ tầng cơ sở khóa công khai quốc gia. 2.1.2. Sự cần thiết phải triển khai hộ chiếu điện tử - Việc lƣu trữ trong trang nhân thân nhƣ hiện nay đã đạt tới mức giới hạn. Trong khi đó, để lƣu trữ các đặc điểm sinh trắc học và các thông tin liên quan đòi hỏi khả năng lƣu trữ lớn. ICAO đã đƣa ra cách lƣu trữ chuẩn là sử dụng chip không tiếp xúc (Contactless IC) theo chuẩn ISO/IEC 14443. Đầu đọc có thể đọc dữ liệu trong chip trong khoảng cách < 10cm, không cần phải tiếp xúc trực tiếp với chip. Chip có thể đƣợc gắn trong trang nhân thân, trang bìa, hoặc một trang dành riêng trong quyển hộ chiếu. - Để chống làm giả hoặc sửa đổi thông tin bất hợp pháp, dữ liệu lƣu trong chip đƣợc bảo vệ bằng chữ kí điện tử sử dụng phƣơng pháp mã hóa khóa công khai – PKI với các thuật toán chuẩn đƣợc đƣa ra bởi ICAO. Kỹ thuật mã hóa này đã đƣợc sử dụng trong một số lĩnh vực yêu cầu độ tin cậy cao nhƣ giao dịch ngân hàng, thanh toán trực tuyến Ở Việt Nam, tuy lƣợng hộ chiếu Việt Nam bị thay đổi bất hợp pháp hoặc làm giả bị phát hiện không nhiều. Nguyên nhân co thể là nền kinh tế của ta chƣa phát triển cao nên lƣợng ngƣời nhập cƣ bất hợp pháp còn ít. Tuy nhiên theo chƣơng trình của khối APEC (Việt Nam là thành viên) dự kiến đến năm 2008, toàn khối sẽ hoàn tất lộ trình áp dụng hộ chiếu điện tử. Đồng thời trong tình hình an ninh thế giới đang diễn ra phức tạp, việc duy trì thế mạnh ổn định an ninh chính trị trong nƣớc là sự cần thiết. Ngoài ra, khi các nƣớc đã áp dụng hộ chiếu điện tử, nếu công dân Việt Nam mang hộ chiếu thông thƣờng nhƣ hiện nay khi nhập cảnh các nƣớc có nền kinh tế phát triển sẽ bị xem xét, kiểm tra cẩn thận, thậm chí còn bị gây khó dễ. Vì vậy việc nghiên cứu ứng dụng và triển khai hộ chiếu điện tử là 1 vấn đề rất cấp thiết đối với Việt Nam ta. 23
  27. 2.2. TIÊU CHUẨN CỦA ICAO VỀ HỘ CHIẾU ĐIỆN TỬ 2.2.1. Cấu trúc và tổ chức hộ chiếu điện tử Hình 2.1 Các thành phần của hộ chiếu điện tử Hộ chiếu điện tử đƣợc tổ chức dựa trên cấu trúc của hộ chiếu thông thƣờng, đƣợc chia thành hai thành phần: phần tài liệu vật lí – booklet (quyển hộ chiếu) và phần vi mạch tích hợp RFIC (thể hiện dƣới dạng chip không tiếp xúc). Phần tài liệu vật lí – booklet (quyển hộ chiếu): Booklet gần tƣơng tự nhƣ hộ chiếu truyền thống, nó chỉ khác ở chỗ có thêm biểu tƣợng HCĐT ở trang bìa và dòng ICAO (MRZ – vùng đọc đƣợc bằng máy đọc hộ chiếu ) ở cuối trang dữ liệu. Hình 2.2 Biểu tƣợng hộ chiếu điện tử Biểu tƣợng hộ chiếu điện tử phải đƣợc in ở phía ngoài của booklet. MRZ đƣợc thiết kế để đọc bằng máy đọc quang học và có 2 dòng liên tục phía dƣới của trang dữ liệu. Mỗi dòng này đều phải có 44 kí tự và đƣợc sắp xếp theo phông OCR-B in hoa gồm bốn thông tin quan trọng: 24
  28. Tên ngƣời mang hộ chiếu: Xuất hiện dòng trên từ kí tự thứ 6 đến kí tự thứ 44. Số hộ chiếu: Đƣợc xác định bởi 9 kí tự đầu tiên của dòng thứ 2. Ngày sinh của ngƣời mang hộ chiếu: Xác định từ kí tự 14 đến 19 của dòng 2 theo định dạng: YYMMDD. Ngày hết hạn: Đƣợc xác định từ kí tự 22 đến 29 của dòng 2. Ngoài ra, 3 trƣờng số còn có 1 kí tự kiểm tra đứng ngay sau giá trị của trƣờng tƣơng ứng. Hình 2.3 Mô tả MRZ Phần vi mạch tích hợp tần số radio (RFIC): Chip đƣợc đƣa vào HCĐT phải tuân theo chuẩn ISO/IEC 14443,trong đó chỉ ra khoảng cách đọc đƣợc chính xác trong khoảng 10cm. Mạch RFIC gồm có chip và một anten vòng không những dùng để kết nối mà còn dùng để nhận biết tín hiệu từ đầu đọc. Đây là yếu tố quyết định HCĐT không có nguồn điện trong. Năng lƣợng hoạt động cho chip thu nhận qua anten. Mạch RFIC có thể đƣợc đƣa vào một trong các vị trí khác nhau trong booklet, thông thƣờng nằm ở trang bìa hoặc trang dữ liệu và cần đảm bảo rằng chip không bị hƣ hại và tách rời khỏi booklet, đồng thời cũng không thể truy cập hoặc gỡ bỏ. 25
  29. Cấu trúc chíp không tiếp xúc TOE boundary MRTD Printed Machine CONTACTLESS INTERFACE ( ANTENNA) Readable Zone (MRZ) Bicgraphical Data EEPROM EEPROM (Logical Data Structure) (NVM ES) Printed Portrait ROM ( AXSEAL V3 ES) ROM ROM (IC Dedicatec Miface CS) (IC Dedicated AXSEAL Support Software: Boot Rom Software Product Test Software) Integrated Circuit HARDWARE Hình 2.4: Cấu trúc chip không tiếp xúc 2.2.2. Cấu trúc dữ liệu của chip ICC Cấu trúc dữ liệu lƣu trữ trong chip của hộ chiếu đƣợc in ra làm 2 phần: 1). User Files Đây là phần dành cho việc phát triển sau này. Phần User Files có thể ghi đƣợc và nó cho phép có thể gắn visa điệ tử . . . 2). Cấu trúc dữ liệu logic LDS ( Logical Data Structure) Mục đích của việc chuẩn hóa các thành phần dữ liệu trong hộ chiếu điện tử để có đƣợc sự thống nhât trên phạm vi toàn cầu. Tổ chức hàng không dân dụng quốc tế (ICAO) khuyến nghị cấu trúc các thành phần dữ liệu trong HCĐT và phân nhóm logic các thành phần dữ liệu này. Ngoài những thành phần bắt buộc phải có trong HCĐT còn có các thành phần dữ liệu tùy chọn. 26
  30. Phần LDS chỉ cho phép truy cập dữ liệu, nó bao gồm các khóa mật mã, dùng để hỗ trợ cho các cớ chế kiểm soát truy cập cơ bản BAC (Basic Access Cotrol) và xác thực chủ động AA ( Active Authentication). LDS có trƣờng EF-COM lƣu trữ thông tin chung của chính LDS nhƣ version, danh sách các datagroup, chứa các thông tin của ngƣời dùng và các dữ liệu sinh trắc. Một số yêu cầu đối việc tổ chức dữ liệu logic - Phải đảm bảo hiệu quả và các điều kiện thuận lợi cho ngƣời sở hữu HCĐT hợp pháp; - Phải đảm bảo sự bảo vệ đối với các thông tin đã lƣu trong chip; - Cho phép tƣơng tác phạm vi toàn cầu đối với dữ liệu mở rộng dựa trên cấu trúc dữ liệu của HCĐT; - Định vị các thông tin tùy chọn mở rộng theo nhu cầu của tổ chức hoặc chính phủ các quốc gia phát triển hộ chiếu; - Cung cấp khả năng mở rộng dung lƣợng lƣu trữ theo nhu cầu của ngƣời dùng và sự phát triển của công nghệ; - Hỗ trợ số lƣợng lớn các lựa chọn bảo vệ dữ liệu; - Hỗ trợ các tổ chức và chính phủ cập nhật thông tin vào HC ĐT; - Tận dụng các chuẩn quốc tế hiện có đồng thời mở rộng tối đa khi có các chuẩn sinh trắc học nổi lên. Để đảm bảo tính tƣơng tác toàn cầu, ICAO quy định cấu trúc dữ liệu trong các chip điện tử phải tuân thủ theo nguyên tác dƣới đây: 27
  31. Bắt buộc Nhóm (M) / Tùy Thành phần dữ liệu dữ liệu chọn (O) Thông tin chi tiết lƣu trong vùng dữ liệu đọc đƣợc bằng máy 1 M Dữ liệu vùng đọc đƣợc bằng máy (dòng ICAO) Thông tin xác thực hỗ trợ bởi máy – Các đặc điểm xác định đƣợc mã hóa 2 M Đặc điểm trao đổi công khai Ảnh mặt 3 O Thông tin bổ sung Ảnh vân tay 4 O Thông tin bổ sung Ảnh tròng mắt Thông tin xác thực hỗ trợ bởi máy – Các đặc điểm xác định thể hiện rõ 5 O Ảnh mặt rõ 6 O Dữ trữ dùng trong tƣơng lai 7 O Ảnh chữ ký rõ hoặc đặc điểm đánh dấu thƣờng dùng Xác định đặc điểm bảo mật hỗ trợ máy – Các thông tin bảo mật đƣợc mã hóa 8 O Đặc điểm dữ liệu 9 O Đặc điểm cấu trúc 10 O Đặc điểm thay thế Các thông tin bổ sung về các nhân 11 O Các chi tiết dữ liệu bổ sung cho thông tin về cá nhân Các thông tin bổ sung về tài liệu 12 O Các chi tiết dữ liệu bổ sung cho thông tin về tài liệu Các thông tin tùy chọn 13 O Các chi tiết tùy ý do cơ quan cấp phát quy định Dự trữ dùng trong tƣơng lai 14 O Dự trữ dùng trong tƣơng lai 15 O Thông tin khóa công khai xác thực chủ động Những điều cần chú ý 16 O Chi tiết dữ liệu về những ngƣời cần chú ý 28
  32. Nhƣ vậy là trong quy định đối với cấu trúc dữ liệu logic, chỉ có phần dữ liệu đọc đƣợc bằng máy (dòng ICAO) đƣợc ghi trong nhóm dữ liệu thứ nhất và ảnh mặt (đƣợc ghi trong nhóm dữ liệu 2) là bắt buộc, còn các thông tin khác đều là tùy chọn. Ngoài ra trong một HCĐT theo chuẩn còn cần thiết phải có thông tin bảo mật để xác định tính toàn vẹn của dữ liệu đƣợc ghi trong chip. Thông tin này đƣợc chứa trong nhóm dữ liệu 1. Thông tin bảo mật bao gồm giá trị băm của các nhóm dữ liệu đƣợc sử dụng. Nếu nhƣ ảnh hiện thị rõ trong trang nhân thân là tƣơng đối khác biệt (hoặc thực chất là một ảnh khác – trƣờng hợp có hai ảnh mặt) so với ảnh lƣu trong nhóm dữ liệu 2, thì phải lƣu trữ ảnh đó ở nhóm dữ liệu 5. Nếu cơ quan cấp phát thực hiện lƣu trữ thông tin tùy chọn là vân tay và cho phép đọc công khai thì ít nhất phải lƣu trữ một ảnh tròng mắt tại nhóm dữ liệu 3. Nếu cơ quan cấp phát thực hiện lƣu trữ thông tin tùy chọn là tròng mắt và cho phép đọc công khai thì ít nhất phải lƣu trữ một ảnh tròng mắt tại nhóm dữ liệu 4. Trong con chip điện tử, ngoài các thông tin dữ liệu còn có các thông tin bảo mật, đƣợc cơ quan phát hành số hóa, lƣu trữ và chỉ cung cấp cho các cơ quan chức năng có thẩm quyền để phục vụ kiểm tra, kiểm soát và xác thực về ngƣời mang hộ chiếu. 2.2.3. Lƣu trữ vật lý Dữ liệu lƣu trữ trong RFIC theo các tệp ứng với từng nhóm dữ liệu, các tệp này là các tệp cơ bản có tên bắt đầu bằng „ EF‟. Ngoài ra còn có một số tệp đặc biệt nhƣ DF1 là tệp chứa thông tin khai báo, EF.SOD (SOD: security object) là tệp chứa thông tin phục vụ quá trình xác thực bị động - Passive Authentication. Trong mỗi tệp (nhóm dữ liệu), các trƣờng thông tin phân tách nhau bởi các thẻ Tag đánh dấu bắt đầu và kết thúc giá trị của trƣờng thông tin. 29
  33. MF DF – LDS REQUIRED KENC OPTIONAL KMAC OPTIONAL KPrAA OPTIONAL EF – COM REQUIRED EF - SOD REQUIRED EF – Datagroup_1 (MRZ) REQUIRED EF – Datagroup_2 (Encoded Face) REQUIRED EF – Datagroup_n OPTIONAL HÌnh 2.5: Tổ chức vật lý thông tin trong hộ chiếu điện tử Bốn nhóm thành phần dữ liệu bắt buộc: - Phần thông tin MRZ (Machine Readable Zone) tƣơng ứng với nhóm dữ liệu DH1. - Ảnh khuôn mặt của ngƣời mang hộ chiếu. - EF.COM lƣu trữ thông tin chung của chính LDS nhƣ: version, List of DataGroup . . . - EF.SOD chứa thông tin phục vụ xác thực và toàn vẹn. Khi thẻ không tiếp xúc đi qua vùng giao tiếp của đầu đọc, quá trình đọc diễn ra theo chuẩn ISO 14443. Để kiểm tra sự toàn vẹn của các nhóm thông tin, một số thông tin chữ ký đƣợc đƣa thêm vào và ghi trong tệp cơ sở có tên EF.SOD. 30
  34. Cách thức lƣu trữ các nhóm và thành phần dữ liệu theo mô hình thứ tự ngẫu nhiên. Cách thức lƣu trữ này phù hợp với kỹ thuật mở rộng dung lƣợng tùy chọn cho phép duy trì các thành phần dữ liệu ngay cả khi nó đƣợc ghi vƣợt quá. Các thành phần dữ liệu có độ dài không xác định đƣợc mã theo cặp giá trị length/ value theo hệ thập lục phân. Để định vị và giải mã các nhóm và thành phần dữ liệu lƣu trong các nhóm đã ghi bởi cơ quan cấp hộ chiếu, đầu đọc dựa vào các phần thông tin Header trong tệp EF.COM (hình 2.5). Việc xác định nhóm dữ liệu nào có trong chip căn cứ vào thông tin Data Presence Map chứa trong tệp EF.COM thông qua các thẻ TAG, mỗi thẻ chỉ định lƣu trữ nhóm thông tin tƣơng ứng (hình 2.6). Data Element Data Element HEADER Data Element Data Element Data Element Data Element Data Element Data Element DATAGROUP PRESENCE MAP DATAGROUP #1 DATAGROUP #N Hình 2.6 Thông tin định vị nhóm dữ liệu lƣu trong chip DataGroup “n” TAG DataGroup “m” TAG Presence of TAG = Data Group Present Absence of TAG = Data Group Not Present Hình 2.7 Thông tin chỉ thị sự tồn tại của nhóm dữ liệu trong chip 31
  35. Với các thành phần dữ liệu trong mỗi nhóm (trƣờng thông tin), đầu đọc nhận diện sự tồn tại của chúng thông qua Data Element Presence Maps, và định vị dữ liệu thông qua các TAG. Details Details Details Details Details Details DATAGROUP ELEMENT PRESENCE MAP Details Details DATA ELEMENT DATA ELEMENT X Z Hình 2.8 Thông tin chỉ thị sự tồn tại thành phần dữ liệu trong một nhóm Data Element “n” TAG Data Element “m” TAG Presence of TAG = Data Element Present Absence of TAG = Data Element Not Present Hình 2.9: Thông tin xác định vị trí thành phần dữ liệu trong nhóm 32
  36. Kết chƣơng Trong phạm vi chƣơng này em tập trung giới thiệu về hộ chiếu điện tử, cấu trúc vật lý của con chip và việc tổ chức dữ liệu điện tử trong chip RFID theo quy định của CIAO. Ở chƣơng này em đặc biệt đi sâu về cấu trúc dữ liệu logic cùa con chip trong hộ chiếu điện tử để xác định cách thức bảo vệ dữ liệu của con chip. Chƣơng tiếp theo em sẽ trình bày các cơ chế bào mật hộ chiếu do CIAO đƣa ra. Trên cơ sở phân tích những ƣu điểm, nhƣợc điểm của cơ chế, em sẽ đề xuất mô hình bảo mật hộ chiếu điện tử trên cơ sở những khuyến cáo của CIAO. 33
  37. Chƣơng 3: ỨNG DỤNG CỦA CHỮ KÝ SỐ VÀO VIỆC KIỂM SOÁT, XÁC THỰC VÀ BẢO VỆ THÔNG TIN TRONG HỘ CHIẾU ĐIỆN TỬ 3.1. MỤC ĐÍCH, YÊU CẦU CỦA VIỆC BẢO MẬT HỘ CHIẾU ĐIỆN TỬ Vấn đề bảo mật HCĐT trong các quy trình cấp phát, kiểm duyệt luôn là 1 trong những vấn đề tối quan trọng đối với an ninh quốc gia. Vấn đề này cần phải thỏa mãn đƣợc 6 yêu cấu sau đây: Tính chân thực Cơ quan cấp hộ chiếu phải ghi đúng thông tin của ngƣời đƣợc cấp hộ chiếu, không có sự nhầm lẫn trong quá trình ghi thông tin khi cấp hộ chiếu. Đây là điều đƣơng nhiên bắt buộc phải có trong khuôn khổ luận van này, giả thiết mục tiêu này luôn đƣợc đảm bảo Tính không thể nhân bản Mục tiêu này phải đảm bảo không thể tạo ra bản sao chính xác của RFIC Tính nguyên vẹn và xác thực Cần chứng thực tất cả thông tin lƣu trên trang dữ liệu và trên RFIC do cơ quan hộ chiếu tạo ra(xác thực). Hơn nữa cần chứng thực thông tin đó k bị thay đổi từ lúc đƣợc lƣu(nguyên vẹn). Tính liên kết người - hộ chiếu Cần phải chứng minh rằng HCĐT thuộc về ngƣời mang nó hay nói một cách khác các thông tin trong hộ chiếu mô tả con ngƣời sở hữu hộ chiếu. Tính liên kết hộ chiếu – chip Cần phải khẳng định booklet khớp với mạch RFIC nhúng trong nó. Kiểm soát truy cập Đảm bảo việc truy cập thông tin lƣu trong chip phải đƣợc sự đồng ý của ngƣời sở hữu nó, hạn chế truy cập đến các thông tin sinh trắc học nhạy cảm và tránh mất mát thông tin cá nhân. 3.2. CƠ CHẾ BẢO MẬT HỘ CHIẾU ĐIỆN TỬ DO ICAO ĐƢA RA Tài liệu mô tả về hộ chiếu điện tử của CIAO[Doc 9303, Ninth Draft: Machine Readable Travel Documents, July 2005] đề cập đến các cơ chế bảo mất cho hộ chiếu điện tử gồm: 34
  38. Xác thực bị động(Passive Authentication) Mục đích là để kiểm tra tính xác thực và toàn vẹn của thông tin lƣu trong chip RFID thông qua việc kiểm tra chữ ký của cơ quan cấp hộ chiếu trên các thông tin lƣu trong chip. Xác thực chủ động (Active Authentication) Mục đích để tránh sao chép và thay thế chip trong hộ chiếu điện tử. Bằng cách trao đồi khóa xác thực quan hệ giữa hệ thống kiểm soát và con chip. Kiểm soát truy cập cơ bản(Basic Access Control-BAC) Mục đích để chống đọc lén thông tin trong chip và nghe trộm thông tin truyền giữa chip RFID và đầu đọc Nếu không có cơ chế BAC thì một dâu đọc bất kỳ theo chuẩn ISO/IEC 14443 đều có thể đọc nội dung thông tin lƣu trong chip RFID. Nhƣ vậy sẽ không đảm bảo yêu cầu bảo vệ thông tin cá nhân. Hơn thế nữa, BAC còn giúp mã hóa dữ liệu truyền giữa đầu đọc và chip RFID để tránh nghe lén thông tin trên đƣờng truyền Điều khiển truy cập mở rộng(Extended Access Control-EAC) Mục đích của EAC để tăng cƣờng bảo vệ các thông tin sinh trắc học nhạy cảm (vân tay, mống mắt) đồng thời khắc phục hạn chế của quá trình xác thực chủ động. Cơ chế này bao gồm hai quá trình: - Xác thực chip (Chip Authentication) - Xác thực đầu đọc (Terminal Authentication) Tuy nhiên CIAO chỉ đề cập đến cơ chế này dƣới dạng mở để các quốc gia, giới khoa học tiếp tục nghiên cứu, bổ sung. Hơn thế nữa, trong các cơ chế đƣợc đề cập ở trên, CIAO khuyến nghị chỉ bắt buộc sử dụng cơ chế xác thực bị động để kiểm tra tính toàn vẹn và xác thực của thông tin. Xác thực chủ động và điều khiển truy cập cơ sở chỉ là các tùy chọn không bắt buộc sử dụng trong quá trình xác thực hộ chiếu. Dƣới đây là bảng tổng kết các phƣơng thức bảo mật thông tin trong hộ chiếu điện tử: 35
  39. PHƢƠNG THỨC BẢO MẬT CƠ BẢN Phƣơng thức CQ cấp CQ kiểm Ƣu điểm Nhƣợc điểm phát soát Xác thực bị Bắt buộc Bắt buộc Đảm bảo xác Không chống đƣợc việc động thực thông tin sao chép toàn nội dung trong chip điện tử con chip hoặc thay thế không bị thay đổi bằng một chip khác. Không có khả năng chống trộm. CÁC PHƢƠNG THỨC BẢO MẬT NÂNG CAO So sánh giữa Khôn sử Tùy chọn Đảm bảo thông Làm tăng tính phức tạp thông tin dụng tin của chip điện của hệ thống. Không có trong dòng tử và dòng ICAO khả năng chống sao chép ICAO và là đồng nhất. thông tin trong chip và thông tin trang nhân than. trong chip điện tử Xác thực chủ Tùy chọn Tùy chọn Có khả năng Làm tăng tính phúc tạp động chống sao chép của hệ thống. Cần con nội dung thông chip có khả năng xử lý. tin của chip điện tử. Có khả năng chống thay thế chip. Kiểm soát Tùy chọn Tùy chọn Chống đọc trộm Không có khả năng chống khả năng thông tin trong sao chép và thay thế chip. truy cập cơ chip. Chống thu Làm tăng tính phức tạp bản tín hiệutrong quá của hệ thống. Cần con trình truyền tin chip có khả năng xử lý. giữa chip và máy đọc (khi sử dụng kênh truyền có mã hóa). Kiểm soát Tùy chọn Tùy chọn Chống truy cập Đòi hỏi quản lý và cấp truy cập mở bất hợp pháp các phát them khóa. Không có rộng thông tin sinh khả năng chống sao chép trắc mở rộng. và thay thế chip. Chống đọc trộm Làm tăng tính phức tạp các thông tin sinh của hệ thống. trắc mở rộng. Cần con chip có khả năng xử lý. Mã hóa Tùy chọn Tùy chọn Bảo mật các Cần quản lý khóa giải mã thông tin thông tin sinh thông tin. trắc mở rộng. Không có khả năng chống Không yêu cầu sao chép và thay thế chip. chip điện tử phải Làm tăng tính phức tạp có khả năng xử lý của hệ thống. tính toán. 36
  40. 3.2.1. Các thuật toán đƣợc sử dụng trong hệ thống bảo mật 3.2.1.1. Quy định chung Tất cả các quốc gia phải sử dụng một thuật toán đồng nhất để sinh khóa (chứng chỉ) bảo mật cấp quốc gia, khóa bảo mật hộ chiếu và ứng dụng trong các đối tƣợng bảo mật(SOD), tuy vậy độ dài của mã khóa là khác nhau tƣơng ứng với các cấp độ bảo mật khác nhau. Các quốc gia phải hỗ trợ tất cả các thuật toán bảo mật tại các cửa khẩu quốc tế để xác thực tính hợp lệ của hộ chiếu do các quốc gia khác phát hành. Dƣới đây là khuyến cáo đối với độ dài mã khóa tƣơng ứng với từng thuật toán và giả định hộ chiếu có thời hạn là 10 năm. 3.2.1.2. RSA - Khóa mã cấp quốc gia có độ dài tối thiểu là 3072 bit(số nguyên tố Mođulô n). - Khóa mã cấp hộ chiếu có độ dài tối thiểu 2048 bit. - Khóa mã đánh cho phƣơng thức xác thực chủ động có độ dài tối thiểu là 1024 bit. 3.2.1.3. DSA - Khóa mã cấp quốc gia có độ dài tối thiểu là 3072 và 256 bit (tƣơng ứng với cặp số n và q). - Khóa mã cấp hộ chiếu có độ dài tối thiểu là 2048 và 224 bit. - Khóa mã dành cho phƣơng thức xác thực chủ động có độ dài tối thiểu là 1024 và 160 bit 3.2.1.4. Đƣờng cong elip DSA (ECDSA) - Khóa mã cấp quốc gia có độ dài tối thiểu 256 bit. - Khóa mã cấp hộ chiếu có độ dài tối thiểu 224 bit. - Khóa mã dành cho phƣơng thức xác thực chủ động có độ dài tối thiểu là 1024 và 160 bit. 3.2.1.5. Các thuật toán băm(SHA-1, SHA-256, SHA-384, SHA-512) Độ dài khóa mã của thuật toán băm nên lựa chọn cho phù hợp với thuật toán ký tƣơng ứng. Ví dụ: - SHA-1 cùng với RSA 1024 - SHA-224 cùng với ECDSA 224 37
  41. 3.2.2. Hệ thống cấp phát và quản lý chữ ký số trong hộ chiếu điện tử 3.2.2.1 Danh mục khóa công khai ICAO tổ chức mô hình danh mục khóa công khai – PKD(Public Key Directory) nhằm lƣu trữ tập trung, phân phối chứng chỉ( khóa công khai), danh sách chứng chỉ thu hồi – CRL(Certificate Revocation List) đến các quốc gia thành viên. CSCA Country KPrCSCA Signing CA KPuCSCA CDS CRL Certificate DS Document KPrDS Revocation List Signer KPUD S Hình 3.1: Danh mục khóa công khai Với ý tƣởng này, mỗi quốc gia có một cơ quan cấp chứng chỉ số quốc gia(ký hiệu là CSCA-Country Signing Certificate Authority), với khóa bí mật là KPrCSCA và khóa công khai KpuCSCA. Những khóa này đƣợc sử dụng để chứng thực cho chứng chỉ của cơ quan cấp hộ chiếu (ký hiệu là CDS). Mô hình tổ chức chứng chỉ nhƣ trên hình 2.9. Trong cây phân cấp quản lý khóa, chứng chỉ khóa ở cấp cao nhất đƣợc phát hành để xác thực tính hợp lệ của tất cả các khóa mã do một quốc gia phát hành. Chứng chỉ cấp cao nhất này đƣợc viết tắt CCSDA. CCSDA đƣợc khởi tạo và phát hành bởi Cơ quan phát hành chứng chỉ khóa cấp quốc gia (CSCA). ICAO khuyến cáo rằng tất cả các cặp khóa do CSCA phát hành (KpuCSCA, KPrCSCA) đều phải đƣợc phát sinh và lƣu trữ trong môi trƣờng bảo mật cao nhất. Tất cả các chứng chỉ khóa cấp quốc gia CCSCA đều phải đƣợc cấp phát và vận chuyển bằng đƣờng ngoại giao bảo mật (không cung cấp trên đƣờng truyền). Mỗi chứng chỉ khóa cấp quốc gia CCSCA sau khi đƣợc phát sinh và sử dụng cần phải gửi cho ICAO (để xác thực tính hợp lệ của các chứng chỉ số hộ chiếu CDS). Thƣ mục khóa công khai (Public Key Directory - PKD) là nơi tập trung các chứng chỉ của cơ quan cấp hộ chiếu (CDS), ICAO sẽ tập hợp chứng chỉ của quốc gia thành viên và quản lý, cung cấp trực tuyến. Đƣợc xây dựng với mục đích chia sẻ các Chứng chỉ hộ chiếu đối với tất cả các quốc gia thành viên, ICAO đã xây dựng và cung cấp dịch vụ thƣ mục khoa công khai (PKD) cho tất cả các quốc gia thành viên truy cập. Dịch vụ này cho phép 38
  42. nhận các thông tin về khóa công khai từ tất cả các quốc gia, lƣu trữ vào trong một thƣ mục, và cho phép các thanh viên truy nhập để lấy thông tin về. Việc truy cập để cập nhật PKD đƣợc giới hạn chỉ trong các quốc gia thành viên ICAO. Ngoài các quốc gia, thì mọi truy cập khác vào PKD để đọc thông tin là không đƣợc phép. Một phần hết sức quan trọng cần thƣờng xuyên cập nhật với PKD là danh sách những chứng chỉ bị thu hồi (CRL). Do các khóa bí mật của cơ quan cấp hộ chiếu dùng để ký một số lƣợng lớn các HCĐT và sử dụng trong một khoảng thời gian dài nên nếu sảy ra trƣờng hợp khóa bí mật này bị lộ, không thể hủy giá trị sử dụng của toàn bộ các HCĐT đã đƣợc ký bởi khóa này. Các HCĐT đã ký bằng khóa nằm trong CRL vẫn còn nguyên giá trị sử dụng. Khi nói đến giá trị của chữ ký số là muốn nói đến thời điểm cuối cùng của nó trong khoảng thời gian có giá trị. Một khi khóa bí mật của một cơ quan cấp hộ chiếu bị lộ, chính phủ đó phải nhanh chóng cảnh báo cho tất cả các quốc gia khác. 3.2.2.2. Mô hình phân cấp CA phục vụ quá trình xác thực bị động Tổ chức mô hình CA thành hai cấp, cấp quốc gia và cơ quan trực tiếp cấp hộ chiếu. CSCA1 CSCA m DS1 DSn DS1 DSn Hình 3.2: Mô hình tổ chức phân cấp CA phục vụ quá trình Passive Authentication CSCA – Country Signing Certifivcate Authority là CA cấp quốc gia, CA này cấp chứng chỉ chứng thực khóa công khai cho các DS – Document Signer. DS là các cơ quan ký hộ chiếu điện tử hay cũng chính là cơ quan cấp hộ chiếu điện tử. Mô hình tổ chức CA này không có CA cấp cao nhất phạm vi toàn cầu hay CA chứng thực cho các CA cấp quốc gia. Mỗi CSCA trong mô hình đóng vai trò là root CA, nó là CA tự xác thực. Khóa công khai của các CSCA trao đổi cho các CSCA khác theo đƣờng công hàm hoặc tuân theo PKD của ICAO. 39
  43. DS ký hộ chiếu điện tử mà nó cấp khóa bí mật, khóa công khai tƣơng ứng lƣu trong chip dƣới dạng 1 chứng chỉ (CDS) do CSCA cấp trên phát hành. Tại điểm kiểm tra, đầu đọc hộ chiếu điện tử đọc CDS, kiểm tra tính xác thực của nó bằng khóa công khai của CSCA tƣơng ứng. Sau đó đầu đọc thẻ dung khóa công khai trong CDS để xác thực nội dung thông tin lƣu trong chip. Danh sách chứng chỉ thi hồi – CRL: Mô hình PKI sử dụng trong xác thực hộ chiếu điện tử có điểm riêng đặc thù so với mô hình PKI nói chung vì đây là hình thức PKI offline. Do các khóa bí mật của các chính phủ dung để ký một số lƣợng lơn các HCĐT và sử dụng trong một khoảng thời gian dài nên nếu sảy ra trƣờng hợp khóa bí mật này bị lộ, không thể hủy giá trị sử dụng của toàn bộ các HCĐT đƣợc ký bởi khóa này. Giá trị dùng để ký HCĐT ý muốn nói tới thời điểm cuối cùng của nó trong khoảng thời gian có giá trị. Một khi khóa bí mật của một chính phủ bị lộ, quốc gia này phải nhanh chóng cảnh báo cho tất cả các quốc gia khác (truyền song phƣơng trực tiếp) và cập nhật vào ICAO PKD trong vòng 48 giờ. Trong trƣờng hợp khống khóa nào cần thu hồi thì các quốc gia cũng lên khẳng định lại danh sách thu hồi khóa CRL với các quốc gia khác và ICAO PKD ít nhất là trong vòng 90 ngày. 3.2.2.3 Mô hình cấp, xác thực hộ chiếu điện tử 1/. Quá trình cấp phát hộ chiếu điện tử B1: Đăng ký cấp hộ chiếu theo mẫu do cơ quan cấp phát, quản lý hộ chiếu phát hành. Quá trình này hiện nay đang đƣợc làm thủ công, em xin để xuất điện tử hóa quá trình đăng ký cấp hộ chiếu: Đăng ký, đặt lịch đến cơ quan cấp hộ chiếu để lấy thông tin sinh trắc học, nhận hộ chiếu thông qua mạng máy tính. B2: Kiểm tra nhân than, đây là quá trình nghiệp vụ của cục quản lý xuất nhập cảnh không nằm trong phạm vi luận văn em đề cập tới. B3: Thu nhập thông tin sinh trắc học. Trong luân văn em đề xuất sử dụng 03 thông tin sinh trắc học gồm ảnh khuôn mặt, ảnh hai vân tay ngón trỏ và ảnh mống mắt. B4: In hộ chiếu, ghi thông tin vào chip điện tử. . Ghi thông tin cơ bản nhƣ trên trang hộ chiếu giấy vào DG1 (Đây còn gọi là dòng ICAO). . Ghi ảnh khuôn mặt vào DG2. . Ghi ảnh hai vân tay vào DG3. 40
  44. . Ghi ảnh hai hốc mắt vào DG4. . Ghi SOD: Tạo giá trị băm các nhóm thông tin theo SHA, tập tất cả các giá trị băm này gọi là SOLDS; ký SOLDS bằng khóa bí mật KPrDS của cơ quan cấp hộ chiếu ta đƣợc chữ ký trên SOLDS ký hiệu là SOD.Signature. Cấu trúc của SOD là (SOLDS, SOD.Signature,SOD.cert), trong đó SOD.cert là chứng chỉ CDS – chứng chỉ số của cơ quan cấp hộ chiếu. Phần thông tin này phục vụ quá trình xác thực bị động . SOD chứa CDS nhằm mục đích tạo sự thuận lợi cho sự phê chuẩn sau này của cơ quan kiểm tra hộ chiếu đồng thời cũng hạn chế số lƣợng chứng chỉ. Thay vì cơ quan hộ chiếu phải lƣu và quản lý tất cả các CDS thì họ chỉ phải lƣu và quản lý chứng chỉ của một quốc gia (CCSCA) và danh sách CRL. CDS đƣợc chứng thực thông qua CCSCA này DG1 h(DG1) DG2 h(DG2) . DG16 h(DH16 ) LDS SOLDS { | SOLDS| } KPrDS SOD.Signature CDS SOD.Cert Hình 3.3: Mô tả quá trình tạo đối tƣợng SOD 41
  45. Đề nghị cấp hộ chiếu Điền thông tin vào các biểu mẫu đề nghị cấp hộ chiếu F KT T CSDL nhân QLHC thân Thông báo kết quả Xếp lịch làm việc Thu nhận thông tin sinh trắc học In hộ chiếu, ghi thông tin vào chip Nhận hộ chiếu điện tử Kết thúc Hình 3.4: Quy trình cấp hộ chiếu điện tử đề xuất 2/. Quá trình kiểm tra kiểm soát tại các cửa khẩu quốc tế hộ chiếu điện tử . B1: Ngƣời mang hộ chiếu suất trình hộ chiếu cho cơ quan kiểm tra, cơ quan tiến hành thu nhận các đặc tính sinh trắc học từ ngƣời xuất trình hộ chiếu. . B2: Kiểm tra các đặc tính bảo mật trên trang hộ chiếu giấy thông qua các đặc điểm an ninh truyền thống đã biết: thủy ấn hoa văn chìm, mực phát quang, màng bảo vệ . . . 42
  46. . B3: Hệ thống kiểm tra IS và chíp RFIC thực hiện quá trình BAC (kiểm soát truy cập căn bản). Sauk hi BAC thành công, IS có thẻ đọc các thông tin trong chip ngoại trừ DG3, DG4 (ảnh vân tay và mống mắt), mọi thông tin trao đổi giữa đầu đọc và chip đƣợc truyền thông báo bảo mật, mã hóa sau đó là xác thực theo cặp khóa ( KENC,KMAC) có đƣợc từ khóa trình BAC. . B4: Thực hiện quá trình xác thực bị động – Passive Authentication để kiểm tra tính xác thực và toàn vẹn của các thông tin lƣu trong chip thông qua kiểm tra chữ ký trong SOD bằng khóa công khai của cơ quan cấp hộ chiếu. Việc trao đổi khóa thông qua chứng chỉ số theo mô hình khuyến cáo của ICAO. Xác thực bị động kết hợp với xác thực chip (Chip Authentication) thì có thể khẳng định chip thực sự là nguồn gốc tức là không bị thay thế, không bị nhân bản (Đây là quá trình kiểm soát truy cập mở rộng). . B5: Thực hiện quá trình xác thực chủ động – Active Authentication để đảm bảo rằng con chip điện tử trong hộ chiếu điện tử không bị thay thế, bằng cách trao đổi khóa xác thực giữa hệ thống kiểm soát khóa IS và con chip RFIC. . B6: Quá trình xác thực đầu đọc Terminal Authentication (Thuộc phƣơng pháp kiểm soát truy cập mở rộng ) chứng minh quyền truy cập thông tin của hệ thống kiểm soát đến các nhóm thông tin nhậy cảm (DG3, DG4). Quá trình này chỉ thực hiện đối với những cơ quan kiểm tra hộ chiếu có triển khai kiểm soát truy cập mở rộng. Sauk hi xác thực đầu đọc thành công, đầu đọc chip có thể truy cập thông tin theo quyền thể hiện trong chứng chỉ CIS. . B7: Hệ thống kiểm soát đối sánh thông tin sinh trắc học thu nhận đƣợc trực tiếp từ ngƣời xuất trình hộ chiếu với thông tin sinh trắc học lƣu trong chip. Nếu quá trình đối sánh thành công và kết hợp với các chứng thực trên, cơ quan kiểm tra hộ chiếu có đủ điều kiện để tin tƣởng hộ chiếu là xác thực và ngƣời mang hộ chiếu đúng là con ngƣời mô tả trong hộ chiếu là xác thực và ngƣời mang hộ chiếu đúng là con ngƣời mô tả trong hộ chiếu. Nếu hệ thống kiểm tra tái cửa khẩu không đƣợc triển khai EAC (hoặc không có khóa mã để kiểm tra) thì sẽ không có quyền truy cập các thông tin trong DG3, DG4. Thông tin sinh trắc học duy nhất dùng để đối sánh chỉ là ảnh khuôn mặt. 43
  47. Xuất trình epassport F Traditional security T Thu nhận các đặc tính sinh trắc học từ ngƣời Đọc vùng MRZ quang học xuất trình hộ chiếu F Basic Access Control T T Chip EAC? Kiểm tra đặc Authentication F biệt Đọc LDS, SOD, CCSCA F Passive Authentication T Terminal EAC? Authentication F F Đọc DG2, DG3, DG4 Đối sánh thông tin sinh trắc học T Hộ chiếu xác thực. Ngƣời mang hộ chiếu hợp lệ Hình 3.5 Mô hình xác thực hộ chiếu điện tử 44
  48. a. Basic Access Control Mục đích: Chống đọc lén thông tin trong chip và nghe trộm thông tin truyền giữa RFIC và IS. So sánh hộ chiếu điện tử có chứa con chip không tiếp xúc với hộ chiếu truyền thống, ta thấy có hai sự khác biệt cơ bản: - Thông tin lƣu trữ trong con chip có thể đọc đƣợc mà không cần mở cuốn hộ chiếu. - Việc truyền thông giữa con chip và máy đọc nếu không đƣợc mã hóa, có thể bị thu nhận và đánh cắp từ khaongr cách xa vài mét. Để chống đọc trộm thông tin bất họp pháp , các quốc gia có thể lựa chọn kỹ thuật Kiểm soát truy cập cơ bản (BAC). Kỹ thuật này là tùy chọn (OPTIONAL) sử dụng. Nó đảm bảo đƣợc rằng nội dung của chip điện tử chỉ có thể đọc đƣợc khi ngƣời mang hộ chiếu đồng ý xuất tình hộ chiếu của họ. Một chip có hệ thống kiểm soát truy cập cơ bản phải chống đƣợc các truy cập trái phép để đọc trộm thông tin. Để xác nhận truy cập là đáng tin cậy, ta phải thực hiện lần lƣợt các bƣớc sau: - Hệ thống liểm soát đọc các thông tin trong vùng dữ liệu đọc đƣợc bằng máy (dòng ICAO trong trang nhân than của hộ chiếu),trích ra các thông tin Số hộ chiếu, Ngày tháng năm sinh và Hạn hộ chiếu (bao gồm cả số kiểm tra của các thông tin này). Trong trƣờng hợp không đọc đƣợc bằng máy, hệ thống phải cho phép nhập các thông tin trên bằng bàn phím. 16 bytes có trọng số lớn nhất của thông tin này sau khi áp dụng hàm băm SHA-1 đƣợc sử dụng làm đầu vào cho thuật toán sinh khóa truy cập cơ bản. - Hệ thống kiểm soát và con chip kiểm tra tính tin cậy lẫn nhau và cùng sinh khóa. - Sau khi xác nhận thành công tính đáng tin cậy, việc trao đổi thông tin giữa hệ thống kiểm soát và chip phải đƣợc bảo vệ bằng cơ chế trao đổi thông tin đảm bảo an toàn, trong đó các thông tin thay đổi đều đƣợc mã hóa. Cơ chế này thực hiện bởi thực tế là các RFIC có thể kết nối đến bất kỳ một thiết bị đầu đọc theo chuẩn ISO/IEC 14443. Do đó, BAC nhằm mục đích giới hạn truy cập thông tin lƣu trên RFIC của HCĐT cho những đối tƣợng có truy cập vật lý đến chính booklet của nó. Nghe trộm bị chặn bằng cách truyền thông báo bảo mật, tất cả dữ liệu truyền giữa RFIC và đầu đọc đƣợc mã hóa sử dụng khóa phiên có đƣợc từ BAC. Nhƣ vậy ta có thể ngăn chặn đƣợc hai hình thức tấn công là đọc lén và nghe trộm. 45
  49. b. Xác thực bị động Mục đích là để hệ thống kiểm tra thẩm định tính xác thực và toàn vẹn của thông tin lƣu trong chip. Trong các nhóm dữ liệu của cấu trúc logic LSD, con chip có chứa một đối tƣợng bảo vệ hộ chiếu (SOD). Đối tƣợng này đƣợc mã hóa (ký) bởi cơ quan phát hành và chứa nội dung tóm lƣợc của cấu dữ liệu logic LSD. Các hệ thống kiểm tra kiểm soát cửa khẩu đều phải đƣợc cung cấp các khóa công khai bảo vệ hộ chiếu (KPuDS) của các quốc gia khác hoặc có thể đọc trực tiếp Chứng chỉ số hộ chiếu (CDS) từ hộ chiếu, nên có khả năng kiểm tra xác thực nội dung của SOD. Bằng phƣơng pháp này, thông qua nội dung của đối tƣợng bảo mật, nội dung của cấu trúc dữ liệu logic đƣợc xác thực. Kỹ thuật kiểm tra này đòi hỏi khả năng xử lý của con chip điện tử trong hộ chiếu. Vì vậy nó đƣợc gọi là “ xác thực bị động” nội dung của chip điện tử. Các bƣớc hoạt động 1. Đọc SOD từ chip. 2. Lấy CDS từ SOD vừa đọc đƣợc ở trên. 3. Kiểm tra CDS bằng KPuCSCA có đƣợc từ PKD hoặc từ cơ sở dữ liệu cục bộ của hệ thống kiểm tra (trao đổi trực tiếp giữa hai quốc gia thông qua đƣờng công hàm). 4. Kiểm tra chữ ký số SOD.Signature sử dụng KPuDS. Bƣớc này nhằm khẳng định thông tin SOLDS đúng là đƣợc tạo ra bởi cơ quan cấp hộ chiếu và SOLDS không bị thay đổi. 5. Đọc các thông tin cần thiết từ LDS. 6. Tính hàm băm các thông tin ở bƣớc 4 sau đó so sánh với SOLDS. Bƣớc này khẳng định đƣợc nhóm dữ liệu là xác thực và toàn vẹn. Các thông tin sinh trắc bây giờ có thể đƣợc sử dụng để xác thực, đối chiếu với thông tin sinh trắc của ngƣời mang hộ chiếu. Đánh giá về xác thực bị động Xác thực bị động là cách đơn giản hiệu quả để phê chuẩn tính toàn vẹn và xác nhận những thông tin chứa trong epassport RFIC và một epassport nhân bản sẽ không đƣợc phát hiện bởi cơ chế này. Mặt khác, cơ chế này quá đơn giản, vì PKI còn nhiều mặt hạn chế, liên quan đến chứng chỉ thu hồi. Đặc biệt, những điều này không đƣa đến một hệ thống kiểm tra có 46
  50. thể kết nối online đến PKD, đó có thể là một cơ hội cho phép epassport đƣợc ký bằng một DS trung hòa, có thể tiếp cận offline bởi hệt thống kiểm tra. c. Xác thực chủ động Các quốc gia phát hành hộ chiếu điện tử có thể lựa chọn phƣơng pháp xác thực chủ động để bảo vệ con chip. Phƣơng pháp xác thực chủ động đảm bảo đƣợc rằng con chip điện tử trong hộ chiếu không bị thay thế, bằng cách trao đổi khóa xác thực giữa hệ thống kiểm soát và con chip. Để làm đƣợc việc đó, con chip lƣu trữ một cặp khóa xác thực chủ động (KPrAA và KPuAA). Một hàm băm của nhóm dữ liệu 15 (chứa thông tin về khóa công khai KPuAA) đƣợc lƣu trữ trong Đối tƣợng bảo mật hộ chiếu (SOD) và đƣợc xác thực bởi chữ ký điện tử của cơ quan cấp phát. Khóa bí mật tƣơng ứng (KPrAA) đƣợc lƣu trữ trong vùng nhớ an toàn của con chip. Bằng việc xác thực thông tin trong vùng đọc đƣợc bằng máy MRZ (dòng ICAO – thông qua nội dung của Đối tƣợng bảo mật SOD) kết hợp với thông tin phản hồi trao đổi cặp khóa công khai và bí mật, hệ thống kiểm soát khẳng định đƣợc con chip không bị thay thế và sao chép nôi dung từ một hộ chiếu khác. Phƣơng pháp xac định chủ động yêu cầu khả năng xử lý thông tin của con chip điện tử trong hộ chiếu. Khi hộ chiếu có sử dụng nhóm dữ liệu tùy chọn 15 thì hệ thống kiểm soát có thể cơ chế xác thực chủ động để đảm bảo rằng dữ liệu đƣợc đọc từ chip do chính cơ quan cấp phát phát hành và dữ liệu đọc từ trang nhân thân là trùng khớp. Hệ thống kểm soát và chip thực hiện các bƣớc sau: - Đọc dòng ICAO trong trang nhân thân (nếu tronng quá trình kiểm soát truy cập cơ bản chƣa đọc) và so sánh với dòng ICAO lƣu trong chip tại nhóm dữ liệu thứ nhất đã đƣợc kiểm tra thông qua quá trình xác thực bị động nên tƣơng tự ta cũng có thể đảm bảo rằng dòng ICAO trong trang nhân thân là đáng tin cậy và không bị thay đổi. - Quá trình xác thực bị động cũng đảm bảo tính chính xác và toàn vẹn của nhóm dữ liệu thứ 15. Điều này thể hiện khóa công khai của quá trình xác thực chủ động cũng đáng tin cậy và không bị thay đổi. 47
  51. - Để đảm bảo Đối tƣợng bảo mật không phải là bản sao chép hoặc thay thế, hệ thống kiểm soát sử dụng cặp khóa xác thực chủ động để kiểm tra chíp. Sau khi đã qua bƣớc kiểm tra trên thì có thể đảm bảo rằng Đối tƣợng bảo mật SOD là thuộc về trang nhân thân, chip không bị thay thế và kết quả đối sáng thông tin trong trang nhân thân và trong chip là trùng khớp. d. Kiểm soát truy cập mở rộng Việc thực hiện bảo mật đối với các thông tin sinh trăc bổ sung phụ thuộc vào quy định của cơ quan cấp phát hoặc thỏa thuận song phƣơng giữa các cơ quan cấp phát trong việc chia sẻ thông tin này để phục vụ công tác kiểm tra kiểm soát. Chỉ những cơ quan có thẩm quyền và có đƣợc khóa giải mã mới có thể đọc ghi thông tin trong vùng mở rộng. Vì vậy, vùng dữ liệu mở rộng này thƣờng đƣợc các quốc gia sử dụng với mục đích quản lý nghiệp vụ, ví dụ nhƣ ghi các thông tin nhạy cảm về đặc điểm nhân dạng, quá trình hoạt động cũng nhƣ biện pháp đối sách để trợ giúp cho kiểm soát viên trong quá trình kiểm tra kiểm soát tại các cửa khẩu quốc tế. Quá trình kiểm soát truy cập mở rộng gồm 2 quá trình: - Xác thực chip (Chip Authentication) Kết hợp với Passive Authentication sẽ chứng minh tính nguyên gốc của chip, ngoài ra chip Authentication còn khắc phục đƣợc nhƣợc điểm ngữ cảnh thách đố của Active Authentication và cung cấp khóa phiên mạnh [Federal Office for Information Sercurity, Germany: Advanced Sercurity Mechanisms for Machine Readable Ttravel Documents – Extended Access Control (EAC), September 2007]. - Xác thực đầu đọc (Terminal Authentication) Terminal Authenticatiion là giáo thức thách đố - Trả lời tạo ra sự xac thực phía IS. Nhận xét: Với việc xác thực biện pháp xác thực bị động kết hợp với xác thực chủ động và kiểm soát truy cập cơ bản, kiểm soát truy cập mở rộng nhƣ em đã trình bày đã đảm bảo các mục tiêu, yêu cầu đặt ra đối với việc bảo mật hộ chiếu điện tử. Cụ thể: Về tính chân thực: Mục tiêu này có thể đảm bảo nếu quá trình thu thập, in hộ chiếu và ghi thông tin vào chip tuân thủ đúng quy trình nghiệp vụ. 48
  52. Tính không thể nhân bản: Mục tiêu này đạt đƣợc với sự kết hợp kết quả của chip Authentication và Passive Authentication. Hơn thế nữa nó còn khắc phục đƣợc nhƣợc điểm ngữ cảnh thách đố so với sử dụng Active Authentication. Tính nguyên vẹn và xác thực: Mục tiêu này luôn đạt đƣợc với Passive Authentication và sử dụng mô hình PKI. Tính liên kêt ngƣời - hộ chiếu: Sử dụng 3 đặc tính sinh trắc học có thể nâng cao hiệu quả của mục đích này thay vì chỉ “quan sát” một thông tin duy nhất là ảnh khuôn mặt. Tính liên kết hộ chiếu – chip: Mục tiêu này đạt đƣợc do quá trình so sánh MRZ trong chip (đã đƣợc ký bởi cơ quan cấp hộ chiếu) với MRZ mà IS đọc đƣợc tại vùng quang học trên trang booklet. Kiểm soát truy cập: Mục tiêu này đạt đƣợc thông qua 2 quá trình điều khiển truy cập BAC và EAC. 49
  53. Chƣơng 4: LẬP TRÌNH ỨNG DỤNG THỬ NGHIỆM CHỮ KÍ SỐ ĐỂ MÃ HÓA BẢO VỆ THÔNG TIN Trong chƣơng này, em xin trình bày về chƣơng trình thử nghiệm phát sinh chữ kí số để bảo vệ thông tin trong con chip của hộ chiếu điện tử và giải mã kiểm tra xác thực thông tin. Chƣơng trình thử nghiệm gồm 2 môđun chính, đó là phần chƣơng trình mã hóa và giải mã thông tin sử dụng thuật toán khóa công khai RSA và phần chƣơng trình mô tả thuật toán băm SHA để tóm lƣợc bản tin. Chƣơng trình đƣợc viết trên ngôn ngữ C++ và chạy trên môi trƣờng windows. Do thời gian làm luận văn có hạn nên dự định viết chƣơng trình bằng ngôn ngữ Java để có thể chạy trên các môi trƣờng khác nhau của em đã không kịp hoàn thành.  Chƣơng trình mã hóa và giải mã thông tin sử dụng thuật toán RSA Chƣơng trình gồm có 3 chức năng chính là: - Phát sinh khóa (khóa công khai, khóa bí mật). Độ dài khóa có thể tùy chọn 1024, 2048 hoặc 3072 bit tùy thuộc vào độ bảo mật của thông tin cần mã hóa (khóa mã cấp quốc gia cần độ dài 3072 bit, khóa mã của cơ quan cấp phát cần độ dài 2048 bit theo quy định của Tổ chức hàng không dân dụng quốc tế ICAO). Sau khi phát sinh khóa, cặp khóa sẽ đƣợc lƣu trữ trong máy, tập tin chứa khóa bí mật đƣợc dùng để kí có đuôi .kez, tập tin chứa khóa công khai dùng để giải mã sẽ có đuôi .pke 50
  54. Hình 4.1 Phát sinh cặp khóa RSA Hình 4.2 Lƣu trữ khóa bí mật có phần mở rộng .kez 51
  55. - Mã hóa thông tin trƣớc khi ghi vào con chip của hộ chiếu điện tử (sử dụng khóa công khai để mã hóa) Để mã hóa thông tin trong các nhóm dữ liệu của con chip điện tử, chƣơng trình sẽ lần lƣợt mở từng tập tin, thực hiện mã hóa trƣớc khi ghi thông tin đó vào trong con chip. Hình 4.3 Thông tin cần mã hóa trƣớc khi ghi vào chip điện tử Hình 4.4 Thông tin sau khi mã hóa 52
  56. - Giải mã để xác thực và kiểm tra thông tin trong con chip của hộ chiếu điện tử. Hình 4.5 Thông tin thu đƣợc sau khi giải mã Thông tin thu đƣợc sau khi giả mã sẽ đƣợc so sánh với các thông tin lƣu trữ trong cơ sở dữ liệu để kiểm tra tính xác thực.  Chƣơng trình tóm lƣợc bản tin một chiều sử dụng thuật toán băm SHA Nhƣ em đã giới thiệu ở phần chƣơng 1 và chƣơng 3, SHA là thuật toán tóm lƣợc bản tin một chiều có độ an toàn cao và đƣợc sử dụng rất phổ biến hiện nay trên thế giới. SHA đƣợc phân chia thành SHA-1 và SHA-2 tùy thuộc vào độ dài của bản tin tóm lƣợc. Trong khi SHA-1 có độ dài nhỏ hơn 160 bit thì SHA-2 có độ dài từ 224 bit trở lên (SHA-224, SHA-256, SHA-378, SHA-512). Chƣơng trình thử nghiệm cho phép tóm lƣợc bản tin dƣới cả dạng file và dạng chuỗi nhập trực tiếp bằng chƣơng trình. Kết quả tóm lƣợc có thể hiệm thị dƣới dạng chuỗi kí tự hoặc dạng thập lục phân (haxa decimal), sau đó có thể lƣu trữ dƣới dạng tập tin để ghi vào trong chip điện tử. 53
  57. KẾT LUẬN Trong luận văn tốt nghiệm, em đã ứng dụng lý thuyết về hạ tầng mã hóa công khai và chữ kí số để phục vụ việc kí lên hộ chiếu điện tử (trực tiếp là con chip trong hộ chiếu điện tử ) và xác thực thông tin trong hộ chiếu điên tử tại các cửa khẩu quốc tế. Việc áp dụng các biện pháp bảo mật này đã đáp ứng tốt các yêu cầu đối với vấn đề bảo mật hộ chiếu điện tử, chống lại các hình thức tấn công hiện nay. Đề xuất mà em đƣa ra là sử dụng kết hợp RSA+SHA kế thừa đƣợc toàn bộ các kĩ thuật, công nghệ bảo mật hộ chiếu truyền thống đồng khai thác sử dụng các công nghệ bảo mật hiện đại nhất để bảo mật cho hộ chiếu điện tử. So sánh với các yêu cầu bảo mật bắt buộc quy định trong tài liệu ICAO Doc 9303 thì cách thức bảo mật em đƣa ra đáp ứng đầy đủ quy định này. Tuy nhiên trong quá trình thực hiện luận văn, do thời gian có hạn nên em không thể tránh đƣợc những thiếu sót và hạn chế nhất định. Em rất mong đƣợc sự đóng góp của thầy cô và các bạn để em tiếp tục nghiên cứu và phát triển đề tài đã thực hiện trong thời gian tới. Em xin chân thành cảm ơn! 54
  58. DANH MỤC TÀI LIỆU THAM KHẢO [1] Nguyễn Ngọc Hoá, Phạm Tâm Long, Khoa CNTT, ĐHCN-ĐHQGHN: Mô hình xác thực hộ chiếu điện tử, Hội thảo Quốc gia lần thứ XI, 2008. [2] GS.TS. Phan Đình Diệu, Lý thuyết mật mã và An toàn thông tin, 1999. [3] Nguyễn Ngọc Bình Phƣơng, Thái Thanh Phong, Các giải pháp lập trình C#, www.dvpub.com.vn. [4] Doc 9303, Ningh Draft: Machine Readable Travel Documents, July 2005. [5] Information about the Australian e-Passport, http:// www.dfat.gov.au/dept/passports/. [6] Informtion about the US e-Passport, [7] ICAO, PKI for machine readable travel documents offering ICC read-only access, version 1.0. Technical Report, ICAO, Apr 2004/ [8] Secure Hash Standard, Federal Information Processing Standards Publication (FIPS PUBS) 180-2, 2002 August. [9] Xiaoyun Wang, Dengguo Feng, Xuejja Lai, Hongbo Yu, Conllisions for Hash Functions MD4, MD5, HAVAL – 128 and RIPEMD, 2004 August. [10] Bách khoa toàn thƣ mở Wikipedia, wikipedia. org/wiki. [11] Trang web http:// www.codeguru.com 55