31
1 NGUYN NGỌC ĐIỆP TÌM HI U VÀ TRI N KHAI HTHNG CHNG THC KHÓA CÔNG KHAI SDNG GÓI PHN MM MÃ NGUN MEBJCA NG DNG TRONG CÁC GIAO DỊCH THƯƠNG MẠI ĐIỆN T. Chuyên ngành: TDL & MTT Mã s: 60.48.15 TÓM TT LUẬN VĂN THẠC SĨ Hà Ni - 2012

TTLV NNgoc Điệp_2

Embed Size (px)

DESCRIPTION

TTLV

Citation preview

Page 1: TTLV NNgoc Điệp_2

1

NGUYỄN NGỌC ĐIỆP

TÌM HIỂU VÀ TRIỂN KHAI HỆ THỐNG

CHỨNG THỰC KHÓA CÔNG KHAI SỬ DỤNG GÓI PHẦN MỀM MÃ

NGUỒN MỞ EBJCA ỨNG DỤNG TRONG CÁC GIAO DỊCH THƯƠNG

MẠI ĐIỆN TỬ.

Chuyên ngành: TDL & MTT

Mã số: 60.48.15

TÓM TẮT LUẬN VĂN THẠC SĨ

Hà Nội - 2012

Page 2: TTLV NNgoc Điệp_2

2

Luận văn được hoàn thành tại:

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

Người hướng dẫn khoa học: T.S Phạm Thế Quế

Phản biện 1: ……………………………………………………………………………

Phản biện 2: …………………………………………………………………………..

Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc sĩ tại Học viện Công nghệ Bưu

chính Viễn thông

Vào lúc: ....... giờ ....... ngày ....... tháng ....... .. năm ...............

Có thể tìm hiểu luận văn tại:

- Thư viện của Học viện Công nghệ Bưu chính Viễn thông

Luận văn được hoàn thành tại:

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG

Người hướng dẫn khoa học: TS. PHẠM THẾ QUẾ

Phản biện 1: TS.Bùi Thu Lâm

Phản biện 2: PGS.TS. Trịnh Nhật Tiến

Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc sĩ tại Học viện Công

nghệ Bưu chính Viễn thông

Vào lúc: 9 giờ 00. ngày 08 tháng 09 năm 2012

Có thể tìm hiểu luận văn tại:

- Thư viện của Học viện Công nghệ Bưu chính Viễn thông

Page 3: TTLV NNgoc Điệp_2

3

LỜI NÓI ĐẦU

Ngày này, sự phát triển của công nghệ thông tin ngày càng chiếm một vị trí quan trọng trong mọi lĩnh vực của cuộc sống. Sự bùng nổ của khoa học công nghệ nói chung và công nghệ thông tin nói riêng đã đem lại rất nhiều lợi ích cho con người, rút ngắn khoảng cách về địa lý, tăng hiệu suất, tiết kiệm thời gian và chi phí cho công việc…

Việc giao dịch điện tử như trao đổi thư tín, thương mại điện tử, dịch vụ web, mạng riêng ảo…đã trở thành một phần tất yếu của cuộc sống hiện đại. Nhu cầu thực tế được đặt ra, đó là phải có một cơ quan đảm bảo chứng thực điện tử cho các giao dịch điện tử đảm bảo yêu cầu xác thực, bí mật, toàn vẹn, chống chối bỏ. Thực tế là hiện nay có rất nhiều công nghệ và phương pháp để xác thực danh tính trong giao dịch điện tử. Những phương pháp đó sử dụng mật khẩu, số định danh cá nhân, chứng chỉ số sử dụng PKI, các thiết bị bảo mật vật lý như Smart Card,…

Đứng trước nhu cầu đó, rất nhiều công ty bảo mật đã phối hợp cùng các ngân hàng, tổ chức tài chính để phát triển những giải pháp, sản phẩm để bảo vệ thông tin có liên quan tới các hoạt động giao dịch trực tuyến. Hiện nay, trên thế giới có rất nhiều cách xây dựng , triển khai một hệ thống PKI . Có thể đơn cử ra một vài ví dụ cụ thể như: CA – Microshoft, OpenCA – Opensourc, Entrus. Trong đề tài thực tập này, em lựa chọn giải pháp sử dụng EJBCA của Primekey trên nền tảng hệ điều hành CentOS.

EJBCA là một CA đầy đủ chức năng được xây dựng trên Java. Do được dựa trên công nghệ J2EE, EJBCA tạo thành một CA mạnh, hiệu suất cao. Với sự mềm dẻo, chạy độc lập không phụ thuộc vào hệ điều hành và phần cứng, EJBCA có thể được sử dụng độc lập hoặc được tích hợp trong các ứng dụng J2EE.

Page 4: TTLV NNgoc Điệp_2

4

Qua tìm hiểu và nghiên cứu em chọn đề tài “Tìm hiểu và triển khai hệ thống chứng thực khóa công khai sử dụng gói phần mềm mã nguồn mở EJBCA ứng dụng trong các giao dịch thương mại điện tử”. cho luận văn của mình .

Đề tài tập trung giải quyết các nội dung chính gồm 3 chương sau:

Chương 1: An toàn thông tin trong các giao dịch thương mại điện tử

Nêu lên tổng quan các yêu cầu chung của hệ thống an toàn thông tin trong các giao dịch điện tử

Các khái niệm,thuật toán cơ bản

Chương 2: Cơ sở tầng khóa công khai

Nêu lên tổng quát về cơ sở hạ tầng khóa công khai PKI

Các mục tiêu, chức năng và ưu nhược điểm của hệ thống

Chương 3 : Bộ phần mềm EBJCA trong hệ thống chứng thực cơ sở hạ tầng khóa công khai

