intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

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

Chia sẻ: Conan Edowa | Ngày: | Loại File: DOC | Số trang:102

169
lượt xem
46
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

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 trình bày về cơ sở mật mã học; tổng quan về PKI và CA ; 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; xây dựng mô hình pki dựa trên mã nguồn mở OpenCA.

 

Chủ đề:
Lưu

Nội dung Text: 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

  1. 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
  2.   MỤC LỤC  MỤC LỤC                                                                                                                                  ..............................................................................................................................      2  DANH MỤC CÁC TỪ VIẾT TẮT                                                                                           .......................................................................................     6  DANH MỤC HÌNH VẼ                                                                                                           .......................................................................................................      10  LỜI NÓI ĐẦU                                                                                                                         .....................................................................................................................       10  CHƯƠNG I: CƠ SỞ MẬT MàHỌC                                                                                   ...............................................................................      13  1.1.Mật mã khoá bí mật                                                                                                      ..................................................................................................       13  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                       ...................       13  1.1.2.Một vài các thuật toán sử dụng trong mật mã khoá đối xứng                              .........................       14  1.1.2.1.DES                                                                                                                  .............................................................................................................       14  1.1.2.2.IDEA                                                                                                                ............................................................................................................       14  1.1.2.3. Triple DES                                                                                                       ...................................................................................................      14  1.1.2.4.CAST­128                                                                                                        ....................................................................................................       15  1.1.2.5.AES                                                                                                                  ..............................................................................................................       15  1.2.Mật mã khoá công khai                                                                                                  ..............................................................................................      16  1.2.1.Khái niệm                                                                                                               ...........................................................................................................       16  1.2.2. Các thuật toán sử dụng trong mật mã khoá công khai                                         .....................................      17  1.2.2.1. RSA                                                                                                                 .............................................................................................................       17  1.2.2.2.Phương thức trao đổi khoá Diffie Hellman                                                    ................................................      17  1.3. Chữ ký số                                                                                                                      ..................................................................................................................       18 2
  3.  1.3.1.Quá trình ký                                                                                                             .........................................................................................................       18  1.3.2.Quá trình kiểm tra chữ ký số                                                                                  ..............................................................................       19  1.4. Hàm hash                                                                                                                       ...................................................................................................................       20  1.4.1.Khái niệm hàm hash                                                                                               ...........................................................................................       20  1.4.2. Tóm lược thông báo                                                                                               ..........................................................................................       20  CHƯƠNG II: TỔNG QUAN VỀ PKI VÀ CA                                                                       ..................................................................       21  2.1. Lịch sử phát triển PKI                                                                                                  ..............................................................................................       21  2.2.Tình hình PKI tại Việt Nam                                                                                          ......................................................................................       23  2.3. Các định nghĩa về PKI và các khái niệm có liên quan                                                 .............................................       25  2.3.1. Các định nghĩa về PKI                                                                                           .......................................................................................       25  2.3.2. Các khái niệm liên quan trong PKI                                                                        ....................................................................       26  2.3.2.1.Chứng chỉ                                                                                                         .....................................................................................................       26  2.3.2.2.Kho chứng chỉ                                                                                                  ..............................................................................................       28  2.3.2.3.Hủy bỏ chứng chỉ                                                                                            ........................................................................................       28  2.3.2.4. Sao lưu và dự phòng khóa                                                                              ..........................................................................      29      2.3.2.5.Cập nhật khóa tự động                                                                               ...........................................................................       30  2.3.2.6.Lịch sử khóa                                                                                                     .................................................................................................       30  2.3.2.7.Chứng thực chéo                                                                                              ..........................................................................................       31  2.3.2.8.Hỗ trợ chống chối bỏ                                                                                      ..................................................................................       31  2.3.2.9.Tem thời gian                                                                                                   ...............................................................................................       32  2.3.2.10.Phần mềm phía Client                                                                                   ...............................................................................       32  2.4. Mục tiêu, chức năng                                                                                                     ................................................................................................       33  2.4.1. Xác thực                                                                                                                 .............................................................................................................       34  2.4.1.1.Định danh thực thể                                                                                          ......................................................................................       34  2.4.1.1.1.Xác thực cục bộ                                                                                        ....................................................................................       34  2.4.1.1.2.Xác thực từ xa                                                                                           .......................................................................................       34  2.4.1.2. Định danh nguồn gốc dữ liệu                                                                        ....................................................................      35  2.4.2. Bí mật                                                                                                                     .................................................................................................................       35  2.4.3.Toàn vẹn dữ liệu                                                                                                    ................................................................................................       35  2.4.3.1.Chữ ký số                                                                                                         .....................................................................................................       36  2.4.3.2. Mã xác thực thông báo                                                                                    ...............................................................................       36  2.4.4.Chống chối bỏ                                                                                                        ....................................................................................................       36  2.5. Các khía cạnh an toàn cơ bản mà PKI cung cấp                                                         .....................................................       36  2.5.1. Đăng nhập an toàn                                                                                                 ............................................................................................       37  2.5.2. Đăng nhập một lần an toàn                                                                                   ..............................................................................       37  2.5.3. Trong suốt với người dùng cuối                                                                           .......................................................................      38  2.5.4. An ninh toàn diện                                                                                                  ..............................................................................................       39 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                                                                                 .............................................................................       40  3.1. Mô hình PKI và các thành phần của PKI                                                                     .................................................................       40  3.1.1. CA                                                                                                                          ......................................................................................................................       40  3.1.2.RA                                                                                                                           .......................................................................................................................       41  3.1.2.1.Chức năng, nhiệm vụ của RA                                                                        ....................................................................      41  3.1.2.2.Thành phần của RA                                                                                         .....................................................................................       41  3.1.2.2.1.RA Console                                                                                               ...........................................................................................       41  3.1.2.2.2.RA Officer                                                                                                 .............................................................................................       42  3.1.2.2.3.RA Manager                                                                                              ..........................................................................................       42  3.1.3. Certificate­Enabled Client: Bên được cấp phát chứng chỉ                                   ...............................       42 3
  4.  3.1.4. Data Recipient : Bên nhận dữ liệu                                                                        ....................................................................       43  3.1.5. Kho lưu trữ/thu hồi chứng chỉ                                                                              ..........................................................................       43  3.1.6.Chuỗi chứng chỉ hoạt động như thế nào                                                               ..........................................................      43  3.2. Cách thức làm việc của PKI                                                                                        ....................................................................................       44  3.2.1. Khởi tạo thực thể cuối                                                                                          ......................................................................................       45  3.2.2. Tạo cặp khoá công khai/khoá riêng                                                                      ..................................................................       45  3.2.3. Áp dụng chữ ký số để định danh người gửi.                                                       ...................................................      46  3.2.4. Mã hóa thông báo                                                                                                   ...............................................................................................       46  3.2.5. Truyền khóa đối xứng.                                                                                          ......................................................................................       46  3.2.6. Kiểm tra danh tính người gửi thông qua một CA                                                ............................................      47  3.2.7. Giải mã thông báo và kiểm tra nội dung thông báo.                                             .........................................       47  3.3. Các tiến trình trong PKI                                                                                                ............................................................................................       48  3.3.1. Yêu cầu chứng chỉ                                                                                                 .............................................................................................       48  3.3.1.1. Gửi yêu cầu                                                                                                    ................................................................................................       49  3.3.1.2. Các chính sách                                                                                                 .............................................................................................       49  3.3.2. Huỷ bỏ chứng chỉ                                                                                                  ..............................................................................................       50  3.4. Các mô hình PKI                                                                                                           .......................................................................................................       50  3.4.1. Mô hình phân cấp CA chặt chẽ (strict hierarchy of CAs)                                    ................................       50  3.4.2.Mô hình phân cấp CA không chặt chẽ (loose hierarchy of CAs)                          ......................       52  3.4.3.Mô hình kiến trúc tin cậy phân tán (distributed trust architecture)                        ....................       52  3.4.4. Mô hình 4 bên (four­corner model)                                                                        ....................................................................       53  3.4.5. Mô hình Web (web model)                                                                                    ................................................................................       55  3.4.6.Mô hình tin cậy lấy người dùng làm trung tâm (user­centric trust)                      ..................       56  3.5.Các kiểu kiến trúc PKI                                                                                                  ..............................................................................................       57  3.5.1. Kiến trúc kiểu Web of Trust                                                                                 .............................................................................       58  3.5.2.Kiến trúc kiểu CA đơn (Single CA)                                                                      ..................................................................       59  3.5.3. Kiến trúc CA phân cấp                                                                                          ......................................................................................       61  3.5.4. Kiến trúc kiểu chứng thực chéo (Cross­certificate)                                             .........................................      62  3.5.5. Kiến trúc Bridge CA(BCA)                                                                                   ...............................................................................       63 CHƯƠNG IV: XÂY DỰNG MÔ HÌNH PKI DỰA TRÊN MàNGUỒN MỞ OPENCA                                                                                                                                                 64 ..............................................................................................................................................       4.1.Lịch sử phát triển OpenCA                                                                                           .......................................................................................       64  4.2. CA                                                                                                                                 ............................................................................................................................       66  4.2.1.Chức năng của CA                                                                                                  ..............................................................................................       66  4.2.1.1. Cấp phát chứng chỉ                                                                                         .....................................................................................       66  4.2.1.2.Huỷ bỏ chứng chỉ                                                                                            ........................................................................................       66  4.2.1.3.Tạo lập chính sách chứng chỉ                                                                         .....................................................................       67  4.2.1.4.Hướng dẫn thực hiện chứng chỉ số (Certification Practice Statement)          67 .....       4.2.2.Nhiệm vụ của CA                                                                                                  ..............................................................................................       68  4.2.3. Các loại CA                                                                                                            ........................................................................................................       68  4.2.3.1.Enterprise CA:                                                                                                  .............................................................................................       68  4.2.3.2.Standalone CA                                                                                                  ..............................................................................................       68  4.2.4.Các cấp CA                                                                                                             .........................................................................................................       69  4.2.4.1.Root CA(CA gốc)                                                                                            ........................................................................................       69  4.2.4.2.Subordinate CA(CA phụ thuộc):                                                                     ................................................................       69  4.3. Thiết kế chung của CA                                                                                                ............................................................................................       70  4.3.1.Phân cấp cơ bản                                                                                                     .................................................................................................       71  4.3.2.Các giao diện                                                                                                          ......................................................................................................       73 4
  5.  4.3.2.1.Node                                                                                                                 .............................................................................................................       74  4.3.2.2.CA                                                                                                                    ................................................................................................................       75  4.3.2.3.RA                                                                                                                    ................................................................................................................       75  4.3.2.4. LDAP                                                                                                               ...........................................................................................................       76  4.3.2.5.Pub                                                                                                                    ................................................................................................................       76  4.4. Vòng đời của các đối tượng                                                                                        ....................................................................................       76  4.5. Các lưu ý khi thiết kế PKI                                                                                           .......................................................................................       77  4.5.1. Các vấn đề phần cứng                                                                                          ......................................................................................       78  4.5.1.1.Thời gian                                                                                                          ......................................................................................................       78  4.5.1.2.Đĩa lỗi                                                                                                               ...........................................................................................................       78  4.5.1.3.Theo dõi phần cứng                                                                                         .....................................................................................      78  4.5.2.An toàn vật lý                                                                                                          ......................................................................................................       79  4.5.3.Các vấn đề về mạng                                                                                              ..........................................................................................       80  4.5.4.Vấn đề về chứng chỉ                                                                                             .........................................................................................       80  4.5.5.CDPs (Các điểm phân phối danh sách huỷ bỏ chứng chỉ (CDP))                        ....................       80  4.5.6.Các vấn đề cụ thể về ứng dụng                                                                           .......................................................................      81  4.5.6.1.Mail Server                                                                                                       ...................................................................................................       81  4.5.6.2. Client Netscape                                                                                                ............................................................................................       81  4.5.6.3.OpenLDAP                                                                                                       ...................................................................................................       81  PHỤ LỤC                                                                                                                                 .............................................................................................................................       83  1.Môi trường phát triển                                                                                                       ...................................................................................................       83  1.1.Apache                                                                                                                        ....................................................................................................................       83  1.2. OpenSSL                                                                                                                   ...............................................................................................................       84  1.2.1.Công cụ dòng lệnh trong openssl                                                                       ...................................................................      85  1.2.1.1.Các dòng lệnh chuẩn                                                                                   ...............................................................................      85  1.2.1.2.Các dòng lệnh tóm lược thông báo                                                             .........................................................       87  1.2.1.3. Các dòng lệnh về mã hoá                                                                           .......................................................................      87  1.2.2.Thư viện SSL/TLS trong OpenSL                                                                      ..................................................................       88  1.2.2.1.Miêu tả                                                                                                         .....................................................................................................       88  1.2.2.2. Cấu trúc dữ liệu                                                                                         .....................................................................................       88  1.2.2.3. Các file header                                                                                             .........................................................................................       89  1.2.3. Thư viện mật mã trong OpenSSL                                                                     .................................................................       90  1.2.3.1. Miêu tả                                                                                                      ...................................................................................................         90  1.2.3.2.Tổng quan                                                                                                    ................................................................................................       90  1.2.4. Bộ công cụ OpenSSL                                                                                        ....................................................................................      90  1.3.1.Các điểm nổi bật                                                                                                ............................................................................................       92  1.3.2.Kiến trúc gói mod_ssl                                                                                         .....................................................................................      93  1.3.3.Giao thức SSL                                                                                                     ................................................................................................       93  1.4. OpenLDAP                                                                                                                ............................................................................................................       95  1.5. Các module perl                                                                                                         .....................................................................................................       99  2.Các chuẩn mật mã                                                                                                          ......................................................................................................       100 5
  6. DANH MỤC CÁC TỪ VIẾT TẮT AES  Advanced Encryption Standard  Tiêu chuẩn mã hóa tiên tiến API Application Programming Interface Giao diện lập trình ứng dụng APXS Apache Extention (tool) Công cụ mở rộng Apache CA  Certificate Authority  Thẩm quyền chứng thực CDP: CRL Distribution Point Điểm phân phối CRL CRL  Certificate Revocation List Danh sách huỷ bỏ chứng chỉ CRR  Certificate Revocation Request  Yêu cầu huỷ bỏ chứng chỉ CPS Certification Pratice Statement Hướng dẫn thực hành chứng chỉ CSR Certificate Signing Request 6
  7. Yêu cầu ký chứng chỉ DES   Data Encryption Standard Tiêu chuẩn Mã hóa Dữ liệu DN  Distingished Name Tên phân biệt DSO  Dynamic Shared Object  Đối tượng chia sẻ động Email  Electronice mail  Thư điện tử FTP File Transfer Protocol Giao thức truyền tập tin HTTP Hypertext Transfer Protocol Giao thức truyền siêu văn bản HTTPS:  Secure Hypertext Transfer Protocol Giao thức truyền siêu văn bản an toàn  IDEA:  International Data Encryption Algorithm­ Thuật toán mã hoá dữ liệu quốc tế IKE:  Internet Key Exchange Trao đổi khoá Internet IMAP Internet Message Access Protocol 7
  8. Giao thức truy cập thông báo Internet ITU:  Internet Telecommunication Union Liên minh viễn thông quốc tế LDAP: Lightweight Directory Access Protocol Giao thức truy cập nhanh các thư mục MAC  Message Authentication Code Mã xác thực thông báo MD:  Message Degist  Tóm lược thông báo NCSA OCSP   Online Certificate Status Protocol Giao thức trạng thái chứng chỉ OSI Open System Interconnection Mô hình kết nối các hệ thống mở PEM:  Privacy Enhanced Mail Thư riêng tư tăng cường PGP:  Pretty Good Privacy PKCS:  Public Key CryptoGraphy Standards Chuẩn mật mã khoá công khai PKI:  Pulic Key Infracstructure  8
  9.  Cơ sở hạ tầng khóa công khai POP: Post Office Protocol RSA:  Rivest Shamir Adleman SCEP: Simple Certificate Enrollment Protocol Giao thức đăng ký chứng chỉ đơn giản SHA: Secure Hash Algorithm Thuật toán băm  S/MIME   Secure Multipurpose Internet Mail Extensions SMTP  Simple Mail Transfer Protocol Giao thức truyền thư đơn giản SPKC Simple Public Key Certificate  Chứng chỉ khoá công khai đơn giản SSH Secure Shell TCP/IP   Transmission Control Protocol /Internet Protocol Giao thức điều khiển truyền thông/giao thức Internet TLS   Transport layer Security Giao thức đảm bảo an toàn lớp vận chuyển    9
  10. DANH MỤC HÌNH VẼ Hình 1: Mật mã khoá bí mật...............................................................................................15 Hình 2: Mật mã khoá công khai..........................................................................................16 Hình 3: Quá trình ký số........................................................................................................19 Hình 4: Quá trình kiểm tra chữ ký số.................................................................................20 Hình 5:Mô hình PKI Việt Nam hiện nay............................................................................24 Hình 6: Khuôn dạng chứng chỉ X.509v3............................................................................28 Hình 7: Tiến trình đăng nhập an toàn.................................................................................37 Hình 8: Tiến trình đăng nhập an toàn một lần...................................................................38 Hình 9: Mô hình các thành phần PKI..................................................................................40 Hình 10: Chuỗi chứng chỉ...................................................................................................44 Hình 11: Mô hình phân cấp CA chặt chẽ...........................................................................51 Hình 12: Mô hình kiến trúc tin cậy phân tán......................................................................53 Hình 13: Mô hình bốn bên...................................................................................................54 Hình 14: Mô hình Web.........................................................................................................55 Hình 15: Mô hình tin cậy lấy người dùng làm trung tâm...................................................56 Hình 16: Chuỗi tin cậy........................................................................................................58 Hình 17: Kiến trúc kiểu Web of Trust................................................................................59 Hình 18: Kiến trúc CA đơn.................................................................................................61 Hình 19: Kiến trúc CA phân cấp.........................................................................................62 Hình 20: Kiến trúc kiểu chứng thực chéo..........................................................................63 Hình 21: Kiến trúc Bridge CA.............................................................................................64 Hình 22: Sơ đồ minh họa rootCA và SubCA......................................................................70 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 đó. 10
  11. 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 11
  12. 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 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 12
  13. 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  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 đó để  13
  14. 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 Độ 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  14
  15. 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 Hình 1: Mật mã khoá bí mật 15
  16. 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 Hình 2: Mật mã khoá công khai 16
  17. 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). 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.  17
  18. 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  . 18
  19. 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. 19
  20. 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 20
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2