Nghiên cứu giải pháp xây dựng hệ thống cấp chứng chỉ số dựa trên hạ tầng khóa công khai

71 471 0
Nghiên cứu giải pháp xây dựng hệ thống cấp chứng chỉ số dựa trên hạ tầng khóa công khai

Đ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

Số hóa bởi trung tâm học liệu www: \\lrc-tnu.edu.vn ĐẠI HỌC THÁI NGUYÊN ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG HOÀNG THỊ THÚY NGHIÊN CỨU GIẢI PHÁP XÂY DỰNG HỆ THỐNG CẤP CHỨNG CHỈ SỐ DỰA TRÊN HẠ TẦNG KHÓA CÔNG KHAI Chuyên ngành: Khoa học máy tính Mã số: 60 48 01 01 LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH NGƢỜI HƢỚNG DẪN KHOA HỌC: PGS.TS. NGUYỄN VĂN TAM Thái Nguyên 10/2013 Số hóa bởi trung tâm học liệu www: \\lrc-tnu.edu.vn i LỜI CẢM ƠN Trước hết, tôi xin gửi lời cảm ơn chân thành nhất tới PGS.TS Nguyễn Văn Tam, người thầy đã cho tôi những định hướng và những ý kiến rất quý báu về công nghệ PKI cũng như cách để triển khai ứng dụng trên nó. Tôi cũng xin tỏ lòng biết ơn sâu sắc tới thầy cô, bạn bè cùng khoá đã quan tâm, giúp đỡ tôi tiến bộ trong suốt thời gian qua. Tôi xin cảm ơn trường Đại học Thái Nguyên cũng như trường Đại học Kinh Doanh và Công nghệ Hà Nội đã hết sức tạo điều kiện cho tôi trong quá trình học và làm luận văn này. Luận văn được hoàn thành trong thời gian rất hạn hẹp, và chắc chắn còn nhiều khiếm khuyết cần bổ sung thêm. Tôi xin cảm ơn các thầy cô, bạn bè và người thân đã và sẽ có những góp ý chân tình cho nội dung của luận văn này, để tôi có thể tiếp tục đi sâu tìm hiểu về PKI, CA và hy vọng có thể đưa vào ứng dụng thực tiễn công tác. Hoàng Thị Thúy Số hóa bởi trung tâm học liệu www: \\lrc-tnu.edu.vn ii MỤC LỤC Lời cảm ơn i Mục lục ii Danh mục từ viết tắt iv Danh mục hình vẽ v MỞ ĐẦU 1 CHƢƠNG 1: GIỚI THIỆU VỀ HỆ MẬT MÃ 2 1.1. Hệ mật mã khoá đối xứng 3 1.2. Hệ mật mã khoá công khai 4 1.3. Hàm băm 8 1.4. Chữ kí số 11 CHƯƠNG 2: CHỨNG CHỈ SỐ VÀ HỆ THỐNG CẤP CHỨNG CHỈ CA 13 2.1. Chứng chỉ số (digital certificates) 14 2.1.1. Chứng chỉ khóa công khai 14 2.1.2. Chứng chỉ khoá công khai X.509 16 2.1.3. Thu hồi chứng chỉ 20 2.1.4. Chính sách đối với chứng chỉ số 21 2.1.5. Công bố và gửi thông báo thu hồi chứng chỉ 22 2.2. Hạ tầng khóa công khai – PKI 25 2.3. Hệ thống cấp chứng chỉ số (Certification Authority – CA) 30 2.4. Mô hình tin cậy cho PKI 31 2.4.1. Mô hình CA đơn 31 2.4.2. Mô hình phân cấp 33 2.4.3. Mô hình mắt lưới (xác thực chéo) 34 2.4.4. Mô hình Hub và Spoke (Bridge CA) 36 2.4.5. Mô hình Web (Trust Lists) 37 Số hóa bởi trung tâm học liệu www: \\lrc-tnu.edu.vn iii 2.4.6. Mô hình người sử dụng trung tâm (User Centric Model) 38 CHƯƠNG 3: XÂY DỰNG HỆ THỐNG CẤP CHỨNG CHỈ SỐ THỬ NGHIỆM 40 3.1. Tổng quan về hệ thống 41 3.1.1. Mô hình hệ thống 41 3.1.2. Một số đặc tính của hệ thống cung cấp chứng chỉ số 41 3.2. Chức năng và quá trình khởi tạo các thành phần trong hệ thống cung cấp chứng chỉ số JavaCA 46 3.2.1. Certificate Authority - CA 46 3.2.2. Registration Authority - RA 47 3.2.3. RAO 47 3.2.4. LDAP và Public Database Server 48 3.3. Qui trình đăng kí, cấp phát chứng chỉ 49 3.4. Thử nghiệm sản phẩm 50 3.4.1. Thử nghiệm phía quản trị 50 3.4.2. Thử nghiệm phía người dùng 50 3.5. Đánh giá chung 50 Kết quả nghiên cứu 53 Số hóa bởi trung tâm học liệu www: \\lrc-tnu.edu.vn iv DANH MỤC TỪ VIẾT TẮT ARLs Authority Revocation Lists CA Certificate Authority CAO Certificate Authority Operator CMS Cryptographic Message Syntax COST Commercial of the Shelf CRLs Certificate Revocation Lists CRR Certificate Revocation Request CSP Certification Service Provider DAP Directory Access Protocol DES Data Encryption Standard DNS Domain Name System DSS Digital Signature Standard ECC Elliptic Curve Cryptography HTTPS Secure Hypertext Transaction Standard IANA Internet Assigned Numbers Authority IEEE Institute of Electrical & Electronic Engineers IETF Internet Engineering Task Force ISO International Organization for Standardization ITU-T Internet Telecommumications Union- Telecommunication LDAP Lightweight Directory Access Protocol MD5 Message Digest 5 Hash Algorithm OCSP Online Certificate Status Protocol PEM Privacy Enhanced Mail PGP Pretty Good Privacy PKC Public Key Certificate PKCS Public Key Cryptography Standards PKI Public Key Infrastructure PKIX Extended Public Key Infrastructure RA Registration Authorities RAO Registration Authorities Operator RFC Request For Comments RSA Rivest Shamir Adleman S/MIME Secure Multipurpose Internet Mail Extensions SHA-1 Secure Hash Standard SSL Secure Socket Layer TLS Transport Layer Security Số hóa bởi trung tâm học liệu www: \\lrc-tnu.edu.vn v DANH MỤC HÌNH VẼ Hình 1.2: Mã hoá thông điệp sử dụng khoá công khai C 5 Hình 1.3: Giải mã thông điệp sử dụng khoá riêng của người nhận 5 Hình 1.4: Sơ đồ hệ mật mã RSA 6 Hình 1.5: Mã hoá thông điệp sử dụng khoá bí mật R để mã thông điệp và khoá công khai C để mã khoá bí mật R 7 Hình 1.6: Giải mã thông điệp sử dụng khoá bí mật C để giải mã thông điệp7 và khoá riêng R để giải mã khoá bí mật C 7 Hình 1.7: Nhiều thông điệp nguồn cho cùng 1 kết quả đích sau mã hoá/ kí số 9 Hình 1.8: Sơ đồ chữ kí RSA 12 Hình 2.1: Khuôn dạng chứng chỉ X.509 17 Hình 2.2: Khuôn dạng danh sách chứng chỉ bị thu hồi 23 Hình 2.3: Dịch vụ kiểm tra online 25 Hình 2.4: Các thành phần PKI 26 Hình 2.5: Mô hình CA đơn 32 Hình 2.6: Mô hình phân cấp 33 Hình 2.7: Mô hình mắt lưới 35 Hình 3.1: Mô hình hệ thống cung cấp chứng chỉ số 41 Hình 3.2: Tệp yêu cầu cấp chứng chỉ 43 Hình 3.3: Chứng chỉ lưu khoá công khai của rootCA trong hệ thống JavaCA 44 Hình 3.4: Chứng chỉ của người sử dụng 45 Hình 3.5: Mô hình mô phỏng hệ thống JavaCA phân cấp hai tầng 47 Hình 3.6: Mô hình quan hệ và trao đổi dữ liệu giữa các thành phần trong hệ thống 49 Hình 3.7: Mô hình đăng kí và cấp chứng chỉ số 49 Số hóa bởi trung tâm học liệu www: \\lrc-tnu.edu.vn 1 MỞ ĐẦU Các dịch vụ trên mạng Internet/Intranet ngày càng phong phú nhưng mức độ đe dọa đến an ninh thông tin trên mạng như làm thất thoát, sai lệch thông tin, giả mạo thông tin và người dùng ngày càng trở nên nghiêm trọng. Nghiên cứu xây dựng hệ thống thông tin an toàn và có tính bảo mật cao đang là nhu cầu cấp bách hiện nay. Thuật toán mật mã khóa công khai, đặc biệt là thuật toán RSA cho phép mã hóa, thực hiện chữ kí số để bảo đảm tính mật, tính xác thực, tính toàn vẹn thông tin khi truyền trên mạng. Tuy nhiên, khóa công khái có thể bị giả mạo do vậy Nhà cung cấp phải chứng thực số (Certificate Authority - CA) chứng thực khóa công khai thuộc về ai. Chính vì vậy học viên chọn đề tài: “Nghiên cứu giải pháp xây dựng hệ thống cấp chứng chỉ số dựa trên hạ tầng khóa công khai” với mục đích tìm hiểu về chứng chỉ số, hạ tầng khóa công khai PKI và triển khai thử nghiệm một hệ thống cung cấp chứng chỉ số để minh họa. Số hóa bởi trung tâm học liệu www: \\lrc-tnu.edu.vn 2 CHƢƠNG 1 GIỚI THIỆU VỀ HỆ MẬT MÃ Mật mã đã được con người sử dụng từ lâu. Các hình thức mật mã sơ khai đã được tìm thấy từ khoảng bốn nghìn năm trước trong nền văn minh Ai Cập cổ đại. Trải qua hàng nghìn năm lịch sử, mật mã đã được sử dụng rộng rãi ở khắp nơi trên thế giới để giữ bí mật cho việc trao đổi thông tin trong nhiều lĩnh vực hoạt động giữa con người và các quốc gia, đặc biệt trong các lĩnh vực quân sự, chính trị, ngoại giao. Mật mã trước hết là một loại hoạt động thực tiễn, nội dung chính của nó là để giữ bí mật thông tin. Ví dụ muốn gửi một văn bản từ một người gửi A đến một người nhận B, A phải tạo cho văn bản đó một bản mã mật tương ứng và thay vì gửi văn bản rõ thì A chỉ gửi cho B bản đã mã mật, B nhận được bản mã mật và khôi phục lại văn bản gốc để hiểu được thông tin mà A muốn gửi cho mình. Văn bản gửi đi thường được chuyển qua các con đường công khai nên người ngoài có thể “lấy trộm” được, nhưng vì đó chỉ là bản mã mật nên không đọc hiểu được. A có thể tạo ra bản mã mật và B có thể giải bản mã mật thành bản gốc để hiểu được là do hai người đã có một thỏa thuận về một chìa khoá chung, chỉ với khoá chung này thì A mới tạo được bản mã mật từ bản gốc và B mới khôi phục được bản gốc từ bản mã mật. Khoá chung đó được gọi là khoá mật mã. Để thực hiện được một phép mật mã, ta cần có một thuật toán biến bản gốc cùng với khoá mật mã thành bản mã mật và một thuật toán ngược lại biến bản mật cùng với khoá mật mã thành bản gốc. Các thuật toán đó được gọi tương ứng là thuật toán lập mã và thuật toán giải mã. Các thuật toán này thường không nhất thiết phải giữ bí mật, mà cái luôn cần được giữ bí mật là khoá mật mã. Trong thực tiễn, có những hoạt động ngược lại với hoạt động bảo mật là khám phá bí mật từ các bản mã “lấy trộm” được, hoạt động này thường được gọi là mã thám hay phá khoá.[2] Số hóa bởi trung tâm học liệu www: \\lrc-tnu.edu.vn 3 1.1. Hệ mật mã khoá đối xứng Các phương pháp mật mã cổ điển đã được biết đến từ khoảng 4000 năm trước. Một số kỹ thuật đã được những người Ai Cập sử dụng từ nhiều thế kỷ trước. Những kỹ thuật này chủ yếu sử dụng hai phương pháp chính là: phép thay thế và phép chuyển dịch. Trong phép thay thế, một chữ cái này được thay thế bởi chữ cái khác và trong phép chuyển dịch, các chữ cái được sắp xếp theo một trật tự khác. Hệ mã chuẩn DES (viết tắt của Data Encryption Standard, hay Tiêu chuẩn Mã hóa Dữ liệu) là một phương pháp mật mã hóa được FIPS (Tiêu chuẩn Xử lý Thông tin Liên bang Hoa Kỳ) chọn làm chuẩn chính thức vào năm 1976. Sau đó chuẩn này được sử dụng rộng rãi trên phạm vi thế giới. Ngay từ đầu, thuật toán của nó đã gây ra rất nhiều tranh cãi, do nó bao gồm các thành phần thiết kế mật, độ dài khóa tương đối ngắn, và các nghi ngờ về cửa sau để Cơ quan An ninh quốc gia Hoa Kỳ (NSA) có thể bẻ khóa. Đây là một ví dụ về mật mã cổ điển. DES kết hợp cả hai phương pháp thay thế và chuyển dịch. DES thực hiện mã hoá trên từng khối bản rõ là một xâu 64 bit, có khoá là một xâu 56 bit và cho ra bản mã cũng là một xâu 64 bit. 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. Trong các hệ mã đối xứng chỉ có một khoá được chia sẻ giữa các bên tham gia liên lạc. Cứ mỗi lần truyền tin bảo mật, cả người gửi A và người nhận B cùng thỏa thuận trước với nhau một khoá chung K, sau đó người gửi dùng eK để lập mã cho thông báo gửi đi và người nhận dùng dK để giải mã bản mật mã nhận được. Người gửi và người nhận có cùng một khoá chung K, được giữ bí mật dùng cho cả lập mã và giải mã. Những hệ mật mã cổ điển với cách sử dụng trên được gọi là mật mã khoá đối xứng hay còn gọi là mật mã khoá bí mật. Độ Số hóa bởi trung tâm học liệu www: \\lrc-tnu.edu.vn 4 an toàn của hệ mật mã đối xứng phụ thuộc vào khoá. Nếu để lộ khoá thì bất kỳ người nào cũng có thể mã hoá và giải mã thông điệp. Ưu điểm nổi bật của các hệ mật mã khoá đối xứng là việc xây dựng một hệ mật mã có độ bảo mật cao khá dễ dàng về mặt lý thuyết. Nhưng nếu không kể đến việc cần có một nguồn sinh khoá ngẫu nhiên thì việc phân phối, lưu trữ bảo mật và thỏa thuận khoá là một vấn đề khó chấp nhận được trong mạng truyền thông ngày nay. Trong một mạng có n người dùng, nếu cần khoá cho từng cặp thì cần n(n+1)/2 khoá. Để khắc phục hiện tượng không thể lưu trữ một khối lượng khoá quá lớn đáp ứng được nhu cầu mã dịch, người ta xem xét đến việc sử dụng các hệ mật mã khối với độ dài không lớn lắm như DES… hoặc các hệ mật mã dạng mà khoá được sinh ra từ một nguồn giả ngẫu nhiên bằng thuật toán. Mặc dù đã thực hiện việc mã hoá và giải mã bằng các hệ mật mã khối hay bằng thuật toán sinh khoá như đã nêu ở trên thì vấn đề phân phối và thỏa thuận khoá vẫn phải được thực hiện. Như vậy phân phối và thỏa thuận khoá là một vấn đề chưa thể được giải quyết trong các hệ mật mã khoá đối xứng. 1.2. Hệ mật mã khoá công khai Để giải quyết vấn đề phân phối và thỏa thuận khoá của mật mã khoá đối xứng, năm 1976 Diffie và Hellman đã đưa ra khái niệm về hệ mật mã khoá công khai và một phương pháp trao đổi công khai để tạo ra một khoá bí mật chung mà tính an toàn được bảo đảm bởi độ khó của một bài toán cụ thể (là bài toán tính “logarit rời rạc”). Hệ mật mã khoá công khai hay còn được gọi là hệ mật mã phi đối xứng sử dụng một cặp khoá, khoá mã hoá còn gọi là khoá công khai (public key - c) và khoá giải mã được gọi là khóa riêng (private key - r). Trong hệ mật này, khoá mã hoá khác với khoá giải mã. Về mặt toán học thì từ khoá công khai rất khó tính được khoá riêng. Biết được khoá này không dễ dàng tìm được khoá kia. [...]... loại chứng chỉ này đều có cấu trúc định dạng riêng Hiện nay chứng chỉ khoá công khai X.509 được sử dụng phổ biến trong hầu hết các hệ thống PKI Hệ thống chương ttrình cấp chứng chỉ số thử nghiệm cũng sử dụng định dạng chứng chỉ theo X.509, nên luận văn này tập trung vào xem xét chi tiết chứng chỉ công khai X.509 Trong luận văn, thuật ngữ chứng chỉ “certificate” được sử dụng đồng nghĩa với chứng chỉ. .. dụng, chứng chỉ này được gọi là chứng chỉ CA tự kí Khi một CA mới được thiết lập, CA tạo ra một chứng chỉ CA tự kí để kí lên chứng chỉ của người sử dụng cuối trong hệ thống Và dạng thứ hai là CA cấp chứng chỉ cho những CA khác trong hệ thống - Path Length Constraint: trường này chỉ ra số độ dài tối đa của đường dẫn chứng chỉ có thể được thiết lập Giá trị “zero” chỉ ra rằng CA chỉ có thể cấp chứng chỉ. .. chứng chỉ số, “digital ID”, hay đơn giản là chứng chỉ Chứng chỉ chứa những thông tin cần thiết như khóa công khai, chủ thể (người sở hữu) khoá công khai, người cấp và một số thông tin khác Tính hợp lệ của các thông tin được đảm bảo bằng chữ kí số của người cấp chứng chỉ Trong chứng chỉ số có 3 thành phần chính, đó là: - Thông tin cá nhân của người được cấp: Đây là các thông tin của đối tượng được cấp. .. dùng Khóa công khai thường được phân phối trong chứng thực khóa công khai Khái niệm hạ tầng khóa công khai (PKI) thường được dùng để chỉ toàn bộ hệ thống bao gồm nhà cung cấp chứng thực số (CA) cùng các cơ chế liên quan đồng thời với toàn bộ việc sử dụng các thuật toán mật mã hóa khóa công khai trong trao đổi thông tin PKI cho phép những người tham gia xác thực lẫn nhau và sử dụng thông tin từ các chứng. .. dịch vụ được triển khai và chuyển giao sử dụng công nghệ và khái niệm khoá công khai [4] Nhìn chung, PKI có thể được định nghĩa như một hạ tầng cơ sở sử dụng công nghệ thông tin để cung cấp dịch vụ mã hoá khoá công khai và chữ kí số Một mục đích quan trọng khác của PKI là để quản lý khoá và chứng chỉ được sử dụng trong hệ thống Chứng chỉ là cấu trúc dữ liệu đặc biệt, gắn kết khoá công khai với chủ sở... bảo bằng chữ kí số của nơi được uỷ quyền cấp chứng chỉ 2.1 Chứng chỉ số (digital certificates) 2.1.1 Chứng chỉ khóa công khai Như đã nói ở trên, mật mã khoá công khai sử dụng hai khoá khác nhau (khoá công khai và khoá riêng) để đảm bảo yêu cầu “bí mật, xác thực, toàn vẹn và chống chối bỏ” của những dịch vụ an toàn Một đặc tính quan trọng khác của lược đồ khoá công khai là phần khoá công khai được phân... (Certification Authority – CA) Trong hạ tầng cơ sở khoá công khai, chứng chỉ có vai trò gắn kết giữa định danh với khoá công Sự gắn kết này thể hiện trong dạng cấu trúc dữ liệu được kí số được đề cập đến như chứng chỉ đã được thảo luận ở phần trước Một CA là một thực thể PKI có trách nhiệm cấp chứng chỉ cho các thực thể khác trong hệ thống Hệ thống cấp chứng chỉ số - CA cũng được gọi là bên thứ ba được... khoá công khai X.509 v3 2.1.2 Chứng chỉ khoá công khai X.509 Chứng chỉ X.509 v3 là định dạng chứng chỉ được sử dụng phổ biến và được hầu hết các nhà cung cấp sản phẩm PKI triển khai Chứng chỉ khoá công khai X.509 được Hội viễn thông quốc tế (ITU) đưa ra lần đầu tiên năm 1988 như là một bộ phận của dịch vụ thư mục X.500 Chứng chỉ gồm 2 phần Phần đầu là những trường cơ bản cần thiết phải có trong chứng chỉ. .. khi quá hạn Trường này cũng ít được sử dụng - Extensions (Optional): chỉ có trong chứng chỉ v.3 - Certification Authority’s Digital Signature: chữ kí số của CA được tính từ những thông tin trên chứng chỉ với khoá riêng và thuật toán kí số được chỉ ra trong trường Signature Algorithm Identifier của chứng chỉ Tính toàn vẹn của chứng chỉ được đảm bảo bằng chữ kí số của CA trên chứng chỉ Khoá công khai của... đề quản lý khoá và để giải quyết vấn đề này hệ mã khoá công khai đã được đưa ra như một giải pháp Trong hệ thống mật mã khoá công khai, khoá riêng (khoá bí mật) được người dùng giữ bí mật trong khi khoá công khai với tên của người sở hữu tương ứng lại được công bố công khai Đối với hệ thống như thế này, ta cần xác định và trả lời một số câu hỏi như: - Ai sẽ tạo ra cặp khoá công khai – bí mật? - Dữ liệu . Authority - CA) chứng thực khóa công khai thuộc về ai. Chính vì vậy học viên chọn đề tài: Nghiên cứu giải pháp xây dựng hệ thống cấp chứng chỉ số dựa trên hạ tầng khóa công khai với mục đích. 2.1.1. Chứng chỉ khóa công khai 14 2.1.2. Chứng chỉ khoá công khai X.509 16 2.1.3. Thu hồi chứng chỉ 20 2.1.4. Chính sách đối với chứng chỉ số 21 2.1.5. Công bố và gửi thông báo thu hồi chứng chỉ. hệ thống 41 3.1.1. Mô hình hệ thống 41 3.1.2. Một số đặc tính của hệ thống cung cấp chứng chỉ số 41 3.2. Chức năng và quá trình khởi tạo các thành phần trong hệ thống cung cấp chứng chỉ số

Ngày đăng: 19/11/2014, 19:47

Từ khóa liên quan

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

Tài liệu liên quan