Giới thiệu chung về gói phần mềm EJBCA

Các kiến trúc của hệ thống PKI sử dụng EJBCA

Đưa ra mô hình triển khai

Cách cài đặt và cấu hình.

Kết Luận

Do nội dung luận văn bao gồm nhiều kiến thức mới, thời gian và kiến thức còn hạn chế, việc nghiên cứu chủ yếu dựa trên lý thuyết nên chắc chắn đề tài không tránh khỏi những thiếu sót. Em rất mong nhận được sự đóng góp ý kiến của thầy cô giáo và bạn bè để đề tài của em ngày một hoàn thiện hơn.

Trong quá trình thực hiện đề tài, em xin được cảm ơn sự nhiệt tình giúp đỡ của

TS.Phạm Thế Quế - Giảng viên Học viện công nghệ bưu chính viễn thông, đã nhiệt tình hướng dẫn giúp đỡ em hoàn thành đề tài này.

Em xin chân thành cảm ơn !

Page 5: TTLV NNgoc Điệp_2

5

Chương I

AN TOÀN THÔNG TIN TRONG CÁC GIAO DỊCH THƯƠNG MẠI ĐIỆN TỬ (TMĐT)

1.1. Yêu cầu chung cho an toàn bảo mật thông tin trong các giao dịch điện tử

Trên mạng Internet các đe dọa thường bao gồm:

- Quan sát mạng - Chặn các kết nối - Giả mạo các định tuyến - Giả mạo DNS - Tấn công từ chối dịch vụ

Để đảm bảo an toàn trên mạng Internet cần quan tâm xử lý các vấn đề sau:

Tính xác thực (Authentication) b) Tính bảo mật (privacy) c) Tính toàn vẹn của dữ liệu (Integrity) d) Tính chống chối bỏ (Non-repudiation)

Các vấn đề an toàn trên mạng có thể được giải quyết dựa trên cơ sở lý thuyết mật mã.Mật mã học đã được ứng dụng xa xưa từ thời Ai cập cổ đại và xuyên suốt tiến trình lịch sử để truyền đi các thông tin quân sự và ngoại giao bí mật.Ngày nay việc mật mã hoá (encryption) dữ liệu là một phương pháp đủ mạnh để bảo vệ những dữ liệu quan trọng hoặc riêng tư không bị xâm phạm bởi sự soi mói tọc mạch hay dụng tâm có ác ý.

1.2 Mật mã khóa bí mật (secret -key cryptography)

Hệ mật mã khóa bí mật hay còn được gọi là hệ mật mã khóa đối xứng.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.Vì

Page 6: TTLV NNgoc Điệp_2

6

vậy khóa mật mã chung đó phải được giữ bí mật chỉ người lập mã và người nhận mã biết mà thôi.

Có rất nhiều hệ khóa bí mật dùng chung, điển hình nhất là chuẩn mã hóa dữ liệu Des (Data Encryptiol Standard).

- Ngày 13/5/1973 ủy ban quốc gia về tiêu chuẩn của Mỹ công bố yêu cầu về hệ mật mã áp dụng cho toàn quốc. Điều này đã đặt nền móng cho chuẩn mã hóa dữ liệu, hay là DES.

- Lúc đầu Des được công ty IBM phát triển từ hệ mã Lucifer, công bố vào năm 1975. Sau đó Des được xem như là chuẩn mã hóa dữ liệu cho các ứng dụng.

- Cấu trúc thuật toán - Mô tả thuật toán - Giải mã - Các chế độ của DES - Triple DES: - Ứng dụng của DES

Kết luận

Không thể phủ nhận là thuật toán DES có nhiều ứng dụng trong viễn thông và công nghệ thông tin, việc làm chủ và cứng hóa các thuật toán rất có ý nghĩa đối với sự an toàn trong các giao dịch trên mạng. Nhìn chung, đối với Việt Nam, việc làm chủ công nghệ cứng hóa thuật toán DES rất có ý nghĩa trong việc đảm bảo an toàn giao dịch trên mạng, đảm bảo an toàn trong truyền tin cho các đơn vị cơ yếu tại Việt Nam. Hiện nay, chúng tôi đang triển khai cứng hóa thuật toán DES nhờ các công nghệ thiết kế số hiện đại.

1.3 Mật mã khóa công khai

Những hạn chế của mật mã đối xứng

+ Vấn đề phân phối khóa

- Khó đảm bảo chia sẻ mà không làm lộ khóa bí mật - Trung tâm phân phối khóa có thể bị tấn công

+ Không thích hợp cho chữ ký số

Page 7: TTLV NNgoc Điệp_2

7

- Bên nhận có thể làm giả thông báo nói nhận được từ bên gửi.

Các hạn chế của mã mật mã đối xứng sẽ được giải quyết bằng mã hóa khóa công khai.Phương pháp mã hóa này được đề xuất bởi Whitfield Diffie và Martin Hellman vào năm 1976.Có thể coi là bước đột phá quan trọng nhất trong lịch sử ngành mật mã.Nó bổ xung những hạn chế của mật mã đối xứng chứ không thay thế.

- Đặc điểm mật mã khóa công khai - Ứng dụng mật mã khóa công khai - Hệ mã hóa RSA

+ Tạo khóa

+ Thực hiện RSA

+ Vì sao RSA khả thi ?

+ Hạn chế của khóa công khai

1.4 Hàm Băm (Hash Function) Hàm băm (Hash Function) là hàm chuyển đổi một thông điệp có độ dài bất kỳ

