MỤC LỤC
MỞ ĐẦU 2
CHƯƠNG 1. TỔNG QUAN VỀ THƯƠNG MẠI ĐIỆN TỬ 3
1.1. Khái niệm thương mại điện tử : 3
1.2. An ninh quốc gia trong thương mại điện tử : 4
1.3. Những giải pháp chủ yếu nhằm đảm bảo an ninh quốc gia trong thương mại điện tử : 5
1.3.1. Xây dựng cho được một cơ sở hạ tầng công nghệ đủ tin cậy : 5
1.3.2. Vấn đề an ninh quốc gia trong thương mại điện tử : 5
CHƯƠNG 2. TỔNG QUAN VỀ CƠ SỞ HẠ TẦNG KHOÁ CÔNG KHAI VÀ VAI TRÒ CỦA NÓ TRONG THƯƠNG MẠI ĐIỆN TỬ 6
2.1. Tổng quan về cơ sở hạ tầng khóa công khai : 6
2.1.1. Sự hình thành của PKI: 6
2.1.2. Cơ sở hạ tầng của khoá công khai : 6
2.1.3. Chức năng của PKI : 7
2.1.4. Các yêu cầu của cơ sở hạ tầng (Infrastructure Requirements) : 7
2.2. Cơ sở khoa học về PKI : 9
2.2.1. Mã hoá : 9
2.2.2. Ký số : 11
2.3. Chứng chỉ số : 14
2.4. Các công cụ phần mềm để xây dựng lên một PKI hoàn chỉnh : 14
2.4.1. Chương trình quản lý khoá : 14
2.4.2. Công nghệ OpenCA : 15
2.4.3. Công nghệ SSL : 16
2.5. Vai trò của khóa công khai trong thương mại điện tử : 18
2.5.1. Đối với người dùng : 18
2.5.2. Đối với nhà phát triển, cung cấp dịch vụ : 18
CHƯƠNG 3. CA(CERTIFICATE AUTHORITY) 19
3.1. Chứng chỉ khoá công khai : 19
3.2. Xác thực dựa trên chứng chỉ số : 21
3.3. Thời gian tồn tại và việc thu hồi chứng chỉ : 21
3.4. Revocation : 22
3.5. Quy trình phát hành chứng chỉ số : 23
3.6. Qui trình huỷ bỏ chứng chỉ : 25
KẾT LUẬN 26
TÀI LIỆU THAM KHẢO 27
27 trang |
Chia sẻ: lynhelie | Lượt xem: 1962 | Lượt tải: 2
Bạn đang xem trước 20 trang tài liệu Đồ án Tìm hiểu công nghệ CA và ứng dụng của nó trong TMĐT, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
hư “hộ chiếu điện tử”, và ràng buộc chữ ký số của người sử dụng với khoá công khai của người đó.
2.1.3. Chức năng của PKI :
PKI dưới góc độ kĩ thuậ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 chỉ số (digital certificate) cũng như các khoá mã hoá công khai và khoá riêng.
- Bảo đảm bí mật các thông tin truyền trên mạng: Thực thể không được cấp quyền, không thể xem trộm bản tin.
- Bảo đảm toàn vẹn các thông tin truyền trên mạng: Thực thể không được cấp quyền có thể thay đổi bản tin.
- Bảo đảm xác thực các thông tin truyền trên mạng: Thực thể nhận bản tin có thể định danh được thực thể gửi bản tin và ngược lại.
- Bảo đảm hỗ trợ các yêu cầu chống chối cãi.
Nhờ những khả năng đó, trên hệ thống này, các thực thể không biết mặt nhau, từ xa có thể tiến hành các giao dịch trong niềm tin cậy lẫn nhau.
2.1.4. Các yêu cầu của cơ sở hạ tầng (Infrastructure Requirements) :
Thương mại điện tử có thể áp dụng trên phạm vi toàn cầu khi tập các tiêu chuẩn bảo đảm an ninh cơ sở chung được thoả thuận giữa các bên tham gia. Do đó, để đảm bảo thông suốt và tin cậy cho các giao dịch điện tử, tập các dịch vụ an ninh chung của cơ sở hạ tầng cần phải tạo thành một chuẩn. Chuẩn này phải có khả năng hỗ trợ rộng rãi về nhiều mặt, đáp ứng được đầy đủ các khả năng của các công nghệ được sử dụng trong các ứng dụng kinh doanh. Dịch vụ đảm bảo an ninh cho thư điện tử có thể chống lại việc xem trộm của đối tượng giả mạo, nó cho phép người gửi và người nhận kiểm tra nhận dạng của nhau. Các giao dịch tài chính cần phải được ký bằng chữ ký số và có thể được xác thực để đảm bảo độ tin cậy ở nơi nhận.
2.1.4.1. Uỷ thác nhờ phía thứ ba (third-party trust):
Mật mã khoá công khai đòi hỏi phải biết khoá công khai của người sử dụng. Tuy nhiên, trên các mạng diện rộng đòi hòi này là không thực tế và yêu cầu mỗi người sử dụng cần phải thiết lập trước các quan hệ với tất cả những người còn lại là không thể thực hiện được.
Third-party trust là yêu cầu cơ bản cho bất kỳ dịch vụ nào đảm bảo an toàn thông tin trên diện rộng nào dựa trên hệ mật mã công khai. Bên thứ ba tin cậy được có tác dụng đảm bảo, cho phép người dùng tin tưởng vào bất cứ khoá công khai nào được xác thực bởi bên thứ ba này.
2.1.4.2. Xác thực mức độ tin cậy của người dùng (CA):
CA là nơi tập trung đáp ứng các yêu cầu về xác thực mức độ tin cậy của mọi người sử dụng, nó đóng vai trò như hộ chiếu cho công dân. Third-party trust có vai trò như trường hợp chúng ta muốn vào một quốc gia nào thì phải xuất trình hộ chiếu, thông qua Third-party trust mà CA có được độ tin cậy vào nhận dạng của người dùng
2.1.4.3. Xác nhận chéo (Cross-certification):
Xác nhận chéo là mở rộng của Third-party trust. Là quá trình mà trong đó cả hai CA đã chắc chắn trao đổi thông tin về khoá mã với nhau, khi đó mỗi CA có thể kiểm tra tính tin cậy về khoá của CA kia. Tiến trình bao gồm việc kiểm tra chéo giữa hai CA.
Việc thực hiện kiểm tra chéo tiến hành như sau : CA ở tổ chức thứ nhất tạo một nhận dạng của mình có chứa khoá công khai của CA ở tổ chức thứ hai và thực hiện việc ký, CA ở tổ chức thứ hai cũng tạo cho mình một nhận dạng chứa khoá công khai của tổ chức thứ nhất và thực hiện ký. Vì vậy, những người sử dụng ở mỗi CA được bảo đảm rằng mỗi CA đã tin cậy lẫn nhau. Mỗi người sử dụng trong mỗi CA trong khi trao đổi thông tin về khoá mã cần phải hoàn toàn tuân thủ các chính sách an ninh của những người khác.
2.1.4.4. Nhận dạng người dùng (Certificates) :
Xác nhận người dùng trên mạng giống như một hộ chiếu điện tử. Nó chứa các thông tin được sử dụng để kiểm tra xác nhận của người chủ sở hữu nó (ví dụ như tên của người sử dụng). Phần cuối của thông tin chứa trong xác nhận người dùng này chính là khoá công khai của người sở hữu, khoá công khai này lại có thể được sử dụng để mã hoá chính phần dữ liệu dành cho việc xác nhận người sỡ hữu, hoặc dùng để kiểm tra chữ ký số của người sở hữu.
2.2. Cơ sở khoa học về PKI :
2.2.1. Mã hoá :
Từ năm 1976, khi hệ mật mã phi đối xứng (mật mã khoá công khai) ra đời, nhiều khái niệm mới gắn với mật mã học đã xuất hiện: chữ ký số, hàm băm, mã đại diện, chứng chỉ số.
Các thông điệp cần chuyển đi và cần được bảo vệ an toàn gọi là bản rõ (plaintext), và được ký hiệu là P. Nó có thể là một dòng các bít, các file, âm thanh số hoá, Bản rõ được dùng để lưu trữ hoặc để truyền đạt thông tin. Trong mọi trường hợp bản rõ là thông điệp cần mã hoá. Quá trình xử lý một thông điệp trước khi gửi được gọi là quá trình mã hoá (encryption). Một thông điệp đã được mã hoá được gọi là bản mã (ciphetext), và được ký hiệu là C. Quá trình xử lý ngược lại từ bản mã thành bản rõ được gọi là quá trình giải mã (decryption)
Hệ mật mã là tập hợp các thuật toán, các khoá nhằm che dấu thông tin cũng như là rõ nó.
Một sơ đồ hệ thống mật mã là một bộ năm (P,C,K,E,D) trong đó :
P : Là một tập hữu hạn các ký tự bản rõ – plaintext.
C: Là một tập hữu hạn các ký tự bản mã – ciphertext.
K: Là một tập hữu hạn các khoá.
E : Là tập hàm lập mã - Encryption.
D: Là tập hàm giải mã – Decryption.
Với mỗi k K có : một hàm lập mã Ek E ; là một ánh xạ từ Ek : P → C
Và một hàm giải mã Dk D ; là một ánh xạ từ Dk : C → P
Sao cho Dk (Ek(x))=x, x P
Hiện nay các hệ mật mã được phân làm hai loại chính là : Hệ mật mã đối xứng và hệ mật mã phi đối xứng (hay còn gọi là hệ mật mã khoá công khai).
- Một số hệ mật mã đối xứng là : DES, IDEA, Triple DES
- Một số hệ mật mã công khai là : RSA, Elgamal, ECC
Mã hoá đối xứng :Sender
Recipient
Secret key
Encryption
Decryption
Plaintext
Plaintext
Ciphertext
* Ưu điểm của mã hoá đối xứng :
- Tốc độ mã hoá nhanh.
- Sử dụng đơn giản: Chỉ cần dùng một khoá cho cả 2 bước mã hoá và giải mã.
* Nhược điểm của mã hoá đối xứng :
- Các phương pháp mã hoá cổ điển đòi hỏi người mã hoá và người giải mã phải cùng chung một khoá. (Chính xác là biết khoá này “dễ dàng” xác định khoá kia). Khi đó khoá phải được giữ bí mật tuyệt đối. Mặc khác 2 người cùng giữ chung một bí mật thì “khó” “bí mật”.
- Vấn đề quản lý và phân phối khoá là khó khăn và phức tạp khi sử dụng hệ mã hoá cổ điển. Người gửi và người nhận luôn luôn thống nhất với nhau về vấn đề khoá. Việc thay đổi khoá là rất khó và dễ bị lộ.
- Khuynh hướng cung cấp khoá dài, lại phải được thay đổi thường xuyên cho mọi người, trong khi vẫn duy trì cả tính an toàn và chi phí, sẽ cản trở rất nhiều tới việc phát triển hệ mật mã cổ điển.
Mã khoá công khai :Senders
Recipient
Recipient’s public key
Plaintext
Plaintext
Ciphertext
Recipient’s private key
* Ưu điểm của mã hoá khoá công khai :
- Dùng cặp khoá để mã hoá nên không cần bảo mật khoá mã hoá, chỉ cần bảo mật khoá giải mã.
- Có thể dùng mã hoá khoá công khai để tạo chữ ký điện tử, chứng chỉ số.
* Nhược điểm khoá công khai :
- Tốc độ mã hoá / giải mã chậm, “khó” thực hiện việc mã hoá các bản tin dài.
2.2.2. Ký số :
Chữ ký thông thường (chữ ký truyền thống):
- Chữ ký là một bộ phận vật lý của tài liệu được ký.
- Việc kiểm tra chữ ký truyền thống được thực hiện bằng cách so sánh nó với chữ ký đã xác thực.
- Bản sao (copy) của tài liệu đã ký thường là khác với bản tài liệu gốc.
- Chữ ký thông thường trong các trường hợp quan trọng thường phải có dấu “xác thực” “đỏ chót” để xác nhận rằng chữ ký gắn vào tài liệu đó đã được xác nhận bởi cơ quan có thẩm quyền.
Với thoả thuận thông thường, hai đối tác xác nhận sự đồng ý bằng cách kí tay vào cuối các hợp đồng. Và bằng cách nào đó người ta phải thể hiện đó là chữ kí của họ và kẻ khác không thể giả mạo. Mọi cách sao chép trên văn bản thường dễ bị phát hiện vì bản sao có thể phân biệt được với bản gốc.
Chữ kí thông thường được kiểm tra bằng cách so sánh nó với các chữ kí xác thực khác. Ví dụ, ai đó kí một tấm séc để mua hàng, người bán phải so sánh chữ kí trên mảnh giấy với chữ kí nằm ở mặt sau của thẻ tín dụng để kiểm tra. Dĩ nhiên, đây không phải là phương pháp an toàn vì nó dễ dàng bị giả mạo.
Chữ ký số :
- Chữ ký số không được “gắn” một cách hữu cơ với tài liệu được ký. Do đó, thuật toán ký được dùng phải “trói” chữ ký với tài liệu được ký theo một cách thức nào đó.
- Việc kiểm tra chữ ký số được sử dụng một thuật toán kiểm tra đã được công khai hoá hoàn toàn. Do đó, đứng về nguyên tắc mọi người có thể kiểm tra chữ ký số của tài liệu đó.
- Bản sao của tài liệu ký không khác gì so với bản gốc. Đây là một đặc điểm cần lưu ý.
- Chữ ký số không cần “dấu, đỏ chót” của cơ quan xác thực chữ ký mà sẽ có cách chống chối bỏ mỗi khi anh ta đã ký vào tài liệu và chứng minh được đó đích thực là chữ ký của anh đã ký vào tài liệu đó.
Các giao dịch trên mạng cũng được thực hiện theo cách người gửi và người nhận cũng phải kí vào hợp đồng. Chỉ khác là văn bản truyền trên mạng được biểu diễn dưới dạng “số” (chỉ dùng chữ số 0 và 1), ta gọi văn bản này là “văn bản số”. Do đó chữ kí trên “văn bản số” cũng khác với chữ kí trên văn bản giấy thông thường.
Việc giả mạo và sao chép lại đối với “văn bản số” là việc hoàn toàn dễ dàng và không thể phân biệt được bản gốc với bản sao. Vậy một chữ kí ở cuối văn bản loại này không thể chịu trách nhiệm đối với toàn bộ nội dung văn bản. Chữ kí thể hiện trách nhiệm đối với toàn bộ văn bản là chữ kí được kí trên từng bít của văn bản. Bản sao của “chữ kí số” có tư cách pháp lí.
Chữ kí số có thể được kiểm tra nhờ dùng một thuật toán kiểm tra công khai. Như vậy, bất kì ai cũng có thể kiểm tra được chữ kí số. Việc dùng một sơ đồ chữ kí an toàn có thể sẽ ngăn chặn được khả năng giả mạo.
Sender
Recipient
Sender’s private key
Digital signature
Sender’s public key
TrinkSek
TrinkSek
Đại diện thông điệp :
Để ký số trên một văn bản điện tử, đầu tiên phải tạo đại diện của văn bản nhờ hàm băm. Một thông điệp được đưa qua hàm băm sẽ tạo ra một giá trị có độ dài cố định và ngắn hơn được gọi là “Digest”. Mỗi thông điệp đi qua một hàm băm chỉ cho duy nhất một “Digest”. Ngược lại, “khó” tìm được 2 thông điệp khác nhau mà có cùng một “Digest” (ứng với cùng một hàm băm).
Hàm băm thường kết hợp với chữ ký điện tử ở trên để tạo ra một loại chữ ký điện tử vừa an toàn hơn (không thể cắt/dán), vừa có thể dùng để kiểm tra tính toàn vẹn của thông điệp.
Các bước để tạo ra chữ ký điện tử như sau :
Đưa thông điệp cần gửi qua hàm băm trước khi đã số hoá thông điệp đó để tạo ra “Digest”.
Mã hoá “Digest” bằng khoá private của người gửi để tạo ra chữ ký điện tử.
Gửi bản thông điệp cùng với chữ ký điện tử đến nơi nhận theo yêu cầu.
Người nhận thông điệp sẽ kiểm tra chữ ký điện tử kèm theo thông điệp đó bằng khoá công khai của người gửi sau đó đem so sánh kết quả kiểm thử với “Digest” nhận được. nếu trùng nhau thì chấp nhận chữ ký còn không thì thông điệp đó hoặc giả mạo hoặc chữ ký đó không phải của người gửi.
Hàm hash được sử dụng với mục đích rút gọn thông điệp trước lúc ký vì nếu không có hàm hash thì sẽ gây mấy bất tiện sau đây :
- Thuật toán xác thực và ký thường nhận đầu vào là một dòng bit có độ dài rất ngắn (cỡ 64, 128 hoặc 160 bít) và tốc độ ký rất chậm. Trong lúc đó các thông báo được gửi đi thường có độ dài khác nhau và rất dài, thậm chí trong nhiều trường hợp độ dài của một thông báo ký dài cỡ kbyte hoặc nhiều megabyte. Như vậy người ta phải cắt thông báo thành từng block có độ dài bằng nhau cố định rồi tiến hành “ký” trên từng block đó : Có m block thông báo thì có m lần ký trên m block đó. Làm như vậy, tốc độ thực hiện ký sẽ rất chậm do phải ký nhiều block. Mặt khác, khi sắp xếp lại rất dễ xảy ra trường hợp không đúng trật tự so với trật tự ban đầu của thông báo. Hoặc thậm chí có thể một block nào đó của thông báo bị thất lạc trong quá trình truyền tải.
Vị trí do chủ yếu trên đây, người ta sử dụng hàm hash để thực hiện việc rút gọn thông báo trước lúc ký trên thông báo đó - tức là sẽ ký trên thông báo rút gọn thay vì ký trên thông báo gốc.
2.3. Chứng chỉ số :
Chứng chỉ số là kết quả của dự án phát triển chuẩn thư mục X.500 của ITU-T phát triển vào cuối những năm thập niên 90. Chứng chỉ số được ITU-T đặc tả trong tài liệu X.509 và dần được thay đổi qua các phiên bản cho phù hợp với thực tế. Chứng chỉ X.509 phiên bản 3 là phiên bản hiện tại được áp dụng sử dụng trong các hệ thống sử dụng chứng chỉ số. Dịch vụ xác thực sử dụng chứng chỉ số X.509 là nền tảng để xây dựng các dịch vụ đảm bảo an toàn cho hệ thống.
Một chứng chỉ số là một tệp tin điện tử được sử dụng để nhận diện một cá nhân, một máy dịch vụ, một công ty, hoặc một vài đối tượng khác và gắn định danh của đối tượng đó với một khoá khoá công khai, giống như bằng lái xe, hộ chiếu, chứng minh thư.
Trong chứng chỉ số chứa một khoá công khai được gắn với một tên duy nhất của một đối tượng (như tên của một nhân viên hoặc máy dịch vụ). Các chứng chỉ số giúp ngăn chặn việc sử dụng khoá công khai cho việc giả mạo. Chỉ có khoá công khai được chứng thực bởi chứng chỉ số sẽ làm việc với khoá bí mật tương ứng. Nó được sở hữu bởi đối tượng với định danh đã được chứng thực ghi trong chứng chỉ số.
Ngoài khoá công khai, chứng chỉ số còn chứa thông tin về đối tượng như tên mà nó nhận diện, hạn dùng, tên của CA cấp chứng chỉ số, mã số Điều quan trọng nhất là một chứng chỉ số luôn luôn chứa chữ ký số của CA đã cấp chứng chỉ số đó. Giống như chứng chỉ số đã được đóng dấu, để cho người sử dụng có thể kiểm tra.
Chứng chỉ số có ba thành phần chính :
Thông tin cá nhân của người được cấp.
Khoá công khai (Public key) của người được cấp
Chữ ký số của CA cấp chứng chỉ
2.4. Các công cụ phần mềm để xây dựng lên một PKI hoàn chỉnh :
2.4.1. Chương trình quản lý khoá :
KeyMan là một công cụ quản lý phía client của PKI (public key infrastrure). KeyMan quản lý các khoá, các chứng chỉ (certificates), danh sách thu hồi chứng chỉ (CRLs) và các kho chứa tương ứng để lưu trữ và lấy ra các đối tượng này.
KeyMan quản lý kho lưu trữ các khoá, chứng chỉ và danh sách thu hồi chứng chỉ. Mỗi kho chứa được gọi là một thẻ (token). Một thẻ là một tập hợp các khoá, chứng chỉ và các danh sách thu hồi chứng chỉ. Thẻ có thể được lưu trữ trong nhiều môi trường (ví dụ như file, URL, thiết bị phần cứng ). Có những kiểu thẻ bài khác nhau với những khả năng khác nhau : Thẻ bài phần mềm, phần cứng, thẻ bài không được bảo vệ hoặc thẻ bài được bảo vệ bởi password hoặc PIN. Một thẻ bao gồm các thiết lập tin cậy (trust) phụ thuộc ứng dụng cụ thể (ví dụ IBM BlueZ SSLite). Thông thường, một thẻ bao gồm nhiều khoá bí mật và các chuỗi chứng chỉ tương ứng để xác nhận giữa người sử dụng với các site khác. Thêm vào đó, một thẻ nắm giữ các chứng chỉ của các kết nối tin cậy tới đối tác và tới CA (certification authorities).
2.4.2. Công nghệ OpenCA :
Open là một dự án đồ sộ, có mục đích xây dựng một PKI hoàn chỉnh, chuyên nghiệp, OpenCA được phát triển liên tục từ năm 1999. Từ năm 2001, OpenCA đã bắt đầu được sử dụng cho các đơn vị cỡ vừa và lớn.
OpenCA sử dụng giao diện web, hỗ trợ hầu hết các web brower chính, khác với các sản phẩm thương mại, thường không hỗ trợ sản phẩm mã nguồn mở vì sợ bị canh tranh.
OpenCA bao gồm các module :
- Giao tiếp công cộng : Giao diện web để người sử dụng có thể truy cập qua Internet. Người dùng có thể đăng ký xin cấp chứng chỉ trực tiếp qua module này.
- Giao tiếp LDAP : Danh bạ công bố khoá công khai, người dùng thường lấy khoá công khai từ module này để thực hiện việc mã hoá trước khi gửi thư đến đơn vị dùng openCA.
- Giao tiếp RA : Đơn vị điều hành RA sử dụng module này để nhập các thông tin xác thực cá nhân của người xin cấp chứng chỉ.
- Giao tiếp OCSP : Module hỗ trợ kiểm tra xem chứng chỉ còn hiệu lực hay không. Công nghệ OCSP có tác dụng như việc công bố CRL, nhưng tính năng ưu việt hơn hẳn CRL.
- Giao tiếp CA : Module kí số riêng rẽ cho phép CA làm theo nguyên tắc an ninh - tách biệt khỏi mạng công cộng để bảo vệ tối đa khoá bí mật. Điều này khiến cho openCA trở nên an toàn hơn hầu hết các phần mềm CA hiện nay trên thị trường.
Ngoài những tính năng thiết yếu của 1 PKI, OpenCA có nhiều tính năng ưu việt như :
+ Đăng nhập nhập bằng chứng chỉ.
+ Hệ thống quản lý quyền mềm dẻo.
+ Sử dụng được hết các tính năng của X.509 mở rộng.
+ OpenCA là phần mềm mã nguồn mở miễn phí, có sẵn tài liệu chi tiết đầy đủ giúp cho việc tìm hiểu openca dễ dàng hơn.
OpenCA được thiết kế cho một hạ tầng phân tán. Nó có thể không chỉ điều khiển một CA offline và một RA online, mà việc sử dụng chúng còn giúp bạn xây dựng một cấu trúc thứ bậc với nhiều mức khác nhau. OpenCA không phải là một giải pháp nhỏ cho các nghiên cứu vừa và nhỏ. Nó hỗ trợ tối đa cho các tổ chức lớn như các trường đại học, các công ty lớn.
2.4.3. Công nghệ SSL :
SSL là giao thức đa mục đích được thiết kế để tạo ra các giao tiếp giữa hai chương trình ứng dụng trên một cổng dịnh trước (socket 443) nhằm mã hoá toàn bộ thông tin gửi/nhận. Giao thức SSL được hình thành và phát triển đầu tiên năm 1994 bởi nhóm nghiên cứu Netscape dẫn dắt bởi Elgamal và nay đã trở thành chuẩn bảo mật cài đặt trên Internet.
SSL được thiết kế độc lập với tầng ứng dụng để đảm bảo tính bí mật, an toàn và chống giả mạo luồng thông tin qua Internet giữa hai ứng dụng bất kỳ, thí dụ giữa webserver và các trình duyệt khách (browsers), do đó được sử dụng rộng rãi trong nhiều ứng dụng khác nhau trên môi trường Internet.
Toàn bộ cơ chế và hệ thống thuật toán mã hoá sử dụng trong SSL được phổ biến công khai, trừ khoá phiên (session key) được sinh ra tại thời điểm trao đổi giữa hai ứng dụng là ngẫu nhiên và bí mật đối với người quan sát trên mạng máy tính. Ngoài ra, giao thức SSL còn đòi hỏi ứng dụng chủ phải được chứng thực bởi một đối tượng thứ ba (CA) thông qua chứng chỉ điện tử (digital certificate) dựa trên mật mã công khai (ví dụ RSA).
SSL được thiết kế như là một giao thức riêng cho vấn đề bảo mật có thể hỗ trợ cho rất nhiều ứng dụng. Giao thức SSL hoạt động bên trên TCP/IP và bên dưới các ứng dụng tầng cao hơn như là HTTP (HyperText Transfer Protocol), LDAP (Lightweight Directory Access Protocol) hoặc IMAP (Internet Messaging Access Protocol). Hiện nay SSL được sử dụng chính cho các giao dịch trên Web.
SSL cho phép một server có hỗ trợ SSL tự xác thực với một Client cũng hỗ trợ SSL, cho phép client tự xác thực với server, và cho phép cả hai máy thiết lập một kết nối được mã hoá.
- Chứng thực SSL Server : Cho phép client xác thực được sever muốn kết nối. Lúc này, phía trình duyệt sử dụng các kỹ thuật mã hoá công khai để chắc chắn rằng chứng chỉ và publicID của server là có giá trị và được cấp phát bởi một CA (Certificate Authority) trong danh sách các CA đáng tin cậy của client.
- Chứng thực SSL Client : Cho phép server xác thực được client muốn kết nối. Phía server cũng sử dụng các kỹ thuật mã hoá khoá công khai để kiểm tra chứng chỉ của client và publicID là đúng, được cấp phát bởi một CA trong danh sách các CA đáng tin cậy của Server.
- Mã hoá kết nối : Tất cả các thông tin trao đổi giữa client và server được mã hoá trên đường truyền nhằm nâng cao khả năng bảo mật. Điều này rất quan trọng đối với cả hai bên khi có các giao dịch mang tính riêng tư. Ngoài ra tất cả các dữ liệu được đi trên một kết nối SSL đã được mã hoá còn được bảo vệ nhờ cơ chế tự động phát hiện các xáo trộn, thay đổi trong dữ liệu.
Giao thức SSL gồm hai tầng:
Tầng thấp nhất là tầng SSL record Protocol. SSL Record Protocol được sử dụng để đóng gói một vài giao thức ở mức cao hơn. Một trong những giao thức được đóng gói đó là SSL.
Handshake Protocol, giao thức này cho phép sever và client thực hiện việc xác thực lẫn nhau, thoả thuận một thuật toán mã hoá và các khoá mật mã trước khi giao thức ứng dụng gửi hoặc nhận dữ liệu.
2.5. Vai trò của khóa công khai trong thương mại điện tử :
2.5.1. Đối với người dùng :
- Có thể truy cập hệ thống, sử dụng dịch vụ tại bất kỳ nơi nào có Internet.
- Có thể thực hiện những hoạt động thương mại, tài chính, xã hội qua mạng mà vẫn được đảm bảo tính hợp lệ, an toàn
- Chọn lựa những thuật toán mã hoá phù hợp với yêu cầu của ứng dụng.
- Đảm bảo được dịch vụ/máy chủ mình truy cập là hợp lệ.
- Bằng cách sử dụng hệ thống PKI người dùng cảm thấy an tâm bởi vì tất cả các thông tin đều được mã hoá.
2.5.2. Đối với nhà phát triển, cung cấp dịch vụ :
- Dễ dàng xây dựng ứng dụng, phát triển ứng dụng dựa trên nền tảng bảo mật PKI.
- Tất cả các thông tin kiểm tra người dùng có thể được thực hiện trực tuyến nhờ kết nối đến RA hay off-line.
INTERNET
PKI
Người dùng
Thương mại điện tử
Banking
Mua sắm qua mạng
Video Services
- Dễ dàng phát triển ứng dụng kết hợp với các ứng dụng dịch vụ công, ứng dụng thương mại điện tử sẵn có.
Chương 3. CA(CERTIFICATE AUTHORITY)
3.1. Chứng chỉ khoá công khai :
Khi một người (người gửi) thông báo muốn sử dụng kỹ thuật khoá công khai để mã hoá một thông báo và gửi cho người nhận, người gửi cần một bản sao khoá công khai của người nhận. Khi một thành viên bất kỳ muốn kiểm tra chữ ký số - chữ ký số này được thành viên khác sinhh ra, thành viên kiểm tra cần một bản sao khoá công khai của thành viên ký. Chúng ta gọi cả hai thành viên mã hoá thông báo và thành viên kiểm tra chữ ký số - là những người sử dụng khoá công khai.
Khi một giá trị khoá công khai được gửi đến cho một người sử dụng khoá công khai thì không cần thiết phải giữ bí mật giá trị khoá công khai này. Tuy nhiên, người sử dụng khoá công khai phải đảm bảo rằng khoá công khai được sử dụng đúng là dành cho thành viên khác (có thể là người nhận thông báo có chủ định hoặc bộ sinh chữ ký số được yêu cầu). Nếu một kẻ truy nhập có thể dùng một khoá công khai khác thay thế cho khoá công khai hợp lệ, các nội dung của thông báo đã mã hoá có thể bị lộ, những thành viên không chủ định khác sẽ biết được và các chữ ký số có thể bị làm giả. Nói cách khác, cách bảo vệ (được tạo ra từ các kỹ thuật này) bị ảnh hưởng hoàn toàn nếu một kẻ truy nhập có thể thay thế các khoá công khai không xác thực.
Một hệ thống khoá công khai làm việc như sau : Một CA phát hành các chứng chỉ cho những người nắm giữ cặp khoá công khai và khoá riêng. Một chứng chỉ gồm có một giá trị khoá công khai và thông tin dùng để nhận dạng duy nhất chủ thể (subject) của chứng chỉ. Chủ thể của chứng chỉ có thể làm một người, thiết bị, hoặc một thực thế khác có nắm giữ khoá riêng tương ứng (xem hình dưới). Khi một chủ thể của chứng chỉ là một người hoặc một thực thể hợp pháp nào đó, chủ thể thường được nhắc đến như là một thực thể (subscriber) của CA. Các chứng chỉ được CA ký, bằng cách sử dụng khoá riêng của CA.
Thông tin đối tượng
Khoá công khai của đối tượng
Tên CA
Chữ ký CA
Khoá riêng của CA
Sinh chữ ký số
Chứng chỉ khoá công khai dựa trên CA
Một khi các chứng chỉ này được thiết lập, nhiệm vụ của người sử dụng khóa công khai rất đơn giản. Giả thiết rằng, một người sử dụng khoá công khai đã có khoá công khai của CA một cách bí một (ví dụ : Thông qua phân phối khoá công khai thủ công) và người sử dụng khoá công khai tin cậy CA phát hành các chứng chỉ hợp lệ. Nếu người sử dụng khoá công khai cần khoá công khai của một trong các thuê bao của CA này, người sử dụng khoá công khai có thể thu được khoá công khai của một thuê bao bằng cách lấy một bản sao chứng chỉ của thuê bao, lấy ra giá trị khoá công khai, kiểm tra chữ ký của CA có trên chứng chỉ hay không bằng cách sử dụng khoá công khai của CA. Một người sử dụng khoá công khai sử dụng các chứng chỉ như cách trên được coi là một thành viên tin cậy.
“Các chứng chỉ có thể được phát hành mà không cần phải bảo vệ thông qua các dịch vụ an toàn truyền thông để đảm bảo sự tin cẩn xác thực và tính toàn vẹn”.
Lợi ích cơ bản của một hệ thống cấp chứng chỉ là : Một người sử dụng khoá công khai có thể có được một số lượng lớn các khoá công khai của các thành viên khác một cách đáng tin cậy, xuất phát từ thông tin về khoá công khai của một thành viên, đó chính là khoá công khai của CA. Lưu ý rằng một chứng chỉ chỉ hữu ích khi người sử dụng khoá công khai tin cậy CA phát hành các chứng chỉ hợp lệ.
3.2. Xác thực dựa trên chứng chỉ số :
4. Máy dịch vụ dùng chứng chỉ và chữ ký số xác định định danh người dùng
1.Người dùng nhập tên và mật khẩu cho xác thực
2.Máy khách lấy khoá bí mật tạo chữ ký số
5. Máy dịch vụ xác nhận quyền truy nhập vào những tài nguyên nào cho người dùng
3.Máy khách gửi chứng chỉ và chữ ký qua mạng
Chứng chỉ số chứng thực cho máy khách kết nối tới máy dịch vụ
Các bước ở hình trên có sử dụng thêm giao thức bảo mật SSL. Máy khách phải có một chứng chỉ số để cho máy dịch vụ có thể nhận diện. Sử dụng chứng chỉ số để chứng thực được xem là có lợi thế hơn khi dùng mật khẩu. Bởi vì nó dựa trên những gì mà người sử dụng có : Khoá bí mật và mật khẩu để bảo vệ khoá bí mật. Những có một điều cần chú ý là chỉ có chủ của máy khách mới được phép truy nhập vào máy khách và phải nhập mật khẩu để vào cơ sở dữ liệu của chương trình có sử dụng khoá bí mật (mật khẩu này có thể phải nhập lại trong một khoảng thời gian định kỳ cho trước).
Chứng thực dựa trên chứng chỉ số cần phải truy nhập mức vật lý tới các máy cá nhân và mật khẩu. Mã hoá khoá công khai chỉ có thể kiểm tra việc sử dụng một khoá bí mật tương ứng với một khoá khoá công khai trong một chứng chỉ số. Nó không đảm nhận trách nhiệm
Các file đính kèm theo tài liệu này:
- doantt.doc
- DOANCABBV.ppt