Chứng thực thực thể là gì

XÁC THỰC THỰC THỂ BẰNG CHỮ KÝ SỐ

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây  (483.85 KB, 15 trang )

ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ
 
BÁO CÁO
XÁC THỰC THỰC THỂ BẰNG CHỮ KÝ SỐ
Môn học : Mật mã và an toàn dữ liệu
Giảng viên : PGS.TS. Trịnh Nhật Tiến
Học viên :

Nguyễn Đức Thọ
Mã học viên: 13025182
Hà Nội  2014
1
Mục lục
Mục lục 2
I/ Giới thiệu về xác thực thực thể (Entity Authentication) 3
1.Khái niệm xác thực thực thể 3
2.Các phương pháp xác thực thực thể 3
II/ Phương pháp xác thực thực thể bằng chữ ký số 4
1.Giới thiệu về chữ ký số 4
2.Sơ đồ thực hiện chữ ký số 4
3.Phân loại chữ ký số 6
4.Xác thực thực thể bằng chữ ký số 7
4.1Loại 1: Không sử dụng chứng thư số (digital certificate) 7
4.2Loại 2: có sử dụng chứng thư số (digital certificate) 8
III/ Chương trình minh họa xác thực thực thể bằng chữ ký số 10
1.Ký thông điệp và kiểm tra chữ ký không sử dụng chứng thư số 10
2.Ký thông điệp sử dụng chứng thư số 12
2
I/ Giới thiệu về xác thực thực thể (Entity Authentication)
1. Khái niệm xác thực thực thể


Xác thực thực thể (hay Định danh thực thể) là xác thực
định danh của một đối tượng tham gia trong giao thức truyền
tin. Thực thể hay đối tượng có thể là người dùng, thiết bị đầu
cuối, hay ứng dụng tham gia vào giao thức.
2. Các phương pháp xác thực thực thể
Có nhiều phương thức xác thực thực thể, và thường
được chia làm các loại xác thực thực thể bao gồm:
a. Xác thực dựa trên thực thể Biết cái gì: Ví dụ như biết mật
khẩu, định danh cá nhân, giao thức định danh,  để truy
cập hệ thống. Việc xác thực dựa trên Biết cái gì thường
được dùng trong giao thức định danh bằng cơ chế hỏi đáp.
b. Xác thực dựa trên thực thể Sở hữu cái gì: Ví dụ thực thể
sở hữu khóa bí mật để thực hiện ký điện tử, hoặc sở hữu
những thiết bị xác thực thực như thẻ từ (để truy cập vào
hệ thống, hoặc vào văn phòng), sở hữu thẻ tín dụng
(credit card) để xác thực thực thể trong giao dịch thanh
toán, hoặc sở hữu smart card trong các giao dịch.
c. Xác thực dựa trên thực thể Thừa hưởng cái gì: Ví dụ
thực thể được thừa hưởng chữ ký viết tay, dấu vân tay,
giọng nói, mống mắt.
3
II/ Phương pháp xác thực thực thể bằng chữ ký số
1. Giới thiệu về chữ ký số
Chữ ký số là sơ đồ toán học để kiểm tra tính xác thực
của tài liệu hoặc thông điệp gửi bởi một ngươi gửi đã biết.
Một chữ ký số hợp lệ sẽ giúp người nhận khẳng định tài liệu
được tạo bởi một người gửi cụ thể (là người sở hữu chữ ký
số), và người gửi không thể phủ nhận việc đã gửi tài liệu,
đồng thời khẳng định tài liệu đã không bị thay đổi trong quá
trình chuyển từ người gửi tới người nhận.

Chữ ký số ngày nay được sử dụng rộng rãi trong các
giao dịch tài chính, trong việc phân phối phần mềm và các nội
dung điện tử cũng như trong các loại giao dịch đòi hỏi yếu tố
xác thực chủ thể và không thể chối cãi, hoặc các giao dịch đòi
hỏi cao về tính toàn vẹn dữ liệu.
2. Sơ đồ thực hiện chữ ký số
Sơ đồ ký số là bộ năm (P, A, K, S, V ), trong đó:
P là tập hữu hạn các văn bản có thể.
A là tập hữu hạn các chữ ký có thể.
K là tập hữu hạn các khoá có thể.
S là tập các thuật toán ký.
V là tập các thuật toán kiểm thử.
Với mỗi khóa k  K, có thuật toán ký Sig
k
 S, Sig
k
: P
A, có thuật toán kiểm tra chữ ký Ver
k
 V, Ver
k
: P × A {đúng,
sai}, thoả mãn điều kiện sau với mọi x  P, y  A:
Ver
k
(x, y) = Đúng, nếu y = Sig
k
(x)
Ver
k