thành một dãy bit có độ dài cố định. Các hàm băm nhận một chuỗi bit có chiều dài tùy ý (hữu hạn) làm dữ liệu đầu vào và tạo ra một chuỗi bit mới có chiều dài cố định n bit (n > 0), được gọi là giá trị băm hay mã băm.

- Tính chất của hàm băm

- Các thuật toán băm +Giải thuật MD5

+Giải thuật SHA

- So sánh tính bảo mật giữa MD5 và SHA

1.5. Chữ ký điện tử (Digital Signature)

1.5.1 Khái niệm

Chữ ký điện tử (Digital Signature) dựa trên kỹ thuật sử dụng mã hóa khóa công khai. Trong đó, cả người gửi và người nhận, mỗi người có một cặp khóa là khóa bí mật,hay riêng tư (Private Key) và khóa công khai (Public Key).

Page 8: TTLV NNgoc Điệp_2

8

Chữ ký điện tử hoạt động khi một người gửi một thông điệp, người đó dùng khóa riêng của mình để mã hóa thông điệp sang một dạng khó nhận dạng. Người nhận dùng khóa công khai của người gửi để mã hóa thông điệp. Tuy nhiên, để an toàn thật sự phải có các bước bổ sung. Do đó, thuật toán băm MD5 và thuật toán mã hóa RSA có thể được áp dụng để xây dựng ứng dụng chữ ký điện tử.

1.5.2 Quá trình tạo chữ ký điện tử

1.5.3 Quá trình kiểm tra chữ ký điện tử

Page 9: TTLV NNgoc Điệp_2

9

Chương II

CƠ SỞ HẠ TẦNG KHÓA CÔNG KHAI (PKI)

2.1.Các khái niệm trong cơ sở hạ tầng khóa công khai (PKI)

2.1.1 Khái niệm PKI

Public Key Infrastructure (PKI) là một cơ chế để cho một bên thứ ba (thường là nhà cung cấp chứng thực số ) cung cấp và xác thực định danh các bên tham gia vào quá trình trao đổi thông tin. Cơ chế này cũng cho phép gán cho mỗi người sử dụng trong hệ thống một cặp public/private. Các quá trình này thường được thực hiện bởi một phần mềm đặt tại trung tâm và các phần mềm khác tại các địa điểm của người dùng. Khoá công khai thường được phân phối trong chứng thực khóa công khai (PKI)

Khái niệm hạ tầng khoá công khai (PKI) thường được dùng chỉ toàn bộ hệ thống bao gồm cả nhà cung cấp chứng thực số (CA) cùng các cơ chế liên quan đồng thời với toàn bộ việc sử dụng các thuật toán mã hoá công khai trong trao đổi thông tin. Tuy nhiên phần sau được bao gồm không hoàn toàn chính xác bởi vì các cơ chế trong PKI không nhất thiết sử dụng các thuật toán mã hoá công khai.

PKI cho phép các giao dịch điện tử được diễn ra đảm bảo tính bí mật, toàn vẹn và xác thực lẫn nhau mà không cần trao đổi các thông tin bảo mật từ trước. Mục tiêu chính của PKI là cung cấp khoá công khai và xác định mối liên hệ giữa khoá và định dạng người dùng. Nhờ vậy, người dùng có thể sử dụng trong một số ứng dụng như :

-Mã hoá Email hoặc xác thực người gửi Email. -Mã hoá hoặc chứng thực văn bản. -Xác thực người dùng ứng dụng.

-Các giao thức truyền thông an toàn dùng kỹ thuật Bootstrapping (IKE, SSL):trao đổi bằng khoá bất đối xứng, mã hoá bằng khoá đối xứng

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ẽ.

Page 10: TTLV NNgoc Điệp_2

10

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.

2.1.2. Chứng chỉ

2.1.3. Kho chứng chỉ

2.1.4 Thu hồi chứng chỉ

2.1.5. Công bố và gửi thông báo thu hồi chứng chỉ

2.1.6. Sao lưu và dự phòng khóa

2.1.7 Cập nhật khóa tự động

2.1.8 Lịch sử khóa

2.1.9. Chứng thực chéo

2.1.10 Hỗ trợ chống chối bỏ

2.1.11 Tem thời gian

2.1.12 Phần mềm phía người dùng

2.1.13 Chính sách của chứng chỉ

2.2 Chức năng của PKI

2.2.1. Chứng thực (certification)

2.2.2. Thẩm tra (validation)

2.3. Các thành phần chính của PKI

Page 11: TTLV NNgoc Điệp_2

11

2.3.1. Cơ quan cấp chứng chỉ (CA).

2.3.2 Cơ quan đăng ký.

2.3.3 Nơi lưu trữ chứng chỉ (certificate directory).

2.3.4. Máy chủ khôi phục khóa.

2.3.5. Danh sách thu hồi chứng chỉ (CRL).

2.3.6. Cơ quan tạo tem thời gian (TSA)

2.3.7. Phần mềm phía client( Client Software).

2.4 Kiến trúc của hệ thống PKI Hiện nay PKI được triển khai trong nhiều tổ chức như là một công cụ đảm bảo

những nguồn tài nguyên nhạy cảm an toàn. Tuy nhiên, với nhiều mục đích khác nhau, tiến trình khác nhau nên khó có thể đưa ra một tiêu chuẩn thiết kế chung. Về cơ bản có các mô hình kiến trúc PKI có dựa trên các mô hình chính: mô hình phân cấp, mô hình mạng lưới, mô hình danh sách tin cậy.

2.4.1. Mô hình phân cấp.

Hình 2.3: Mô hình phân cấp.

* Ưu điểm: - Tương thích với cấu trúc phân cấp của hệ thống quản lý trong các tổ chức - Gần giống với hình thức phân cấp trong tổ chức thư mục nên dễ làm quen. - Cách thức tìm ra một nhánh xác thực theo một hướng nhất định, không có hiện

