Xem mẫu
- Sơ bộ về
CHỨNG THỰC SỐ
VÀ CÁC VẤN ĐỀ LIÊN QUAN
1 BẢN CHẤT CỦA CHỮ KÝ SỐ VÀ QUY TRÌNH THỰC HIỆN .............. 1
1.1 Chữ ký trong đời sống ....................................................................................1
1.2 Hệ mã khoá công khai và việc tạo chữ ký số.................................................2
Nguyên lý hoạt động của Hệ mã khóa công khai ........................................................... 2
Ký điện tử trong hệ mã khóa công khai .......................................................................... 3
1.3 Chữ ký số và vai trò của CA ...........................................................................6
2 ĐẠI CƯƠNG VỀ CHỨNG THỰC SỐ ............................................................ 8
2.1 Khái niệm..........................................................................................................8
2.2 Sử dụng chứng thực số ....................................................................................8
2.3 Nội dung của chứng thực số theo chuẩn X.509 .............................................9
Những nội dung thông tin cơ bản theo chuẩn X.509 .................................................... 10
3 HỆ THỐNG THẨM QUYỀN PHÁT HÀNH CHỨNG THỰC SỐ (CA -
CERTIFICATE AUTHORITY) ..................................................................................11
3.1 Các chức năng có bản....................................................................................11
Cấp phát chứng thực ..................................................................................................... 12
Kiểm tra chứng thực...................................................................................................... 13
3.2 Các mô hình hệ thống....................................................................................14
- 1 BẢN CHẤT CỦA CHỮ KÝ SỐ VÀ QUY TRÌNH
THỰC HIỆN
1.1 Chữ ký trong ₫ời sống
Trong đời sống thường ngày, chữ ký (viết tay) trên một văn bản là một minh chứng
về "bản quyền" hoặc ít nhất cũng là sự "tán đồng, thừa nhận" các nội dung trong
văn bản. Những yếu tố nào làm lên "sức thuyết phục" của nó? Một cách lý tưởng
thì:
1. Chữ ký là bằng chứng thể hiện người ký có chủ định khi ký văn bản.
2. Chữ ký thể hiện chủ quyền của người ký, nó làm cho người ta nhận biết rằng
ai đích thị là người đã ký văn bản.
3. Chữ ký không thể tái sử dụng, tức là nó là phần của văn bản mà “không thể
sao chép” sang các văn bản khác. Nói cách khác, nó chỉ có giá trị ở trong văn
bản được ký và trở thành vô giá trị nếu ở ngoài văn bản đó.
4. Văn bản đã ký không thể thay đổi được.
5. Chữ ký không thể chối bỏ và cũng là thứ không thể giả mạo (người đã ký văn
bản không thể phủ định việc mình đã ký văn bản và người khác không thể tạo
ra chữ ký đó).
Trong cuộc sống đời thường, mọi cái không phải lúc nào cũng diễn ra theo đúng
như mô hình "lý tưởng" nêu trên, nhưng ít nhất thì người ta luôn mong muốn như
vậy. Mong muốn ấy là có cơ sở. Thật vậy, với khả năng kiểm định sát sao, việc
“gian lận” là không phải dễ (người mạo chữ ký có thể đánh lừa được một vài người
nào đó, nhưng không thể qua mắt được những người kiểm định chữ ký chuyên
nghiệp, và trên đầu kẻ gian luôn treo lơ lửng một mối nguy hiểm về việc “bị lật tẩy
bất kỳ lúc nào”).
Trong trào lưu “tin học hóa” các hoạt động xã hội ngày càng rộng rãi, các loại
hình văn bản điện tử đang ngày càng trở nên phổ biến và các giao dịch thông tin
điện tử ngày càng trở nên lấn át các giao dịch giấy tờ truyền thống (số lượng văn
1
- bản phi điện tử ngày càng trở nên ít ỏi). Một vấn đề cấp bách đang được đặt ra là:
liệu chúng ta có thể mang được những nét “đặc trưng lý tưởng” của chữ ký viết tay
(nêu trên) vào "thế giới máy tính" hay không? Nói cách khác, liệu ta có thể tạo ra
(cho mỗi văn bản) một cái gì đó mang các thuộc tính tương tự như chữ ký hay
không?
Xin lưu ý những khó khăn hiển nhiên mà ta sẽ gặp trong thế giới các văn bản
điện tử: các dòng thông tin trên máy tính được sao chép một cách quá dễ dàng, việc
thay đổi nội dung một văn bản điện tử chẳng để lại dấu vết gì về phương diện "tẩy
xoá", hình ảnh của chữ ký tay của một người (dù khó bắt chước đến đâu) cũng dễ
dàng cho "sao - chép" từ văn bản này sang văn bản khác,... Tóm lại, văn bản điện tử
không có được thuộc tính “bút sa gà chết” như văn bản giấy, và do đó không thể hỗ
trợ cho cung cách ký thông thường xưa nay (trên giấy).
Để tạo ra cho mỗi văn bản điện tử một “chữ ký” với các thuộc tính tương tự
như chữ ký trên văn bản giấy, ta cần có một cách tiếp cận hoàn toàn mới, dựa trên
các thành tựu công nghệ mã hóa thông tin hiện đại, như sẽ được giới thiệu trong
phần tiếp theo.
1.2 Hệ mã khoá công khai và việc tạo chữ ký số
Nguyên lý hoạt ₫ộng của Hệ mã khóa công khai
Hệ mã khóa công khai là hệ mật mã được phát minh ra trong những thập kỷ cuối
của thế kỷ vừa qua. Nét khác biệt cơ bản của các hệ mã này so với các hệ mã
truyền thống trước đây là nó sử dụng 2 chìa khóa riêng biệt cho việc lập mã và giải
mã văn bản. Chìa dùng cho việc lập mã có thể được công bố cho mọi người biết
(thường được gọi là chìa công khai), còn chìa dùng cho việc giải mã thì được giữ bí
mật tuyệt đối. Việc biết được chìa khóa lập mã (công khai) không cho phép tính ra
được chìa khóa giải mã (bí mật). Mỗi cá thể k tham gia vào hệ thống được cấp
riêng một cặp chìa khoá (Ek , Dk ) , trong đó Ek là chìa khóa lập mã, còn Dk là chìa
khóa giải mã. Khi mã hóa một văn bản P (bằng chìa khóa lập mã Ek ) ta sẽ được
2
- một văn bản mã ký hiệu là C = Ek (P ) . Văn bản này chỉ có thể được giải mã bằng
chìa khóa Dk (cùng cặp với Ek ), nghĩa là Dk (C ) = Dk (Ek (P )) = P .
Khi một cá thể i nào đó muốn gửi thông điệp M cho đối tác k thì anh ta dùng
chìa khoá lập mã Ek của đối tác k (đã được biết công khai) để mã hóa văn bản và
gửi đi dưới dạng thông điệp mã C = Ek (M ) . Khi đối tác k nhận được thông điệp
này thì dùng chìa khoá giải mã của mình (là Dk ) để giải mã ra theo nguyên lý đã
nêu
Dk (C ) = Dk (Ek (M )) = M .
Các cá thể khác trong hệ thống, nếu nhận được văn bản mã C , thì cũng không thể
nào giải mã ra M , vì họ không có chìa khoá giải mã Dk của cá thể k .
Các nguyên lý vừa trình bày trên đã được cụ thể hoá trong một số hệ mã khoá
công khai được phát minh gần đây. Một trong các hệ mã đầu tiên được phát minh
vào năm 1978 bởi Rivest, Shamir và Adleman (thường được gọi là hệ mã RSA,
xem cụ thể hơn trong phần 4: Cơ sở toán học và các giải pháp kỹ thuật).
Ký ₫iện tử trong hệ mã khóa công khai
Với hệ mã khóa công khai, một quy trình ký văn bản điện tử được thiết lập dựa trên
ý tưởng của hai nhà khoa học Diffie và Hellman:
(1) Người gửi (chủ nhân văn bản) ký văn bản bằng cách mã hoá nó với khoá bí
mật của mình, rồi gửi cho người nhận.
(2) Người nhận văn bản (đã ký) tiến hành kiểm tra chữ ký bằng cách sử dụng
chìa khoá công khai của người gửi để giải mã văn bản. Nếu giải mã thành
công thì văn bản ký là đúng của người gửi.
Giao thức này mang đầy đủ các thuộc tính của thủ tục ký tá thông thường, đã mô tả
ở trên. Thật vậy:
Chữ ký là sản phẩm của người đã chủ động tạo ra nó, tức là người đã dùng
chiếc chìa khoá bí mật của mình để mã hoá văn bản .
3
- Chữ ký cho biết chủ nhân của nó chính là người sở hữu chiếc chìa khóa bí
mật đã được dùng để mã văn bản (kiểm tra bằng cách cho giải mã bằng chìa
khoá công khai của người đó). Không ai làm giả được "chữ ký" vì rằng chỉ có
duy nhất một người có chìa khoá bí mật đã dùng để "ký" (mã hoá).
Chữ ký cho văn bản này không thể "tái sử dụng" cho văn bản khác. Thật vậy,
việc biết chữ ký (văn bản mã) không cho phép tìm ra được chìa khóa bí mật
của người gửi (để có thể ký một văn bản khác).
Văn bản đã ký không thể thay đổi (xuyên tạc) được nội dung. Thật vậy, nếu
đã mở ra để thay đổi thì không thể “ký lại” được nữa, vì không có chiếc chìa
khóa bí mật của “người đã ký" (như đã nói ở trên).
Người ký văn bản không thể thoái thác việc mình “đã ký”, vì ngoài ông ta ra
không còn ai có cái chìa khóa đã được dùng để "ký" văn bản.
Rõ ràng, về mặt logic thì quy trình ký như trên là rất hợp lý. Mọi thành viên tham
gia sử dụng một hệ mã khóa công khai đều có được khả năng ký văn bản điện tử
(bằng chìa khóa bí mật của riêng mình) và kiểm tra chữ ký của những người khác
(bằng chìa khóa công khai mà họ đã công bố).
Tuy nhiên, trong thực tiễn triển khai, mọi người đều biết tốc độ mã hoá của
các hệ mã khoá công khai là vô cùng chậm. Cho nên, việc ký một văn bản dài (như
thông tư, nghị định, văn kiện,...) theo quy trình nêu trên là không khả thi trên thực
tiễn.
Để khắc phục khó khăn này, người ta sử dụng một hàm “chiết xuất” đặc trưng
văn bản. Hàm này nhận giá trị đầu vào là văn bản (độ dài tùy ý) và cho đầu ra là
một dãy số có độ dài xác định, gọi là mã băm (message digest). Hàm chiết xuất có
thuộc tính quan trọng là rất “nhạy" đối với các thay đổi của văn bản, theo đó chỉ
cần một thay đổi cực nhỏ trong văn bản (như thay dấu chấm, dấu phảy,...) cũng sẽ
kéo theo sự thay đổi rõ rệt trong giá trị mã băm của nó. Chính vì vậy mã băm có
tính đặc trưng rất cao, và thường được gọi là đặc trưng văn bản. Để nhận biết sự
toàn vẹn của một văn bản người ta chỉ cần xem đặc trưng của nó có bị thay đổi hay
không. Hai thuộc tính quan trọng khác của hàm chiết xuất là tính một chiều và tốc
4
- độ nhanh. Tính một chiều thể hiện ở chỗ không thể tạo ra được một văn bản có mã
băm (đặc trưng) là một xâu số cho trước, và dó đó không thể mạo ra một “văn bản
giả” có cùng đặc trưng với một văn bản cho trước. Tốc độ nhanh có nghĩa là thời
gian tính đặc trưng cho văn bản là không đáng kể. (Các hàm chiết xuất “đặc trưng”
còn có tên khoa học là hàm băm mật mã, được giới thiệu trong phần 4 Cơ sở toán
học và các giải pháp kỹ thuật).
Rõ ràng, việc đặc trưng văn bản không bị thay đổi cũng đồng nghĩa với việc
bản thân văn bản không bị thay đổi. Từ đây ta có một quy trình ký các văn bản dựa
vào đặc trưng của nó. Theo quy trình này, khi một cá thể A muốn ký một văn bản
P thì cần phải thực hiện các bước sau đây:
1. Tính đặc trưng của văn bản P (bằng hàm chiết xuất có sẵn trên hệ thống);
2. Dùng chìa khoá bí mật của mình để mã hoá dãy số đặc trưng văn bản thu
được ở bước trên. Đặc trưng văn bản sau khi được mã (bằng chìa bí mật của
A) thì được gọi là chữ ký số (của ông A đối với văn bản P );
Tức là tuân theo sơ đồ sau
Dữ liệu Dữ liệu
Hàm băm Giá trị băm Ký (Mã) Chữ ký số
Khoá bí mật
Dễ dàng thấy rằng chữ ký số được tạo ra trong quy trình trên có đầy đủ các
thuộc tính đã nêu trong mục đầu. Thời gian tạo chữ ký được giảm đi rất nhiều và
gần như không phụ thuộc vào độ dài của văn bản. Thật vậy, do thời gian tính đặc
5
- trưng văn bản là không đáng kể, thời gian tạo chữ ký chỉ còn là việc mã hóa đặc
trưng của văn bản (có độ dài như nhau với mọi văn bản, và nhỏ hơn độ dài văn bản
nhiều lần).
Một người nào đó, nhận được văn bản P cùng với chữ ký số đi kèm, muốn tiến
hành kiểm tra thì cần tiến hành các bước sau:
1. Tính đặc trưng của văn bản P (bằng hàm chiết xuất có sẵn trên hệ thống);
2. Giải mã chữ ký số (bằng chìa khoá công khai của ông A) để có một đặc trưng
nữa của P , rồi so sánh nó với đặc trưng thu được ở bước trên. Nếu chúng
khớp nhau thì chứng tỏ văn bản nhận được chính là văn bản đã được ông A ký
và nội dung của nó không bị thay đổi so với khi ký.
Tức là tuân theo sơ đồ sau.
Hàm băm Giá trị băm
Dữ liệu
=?
Chữ ký số Giải mã Giá trị băm
Khoá công khai
1.3 Chữ ký số và vai trò của CA
Như vậy, chữ ký số không phải là một nét vẽ ngoằn ngoèo khó bắt chước (như chữ
ký tay thông thường trên giấy) mà là một dãy số được tạo nên từ đặc trưng của văn
bản bằng phép mã hóa với chìa khóa bí mật của người ký.
6
- So với thủ tục ký thông thường (trên văn bản giấy), thủ tục ký điện tử có những
ưu thế vượt trội. Nếu như trong môi trường văn bản giấy tờ thông thường các thuộc
tính (1-5) của “chữ ký tay” còn phần nào mang tính “lý tưởng” mà chưa hoàn toàn
“hiện thực” thì, ngược lại, các thuộc tính này là “hiển nhiên” đối với các “chữ ký
số” trên môi trường văn bản điện tử. Hơn thế:
Chữ ký số là “chính xác tuyệt đối” (không còn mối e ngại về việc chữ ký
“không giống nhau trong mỗi lần ký”, như khi phải ký bằng tay);
Trong khi việc kiểm định chữ ký viết tay, con dấu giả,... là không đơn giản (vì
thường đòi hỏi phương tiện kỹ thuật đặc biệt) thì chữ ký số có thể được kiểm
định một cách dễ dàng và chính xác (bằng thiết bị luôn có sẵn trong chương
trình). Mọi sự giả mạo, gian lận vì thế đều bị phát hiện tức khắc.
Như vậy, bằng việc triển khai giải pháp ký điện tử ta có thể nói lời kết thúc cho các loại
văn bằng chứng chỉ giả, mở đường cho các dịch vụ giao dịch trực tuyến với độ tin cậy
cao. Tuy nhiên, điều này chỉ có thể đạt được nếu như mỗi người sở hữu đúng cặp chìa
khoá công khai và bí mật của chính mình. Nếu như có một ông B nào đó có thể đánh lừa
được mọi người rằng cặp chìa khoá công khai (mà ông đang có) là của ông A., thì sẽ xảy
ra hiện tương "mạo danh" vô cùng nguy hiểm. Một mặt, ông B sẽ đọc được tất cả các tin
mật mà người khác muốn gửi cho ông A nếu tin được mã bằng chìa khoá công khai của
ông B, và mặt khác ông B có thể thể ký các văn bản "vô tội vạ" và đánh lừa mọi người
rằng ông A đã ký những văn bản đó. Tóm lại, để cho chữ ký số có thể phát huy dược thế
mạnh của mình thì trước hết cần phải có giải pháp xác định một cách chính xác "ai là ai"
trên toàn hệ thống. Một giải pháp như vậy có thể có được bằng việc dùng một "bên thứ
ba đáng tin cậy", một bộ máy trung thực đảm nhận việc cấp phát cho mỗi thực thể
(người, máy tính, phương tiện,...) một định danh duy nhất và gắn cho mỗi định danh một
cặp chì khoá (bí mật - công khai) duy nhất, để rồi vào mọi lúc, mọi nơi bất kỳ ai cũng có
thể thông qua nó để kiểm định xem một chìa khoá công khai nào đó thuộc về thực thể có
định danh nào. Bộ máy trung thực đó còn được gọi là Cơ quan thẩm quyền cấp chứng
thực, gọi tắt là CA (Certificate Authority).
7
- 2 ĐẠI CƯƠNG VỀ CHỨNG THỰC SỐ
2.1 Khái niệm
Trong mật mã học, chứng thực số (còn gọi là chứng thực điện tử) là một chứng
thực sử dụng chữ ký số để gắn một chìa khóa công khai với một thực thể (một cá
nhân, hay một máy chủ, hoặc một công ty...). Nói cách khác, chứng thực số là
phương tiện giúp người ta khẳng định được một chìa khoá công khai nào đó thuộc
về thực thể nào.
Một chứng thực số chuẩn mực thường bao gồm chìa khóa công khai và một số
thông tin về thực thể sở hữu chìa khóa đó (tên, địa chỉ,...). Như vậy, thông tin trên
chứng thực số không chỉ cho biết một chìa khóa công khai nào đó thuộc về ai, ta
còn có thể biết được các thông tin liên quan khác, mà đôi khi cũng rất quan trọng
trong một hệ thống cụ thể, như là danh phận, chức vụ,... của người sở hữu.
Trong một mô hình với hạ tầng khóa công khai (PKI) chuẩn mực, chữ ký trong
chứng thực thuộc về nhà cung cấp chứng thực số (Certificate Authority, viết tắt là
CA). Chữ ký trong chứng thực là sự đảm bảo của người ký về mối liên hệ giữa chìa
khóa công khai và thực thể được chứng nhận. Trong mô hình mạng tín nhiệm (web
of trust), thì chữ ký có thể là của chính thực thể đó hoặc của một thực thể khác.
2.2 Sử dụng chứng thực số
Chứng thực số là tiền đề cho nhiều ứng dụng của mật mã khóa công khai. Đối với
các hệ mã đối xứng (bí mật), việc trao đổi chìa khóa (bí mật) giữa những người sử
dụng trên quy mô rộng là vô cùng khó khăn, hầu như không thể thực hiện được.
Với các hệ mã hóa khóa công khai, người ta có thể thoát ra khỏi khó khăn này.
Trên nguyên tắc, nếu cá nhân A muốn người khác gửi thông tin mật cho mình thì
chỉ cần công bố chìa khóa công khai của chính mình. Bất kỳ ai có được chìa khóa
này đều có thể gửi thông tin mật cho A. Tuy nhiên, khi ấy lại nảy sinh một vấn đề
khác. Thật vậy, nếu chìa khoá công khai của A không được chứng thực, một người
nào đó (D) cũng có khả năng đưa ra một chìa khóa công khai khác và giả mạo rằng
đó là chìa khóa của A. Bằng cách làm như vậy kẻ "mạo danh" này có thể đọc được
8
- một số thông tin mà người khác gửi cho A. Nếu như chìa khoá công khai của A có
trong một chứng thực số (được chứng thực bởi một bên thứ 3, chẳng hạn như là T,
với công nghệ chữ số) thì bất kỳ ai tin tưởng vào T cũng có thể kiểm tra chìa khóa
công khai của A. Nói cách khác, kẻ mạo danh D ắt sẽ bị lật tẩy. Trong mô hình hạ
tầng khóa công khai thì T chính là nhà cung cấp chứng thực số (CA - Certificate
Authority).
Khi áp dụng chứng thực số ở quy mô lớn, có rất nhiều CA cùng hoạt động. Vì
vậy một cá thể A có thể không quen thuộc (không đủ tin tưởng) với CA của một cá
thể B khác. Do đó chứng thực của B có thể phải bao gồm chữ ký của CA ở mức cao
hơn. Quá trình này dẫn đến việc hình thành một mạng lưới quan hệ phức tạp và
phân tầng giữa các CA. Trong tiêu chuẩn X.509 về hệ thống hạ tầng khóa công
khai, mạng lưới CA tạo thành cây từ trên xuống với gốc là một CA trung tâm mà
không cần được chứng thực bởi một bên thứ 3 nào khác.
Cũng giống như giấy CMND, một chức thực điện tử cũng có thời hạn lưu hành
nhất định, và có thể bị thu hồi trước thời hạn. Một chứng thực số có thể bị thu hồi
nếu như chìa khoá bí mật (cùng cặp với chìa công khai của nó) đã bị lộ, hoặc mối
liên hệ giữa khóa công khai và chủ thể sở hữu đã thay đổi. Điều này có thể xảy ra ở
mức độ không thường xuyên, nhưng người sử dụng phải luôn kiểm tra tính pháp lý
của chứng thực số mỗi khi sử dụng. Việc kiểm tra có thể thực hiện bằng cách so
sánh chứng thực với danh sách các chứng thực bị thu hồi (Certificate Revocation
List - CRL). Việc đảm bảo danh sách này luôn chính xác và được cập nhật kịp thời
là chức năng cơ bản của hạ tầng khóa công khai tập trung. Tuy nhiên công việc này
đòi hỏi nhân công và tiền bạc nên cần được đầu tư thích hợp. Để thực sự đạt hiệu
quả, danh sách này phải luôn sẵn sàng cho bất kỳ ai cần đến vào bất kỳ thời điểm
nào tại mọi nơi.
2.3 Nội dung của chứng thực số theo chuẩn X.509
Tiêu chuẩn về chứng thực số dựa trên cơ sở hạ tầng khóa công khai phổ biến nhất
hiện này là X.509 được ban hành bởi ITU-T (International Telegraph Union -
9
- Telecom, Tổ chức viễn thông quốc tế (về lĩnh vực viễn thông), thuộc Liên hợp
quốc).
Những nội dung thông tin cơ bản theo chuẩn X.509
Version: Chỉ định phiên bản của
chứng nhận X.509.
Version
Serial Number: Số loạt phát hành
Serial Number
được gán bởi CA. Mỗi CA nên gán
một mã số loạt duy nhất cho mỗi Signature Algorithm
giấy chứng nhận mà nó phát hành. Issuer Name
Signature Algorithm: Thuật toán Validity Period
chữ ký chỉ rõ thuật toán mã hóa
Subject Name
được CA sử dụng để ký giấy chứng
nhận. Trong chứng nhận X.509 Public Key
thường là sự kết hợp giữa thuật toán Issuer Unique ID
băm (chẳng hạn như MD5) và thuật
Subject Unique ID
toán khóa công cộng (chẳng hạn như
RSA).
Extensions
Issuer Name: Tên tổ chức CA phát Signature
hành chứng thực.( Theo chuẩn X.500
thì gọi là Tên phân biệt - X.500 Distinguised Name, X.500 DN). Hai CA khác
nhau không được sử dụng cùng một tên phát hành.
Validity Period: gồm hai giá trị chỉ định khoảng thời gian mà giấy chứng
nhận có hiệu lực: not-before và not-after. Not-before: thời gian chứng nhận
bắt đầu có hiệu lực; Not-after: thời gian chứng nhận hết hiệu lực.
Các giá trị thời gian này được đo theo chuẩn thời gian Quốc tế, chính xác
đến từng giây.
10
- Subject Name: Tên chủ thể được cấp chứng thực.
Public Key: Chìa khoá công khai của chủ thể được cấp chứng thực.
Issuer Unique ID&Subject Unique ID: Được đưa vào sử dụng từ X.509
phiên bản 2, dùng để xác định hai tổ chức CA hoặc hai chủ thể khi chúng có
cùng DN. RFC 2459 đề nghị không nên sử dụng hai trường này.
Extensions: Chứa các thông tin bổ sung cần thiết mà người thao tác CA
muốn đặt vào chứng nhận. (Mới được đưa ra trong X.509 phiên bản 3).
Signature: chữ ký số được tổ chức CA áp dụng.
Tổ chức CA tạo chữ ký bằng khóa bí mật với kiểu thuật toán mã được quy
định trong trường thuật toán chữ ký.
Chữ ký bao gồm tất cả các phần khác trong giấy chứng nhận. (Qua đó thể
hiện CA chứng nhận cho tất cả các thông tin khác trong giấy chứng thực, chứ
không chỉ cho tên chủ thể và khóa công khai).
3 HỆ THỐNG THẨM QUYỀN PHÁT HÀNH CHỨNG
THỰC SỐ (CA - CERTIFICATE AUTHORITY)
3.1 Các chức năng có bản
CA
Cấp phát Tìm kiếm
chứng thực chứng thực
Tái tạo Kiểm tra
chứng thực chứng thực
11
Hủy
chứng thực
- Cấp phát chứng thực
Cấp phát chứng thực là nhiệm vụ đầu tiên của một CA. Công việc này được thực
hiện trên cơ sở một yêu cầu được đưa ra từ phía người dùng. Trong các hệ thống
không lớn lắm, các yêu cầu này được gửi trực tiếp cho CA để trực tiếp xử lý , còn
với các hệ thống lớn thường có thêm một khâu trung gian (đăng ký - registration)
nhận yêu cầu từ người dùng chuyển cho CA và nhận chứng thực từ CA trả về cho
người dùng). Để tạo ra một chức thực số, CA phải sinh được một cặp chìa khoá phi
đối xứng có độ an toàn cao để gán cho chủ thể (người yêu cầu) và tuân thủ một số
quy định nghiêm ngặt trong việc cấp phát (ví dụ tránh để xẩy ra nhầm lẫn cấp một
chứng thực cho hai chủ thể khác nhau, hoặc tránh dùng hai định danh quá giống
nhau có thể dẫn đến khả năng mạo danh). Những quy định cụ thể cần lưu ý khi phát
hành chứng thực được mô tả trong tài liệu kỹ thuật kèm theo. Ở đây ta chỉ nêu vài
nét đại cương để hiểu được bản chất vấn đề. Thông tin ghi trong chứng thực là
những thông tin cơ bản nhất về chủ thể và cơ quan cấp chứng thực (như trong giấy
CMND), ngoài ra có một thông tin mang tính đặc thù cho chứng thực số (vốn
không có trong CMND thông thường) đó là chìa khoá công khai. Đây chính là chìa
khóa mà người khác dùng để kiểm tra chữ ký số của chủ nhân mang chứng thực.
Để không thể xảy ra khả năng "mạo nhận" chìa khoá (như đã thấy với hiện tượng
mạo danh), người phát hành chứng thực (tức là CA) sẽ dùng chìa khoá bí mật của
mình ký lên cụm thông tin có trong chứng thực (trong đó có tên chủ thể cùng chìa
khoá công khai). Chữ ký được đặt ngay dưới cụm thông tin đã được ký để người
khác dễ dàng kiểm tra (xem sơ kèm theo).
12
- Sơ đồ tạo chứng thực
Tên chủ thể
Thuật
Khoá công khai toán băm
Mã băm
(Thông tin khác)
Mã hoá
Chứng thực Khoá bí mật
của CA
theo X509
Tên chủ thể Chữ ký số
Khoá công khai
(Thông tin khác)
Chữ ký số
Kiểm tra chứng thực
Để kiểm tra một chứng thực của người dùng (User), người ta cần phải có được
thông tin chính xác về chìa khoá công khai của CA. Tốt nhất là lấy từ trong Chứng
thực số của chính CA. Người ta dùng chìa khoá này để giải mã phần "chữ ký số"
có trong chứng thực của người dùng rồi lấy kết qyuar tìm được đem so với mã băm
của phần thông tin công khai trong chứng thực số (tức là phần còn lại từ chứng thực
số sau khi đã bỏ đi phần "chữ ký số".
13
- Sơ đồ kiểm tra chứng thực
Chứng thực của Chứng thực của
User theo X509 CA theo X509
Tên chủ thể Tên chủ thể
Khoá công khai Khoá công khai
(Thông tin khác) (Thông tin khác)
Chữ ký số Chữ ký số
Khoá công
khai của CA
Chữ ký số Giá trị băm
Giải mã
Thông tin về User =?
Tên chủ thể
Giá trị băm
Khoá công khai
Hàm băm
(Thông tin khác)
Các chức năng còn lại của CA mang tính kỹ thuật thuần tuý, cho nên sẽ được đề
cập trong tài liệu kỹ thuật.
3.2 Các mô hình hệ thống
Trong hệ thống có nhiều CA ùng hoạt động thì chúng có thể được kết nối với nhau
theo một trong 3 mô hình dưới đây. Mô hình mạng thường chỉ được áp dụng cho
các dịch vụ chứng thực trên môi trường mạng web. Hai mô hình còn lại có cấu trúc
đơn giản và do vậy có độ tin cậy và an toàn cao. Mô hình tập trung thường được
dùng cho các cơ quan, doanh nghiệp độc lập với quy mô vừa phải, còn mô hình
14
- mạng phân cấp có thể áp dụng cho các hệ thống hành chính lớn. Về bản chất đây là
sự "tổng hợp" của các mô hình tập trung cỡ vừa phải.
Mô hình mạng web
Mô hình tập trung
CA trung öông Mô hình phân cấp
CA chi nhaù nh CA chi nhaùnh
CA CA CA CA
Ngöôøi söû duïng
15
nguon tai.lieu . vn