(x, y) = Sai, nếu y  Sig
k
(x)
4
Trong nhiều trường hợp, khi kích thước thông điệp khá
lớn, việc ký số trên từng bit dữ liệu của tài liệu gốc sẽ dẫn tới
kích thước chữ ký quá lớn, dẫn đến thời gian ký thông điệp và
kiểm tra thông điệp kéo dài, cũng như tốn dung lượng lưu trữ
và tốn thời gian truyền chữ ký tới người nhận, do vậy với các
chữ ký không khôi phục thông điệp, người ta có thể ký trên
bản đại diện của thông điệp.
Sơ đồ ký số trên đại diện thông điệp thực hiện như sau:
Chú ý:
o Người ta thường dùng hệ mã hóa khóa công khai để lập
Sơ đồ chữ ký số. Ở đây khóa bí mật dùng làm khóa ký,
khóa công khai dùng làm khóa kiểm tra chữ ký.
5
o Ngược lại với việc mã hóa, dùng khóa công khai để lập mã,
dùng khóa bí mật để giải mã. Điều này là hoàn toàn tự
nhiên, vì ký cần giữ bí mật nên phải dùng khóa bí mật để
ký. Còn chữ ký là công khai cho mọi người biết, nên họ
dùng khóa công khai để kiểm tra.
Bài toán xác thực thực thể dùng chữ ký số:
Làm sao khẳng định được khóa công khai b (và
khóa bí mật a tương ứng) đúng là thuộc sỡ hữu của
thực thể U, từ đó việc sử dụng khóa công khai b để
kiểm tra chữ ký số đã ký trên thông điệp bởi khóa bí
mật a mới có ý nghĩa.
3. Phân loại chữ ký số
Có nhiều loại chữ ký tùy theo cách phân loại.

Cách 1: Phân loại chữ ký theo khả năng khôi phục
thông điệp gốc.
1) Chữ ký có thể khôi phục thông điệp gốc:
Là loại chữ ký, trong đó người nhận có thể khôi
phục lại được thông điệp gốc, đã được ký bởi chữ ký
này. Do vậy người gửi chỉ cần gửi thông điệp đã được ký,
người nhận sẽ khôi phục được thông điệp và kiểm tra chữ
ký của người gửi.
Ví dụ: Chữ ký RSA là chữ ký khôi phục thông điệp.
2) Chữ ký không thể khôi phục thông điệp gốc:
Là loại chữ ký, trong đó người nhận không thể khôi
phục lại được thông điệp gốc, đã được ký bởi chữ ký
này. Với loại chữ ký này, người gửi sẽ gửi cả thông điệp và
chữ ký đã ký vào thông điệp.
6
Ví dụ: Chữ ký Elgamal là chữ ký không thể khôi phục.
Cách 2: Phân loại chữ ký theo mức an toàn.
1) Chữ ký không thể phủ nhận:
Để tránh việc chối bỏ chữ ký hay nhân bản chữ ký
để sử dụng nhiều lần, người gửi chữ ký cũng tham gia trực
tiếp vào việc kiểm thử chữ ký. Điều đó được thực hiện
bằng một giao thức kiểm thử, dưới dạng một giao thức mời
hỏi và trả lời.
Ví dụ: Chữ ký không phủ định (Chaum - van Antverpen).
2) Chữ ký một lần:
Là loại chữ ký mà Khóa ký chỉ dùng 1 lần trên 1 tài
liệu.
Ví dụ: Chữ ký một lần Lamport. Chữ ký Fail - Stop (Van
Heyst & Pedersen).
Cách 3: Phân loại chữ ký theo ứng dụng đặc trưng.

1) Chữ ký mù (Blind Signature).
2) Chữ ký nhóm (Group Signature).
3) Chữ ký bội (Multy Signature).
4) Chữ ký mù nhóm (Blind Group Signature).
5) Chữ ký mù bội (Blind Multy Signature).
4. Xác thực thực thể bằng chữ ký số
4.1 Loại 1: Không sử dụng chứng thư số (digital
certificate)
Với loại giao dịch thực hiện xác thực thực thể không sử dụng
chứng thư số, người nhận coi như đã biết đúng người gửi là ai,
và có public key tin rằng là public key của người gửi.
7
Việc ký và xác thực thực thể thực hiện theo sơ đồ ký số như
sau:
4.2 Loại 2: có sử dụng chứng thư số (digital certificate)
Với việc phát triển ngày càng mạnh mẽ của Internet và các giao
dịch điện tử, việc xác thực thực thể tham gia vào giao dịch là vô
cùng quan trọng. Mô hình xác thực thực thể sử dụng chữ ký số
trong giao dịch, người gửi sẽ dùng khóa bí mật của mình để ký
số vào thông điệp trong giao dịch, và người nhận sử dụng khóa
công khai của người gửi để kiểm tra chữ ký số đã ký vào thông
điệp.
Tuy nhiên, một trong các vấn đề cần giải quyết trong việc xác
thực thực thể là đảm bảo khóa công khai đúng là thuộc sở hữu
của người gửi, từ đó việc sử dụng khóa công khai để kiểm tra
8
thông điệp đã được ký bởi khóa bí mật tương ứng mới có ý
nghĩa.
Ví dụ:
U và V thực hiện trao đổi thông tin, U gửi thông điệp kèm theo