tượng vòng lặp-> đơn giản, nhanh.

Page 12: TTLV NNgoc Điệp_2

12

* Nhược điểm: - Trong một phạm vi rộng, một CA duy nhất không thể đảm nhận được tất cả quá

trình xác thực. - Các quan hệ kinh doanh thương mại không phải bao giờ cũng có dạng phân cấp. - Khóa riêng của RootCA bị lộ thì toàn bộ hệ thống sẽ bị nguy hiểm.

2.4.2. Mô hình mạng lưới.

Hình 2.4: Mô hình mạng lưới.

* Ưu điểm: - Đây là mô hình linh động, thích hợp với các mối liên hệ- quan hệ tin cậy lẫn

nhau trong thực tế và công việc kinh doanh. - Cho phép các CA xác thực ngang hàng trực tiếp : điều này đặc biệt có lợi khi

các đối tượng sử dụng của các CA làm việc với nhau thường xuyên-> giảm tải lượng đường truyền và thao tác xử lý

- Khi một CA bị lộ khóa chỉ cần cấp phát chứng chỉ của CA tới các đối tượng có thiết lập quan hệ tin cậy với CA này.

* Nhược điểm: - Do cấu trúc của mạng có thể phức tạp nên việc tìm kiếm các đối tượng có thể

khó khăn. - Một đối tượng không thể đưa ra một nhánh xác thực duy nhất có thể đảm bảo

rằng tất cả các đối tượng trong hệ thống có thể tin cậy được.

Page 13: TTLV NNgoc Điệp_2

13

2.4.3. Mô hình danh sách tin cậy

Hình 2.5: Mô hình danh sách tin cậy.

* Ưu điểm: - Kiến trúc đơn giản, dễ triển khai. - Các đối tượng sử dụng có toàn quyền với danh sách các CA mà mình tin cậy. - Các đối tượng làm việc trực tiếp với CA trong danh sách các CA được tin cậy. * Nhược điểm: - Việc quản lý danh sách các CA tin cậy của một tổ chức là khó khăn. - Cấu trúc chứng chỉ không có nhiều hỗ trợ cho việc tìm ra các nhánh xác nhận. - Không có những hỗ trợ trực tiếp đối với các cặp chứng chỉ ngang hàng do vậy

hạn chế của CA trong việc quản lý sự tin cậy của mình với các CA khác. - Nhiều ứng dụng không hỗ trợ tính năng tự động lấy thông tin trạng thái hoặc hủy

bỏ của chứng chỉ.

2.4.4 Hoạt động của hệ thống PKI

2.4.5. Các loại chứng chỉ và giao thức trong PKI

a) Cấu trúc chứng chỉ X.509 Bảng 2.1: Chứng chỉ X.509 phiên bản 3.

Tên Trường Ví Dụ

Version Version 3

Serial number 70:58:E1:B7:54:C6:B4:5B

Page 14: TTLV NNgoc Điệp_2

14

CA Signature Algorithm Identifier

PKCS #1 SHA-256 With RSA Encryption

Issuer C = IN,O = NGOCDIEP,CN = DIEPCA

Validity period

Not Before 6/4/2011 22:38:34 PM

Not After 6/1/2021 16:17:55 PM

Subject C = IN,O = NGOCDIEP,CN = SSLDIEPCA

Subject Public Key Information

PKCS #1 RSA Encryption

Certificate Extensions

AuthorityKeyIdentifier

1d 43 ad da 32 10 43 6b 6a 50 de 08 ab a1 35 1c

Subject Key Identifier

1a 5c d7 b5 ea 9b 93 dd dd fe 13 e1 8a 20 52 95

Key Usage Critical Signing Key Encipherment

Subject Altermative names

DNS Name: http://localhost:8080/ejbca

CA Signature

51 16 84 a0 14 32 bd 0b 9d 96 09 b3 9a d0 42 08

7d 8e 45 5a a5 cb 09 48 6b 81 d3 42 6a ab 50 aa

f4 0a 6a 12 dc d1 b7 c0 11 51 05 fe 53 8f b8 ae

e4 a8 17 c9 39 fe d1 11 90 02 f4 8d d9 30 08 b6

88 cb 33 43 f0 77 64 f3 69 1b 20 99 71 2b 54 6d

34 01 3a d5 8a fc e3 31 65 3a 0c 70 90 fc 5a 30

44 e1 74 f0 12 6c 91 dd 36 b3 84 5d 06 bc ca 61

…..

Page 15: TTLV NNgoc Điệp_2

15

a) Các giao thức quản lý PKI Bảng 2.2: Danh sách các tiêu chuẩn PKCS

Ký hiệu chuẩn Tên chuẩn

PKCS#1 Chuẩn mật mã RSA

PKCS#2 Chuẩn này được liên kết thành chuẩn PKCS#1

PKCS#3 Chuẩn thỏa thuận khóa Diffie-Hellman

PKCS#4 Chuẩn này được liên kết thành chuẩn PKCS#1

PKCS#5 Chuẩn mật mã dựa trên mật khẩu

PKCS#6 Chuẩn ký tự chứng chỉ mở rộng

PKCS#7 Chuẩn ký tự thông báo mật mã

PKCS#8 Chuẩn ký tự thông tin khóa riêng

PKCS#9 Các kiểu thuộc tính đã chọn

PKCS#10 Chuẩn ký tự yêu cầu chứng chỉ

PKCS#11 Chuẩn giao diện thẻ bài mật mã

PKCS#12 Chuẩn ký tự trao đổi thông tin cá nhân

PKCS#13 Chuẩn mật mã đường cong Eliptic

