Tài liệu Nghiên cứu xây dựng hệ thống pki dựa trên bộ phần mềm mã nguồn mở openca

  • Số trang: 85 |
  • Loại file: PDF |
  • Lượt xem: 343 |
  • Lượt tải: 0
tranphuong

Đã đăng 59174 tài liệu

Mô tả:

LỜI CẢM ƠN Sau ba tháng nỗ lực thực hiện, đồ án “ Nghiên cứu xây dựng hệ thống PKI dựa trên bộ phần mềm mã nguồn mở OpenCA” đã phần nào hoàn thành. Ngoài sự cố gắng hết mình của bản thân, em đã nhận được sự khích lệ rất nhiều từ phía nhà trường, thầy cô, gia đình, bạn bè Em xin gửi lời cảm ơn chân thành và sâu sắc nhất tới Ths Hoàng Đức Thọ, người thầy đã cho em những định hướng và những ý kiến rất quý báu về PKI và OpenCA Em cũng xin tỏ lòng biết ơn sâu sắc tới thầy cô trong khoa và bạn bè cùng khoá đã giúp đỡ em tiến bộ trong suốt những năm học tại Học Viện Kỹ Thuật Mật Mã. Xin cảm ơn gia đình và những người thân yêu đã luôn động viên, khuyến khích giúp đỡ con trong mọi hoàn cảnh khó khăn Xin cảm ơn bạn bè đã và đang động viên, giúp đỡ tôi trong quá trình học tập và hoàn thành đồ án tốt nghiệp này Đồ án tốt nghiệp của em được hoàn thành trong một thời gian cũng tương đối ngắn. Vì vậy đồ án này chắc chắn sẽ còn nhiều khiếm khuyết. Em xin cảm ơn những thầy cô, bạn bè và người thân sẽ có những góp ý chân thành cho nội dung của đồ án này, để em có thể tiếp tục tìm hiểu, đi sâu nghiên cứu và áp dụng trong thực tiễn Ngô Thu Hằng 1 MỤC LỤC MỤC LỤC ............................................................................................................................. 2 DANH MỤC CÁC TỪ VIẾT TẮT ....................................................................................... 5 DANH MỤC HÌNH VẼ ........................................................................................................ 8 LỜI NÓI ĐẦU ....................................................................................................................... 8 CHƯƠNG I: CƠ SỞ MẬT MÃ HỌC ................................................................................. 10 1.1.Mật mã khoá bí mật ................................................................................................... 11 1.1.1.Giới thiệu về mật mã khoá bí mật và các khái niệm có liên quan ...................... 11 1.1.2.Một vài các thuật toán sử dụng trong mật mã khoá đối xứng............................. 11 1.1.2.1.DES .............................................................................................................. 11 1.1.2.2.IDEA ............................................................................................................ 11 1.1.2.3. Triple DES .................................................................................................. 12 1.1.2.4.CAST-128 ..................................................................................................... 12 1.1.2.5.AES............................................................................................................... 12 1.2.Mật mã khoá công khai .............................................................................................. 13 1.2.1.Khái niệm ............................................................................................................ 13 1.2.2. Các thuật toán sử dụng trong mật mã khoá công khai ....................................... 14 1.2.2.1. RSA.............................................................................................................. 14 1.2.2.2.Phương thức trao đổi khoá Diffie Hellman ................................................. 15 1.3. Chữ ký số .................................................................................................................. 15 1.3.1.Quá trình ký ........................................................................................................ 15 1.3.2.Quá trình kiểm tra chữ ký số .............................................................................. 16 1.4. Hàm hash .................................................................................................................. 17 1.4.1.Khái niệm hàm hash ........................................................................................... 17 1.4.2. Tóm lược thông báo ........................................................................................... 17 CHƯƠNG II: TỔNG QUAN VỀ PKI VÀ CA.................................................................... 18 2.1. Lịch sử phát triển PKI ............................................................................................... 18 2.2.Tình hình PKI tại Việt Nam ....................................................................................... 19 2.3. Các định nghĩa về PKI và các khái niệm có liên quan ............................................. 21 2 2.3.1. Các định nghĩa về PKI ....................................................................................... 21 2.3.2. Các khái niệm liên quan trong PKI .................................................................... 22 2.3.2.1.Chứng chỉ ..................................................................................................... 22 2.3.2.2.Kho chứng chỉ .............................................................................................. 24 2.3.2.3.Hủy bỏ chứng chỉ ......................................................................................... 24 2.3.2.4. Sao lưu và dự phòng khóa .......................................................................... 25 2.3.2.5.Cập nhật khóa tự động................................................................................. 25 2.3.2.6.Lịch sử khóa ................................................................................................. 26 2.3.2.7.Chứng thực chéo .......................................................................................... 26 2.3.2.8.Hỗ trợ chống chối bỏ ................................................................................... 27 2.3.2.9.Tem thời gian ............................................................................................... 27 2.3.2.10.Phần mềm phía Client................................................................................ 27 2.4. Mục tiêu, chức năng.................................................................................................. 28 2.4.1. Xác thực ............................................................................................................. 28 2.4.1.1.Định danh thực thể ...................................................................................... 28 2.4.1.1.1.Xác thực cục bộ .................................................................................... 29 2.4.1.1.2.Xác thực từ xa ....................................................................................... 29 2.4.1.2. Định danh nguồn gốc dữ liệu ..................................................................... 29 2.4.2. Bí mật ................................................................................................................. 29 2.4.3.Toàn vẹn dữ liệu ................................................................................................. 30 2.4.3.1.Chữ ký số ..................................................................................................... 30 2.4.3.2. Mã xác thực thông báo ............................................................................... 30 2.4.4.Chống chối bỏ ..................................................................................................... 30 2.5. Các khía cạnh an toàn cơ bản mà PKI cung cấp ....................................................... 31 2.5.1. Đăng nhập an toàn ............................................................................................. 31 2.5.2. Đăng nhập một lần an toàn ................................................................................ 31 2.5.3. Trong suốt với người dùng cuối ........................................................................ 32 2.5.4. An ninh toàn diện ............................................................................................... 33 CHƯƠNG IIII: CÁC THÀNH PHẦN, CƠ CHẾ LÀM VIỆC CỦA PKI. CÁC MÔ HÌNH VÀ CÁC KIỂU KIẾN TRÚC CỦA PKI ............................................................................. 33 3.1. Mô hình PKI và các thành phần của PKI.................................................................. 33 3.1.1. CA ...................................................................................................................... 34 3.1.2.RA ....................................................................................................................... 34 3.1.2.1.Chức năng, nhiệm vụ của RA ....................................................................... 34 3.1.2.2.Thành phần của RA...................................................................................... 35 3.1.2.2.1.RA Console ........................................................................................... 35 3.1.2.2.2.RA Officer ............................................................................................ 35 3.1.2.2.3.RA Manager .......................................................................................... 35 3.1.3. Certificate-Enabled Client: Bên được cấp phát chứng chỉ ................................ 36 3.1.4. Data Recipient : Bên nhận dữ liệu ..................................................................... 36 3.1.5. Kho lưu trữ/thu hồi chứng chỉ ........................................................................... 36 3.1.6.Chuỗi chứng chỉ hoạt động như thế nào ............................................................. 37 3.2. Cách thức làm việc của PKI ..................................................................................... 37 3.2.1. Khởi tạo thực thể cuối........................................................................................ 38 3.2.2. Tạo cặp khoá công khai/khoá riêng ................................................................... 38 3.2.3. Áp dụng chữ ký số để định danh người gửi. ...................................................... 39 3.2.4. Mã hóa thông báo .............................................................................................. 39 3.2.5. Truyền khóa đối xứng. ....................................................................................... 39 3.2.6. Kiểm tra danh tính người gửi thông qua một CA .............................................. 40 3.2.7. Giải mã thông báo và kiểm tra nội dung thông báo. .......................................... 40 3 3.3. Các tiến trình trong PKI ............................................................................................ 41 3.3.1. Yêu cầu chứng chỉ ............................................................................................. 41 3.3.1.1. Gửi yêu cầu ................................................................................................. 41 3.3.1.2. Các chính sách ............................................................................................ 41 3.3.2. Huỷ bỏ chứng chỉ ............................................................................................... 42 3.4. Các mô hình PKI....................................................................................................... 42 3.4.1. Mô hình phân cấp CA chặt chẽ (strict hierarchy of CAs) ................................. 42 3.4.2.Mô hình phân cấp CA không chặt chẽ (loose hierarchy of CAs) ....................... 43 3.4.3.Mô hình kiến trúc tin cậy phân tán (distributed trust architecture) .................... 44 3.4.4. Mô hình 4 bên (four-corner model) ................................................................... 45 3.4.5. Mô hình Web (web model) ................................................................................ 46 3.4.6.Mô hình tin cậy lấy người dùng làm trung tâm (user-centric trust) .................... 47 3.5.Các kiểu kiến trúc PKI ............................................................................................... 48 3.5.1. Kiến trúc kiểu Web of Trust .............................................................................. 49 3.5.2.Kiến trúc kiểu CA đơn (Single CA) ................................................................... 50 3.5.3. Kiến trúc CA phân cấp....................................................................................... 52 3.5.4. Kiến trúc kiểu chứng thực chéo (Cross-certificate) ........................................... 52 3.5.5. Kiến trúc Bridge CA(BCA) ............................................................................... 53 CHƯƠNG IV: XÂY DỰNG MÔ HÌNH PKI DỰA TRÊN MÃ NGUỒN MỞ OPENCA . 54 4.1.Lịch sử phát triển OpenCA ........................................................................................ 54 4.2. CA ............................................................................................................................. 55 4.2.1.Chức năng của CA .............................................................................................. 55 4.2.1.1. Cấp phát chứng chỉ ..................................................................................... 55 4.2.1.2.Huỷ bỏ chứng chỉ ......................................................................................... 56 4.2.1.3.Tạo lập chính sách chứng chỉ ...................................................................... 56 4.2.1.4.Hướng dẫn thực hiện chứng chỉ số (Certification Practice Statement) ...... 57 4.2.2.Nhiệm vụ của CA ............................................................................................... 57 4.2.3. Các loại CA ........................................................................................................ 57 4.2.3.1.Enterprise CA: ............................................................................................. 57 4.2.3.2.Standalone CA ............................................................................................. 57 4.2.4.Các cấp CA ......................................................................................................... 58 4.2.4.1.Root CA(CA gốc) ......................................................................................... 58 4.2.4.2.Subordinate CA(CA phụ thuộc): .................................................................. 58 4.3. Thiết kế chung của CA ............................................................................................. 59 4.3.1.Phân cấp cơ bản .................................................................................................. 60 4.3.2.Các giao diện ...................................................................................................... 61 4.3.2.1.Node ............................................................................................................. 62 4.3.2.2.CA ................................................................................................................ 63 4.3.2.3.RA................................................................................................................. 63 4.3.2.4. LDAP .......................................................................................................... 63 4.3.2.5.Pub ............................................................................................................... 63 4.4. Vòng đời của các đối tượng ...................................................................................... 64 4.5. Các lưu ý khi thiết kế PKI ........................................................................................ 65 4.5.1. Các vấn đề phần cứng ........................................................................................ 65 4.5.1.1.Thời gian ...................................................................................................... 65 4.5.1.2.Đĩa lỗi .......................................................................................................... 66 4.5.1.3.Theo dõi phần cứng ..................................................................................... 66 4.5.2.An toàn vật lý ...................................................................................................... 66 4.5.3.Các vấn đề về mạng ............................................................................................ 67 4.5.4.Vấn đề về chứng chỉ ........................................................................................... 67 4 4.5.5.CDPs (Các điểm phân phối danh sách huỷ bỏ chứng chỉ (CDP)) ...................... 68 4.5.6.Các vấn đề cụ thể về ứng dụng ........................................................................... 68 4.5.6.1.Mail Server .................................................................................................. 68 4.5.6.2. Client Netscape ........................................................................................... 69 4.5.6.3.OpenLDAP ................................................................................................... 69 PHỤ LỤC ............................................................................................................................ 70 1.Môi trường phát triển .................................................................................................... 70 1.1.Apache ................................................................................................................... 70 1.2. OpenSSL ............................................................................................................... 71 1.2.1.Công cụ dòng lệnh trong openssl .................................................................... 71 1.2.1.1.Các dòng lệnh chuẩn ................................................................................ 71 1.2.1.2.Các dòng lệnh tóm lược thông báo .......................................................... 73 1.2.1.3. Các dòng lệnh về mã hoá ........................................................................ 73 1.2.2.Thư viện SSL/TLS trong OpenSL .................................................................. 73 1.2.2.1.Miêu tả ..................................................................................................... 73 1.2.2.2. Cấu trúc dữ liệu ....................................................................................... 74 1.2.2.3. Các file header ........................................................................................ 75 1.2.3. Thư viện mật mã trong OpenSSL .................................................................. 75 1.2.3.1. Miêu tả .................................................................................................... 75 1.2.3.2.Tổng quan ................................................................................................ 75 1.2.4. Bộ công cụ OpenSSL..................................................................................... 75 1.3.1.Các điểm nổi bật ............................................................................................. 76 1.3.2.Kiến trúc gói mod_ssl ..................................................................................... 77 1.3.3.Giao thức SSL ................................................................................................. 78 1.4. OpenLDAP ........................................................................................................... 79 1.5. Các module perl .................................................................................................... 82 2.Các chuẩn mật mã ......................................................................................................... 83 DANH MỤC CÁC TỪ VIẾT TẮT AES API APXS CA CDP: Advanced Encryption Standard Tiêu chuẩn mã hóa tiên tiến Application Programming Interface Giao diện lập trình ứng dụng Apache Extention (tool) Công cụ mở rộng Apache Certificate Authority Thẩm quyền chứng thực CRL Distribution Point 5 Điểm phân phối CRL CRL CRR CPS CSR DES DN DSO Email FTP HTTP HTTPS: IDEA: IKE: IMAP ITU: LDAP: Certificate Revocation List Danh sách huỷ bỏ chứng chỉ Certificate Revocation Request Yêu cầu huỷ bỏ chứng chỉ Certification Pratice Statement Hướng dẫn thực hành chứng chỉ Certificate Signing Request Yêu cầu ký chứng chỉ Data Encryption Standard Tiêu chuẩn Mã hóa Dữ liệu Distingished Name Tên phân biệt Dynamic Shared Object Đối tượng chia sẻ động Electronice mail Thư điện tử File Transfer Protocol Giao thức truyền tập tin Hypertext Transfer Protocol Giao thức truyền siêu văn bản Secure Hypertext Transfer Protocol Giao thức truyền siêu văn bản an toàn International Data Encryption AlgorithmThuật toán mã hoá dữ liệu quốc tế Internet Key Exchange Trao đổi khoá Internet Internet Message Access Protocol Giao thức truy cập thông báo Internet Internet Telecommunication Union Liên minh viễn thông quốc tế Lightweight Directory Access Protocol 6 MAC MD: NCSA OCSP OSI PEM: PGP: PKCS: PKI: POP: RSA: SCEP: SHA: S/MIME SMTP SPKC SSH TCP/IP TLS Giao thức truy cập nhanh các thư mục Message Authentication Code Mã xác thực thông báo Message Degist Tóm lược thông báo Online Certificate Status Protocol Giao thức trạng thái chứng chỉ Open System Interconnection Mô hình kết nối các hệ thống mở Privacy Enhanced Mail Thư riêng tư tăng cường Pretty Good Privacy Public Key CryptoGraphy Standards Chuẩn mật mã khoá công khai Pulic Key Infracstructure Cơ sở hạ tầng khóa công khai Post Office Protocol Rivest Shamir Adleman Simple Certificate Enrollment Protocol Giao thức đăng ký chứng chỉ đơn giản Secure Hash Algorithm Thuật toán băm Secure Multipurpose Internet Mail Extensions Simple Mail Transfer Protocol Giao thức truyền thư đơn giản Simple Public Key Certificate Chứng chỉ khoá công khai đơn giản Secure Shell Transmission Control Protocol /Internet Protocol Giao thức điều khiển truyền thông/giao thức Internet Transport layer Security 7 Giao thức đảm bảo an toàn lớp vận chuyển DANH MỤC HÌNH VẼ Hình 1: Mật mã khoá bí mật ................................................................................................ 13 Hình 2: Mật mã khoá công khai .......................................................................................... 14 Hình 3: Quá trình ký số ....................................................................................................... 16 Hình 4: Quá trình kiểm tra chữ ký số .................................................................................. 17 Hình 5:Mô hình PKI Việt Nam hiện nay.............................................................................. 20 Hình 6: Khuôn dạng chứng chỉ X.509v3 ............................................................................. 24 Hình 7: Tiến trình đăng nhập an toàn ................................................................................. 31 Hình 8: Tiến trình đăng nhập an toàn một lần .................................................................... 32 Hình 9: Mô hình các thành phần PKI.................................................................................. 34 Hình 10: Chuỗi chứng chỉ ................................................................................................... 37 Hình 11: Mô hình phân cấp CA chặt chẽ ............................................................................ 43 Hình 12: Mô hình kiến trúc tin cậy phân tán ....................................................................... 45 Hình 13: Mô hình bốn bên ................................................................................................... 45 Hình 14: Mô hình Web......................................................................................................... 46 Hình 15: Mô hình tin cậy lấy người dùng làm trung tâm .................................................... 48 Hình 16: Chuỗi tin cậy......................................................................................................... 49 Hình 17: Kiến trúc kiểu Web of Trust .................................................................................. 50 Hình 18: Kiến trúc CA đơn .................................................................................................. 51 Hình 19: Kiến trúc CA phân cấp ......................................................................................... 52 Hình 20: Kiến trúc kiểu chứng thực chéo ............................................................................ 53 Hình 21: Kiến trúc Bridge CA ............................................................................................. 54 Hình 22: Sơ đồ minh họa rootCA và SubCA ....................................................................... 59 LỜI NÓI ĐẦU Trong một vài năm lại đây, hạ tầng truyền thông công nghệ thông tin càng ngày càng được mở rộng khi mà người sử dụng dựa trên nền tảng này để truyền thông và giao dịch với các đồng nghiệp, các đối tác kinh doanh cũng như việc khách hàng dùng email trên các mạng công cộng. Hầu hết các thông tin kinh doanh nhạy cảm và quan trọng được lưu trữ và trao đổi dưới hình thức điện tử. Sự thay đổi trong các hoạt động truyền thông doanh nghiệp này đồng nghĩa với việc chúng ta phải có biện pháp bảo vệ tổ chức, doanh nghiệp của mình trước các nguy cơ lừa đảo, can thiệp, tấn công, phá hoại hoặc vô tình tiết lộ các thông tin đó. 8 Cấu trúc cơ sở hạ tầng mã hóa khoá công khai cùng các tiêu chuẩn và các công nghệ ứng dụng của nó có thể được coi là một giải pháp tổng hợp và độc lập có thể được sử dụng để giải quyết vấn đề này. PKI đang trở thành một phần trung tâm của các kiến trúc an toàn dành cho các tổ chức kinh doanh. PKI được xem là một điểm trọng tâm trong nhiều khía cạnh quản lý an toàn. Hầu hết các giao thức chuẩn đảm bảo an toàn mail, truy cập Web, mạng riêng ảo và hệ thống xác thực người dùng đăng nhập đơn đều sử dụng chứng chỉ khóa công khai PKI bản chất là một hệ thống công nghệ vừa mang tính tiêu chuẩn, vừa mang tính ứng dụng được sử dụng để khởi tạo, lưu trữ và quản lý các chứng thực điện tử cũng như các mã khoá công khai và cá nhân. Sáng kiến PKI ra đời năm 1995, khi mà các tổ chức công nghiệp và các chính phủ xây dựng các tiêu chuẩn chung dựa trên phương pháp mã hoá để hỗ trợ một hạ tầng bảo mật trên mạng Internet. Tại thời điểm đó, mục tiêu được đặt ra là xây dựng một bộ tiêu chuẩn bảo mật tổng hợp cùng các công cụ và lý thuyết cho phép người sử dụng cũng như các tổ chức (doanh nghiệp hoặc phi lợi nhuận) có thể tạo lập, lưu trữ và trao đổi các thông tin một cách an toàn trong phạm vi cá nhân và công cộng. PKI ngày càng thể hiện rõ vai trò của mình trong lĩnh vực an toàn thông tin. Hiện nay, có rất nhiều cách thức xây dựng PKI . Một trong những cách thức xây dựng PKI đó là dựa trên mã nguồn mở OpenCA Đề tài “Nghiên cứu xây dựng hệ thống PKI dựa trên mã nguồn mở OpenCA” được thực hiện với mục đích tìm hiểu, nghiên cứu và xây dựng PKI dựa trên mã nguồn mở OpenCA. Nội dung đề tài bao gồm các khái niệm tổng quan về mật mã, các khái niệm liên quan tới PKI , các mô hình và các kiểu kiến trúc của PKI. Về phần OpenCA, đề tài nêu lên được đặc điểm, chức năng của các phần mềm mã mở để xây dựng nên OpenCA như Apache, OpenSSL, mod_ssl , perl và các module perl Với giới hạn về các vấn đề tìm hiểu và nghiên cứu, nội dung tìm hiểu đề tài của em bao gồm ..phần Chương I: Cơ sở mật mã khoá công khai và khoá bí mật 9 Chương I trình bày về mật mã khoá bí mật và mật mã khoá công khai cùng các thuật toán được sử dụng trong mật mã. Chương I cũng nêu ra khái niệm về chữ ký số, hàm băm và bản tóm lược thông báo Chương II: Tổng quan về PKI Chương này trình bày về các khái niệm của PKI và các khái niệm có liên quan tới PKI. Chương này nêu lên mục tiêu, chức năng cơ bản của PKI, những khía cạnh an toàn mà PKI cung cấp. Mục đích của chương này là thể hiện cái nhìn tổng quan nhất về PKI Chương III: Các thành phần và cách thức làm việc của PKI, các mô hình và các kiểu kiến trúc của PKI. Chương II đã nêu lên những cái nhìn tổng quan nhất về PKI, còn chương III khai thác sâu hơn về các khía cạnh kỹ thuật được sử dụng trong PKI, cách thức làm việc của PKI và các kiểu kiến trúc, các mô hình của PKI Chương IV: Xây dựng mô hình PKI dựa trên mã nguồn mở OpenCA Chương này trình bày chi tiết về CA: Bao gồm chức năng, nhiệm vụ, các loại CA . Chương này trình bày thiết kế chung CA và lưu ý khi xây dựng PKI dựa trên nguồn mở OpenCA CHƯƠNG I: CƠ SỞ MẬT MÃ HỌC Mật mã đã được sử dụng từ rất lâu đời. 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. Mật mã đã và đang tồn tại hàng nghìn năm lịch sử và hiện vẫn đang được sử dụng rất rộng rãi để giữ bí mật trong truyền tin đặc biệt trong các lĩnh vực quân sự, chính trị, an ninh và quốc phòng. Mật mã về cơ bản được chia thành hai loại chính là mật mã khóa bí mật (hay còn gọi là mật mã đối xứng) và mật mã khóa công khai (hay còn gọi là mật mã phi đối xứng). Để có thể truyền tin sử dụng mật mã thì hai bên truyền tin phải có khóa 10 Một khóa mã hóa là một mẫu thông tin đặc biệt được kết hợp với một thuật toán để thi hành mã hóa và giải mã. Mỗi khóa khác nhau có thể tạo ra các văn bản mã hóa khác nhau, và nếu ta không chọn đúng khóa thì không thể nào mở được dữ liệu đã mã hóa , cho dù biết được mã hóa văn bản dùng thuật toán gì. Sử dụng khóa càng phức tạp, mã hóa càng mạnh. Việc chuyển đổi từ bản tin ban đầu thành bản tin mã hoá được gọi là sự mã hoá, sự chuyển đổi ngược lại từ bản tin mã hoá thành bản tin ban đầu được gọi là giải mã. Bản tin ban đầu được gọi là bản rõ, bản tin ban đầu được mã hoá sẽ trở thành bản mã. Toàn bộ cơ chế bí mật đó được gọi là mật mã. 1.1.Mật mã khoá bí mật 1.1.1.Giới thiệu về mật mã khoá bí mật và các khái niệm có liên quan Trong mật mã đối xứng các bên tham gia liên lạc sử dụng cùng một khóa để mã hóa và giải mã. Trước khi truyền tin, hai thực thể A và B cùng thỏa thuận với nhau một khóa dùng chung (K). Thực thể A dùng khóa đó để mã hóa bản tin (eK) sau đó gửi cho thực thể B. Thực thể B dùng khóa K, thực hiện phép giải mã (dK) để giải mã mã nhận được Khóa bí mật phải được dữ bí mật 1.1.2.Một vài các thuật toán sử dụng trong mật mã khoá đối xứng 1.1.2.1.DES Hệ mật DES được xây dựng tại Mỹ trong những năm 70 theo yêu cầu của Văn phòng Quốc Gia về chuẩn và được sự thẩm định của an ninh quốc gia. DES kết hợp cả hai phương pháp thay thế và chuyển dịch DES là một mật mã khối. Độ dài của mỗi khối là 64 bit Khoá dùng trong DES có độ dài tổng thể là 64 bit, tuy nhiên chỉ có 56 bit thực sự được dùng, 8 bit còn lại dùng cho việc kiểm tra Đây đã từng là thuật toán mật mã được sử dụng rộng rãi nhất . 1.1.2.2.IDEA IDEA là một thuật toán mã hoá khối IDEA tao thác trên từng khối 64 bit, mã khối 64bit plaintext thành khối 64bit ciphertext 11 Độ dài khoá khoá dùng trong thuật toán IDEA là 128 bit 1.1.2.3. Triple DES 3DES (Triple DES), là thuật toán mã hóa khối trong đó khối thông tin 64 bit sẽ được lần lượt mã hóa 3 lần bằng thuật toán mã hóa DES với 3 khoá khác nhau. Do đó, chiều dài khóa mã sẽ lớn hơn và độ an toàn sẽ cao hơn so với DES do 3DES dùng 3 khóa khác nhau để mã hóa dữ liệu. Bộ xử lý thực hiện các bước sau : Khóa đầu tiên dùng để mã hóa dữ liệu. Sau đó, khóa thứ hai sẽ dùng để giải mã dữ liệu vừa được mã hóa. Cuối cùng, khóa thứ ba sẽ mã hóa lần thứ hai. Toàn bộ quá trình xử lý của 3DES tạo thành một thuật giải có độ an toàn cao. Nhưng bởi vì đây là một thuật giải phức tạp nên thời gian thực hiện sẽ lâu hơn, gấp 3 lần so với phương pháp DES. 1.1.2.4.CAST-128 Là một thuật toán mật mã được đặt tên theo tên người phát triển là Carlisle Adams và Stafford Tavares Chiều dài khoá là 128 bit 1.1.2.5.AES AES là một thuật toán mã hoá khối AES làm việc với khối dữ liệu 128 bít và khóa có độ dài 128, 192 hoặc 256 bít 12 Hình 1: Mật mã khoá bí mật 1.2.Mật mã khoá công khai 1.2.1.Khái niệm Mật mã khóa công khai là một dạng mật mã cho phép người sử dụng trao đổi các thông tin mật mà không cần phải trao đổi các khóa bí mật trước đó. Trong mật mã khóa công khai sử dụng một cặp khóa là khóa công khai/khóa riêng. Khóa công khai dùng để mã hóa còn khóa riêng dùng để giải mã Điều quan trọng đối với hệ thống là không thể tìm ra khóa bí mật nếu chỉ biết khóa công khai 13 Hình 2: Mật mã khoá công khai 1.2.2. Các thuật toán sử dụng trong mật mã khoá công khai 1.2.2.1. RSA Thuật toán RSA được Ron Rivest, Adi Shamir và Len Adleman mô tả lần đầu tiên vào năm 1977 tại Học viện Công nghệ Massachusetts (MIT). RSA là một thuật toán mã hóa khóa công khai. Thuật toán đầu tiên phù hợp với việc tạo ra chữ ký điện tử đồng thời với việc mã hóa. Nó đánh dấu một sự tiến bộ vượt bậc của lĩnh vực mật mã trong việc sử dụng khóa công khai. RSA đang được sử dụng phổ biến trong thương mại điện tử và được cho là đảm bảo an toàn với điều kiện độ dài khóa đủ lớn. Độ an toàn của hệ thống RSA dựa trên 2 vấn đề của toán học: bài toán phân tích ra thừa số nguyên tố các số nguyên lớn và bài toán RSA RSA có tốc độ thực hiện chậm hơn đáng kể so với DES và các thuật toán mã hóa đối xứng khác. Trên thực tế, người ta sử dụng một thuật toán mã hóa đối xứng nào đó để mã hóa văn bản cần gửi và chỉ sử dụng RSA để mã hóa khóa để giải mã (thông thường khóa ngắn hơn nhiều so với văn bản). 14 1.2.2.2.Phương thức trao đổi khoá Diffie Hellman Phương thức này được phát minh bởi Whitfield Diffie và Matty Hellman ở Standford. Đây là sơ đồ khoá công khai đầu tiên. Tuy nhiên, đó không phải là một sơ đồ mã hoá khoá công khai thực sự, mà chỉ dùng cho trao đổi khóa. Các khoá bí mật được trao đổi bằng cách sử dụng các trạm trung gian riêng tin cậy. Phương pháp này cho phép các khoá bí mật được truyền an toàn thông qua các môi trường không bảo mật. Trao đổi khoá Diffie-Hemall dựa trên tính hiệu quả của bài toán logarit rời rạc Tính bảo mật của trao đổi khoá Diffie-Hellman nằm ở chỗ: tính hàm mũ modulo của một số nguyên tố là khá dễ dàng nhưng tính logarit rời rạc là rất khó 1.3. Chữ ký số Một trong những ứng dụng của mật mã khóa công khai là chữ ký số. Chữ ký số là một phần dữ liệu được đính kèm với bản tin, dùng để nhận dạng và xác thực người gửi và dữ liệu của bản tin, sử dụng mã hoá khoá công khai. Người gửi sử dụng hàm hash một chiều để tạo ra một bản mã hash có độ dài 32 bit từ dữ liệu của bản tin. Sau đó, người gửi sẽ mã hoá bản mã hash đó(hash-code) bằng khoá riêng của người gửi. Người nhận sẽ tính toán lại mã hash đó từ dữ liệu đó và giải mã bản mã hash đó bằng khoá công khai của người gửi. Nếu hai mã hash đó giống nhau, thì người nhận có thể chắc chắn rằng dữ liệu đó không bị sửa đổi và dữ liệu đó đúng là của người gửi 1.3.1.Quá trình ký Đầu tiên, thông báo được tính toán bởi hàm băm một chiều , hàm này sẽ tính toán thông báo và trả về một bản tóm lược thông báo (message digest), hàm băm một chiều đảm bảo rằng bản tóm lược thông báo này là duy nhất và bất kỳ một sửa đổi dù nhỏ nhất trên thông báo cũng sẽ gây ra thay đổi cho bản tóm tắt này. Sau đó người gửi sẽ dùng khoá riêng của mình mã hoá bản tóm tắt này. Nội dùng sau khi được mã hoá chính là chữ ký số (digital signature) của thông báo đó được ký bởi người gửi. Chữ ký số này sẽ được gửi tới cho người nhận kèm với thông báo 15 . Hình 3: Quá trình ký số 1.3.2.Quá trình kiểm tra chữ ký số Khi người nhận nhận được thông báo, để kiểm tra tính hợp lệ của nó, đầu tiên người nhận sẽ dùng khoá công khai của người gửi để giải mã chữ ký số. Kết quả của quá trình giải mã chữ ký số là bản tóm lược thông báo của người gửi tạo ra. Sau đó, người nhận dùng hàm băm một chiều để tính toán bản tóm tắt qua nội dung của thông báo một lần nữa rồi lấy kết quả đem so sánh với bản tóm lược thông báo vừa được giải mã ở trên, nếu kết quả giống nhau thì quá trình kiểm tra thành công. Ngược lại có thể kết luận đây là một thông báo đã bị giả mạo hoặc thông tin đã bị thay đổi trên quá trình gửi đi. 16 Hình 4: Quá trình kiểm tra chữ ký số 1.4. Hàm hash 1.4.1.Khái niệm hàm hash Hàm hash (hash function) là hàm một chiều mà khi ta đưa một khối dữ liệu có độ dài bất kỳ qua hàm này thì sẽ tạo ra một chuỗi bít có độ dài cố định ở đầu ra. Kết quả ở đầu ra gọi là bản tóm lược thông báo (message digest) Hash có thể đảm bảo tính toàn vẹn và xác thực Thuật toán hash không thể được dịch ngược trở lại dữ liệu ban đầu vì vậy được gọi là thuật toán mã hoá một chiều 1.4.2. Tóm lược thông báo Bản tóm lược thông báo được coi là một “dấu vân tay” số của bản tin. Bản tóm lược thông báo được tạo ra từ hàm hash trên dữ liệu của bản tin. Thuật toán tóm lược thông báo có hai đặc điểm quan trọng Đầu vào như nhau thì luôn luôn tạo ra đầu ra như nhau nhưng đầu vào khác nhau thì có thể không bao giờ tạo ra đầu ra như nhau Không thể xác định được bản tin thật sự từ bản tóm lược thông báo Bản tóm lược thông báo được sử dụng để đảm bảo rằng dữ liệu bản tin không bị thay đổi trong suốt quá trình truyền 17 Bản tóm lược thông báo được mã hoá bằng khoá riêng của người gửi để tạo nên chữ ký số CHƯƠNG II: TỔNG QUAN VỀ PKI VÀ CA 2.1. Lịch sử phát triển PKI Việc Diffie, Hellman, Rivest, Shamir, và Adleman công bố công trình nghiên cứu về trao đổi khóa an toàn và thuật toán mật mã hóa khóa công khai vào năm 1976 đã làm thay đổi hoàn toàn cách thức trao đổi thông tin mật. Cùng với sự phát triển của các hệ thống truyền thông điện tử tốc độ cao (Internet và các hệ thống trước nó), nhu cầu về trao đổi thông tin bí mật trở nên cấp thiết. Thêm vào đó một yêu cầu nữa phát sinh là việc xác định định dạng của những người tham gia vào quá trình thông tin. Vì vậy ý tưởng về việc gắn định dạng người dùng với chứng thực được bảo vệ bằng các kỹ thuật mật mã đã được phát triển một cách mạnh mẽ. Nhiều giao thức sử dụng các kỹ thuật mật mã mới đã được phát triển và phân tích. Cùng với sự ra đời và phổ biến của World Wide Web, những nhu cầu về thông tin an toàn và xác thực người sử dụng càng trở nên cấp thiết. Chỉ tính riêng các nhu cầu ứng dụng cho thương mại (như giao dịch điện tử hay truy cập những cơ sở dữ liệu bằng trình duyệt web) cũng đã đủ hấp dẫn các nhà phát triển lĩnh vực này. Taher ElGamal và các cộng sự tại Netscape đã phát triển giao thức SSL trong đó bao gồm thiết lập khóa, xác thực máy chủ. Sau đó, các thiết chế PKI được tạo ra để phục vụ nhu cầu truyền thông an toàn. Các nhà doanh nghiệp kỳ vọng vào một thị trường hứa hẹn mới đã thành lập những công ty hoặc dự án mới về PKI và bắt đầu vận động các chính phủ để hình thành nên khung pháp lý về lĩnh vực này. Một dự án của American Bar Association đã xuất bản một nghiên cứu tổng quát về những vấn đề pháp lý có thể nảy sinh khi vận hành PKI .Không lâu sau đó, một vài tiểu bang của Hoa kỳ mà đi đầu là Utah (năm 1995) đã thông qua những dự luật và quy định đầu tiên. Các nhóm bảo vệ quyền lợi người tiêu dùng thì đặt ra các vấn đề về bảo vệ quyền riêng tư và các trách nhiệm pháp lý. 18 Tuy nhiên, các luật và quy định đã được thông qua lại không thống nhất trên thế giới. Thêm vào đó là những khó khăn về kỹ thuật và vận hành khiến cho việc thực hiện PKI khó khăn hơn rất nhiều so với kỳ vọng ban đầu. Tại thời điểm đầu thế kỷ 21, người ta nhận ra rằng các kỹ thuật mật mã cũng như các quy trình/giao thức rất khó được thực hiện chính xác và các tiêu chuẩn hiện tại chưa đáp ứng được các yêu cầu đề ra. Thị trường PKI thực sự đã tồn tại và phát triển nhưng không phải với quy mô đã được kỳ vọng từ những năm giữa của thập kỷ 1990. PKI chưa giải quyết được một số vấn đề mà nó được kỳ vọng. Những PKI thành công nhất tới nay là các phiên bản do các chính phủ thực hiện Tới nay, những nỗ lực hoàn thiện PKI vẫn đang được đầu tư và thúc đẩy. Và để hiện thực hoá ý tưởng tuyệt vời này, các tiêu chuẩn cần phải được nghiên cứu phát triển ở các mức độ khác nhau bao gồm: mã hoá, truyền thông và liên kết, xác thực, cấp phép và quản lý. Tuy nhiên, hầu hết các công nghệ hình thành từ ý tưởng này đã trở nên chín muồi và một số đã bước vào giai đoạn "lão hoá". Nhiều chuẩn bảo mật trên mạng Internet, chẳng hạn Secure Sockets Layer/Transport Layer Security (SSL/TLS) và Virtual Private Network (VPN), chính là kết quả của sáng kiến PKI Quá trình nghiên cứu và phát triển PKI là một quá trình lâu dài và cùng với nó, mức độ chấp nhận của người dùng cũng tăng lên một cách khá chậm chạp. Cũng giống như với nhiều tiêu chuẩn công cộng khác, tỷ lệ người dùng chấp nhận sẽ tăng lên chỉ khi các chuẩn đó trở nên hoàn thiện, chứng minh được khả năng thực sự của nó, và khả năng ứng dụng và hiện thực hoá của nó là khả thi (cả về khía cạnh chi phí lẫn thực hiện). 2.2.Tình hình PKI tại Việt Nam Trước nhu cầu sử dụng PKI, ở Việt nam, có một số tổ chức đã triển khai hoạt động cung cấp dịch vụ chứng thực trong lĩnh vực này. Trong khu vực Nhà nước Ban Cơ Yếu chính phủ đã xây dựng và thử nghiệm tại hạ tầng Trung Tâm của một số Bộ, ngành ở quy mô nhỏ , đồng thời sử dụng trong một số dịch vụ bảo mật và an toàn . Ngân hàng Nhà nước, Bộ Công Thương cũng đã tổ chức thử nghiệm các CA chuyên dùng đáp ứng hoạt động nghiệp vụ nội bộ 19 Khu vự ngoài nhà nước như các tổ chức VASC, VDC đã cung cấp chứng thực điện tử cho một số tổ chức và cá nhân. Nhìn chung, nhu cầu sử dụng PKI ở Việt Nam ngày càng tăng , tuy nhiên việc triển khai thực tế hiện tại chưa nhiều Ở Việt Nam, năm 2007 Ban Cơ Yếu Chính phủ thành lập Trung tâm Chứng thực điện tử chuyên dùng với các chức năng cung cấp , quản lý chứng thư số và các dịch vụ chứng thực chữ ký số cho các cơ quan thuộc hệ thống Chính trị Năm 2008, Bộ Thông tin- Truyền thông đã thành lập Trung tâm chứng thực chữ ký số quốc gia và giao Cục ứng dụng Công nghệ thông tin tổ chức, quản lý, cấp phép và cung cấp dịch vụ chứng thực số cho khu vực công cộng Hình 5:Mô hình PKI Việt Nam hiện nay Nhìn chung việc triển khai dịch vụ chứng thực chữ ký số ở nước ta còn chậm, chưa theo kịp tốc độ phát triển mạng CNTT và các dịch vụ giao dịch điện tử trên thế giới Cơ sở hạ tầng khoá công khai (PKI) là một trong những nhu cầu thiết yếu của tương lai. Nhưng vấn đề là hầu hết các ứng dụng có thể được đảm bảo an toàn bằng chứng chỉ và khoá nhưng lại rất khó và đắt đề cài đặt PKI, lý dó là phần mềm trung tâm tin cậy có tính linh hoạt thì lại rất đắt. Đây là điểm khởi 20
- Xem thêm -