chữ ký của U trên thông điệp để V nhận. Khi nhận thông điệp
và chữ ký, V sẽ lấy public key b của U để kiểm tra chữ ký. Vấn
đề là làm sao V có thể tin tưởng được b đúng là public key của
U chứ không phải là public key của kẻ mạo danh U ?
Để chứng thực cho một chìa khóa công khai b thuộc sở hữu của
U, trong thực tế người ta dựa vào mô hình hạ tầng quản lý khóa
công khai (Public Key Infrastructure  PKI). Theo mô hình này,
sẽ có các cơ quan chứng thực (Certificate Authorities - CA, hay
còn gọi Trust Authorities - TA) là đơn vị trung gian, tin cậy để
tạo và cấp cặp khóa bí mật/công khai cho các bên tham gia giao
dịch. Mỗi bên tham gia giao dịch được CA cấp một chứng chỉ số
(Digital Certificate) tương tự như việc cơ quan công an cấp giấy
chứng minh thư cho mọi người để chứng nhận tên tuổi, địa chỉ,
ngày tháng năm sinh của người được cấp.
Các thông tin chứa trong Digital Certificate bao gồm:
- Định danh của người sở hữu chứng chỉ số.
- Public key của người sở hữu chứng chỉ số.
- Thời gian hiệu lực của chứng chỉ số.
- Chữ ký số của cơ quan cấp phát chứng chỉ số.
Chứng thư số là thông tin công khai, khi U giao dịch với V,
chứng thư số của U sẽ được gửi kèm với chữ ký số và thông
điệp. V có thể tin tưởng b đúng là khóa công khai của U và
dùng b để kiểm tra chữ ký số.
9
Thực tế, các đơn vị cung cấp chứng thư số có thể có ủy quyền
cho các đơn vị khác cấp chứng thư, việc tổ chức cấp phát chứng
thư hoạt động theo hình cây. Đơn vị cấp phát gốc gọi là trusted
Root CA, các đơn vị cấp phát được ủy quyền bởi Root CA sẽ tạo
nên chuỗi tín nhiệm cho việc chứng thực hình cây, với gốc là
Root CA.

Với sự tham gia của các đơn vị cung cấp hạ tầng khóa công
khai, việc chứng nhận thực thể tham gia giao dịch được thực
hiện với sự đảm bảo của đơn vị cung cấp hạ tầng khóa công
khai. Hiện tại có nhiều đơn vị cung cấp dịch vụ chứng thực số
như VeriSign, GlobalSign, Thawte, Entrust, Geocerts, . Các
trình duyệt web phổ biến (Internet Explorer, Firefox, Chrome,
Safari, Opera) cũng như các ứng dụng hỗ trợ chữ ký số
(Microsoft Words, Excels,) đã đưa sẵn các nhà cung cấp dịch
vụ chữ ký số này thành các trusted root.
III/ Chương trình minh họa xác thực thực thể bằng chữ ký
số
1. Ký thông điệp và kiểm tra chữ ký không sử dụng
chứng thư số
Sử dụng chương trình mã nguồn mở Cryptophane
- Địa chỉ download chương trình:
http://code.google.com/p/cryptophane/downloads/list
- Địa chỉ download mã nguồn của chương trình (bản copy đã
gửi kèm file báo cáo):
http://code.google.com/p/cryptophane/source/checkout
- Các tính năng của chương trình liên quan tới chữ ký số:
10
o Sinh ra cặp private/public key. Public key có thể xuất
thành file để gửi cho mọi người phục vụ việc kiểm tra
chữ ký số ký bởi private key.
o Nhập public key của người khác để kiểm tra chữ ký số
o Thực hiện ký vào file, với các tùy chọn: file được ký
bao gồm cả file gốc và chữ ký, hoặc chữ ký riêng, file
gốc riêng.
11
o Kiểm tra chữ ký của người gửi, sử dụng public key

(cần import public key trước) và file dữ liệu được ký
(nếu để file riêng, chữ ký riêng khi thực hiện ký).
2. Ký thông điệp sử dụng chứng thư số
Sử dụng chứng thư số được cấp bởi Root CA GlobalSign
để xác thực thực thể, chứng thư số gửi kèm có chứa
private key để thực thể (là chủ sở hữu chứng thư số)
12
thực hiện ký tài liệu, và khi gửi cho người nhận chứng
thư có kèm theo public key và thông tin về đơn vị cấp
phát chứng thư để xác thực thực thể.
- Chữ ký có thể được kiểm tra bởi người nhận bất kỳ có tin
tưởng Root CA GlobalSign.
- Thông tin về chứng thư: tên người được cấp, đơn vị cấp,
thời gian hiệu lực, loại mã hóa,  được đính kèm trong
chứng thư số. Như vậy thực thể tham gia vào giao dịch được
xác thực bằng đơn vị cung cấp chứng thư số.
13
- Chữ ký số có thể ứng dụng để ký trong các ứng dụng hỗ trợ
chữ ký số phổ biến như Words, Excels, PowerPoint hoặc
Email Outlook để đảm bảo tính toàn vẹn dữ liệu cũng như
xác nhận nguồn gốc của dữ liệu. Khi tài liệu hoặc email được
ký, có biểu tượng chữ ký số bên dưới tài liệu. Người nhận có
thể bấm vào đó và xem thông tin chi tiết về chữ ký được sử
dụng để ký tài liệu.
14
15