PKCS#14 Chuẩn bộ sinh số giả ngẫu nhiên

PKCS#15 Chuẩn mẫu thông tin thẻ bài mật mã

Tiêu chí đánh giá cho các giao thức quản lý PKI là: - Các giao thức phải hỗ trợ tạo và xuất bản chứng chỉ và danh sách thu hồi chứng

chỉ (CRL). Trong những trường hợp khác nó cũng cho phép các thực thể tạo ra các yêu cầu chứng chỉ và yêu cầu thu hồi chứng chỉ.

- Các giao thức nên mở rộng, để có thể sử dụng trên nhiều hệ thống tách biệt.

Page 16: TTLV NNgoc Điệp_2

16

- Hỗ trợ giao dịch hai bên và giao dịch ba bên. Sự thiết kế giao thức nên tiện lợi sử dụng về một giao thức đơn giản thông qua các thực thể dù họ đang tương tác với một CA hay RA.

- Các giao thức này nên là đọc lập thuật toán. Kể từ khi tổ chức cần phải sử dụng các thuật toán khác nhau cho cặp khóa của họ, các giao thức này nên có khả năng để công nhận các kiểu thuật toán được sử dụng . Một vài thuật toán được sử dụng trong mật mã như MD5, RSA, DSA..

- Giao thức quản lý PKI phải hỗ trợ nhiều cơ chế truyền tải khác nhau như HTTP, FTP, TCP/IP.

2.5. Các vấn đề an toàn cho PKI

2.5.1. Vấn đề an toàn tin cậy trong PKI

2.5.2. Vấn đề sử dụng khóa

2.5.3. Vấn đề xác định độ an toàn của máy tính

2.5.4. Vấn đề xác định định danh người dùng

2.5.5.Vấn đề thẩm quyền CA

2.5.6. Vấn đề người dùng quan tâm tới trong thiết kế bảo mật

2.5.7. Vấn đề kết hợp CA với RA

2.5.8. Vấn đề định danh người giữ chứng chỉ

2.5.9. Vấn đề sử dụng chứng chỉ

2.5.10. Vấn đề ứng dụng CA

2.6. Ứng dụng của PKI a) Ứng dụng Mã Hóa để bảo mật thông tin (Security). b) Ứng dụng tạo Chữ Ký Số để kiểm tra tính tòan vẹn thông tin (Integrity). + Tạo chữ ký số

+ Ứng dụng kiểm tra tính tòan vẹn dữ liệu

Page 17: TTLV NNgoc Điệp_2

17

c) Ứng dụng Trao đổi khóa (Key Exchange).

2.7. Ưu nhược điểm của việc ứng dụng hệ thống PKI

2.7.1. Ưu điểm khi sử dụng cơ sở hạ tầng khóa công khai

2.7.2. Một số điểm yếu của cơ sở hạ tầng khóa công khai

Kết luận Chương II

Chương II đã trình bầy những khái niệm cơ bản, các phương pháp, công nghệ

và kỹ thuật sử dụng mã hóa khóa công khai để cung cấp một cơ sở hạ tầng bảo mật.

Một cơ sở hạ tầng khóa công khai cho phép một tổ chức tận dụng tốc độ của mạng

Internet trong khi vẫn bảo vệ các thông tin quan trọng khỏi việc nghe trộm, giả mạo,

và truy cập trái phép.

Page 18: TTLV NNgoc Điệp_2

18

Chương III

HỆ THỐNG CHUẨN QUẢN LÝ HẠ TẦNG KHÓA CÔNG KHAI EJBCA 3.1. Giới thiệu về EJBCA (Enterprise Java Bean Certificate Authority)

3.1.1. Khái niệm

- EJBCA (Enterprise Java Bean Certificate Authority)là một sản phẩm của công ty PrimeKey

- EJBCA là một CA và là một hệ thống quản lý PKI hoàn chỉnh được xây dựng trên nền tảng công nghệ J2EE

- Kiến trúc Enterprise Java Beans (EJB) là một đặc tả được công ty Sun Microsystems phát triển.

3.1.2. Các giai đoạn phát triển của EJBCA

3.1.3. So sánh với các gói phần mềm khác

Dưới đây là bảng so sánh một số đặc điểm giữa hai gói phần mềm này : Bảng 3.1: So sánh các đặc điểm của EJBCA và OpenCA.

Đặc điểm EJBCA OpenCA

Độ khó khi cấu hình Rất phức tạp Phức tạp

Tính bí mật Có (sử dụng mã hóa) Có (sử dụng mã hóa)

Tính toàn vẹn Có (sử dụng mã hóa) Có

Tính xác thực Có (sử dụng chữ ký số) Có

Tính chống chối bỏ Có Không

Chọn thuật toán để sử dụng OCSP

Có Không

Khả năng chọn CSP Có Bằng tay

Cập nhật CRL Có Không

Hỗ trợ thẻ thông minh Tự động Miễn phí

Các mở rộng Có Có

Page 19: TTLV NNgoc Điệp_2

19

Môi trường nền Miễn phí Perl CGI trên Unix

Cơ sở dữ liệu Java J2EE (độc lập nền) Hypersoniq,PostegreSQL, MySQL, MS SQL, Oracle,

MySQL

Hỗ trợ LDAP Có Có

Môđun EJB Perl

Khả năng mở rộng Được thiết kế tốt và có thể mở rộng

Mở rộng khó với độ phức tạp tăng rất nhiều

Thành phần độc lập PKI có thể được quản trị hoàn toàn thông qua dòng lệnh

Chỉ có một cách quan trị PKI là thông qua giao diện web

Các trình duyệt được hỗ trợ

Nhiều Nhiều

3.2. Mô hình của hệ thống PKI EJBCA

3.2.1. Sơ đồ tổng quát hệ thống PKI EJBCA

3.2.2. Kiến trúc bên trong của EJBCA.

Tầng dữ liệu (Data Tier Thành phần CA Thành phần RA Tầng Web

Page 20: TTLV NNgoc Điệp_2

20

Trình khách:

Hình 3.2:Kiến trúc EJBCA

3.2.3. Hoạt động của RA Server trong hệ thống EJBCA

3.2.4. Kiến trúc và hoạt động của External OCSP responders

3.3. Các tính năng của EJBCA

3.4. Ứng dụng của EJBCA

3.5. Một số ưu nhược điểm của EJBCA * Ưu điểm: - EJBCA đơn giản nhất để sử dụng - Mạnh mẽ - Hiệu suất cao, thành phần dựa trên CA. - Linh hoạt và nền tảng độc lập. EJBCA có thể được sử dụng độc lập hoặc tích

hợp trong bất kỳ ứng dụng J2EE - Có thể triển khai trên các hệ điều hành khác nhau như Windows và Linux. - Có khả năng kết nối với các hệ quản trị cơ sở dữ liệu sau: + Hypersoniq (hsqldb) (mặc định trong JBoss) + PostegreSQL 7.2 và 8.x ,MySQL 4.x và 5.x + Oracle 8i, 9i và 10g (http://www.oracle.com/) + Sybase + MS-SQL2000 và 2003 + Informix 9.2

Page 21: TTLV NNgoc Điệp_2

21

+ DB2 * Nhược điểm: - Cài đặt và cấu hình phức tạp hơn so với các hệ thống khác.

3.6 Triển khai hệ thống PKI sử dụng phần mềm EJBCA

Mục tiêu

Mọi người sẽ không quá lo lắng về bức thư điện tử của họ bị xem trộm hay không?có lẽ nó không thu hút sự tò mò lắm.Tuy nhiên các thông tin nội bộ giữa các tổng công ty,tập đoàn với các chi nhánh sẽ thu hút sự chú ý hơn.Các công ty sẽ lo lắng về các thông tin kinh doanh của mình bị lọt vào tay đối thủ cạnh tranh và họ sẽ bị mất đi lợi nhuận và thị trường.Trong thực tế có những chuyên gia với nghiệp vụ giỏi sẵn sang can thiệp để lấy những thông tin này và bán lại cho những đối thủ cạnh tranh của công ty bị xem trộm.Nhằm hiện thực hóa các kết quả bảo mật thông tin đã nghiên cứu,dưới đây là mô hình triển khai thử nghiệm một hệ thống PKI theo kiến trúc phân cấp sử dụng gói phần mềm mã nguồn mở EBJCA.Mục tiêu đặt ra là hệ thống sau khi được triển khai có thể sử dụng cung cấp các chứng nhận cho người dùng để chứng thực người sử dụng web,ký và mã hóa thư điện tử,ký văn bản.

3.6.1 Mô hình triển khai Yêu cầu cần thiết: + Hệ điều hành triển khai là hệ điều hành CentOS 5.5. + Máy chủ EJBCA Server và Backup/Log + OCSP Responder đóng vai trò trả lời các truy vấn về thông tin chứng chỉ,

CRLs… được cài đặt phần mềm MySQL, Jboss, LDAP. + RA Server đóng vai trò nhận và xử lý các truy vấn xin cấp chứng chỉ của Client

và chờ CA xử lý cấp phát. Được cài đặt MySQL và JBOSS. Vì không đủ điều kiện nên em thực hiện gộp ba phần trên trên một máy nên máy

này sẽ đóng vai trò của cả ba phần trong mô hình trên. Các phần mềm cài đặt trên máy bao gồm: ejbca_3_11_1, MySQL, JBOSS-4.2.2.GA, Apache-ant-1.8.2, JDK-6u23-linux, JCE_policy-6, MySQL-connector-java-1.5.14, LDAP

Page 22: TTLV NNgoc Điệp_2

22

Hình 3.7: Mô hình tổng quan về hệ thống PKI sẽ triển khai.

theo mô PKI theo kiến trúc phân câp hình 2.3 thì mỗi CA sẽ có các quản trị viên được chia thành 4 nhóm:

+ Quản trị viên CA (CA administrator)

+ Quản trị viên RA (RA administrator)

+ Siêu quản trị viên (super administrator)

Tên các CA,các thực thể được được phát hành chứng nhận đều được đặt theo tiêu chuẩn tên phân biệt X.509.

Các bước triển khai:

Cấp chứng nhận cho quản trị CA,RA,giám sát viên và siêu quản trị viên,để có thể đăng nhập vào hệ thống quản trị CA trên trình duyệt web như fire fox,IE.

Page 23: TTLV NNgoc Điệp_2

23

Hình 3.8 : Giao diện quản lý của ejbca.

Mở cửa sổ Add End Entity và điền các định dạng cho chứng chỉ người dùng

Hình 3.11 Kết quả tạo quản trị viên email-1CA và email-2CA

- Import chứng chỉ dạng P12 vào trong firefox

Page 24: TTLV NNgoc Điệp_2

24

Vào Edit/Preferences/Advanced/Encryption/View Certfiticates/Your Certtificates/ Nhấn vào Import file superadmin.p12 trong /opt/ejbca/P12/superadmin.p12

Hình 3.12: Add chứng chỉ vào trình duyệt.

Chi tiết chứng chỉ được cấp cho user1 và user 2 với đầy đủ thông số.

Hình 3.13: chứng nhận cho người dùng có tên user1 và user 2

Page 25: TTLV NNgoc Điệp_2

25

Ký và mã hóa thư điện tử :Hệ thống có thể cấp chứng nhận cho người dùng để ký và xác nhận chữ ký,mã hóa và giải mã thư điện tử trong ứng dụng thư điện tử Outlook Epress.Khi người dùng user-2 gửi thư điện tử cho user-1,đồng thời ký và mã hóa thư điện tử đó.

User -1 nhận được thư điện tử của user-2,user -1 sẽ không đọc được thư cũng như

xác thực được người gửi nếu không có chứng nhận của người gửi (không có khóa khớp với khóa người gửi).

Hình 3.15: Giao diện user-1 nhận được thư của user-2 được ký và mã hóa.

Khi có đầy đủ các chứng nhận cần thiết người nhận user-1 có thể đọc được nội dung thư đã được ký và mã hóa như hình dưới.

Page 26: TTLV NNgoc Điệp_2

26

Hình 3.16: Người nhận user-1 đọc được nội dung thư được gửi. Tương tự Chứng nhận được cấp cho người dùng thử nghiệm ở trên có thể được dùng để ký và gửi những file văn bản. Kết luận chương III

EJBCA là một gói phần mềm mã nguồn mở nổi tiếng,có thể triển khai một hệ thông PKI hoàn chỉnh,đầy đủ chức năng.Hệ thống triển khai này mang lại đầy đủ các tính chất cần thiết nhằm thiết lập một môi trường an toàn,tin cậy trong giao tiếp như tính bảo mật,toàn vẹn,tính xác thực và tính chống chối bỏ.Hơn nữa hệ thống có khả năng mở rộng tích hợp với các hệ thống khác một cách dễ dàng.

Page 27: TTLV NNgoc Điệp_2

27

KẾT LUẬN

PKI là một hệ thống tương đối lớn và phức tạp. Việc nắm vững và nghiên cứu kỹ PKI đòi hỏi nhiều thời gian và công sức.Qua đề tài em vừa trình bày trên đã đưa ra một cái nhìn tổng quát về hệ thống cơ sở hạ tầng PKI, các mục tiêu và chức năng của hệ thống. Đồng thời đề tài cũng trình bày được những vấn đề cơ bản, cách cài đặt và cấu hình gói phần mềm EJBCA - một trong những cách xây dựng, triển khai hệ thống khóa công khai. EJBCA là một gói phần mềm mã nguồn mở nổi tiếng, có thể triển khai một hệ thống PKI hoàn chỉnh, đầy đủ chức năng. Nhằm tận dụng những đặc tính ưu việt của gói phần mềm này đồng thời có thể quản lý được quá trình phát triển cũng như độ an toàn của hệ thống, đề tài đã tiến hành tìm hiểu và phân tích.

Hướng phát triển của đề tài là có thể áp dụng mô hình triển khai vào thực tế nhiều hơn nữa chứ ko phải chỉ dừng ở mức lý thuyết demo. Chúng ta có thể triển khai thử nghiệm một hệ thống chứng thực tập trung theo kiến trúc PKI phân cấp đơn giản có thể sử dụng ngay trong thực tế. Hệ thống được triển khai này mang lại đầy đủ các tính chất cần thiết nhằm thiết lập một môi trường an toàn, tin cậy trong giao tiếp như tính cẩn mật, tính toàn vẹn, tính xác thực và tính không thể chối từ. Hơn nữa, hệ thống còn có khả năng mở rộng, tích hợp với các hệ thống khác một cách dễ dàng.

Hệ thống được triển khai có thể sử dụng ngay trong thực tế đồng thời có tính tổng quát cao (nhiều loại CA: CA gốc, CA con cấp một và CA con cấp khác một), có thể ứng dụng trong bất kỳ tổ chức nào có mô hình phân cấp tương tự.

Page 28: TTLV NNgoc Điệp_2

28

TÀI LIỆU THAM KHẢO Tiếng Việt

[1]. Học viện Kỹ thuật Mật mã (2006), "Giáo trình chứng thực điện tử".

[2]. Trung tâm ứng dụng công nghệ điện tử viễn thông NACENCOMM – Giải pháp PKI.

Tiếng Anh

[3]. Andrew Nash, William Duane, Celia Joseph and Derek Brink (2001), "PKI: Implementing and Managing E-security", RSA Press.

[4]. Suranjan Choudhury, Kartik Bhatnagar, and Wasim Haque (2001), "Public Key Infrastructure Implementation and Design", M&T Books.

[5]. RFC 2560, RFC2459, RFC2119.

[6]. http://www.ejbca.org.

[7]. http://www.primekey.se

[8]. IETF Public-Key Infrastructure X.509 (PKIX) Working Group, http://www.ietf.org/html.charters/pkix-charter.html

[9]. Carlisle Adams, Steve Lloyd (November 06, 2002),

“Understanding PKI: Concepts, Standards, and Deployment Considerations, Second Edition”

Page 29: TTLV NNgoc Điệp_2

29

MỤC LỤC

DANH MỤC CÁC TỪ VIẾT TẮT...............................................................i DANH MỤC CÁC BẢNG..............................................................................ii DANH MỤC CÁC HÌNH VẼ........................................................................iv LỜI NÓI ĐẦU ............................................................................................. 1

Chương I ...................................................................................................... 5

AN TOÀN THÔNG TIN TRONG CÁC GIAO DỊCH THƯƠNG MẠI ĐIỆN TỬ (TMĐT) ...................................................................................... 5

1.1. Yêu cầu chung cho an toàn bảo mật thông tin trong các giao dịch điện tử 5

1.2 Mật mã khóa bí mật (secret -key cryptography) ....................................... 5

1.3 Mật mã khóa công khai ........................................................................... 6

1.4 Hàm Băm (Hash Function) ...................................................................... 7

1.5. Chữ ký điện tử (Digital Signature) ......................................................... 7

1.5.1 Khái niệm ............................................................................................. 7

1.5.2 Quá trình tạo chữ ký điện tử ................................................................. 8

1.5.3 Quá trình kiểm tra chữ ký điện tử ......................................................... 8

Chương II .................................................................................................... 9

CƠ SỞ HẠ TẦNG KHÓA CÔNG KHAI (PKI) ........................................ 9

2.1. Khái niệm trong cơ sở hạ tầng khóa công khai (PKI) ............................. 9

2.1.1 khái niệm PKI ....................................................................................... 9

2.1.2. Chứng chỉ .......................................................................................... 10

2.1.3. Kho chứng chỉ ................................................................................... 10

2.1.4 Thu hồi chứng chỉ ............................................................................... 10

2.1.5. Công bố và gửi thông báo thu hồi chứng chỉ ...................................... 10

2.1.6. Sao lưu và dự phòng khóa ................................................................. 10

2.1.7 Cập nhật khóa tự động ........................................................................ 10

2.1.8 Lịch sử khóa ....................................................................................... 10

2.1.9. Chứng thực chéo ................................................................................ 10

2.1.10 Hỗ trợ chống chối bỏ ........................................................................ 10

2.1.11 Tem thời gian ................................................................................... 10

2.1.12 Phần mềm phía người dùng .............................................................. 10

2.1.13 Chính sách của chứng chỉ ................................................................. 10

2.2 Chức năng của PKI ................................................................................ 10

Page 30: TTLV NNgoc Điệp_2

30

2.2.1. Chứng thực (certification) .................................................................. 10

2.2.2. Thẩm tra (validation) ......................................................................... 10

2.3. Các thành phần chính của PKI .............................................................. 10

2.3.1. Cơ quan cấp chứng chỉ (CA). ............................................................ 11

2.3.2 Cơ quan đăng ký. ................................................................................ 11

2.3.3 Nơi lưu trữ chứng chỉ (certificate directory). ...................................... 11

2.3.4. Máy chủ khôi phục khóa. ................................................................... 11

2.3.5. Danh sách thu hồi chứng chỉ (CRL). .................................................. 11

2.3.6. Cơ quan tạo tem thời gian (TSA) ....................................................... 11

2.3.7. Phần mềm phía client( Client Software). ........................................... 11

2.4 Kiến trúc của hệ thống PKI ................................................................... 11

2.4.1. Mô hình phân cấp. ............................................................................. 11

2.4.2. Mô hình mạng lưới. ........................................................................... 12

2.4.3. Mô hình danh sách tin cậy ................................................................. 13

2.4.4 Hoạt động của hệ thống PKI ............................................................... 13

2.4.5. Các loại chứng chỉ và giao thức trong PKI ........................................ 13

2.5. Các vấn đề an toàn cho PKI .................................................................. 16

2.5.1. Vấn đề an toàn tin cậy trong PKI ....................................................... 16

2.5.2. Vấn đề sử dụng khóa ......................................................................... 16

2.5.3. Vấn đề xác định độ an toàn của máy tính ........................................... 16

2.5.4. Vấn đề xác định định danh người dùng .............................................. 16

2.5.5.Vấn đề thẩm quyền CA ...................................................................... 16

2.5.6. Vấn đề người dùng quan tâm tới trong thiết kế bảo mật ..................... 16

2.5.7. Vấn đề kết hợp CA với RA ................................................................ 16

2.5.8. Vấn đề định danh người giữ chứng chỉ .............................................. 16

2.5.9. Vấn đề sử dụng chứng chỉ ................................................................. 16

2.5.10. Vấn đề ứng dụng CA ....................................................................... 16

2.6. Ứng dụng của PKI ................................................................................ 16

2.7. Ưu nhược điểm của việc ứng dụng hệ thống PKI ................................. 17

2.7.1. Ưu điểm khi sử dụng cơ sở hạ tầng khóa công khai ........................... 17

2.7.2. Một số điểm yếu của cơ sở hạ tầng khóa công khai ........................... 17

Chương III ................................................................................................. 18

HỆ THỐNG CHUẨN QUẢN LÝ HẠ TẦNG KHÓA CÔNG KHAI EJBCA....18

Page 31: TTLV NNgoc Điệp_2

31

3.1. Giới thiệu về EJBCA (Enterprise Java Bean Certificate Authority) ........18

3.1.1. Khái niệm .......................................................................................... 18

3.1.2. Các giai đoạn phát triển của EJBCA .................................................. 18

3.1.3. So sánh với các gói phần mềm khác .................................................. 18

3.2. Mô hình của hệ thống PKI EJBCA ....................................................... 19

3.2.1. Sơ đồ tổng quát hệ thống PKI EJBCA ............................................... 19

3.2.2. Kiến trúc bên trong của EJBCA. ........................................................ 19

3.2.3. Hoạt động của RA Server trong hệ thống EJBCA .............................. 20

3.2.4. Kiến trúc và hoạt động của External OCSP responders ...................... 20

3.3. Các tính năng của EJBCA ................................................................... 20

3.4. Ứng dụng của EJBCA .......................................................................... 20

3.5. Một số ưu nhược điểm của EJBCA ....................................................... 20

3.6 Triển khai hệ thống PKI sử dụng phần mềm EJBCA ........................... 21

3.6.1 Mô hình triển khai .............................................................................. 21

3.6.2 Cài đặt cấu hình .................................... Error! Bookmark not defined. KẾT LUẬN ................................................................................................ 27

TÀI LIỆU THAM KHẢO ......................................................................... 28