Tải bản đầy đủ (.pdf) (13 trang)

Tổng hợp đề thi môn An toàn an ninh mạng (phần 2)

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 (516.13 KB, 13 trang )

DETHISO1_K50MTT
Câu 1. Hệ thống xác thực Kerberos (1 điểm)
Một người dùng trên client C thuộc phân hệ Kerberos A muốn truy nhập vào một server dịch vụ V rem
thuộc phân hệ Kerberos B (rem là viết tắt của từ remote).
a. (0,5 điểm)
Hãy mô tả cấu trúc của thẻ cấp thẻ mà server cấp thẻ của phân hệ A gửi cho người dùng trên client C
để truy cập vào server cấp thẻ của phân hệ B. Giải thích rõ các ký hiệu được sử dụng.
b. (0,5 điểm)
Hãy mô tả cấu trúc của dấu xác thực mà người dùng trên client C gửi cho server cấp thẻ của phân hệ
B để xin cấp thẻ truy nhập vào server dịch vụ Vrem. Giải thích rõ các ký hiệu được sử dụng.
Câu 2. Dịch vụ xác thực X.509 (1 điểm)
Xét thủ tục xác thực ba chiều sau đây:
A  B : A{rA, IDB}
B  A : B{rB, IDA, rA}
A  B : A{rB}
Trong đó,
IDA là định danh của A
IDB là định danh của B
rA là một giá trị ngẫu nhiên do A sinh ra, được đảm bảo là duy nhất trong khoảng thời gian từ t1 là
thời điểm rA được sinh ra đến t2 là thời điểm rA hết hạn, A lưu lại các thời điểm t1 và t2 cùng với
giá trị rA trong bộ nhớ cho đến thời điểm hết hạn t2 thì xóa đi tất cả những thông tin đó
rB là một giá trị ngẫu nhiên do B sinh ra, được đảm bảo là duy nhất trong khoảng thời gian từ t3 là
thời điểm rB được sinh ra đến t4 là thời điểm rB hết hạn, B lưu lại các thời điểm t3 và t4 cùng với
giá trị rB trong bộ nhớ cho đến thời điểm hết hạn t4 thì xóa đi tất cả những thông tin đó
Giải thích bằng cách nào thủ tục trên phát hiện được hình thức tấn công lặp lại.
Câu 3. Chương trình PGP (2 điểm)
Xét mô hình tin cậy của chương trình PGP. Biết hệ số X = 1, có nghĩa là một khóa công khai chỉ cần
được ký bởi một người có độ tin cậy hoàn toàn (owner trust = complete) sẽ có tính hợp lệ là hoàn toàn
(key legitimacy = complete). Đánh giá tính hợp lệ của khóa công khai của Alice trong các trường hợp
sau và giải thích:
a. (1 điểm)


Trong vòng khóa công khai của bạn, bạn có một khóa công khai là khóa công khai của Alice. Khóa
công khai của Alice được ký bởi Bob. Alice là một người mà bạn tin cậy hoàn toàn. Tuy nhiên, bạn
không có khóa công khai của Bob trong vòng khóa công khai.


b. (1 điểm)
Trong vòng khóa công khai của bạn, ngoài khóa công khai của bản thân bạn, bạn có ba khóa công
khai khác: khóa công khai của Alice, khóa công khai của Bob, và khóa công khai của Chris. Khóa
công khai của Alice được ký bởi Bob. Khóa công khai của Bob được ký bởi Chris. Chris là một
người mà bạn tin cậy hoàn toàn và khóa công khai của Chris cũng được bạn ký trực tiếp.

DETHISO1_K53MTT
Câu 3. Phân phối khóa và xác thực người dùng (2 điểm)
Một hệ thống phân tán bao gồm các server dịch vụ và nhiều người dùng trên các trạm làm việc client
khác nhau. Người dùng muốn truy nhập vào server dịch vụ cần được xác thực dựa trên mật khẩu. Chức
năng xác thực người dùng và kiểm tra quyền truy nhập không được giao cho từng server dịch vụ riêng
rẽ thực hiện mà được quản lý tập trung thông qua một server xác thực (AS) và một server cấp thẻ (TGS).
Server xác thực biết mật khẩu của tất cả người dùng. Server cấp thẻ biết quyền truy nhập của mỗi người
dùng đối với từng server dịch vụ. Mô hình xác thực của hệ thống là như sau :
(i) Mỗi lần người dùng đăng nhập vào hệ thống
(1) C  AS : IDC ║ IDtgs
(2) AS  C : EKC[Thẻtgs]
(ii) Mỗi lần người dùng yêu cầu một server dịch vụ
(3) C  TGS : IDC ║ IDV ║ Thẻtgs
(4) TGS  C : ThẻV
(iii) Mỗi lần người dùng truy nhập vào server dịch vụ đã yêu cầu
(5) C  V : IDC ║ ThẻV
Thẻtgs = EKtgs[IDC ║ ADC ║ IDtgs ║ TS1 ║ Hạn1]
ThẻV = EKV[IDC ║ ADC ║ IDV ║ TS2 ║ Hạn2]
Trong đó, C là trạm làm việc được người dùng sử dụng, IDC là định danh của người dùng trên máy C,

IDtgs là định danh server cấp thẻ, V là server dịch vụ người dùng muốn truy nhập, IDV là định danh
server dịch vụ, Thẻtgs là thẻ cấp thẻ cho phép người dùng truy nhập vào server cấp thẻ TGS, ThẻV là thẻ
dịch vụ cho phép người dùng truy nhập vào server dịch vụ V, ADC là địa chỉ mạng của máy C, KC là
khóa tương ứng với mật khẩu của người dùng trên máy C, Ktgs là khóa bí mật dùng chung giữa AS và
TGS, KV là khóa bí mật dùng chung giữa TGS và V, TS1 và TS2 là các nhãn thời gian cho biết thời điểm
Thẻtgs và ThẻV được tạo ra, Hạn1 và Hạn2 là các thời hạn cho biết các thẻ tương ứng có giá trị trong
bao lâu.
a. (1 điểm)
Mô tả hai tình huống theo đó một địch thủ không có mật khẩu hay khóa KC của người dùng IDC vẫn
giả mạo thành công người dùng này để được server cấp thẻ cấp cho ThẻV.


b. (0,5 điểm)
Trong mỗi tình huống nêu trên, sau khi đã lấy được ThẻV , địch thủ làm thế nào để được server dịch
vụ coi là người dùng hợp lệ và được phép truy nhập vào server dịch vụ?
c. (0,5 điểm)
Giải thích hình thức tấn công mật khẩu đối với hệ thống đã cho.

Câu 4. An toàn mức giao vận (3 điểm)
Trong một ứng dụng Web, hai bên client và server sử dụng giao thức bắt tay trong chuỗi giao thức SSL
để xác thực lẫn nhau và thỏa thuận các tham số an ninh (giải thuật và khóa). Giả sử phương pháp trao
đổi khóa được client và server thống nhất sử dụng là Diffie-Hellman trong đó server có cặp khóa riêng
và khóa công khai Diffie-Hellman cố định (khóa công khai được chứng thực), còn client sinh ra cặp khóa
riêng và khóa công khai Diffie-Hellman một cách tức thời (khóa công khai không được chứng thực)
nhưng có một cặp khóa riêng và khóa công khai RSA từ trước với khóa công khai đã được chứng thực.
a. (1,5 điểm)
Vẽ sơ đồ trao đổi thông báo 4 giai đoạn giữa client và server trong giao thức bắt tay SSL nêu trên
theo cách an toàn nhất có thể.
b. (1,5 điểm)
Với mỗi thông báo tùy chọn (tức những thông báo không phải đối với bất kỳ phương pháp trao

đổi khóa nào cũng được gửi) và thông báo client_key_exchange, hãy chỉ ra nó có những tham số
cụ thể gì.
Câu 5.An toàn thư điện tử (2,5 điểm)
Chương trình PGP của một người dùng A lưu giữ vòng khóa công khai có các trường Public Key, User
ID, Owner Trust, và Signatures như sau:
Public Key

PUA

PUB

PUC

PUD

PUE

PUF

PUG

PUH

User ID

A

B

C


D

E

F

G

H

Hoàn
toàn

Một
phần

Hoàn
toàn

Một
phần

Một
phần

Không
tin cậy

Tin cậy


A

A

C

C, D

B

C, F

G, I

Owner
Trust
Signatures

Tột
bậc
-

Tính hợp lệ của khóa công khai (Key Legitimacy) được PGP tính theo các quy tắc sau:







Khóa công khai của bản thân người dùng A là hợp lệ.
Nếu một khóa công khai có ít nhất một chữ ký có độ tin cậy (Signature Trust) là tột bậc thì nó hợp lệ.
Nếu không, tính hợp lệ của khóa công khai được tính bằng tổng trọng số độ tin cậy của các chữ ký. Trọng
số 1 được gán cho các chữ ký có độ tin cậy hoàn toàn. Trọng số 1/2 được gán cho các chữ ký có độ tin cậy
một phần. Nếu tổng trọng số đạt tới hoặc vượt ngưỡng là 1 thì khóa công khai được xác định là hợp lệ.
Trong tất cả những trường hợp còn lại, khóa công khai được coi là không hợp lệ. Vẽ mô hình tin cậy PGP
tương ứng.


DETHISO2_K49MTT
Câu 6. Các ứng dụng xác thực (2 điểm)
Xét dịch vụ xác thực X.509.
a. (1 điểm)
Cho một mô hình phân cấp các CA với các chứng thực lẫn nhau được mô tả như hình vẽ dưới đây.
Một người dùng A có chứng thực do S cấp. Một người dùng B có chứng thực do U cấp. Hãy
mô tả bằng cách nào A xác minh được chứng thực của B.

b.

(1 điểm)

Giả sử một trọng tài cần phân xử một tranh chấp giữa một người mua và một nhà cung cấp. Nhà
cung cấp đưa ra các bằng chứng cần thiết bao gồm đơn hàng được ký bởi người mua, chứng
thực khóa công khai tương ứng của người mua và danh sách các chứng thực bị thu hồi, tất cả
đều được ký bởi một cơ quan chứng thực đáng tin cậy. Trong khi đó, người bán nhất mực chối
không phải là người tạo ra đơn hàng. Giải thích trọng tài căn cứ như thế nào vào ngày trên các
bằng chứng để đưa ra phân xử xem đơn hàng có hợp lệ hay không.
Câu 7. An toàn thư điện tử (2 điểm)
Một chương trình thư điện tử cung cấp ba loại hình dịch vụ: dịch vụ xác thực, dịch vụ nén, và dịch vụ
tương thích thư điện tử (dịch vụ bảo mật và dịch vụ phân ghép không được xét tới ở đây). Khi muốn

gửi một thư điện tử m cho bên nhận B, bên gửi A thực hiện quy trình sau:
1. A chọn ngẫu nhiên một khóa bí mật S
2. A mã hóa S với khóa công khai PUb của bên nhận B, thu được E[PUb, S]
3. A ký E[PUb, S] với khóa riêng PRa của A, thu được E[PRa, E[PUb, S]]
4. A sử dụng S để tính MAC cho m, thu được C[S, m]
5. A nén C[S, m] ║ E[PRa, E[PUb, S]] ║ m, sau đó thực hiện phép chuyển đổi thuận cơ số 64 rồi

gửi toàn bộ thông báo thu được cho B.


a.

(1 điểm)

Mô tả quy trình thực hiện của bên B khi nhận được thông báo từ bên A.
b.

(0,5 điểm)

Dịch vụ xác thực của chương trình thư điện tử nêu trên không được hoàn thiện bằng dịch vụ
xác thực của PGP. Hãy giải thích vì sao.
(0,5 điểm)
Giả sử S có độ dài 256 bit, hàm MAC cho đầu ra có độ dài 128 bit, thư điện tử m có độ dài
852 byte. Dịch vụ nén khi sử dụng cho tỷ lệ nén là 2,0. Hãy tính độ dài của toàn bộ thông
báo A gửi cho B trên mạng.
c.

DETHISO1TC
Câu 8. An toàn mức giao vận (4 điểm)
Alice và Bob muốn sử dụng hệ trao đổi khóa Diffie-Hellman. Hai người thống nhất chọn các tham số

chung q = 13 và  = 2. Alice chọn khóa riêng XA = 6, trong khi Bob chọn khóa riêng XB = 7.
a. (2 điểm)
Các khóa công khai YA tính được bởi Alice và YB tính được bởi Bob là bao nhiêu? Sau khi tính
xong, Alice gửi YA cho Bob, Bob gửi YB cho Alice. Khóa bí mật chung tính được bởi cả hai người
là bao nhiêu?
b. (2 điểm)
Alice và Bob không biết có một người thứ ba là Eve xen vào đường truyền giữa hai người. Eve có
thể đọc được các thông báo trao đổi giữa Alice và Bob. Cô ta cũng có thể gửi thông báo cho Bob
nhưng Bob nghĩ là Alice gửi, hoặc ngược lại gửi thông báo cho Alice nhưng Alice nghĩ là Bob gửi.
Giả sử Eve chọn khóa riêng XE = 5. Giải thích bằng cách nào Eve có thể thực hiện hình thức tấn
công "kẻ thâm nhập ở giữa" lên hệ trao đổi khóa Diffie-Hellman giữa Alice và Bob. Hình thức tấn
công "kẻ thâm nhập ở giữa" được coi là thành công khi mọi thông báo bản mã Alice và Bob gửi
cho nhau đều có thể bị Eve giải mã để biết được nội dung nguyên bản trong khi Alice và Bob không
hay biết gì cả.

DETHISO2_2006
Câu 13. Hệ thống xác thực Kerberos (3 điểm)
Xét một hệ xác thực dựa trên mật mã đối xứng sử dụng một server xác thực S. Hai bên A và B không có
khóa bí mật chung cho trước. Nếu muốn truyền thông tin mã hóa cho nhau thì A và B cần xác thực lẫn
nhau thông qua S và xin S phân phối khóa bí mật chung. Server S biết khóa bí mật KA của A và khóa bí
mật KB của B. A và B không cho ai biết các khóa bí mật KA và KB tương ứng ngoài S. Giao thức xác
thực hai chiều và phân phối khóa tiến hành theo các bước sau :


(1) A  B :

T || IDA || IDB || EKA[RA || T || IDA || IDB]

(2) B  S :


T || IDA || IDB || EKA[RA || T || IDA || IDB] || EKB[RB || T || IDA || IDB]

(3) S  B :

T || EKA[RA || K] || EKB[RB || K]

(4) B  A :

???

Trong đó,
 T là nhãn thời gian của A tại thời điểm A thực hiện bước (1) của giao thức
 IDA là định danh của A
 IDB là định danh của B
 RA là một số ngẫu nhiên tạo ra bởi A tại thời điểm A thực hiện bước (1)
 RB là một số ngẫu nhiên tạo ra bởi B tại thời điểm B thực hiện bước (2)
 K là một khóa bí mật chọn bởi S tại thời điểm S thực hiện bước (3)
Giao thức cho phép A và B cùng nhận được khóa bí mật chung K. Hơn nữa A và B đều biết chắc chắn
rằng chỉ A và B biết được K.
a. (1 điểm)
Viết thông báo B gửi cho A ở bước (4) của giao thức.
b. (1 điểm)
Giải thích tại sao A và B biết được chắc chắn chỉ họ mới biết giá trị của K.
c. (1 điểm)
Giải thích vai trò của T, RA và RB.

DETHISO2_2007
Câu 16. Xác thực và chữ ký số (2 điểm)
Hãy thiết kế một giao thức xác thực cho phép Alice và Bob thiết lập một khóa bí mật dùng chung
không cần tới sự tham gia của một bên thứ ba. Giao thức chỉ được sử dụng hai thông báo, một thông

báo theo chiều từ Alice đến Bob và một thông báo theo chiều ngược lại. Cả hai thông báo này đều phải
đảm bảo tính xác thực. Giả thiết Alice và Bob biết trước khóa công khai của nhau.
Câu 17. An toàn thư điện tử (2 điểm)
Một người dùng sử dụng chương trình PGP để gửi thư điện tử một cách an toàn. Anh ta có n khóa công
khai. Khóa phiên trong chương trình PGP có độ dài 128 bit.
a. (1 điểm)
Hãy tính xác suất để người dùng đã nêu có hai khóa công khai có số định danh (id) trùng nhau.
b. (1 điểm)
Hãy tính số kỳ vọng các khóa phiên tạo ra trước khi phát hiện khóa phiên vừa sinh đã được tạo ra
trước đó.


DETHISO2_K13MTT
Câu 18. Các ứng dụng xác thực (1 điểm)
Một người dùng trên client C thuộc phân hệ Kerberos A muốn truy nhập vào một server dịch vụ Vrem
thuộc phân hệ Kerberos B (rem là viết tắt của từ remote).
a. (0,5 điểm)

Hãy mô tả cấu trúc của thẻ cấp thẻ mà server cấp thẻ của phân hệ A gửi cho người dùng trên client
C để truy cập vào server cấp thẻ của phân hệ B. Giải thích rõ các ký hiệu được sử dụng.
b. (0,5 điểm)

Hãy mô tả cấu trúc của dấu xác thực mà người dùng trên client C gửi cho server cấp thẻ của phân
hệ B để xin cấp thẻ truy nhập vào server dịch vụ Vrem. Giải thích rõ các ký hiệu được sử dụng.
Câu 19. An ninh thư điện tử (1 điểm)
Chương trình PGP của một người dùng (gọi là You) lưu giữ vòng khóa công khai được tổ chức theo
mô hình sau:

Đây chính là vòng khóa công khai đã được lấy làm ví dụ mẫu trên lớp. Ý nghĩa các ký hiệu và quy tắc
xác định tính hợp lệ của các khóa công khai được giữ nguyên.

a. (0,5 điểm)

Hãy cho biết khóa công khai của mỗi người dùng sau đây được bao nhiêu người dùng khác ký và
đó là những người nào: You, E, R, và S.
b. (0,5 điểm)
Hãy cho biết độ tin cậy người dùng You đã gán cho những người dùng sau đây: You, A, L, và Q.


Câu 20. An ninh Web (2 điểm)
Trong một ứng dụng Web, hai bên client và server sử dụng giao thức bắt tay trong chuỗi giao thức SSL
để xác thực lẫn nhau và thỏa thuận các tham số an ninh (giải thuật và khóa). Giả sử phương pháp trao
đổi khóa được client và server thống nhất sử dụng là Diffie-Hellman cố định.
a. (1 điểm)
Vẽ sơ đồ trao đổi thông báo 4 giai đoạn giữa client và server trong giao thức bắt tay SSL nêu trên.
b. (1 điểm)
Với mỗi thông báo tùy chọn (tức những thông báo không phải đối với bất kỳ phương pháp trao đổi
khóa nào cũng được gửi), hãy chỉ ra nó có những tham số gì và những tham số đó có tác dụng ra sao
trong phép trao đổi khóa Diffie-Hellman cố định.

DETHISO2_K50MTT
Câu 21.Hệ thống xác thực Kerberos (1 điểm)
Xét hội thoại xác thực Kerberos 4. Như đã biết, khi trình thẻ truy nhập dịch vụ (ThẻV) cho server dịch vụ
(V) kiểm tra, client (C) phải gửi kèm theo một dấu xác thực (Dấu C) để chứng minh nó là chủ nhân hợp
lệ của thẻ truy nhập dịch vụ.
a. (0,75 điểm)
Bằng cách nào V kiểm tra DấuC có do chủ nhân hợp lệ của ThẻV tạo ra hay không?
b. (0,25 điểm)
Thông tin gì ngăn không cho địch thủ sử dụng lại thành công ThẻV và DấuC?
Câu 21. Dịch vụ xác thực X.509 (1 điểm)
Những trường hợp sau đây gây ra vấn đề gì liên quan đến an toàn?

a. (0,5 điểm)
Hai chứng thực khác nhau chứa cùng khóa công khai.
b. (0,5 điểm)
Hai chứng thực khác nhau có cùng chữ ký của cơ quan chứng thực

DETHITHUSO1_2006
Câu 24. Dịch vụ xác thực
Xét một thủ tục xác thực 3 chiều giữa hai bên A và B thực hiện theo các bước sau :
(1) A  B : RA || IDB
(2) B  A : RB || IDA || RA
(3) A  B : RB


Trong đó, IDA là định danh của A, IDB là định danh của B, RA là một số ngẫu nhiên tạo ra bởi A tại thời
điểm A thực hiện bước (1) của thủ tục, RB là một số ngẫu nhiên tạo ra bởi B tại thời điểm B thực hiện
bước (2).
Một địch thủ C đã thu được 3 thông báo A và B gửi cho nhau trong một phiên thực hiện thủ tục. Bây giờ,
C muốn giả mạo A, làm cho B nghĩ rằng C chính là A.
Đầu tiên, C gửi thông báo thứ nhất thu được cho B :
C  B : RA || IDB
B thực chất đang nói chuyện với C nhưng nghĩ rằng đó là A nên trả lời :
B  C : RB' || IDA || RA
Trong lúc đó, bằng một cách nào đó, C khiến A khởi tạo một phiên xác thực với C. Kết quả là A gửi cho
C thông báo sau :
A  C : RA' || IDB
C trả lời A, sử dụng giá trị ngẫu nhiên RB' do C cung cấp thay vì giá trị ngẫu nhiên do chính nó tạo ra :
C  A : RB' || IDA || RA'
Theo như thủ tục xác thực, A sẽ trả lời như sau :
A  C : RB'
Đó chính là thông báo C cần gửi cho B để thuyết phục B rằng nó đang nói chuyện với A, C chỉ việc

chuyển thông báo đó cho B :
C  B : RB'
B sẽ nghĩ đang nói chuyện với A, trong thi thực chất thì nó đang nói chuyện với C.
a. (1,5 điểm)
Giải thích vì sao nếu A gửi thêm nhãn thời gian của A tại thời điểm A thực hiện bước (1) và B gửi
thêm nhãn thời gian của B tại thời điểm B thực hiện bước (2) thì thủ tục xác thực sẽ giải quyết được
vấn đề nêu trên.
b. (1,5 điểm)
Đề xuất một giải pháp khác đơn giản không sử dụng nhãn thời gian.

DETHISO1_K12MTT
Câu 26. An toàn thư điện tử (3 điểm)
Chương trình PGP của một người dùng A lưu giữ vòng khóa công khai có các trường Public Key, User
ID, Owner Trust, và Signatures như sau:
Public Key

PUA

PUB

PUC

PUD

PUE

PUF

PUG


User ID

A

B

C

D

E

F

G

Không
tin cậy

Tin cậy
một phần

Không
tin cậy

Không
biết

Tin cậy
một phần


D, E

A, B

D, G

C, E

A

Owner
Trust
Signatures

Tin cậy Tin cậy
tột bậc hoàn toàn
-

A


Ví dụ: Theo như bảng trên ta có khóa công khai của D được lưu giữ với các chữ ký của A và B, A tin
tưởng một phần vào chữ ký của D trên các khóa công khai khác.
Trường Key Legitimacy được PGP tính theo các quy tắc sau:


Nếu một khóa công khai có ít nhất một chữ ký có độ tin cậy (Signature Trust) là tột bậc hay hoàn toàn thì
tính hợp lệ (Key Legitimacy) của nó là hoàn toàn




Nếu một khóa công khai có ít nhất hai chữ ký có độ tin cậy là một phần thì tính hợp lệ của nó là hoàn toàn



Nếu một khóa công khai có đúng một chữ ký có độ tin cậy là một phần thì tính hợp lệ của nó là một phần



Trong tất cả những trường hợp khác, độ tin cậy của khóa là không xác định

a. (1,5 điểm)
Hãy xác định tính hợp lệ của các khóa công khai trong vòng khóa công khai của người dùng A.
b. (1,5 điểm)
Vẽ mô hình tin cậy PGP tương ứng.
Câu 27. An toàn Web (1 điểm)
a. (0,5 điểm)

Vì sao SSL/TLS có một giao thức Change Cipher Spec riêng thay vì sử dụng một thông báo
change_cipher_spec trong giao thức Handshake?
b. (0,5 điểm)
Vì sao SSL/TLS có thể chống được hình thức tấn công gửi lại thông báo trong giao thức
Handshake?

DETHISO1
Câu 28. Hệ thống xác thực Kerberos
Một hệ thống phân tán bao gồm các server dịch vụ (V) và nhiều người dùng trên các trạm làm việc client
(C) khác nhau. Người dùng muốn truy nhập vào server dịch vụ cần được xác thực dựa trên mật khẩu.
Chức năng xác thực người dùng và kiểm tra quyền truy nhập không giao cho từng server dịch vụ riêng

rẽ thực hiện mà được quản lý tập trung thông qua một server xác thực (AS) và một server cấp thẻ (TGS).
Server xác thực biết mật khẩu của tất cả người dùng. Server cấp thẻ biết quyền truy nhập của mỗi người
dùng đối với từng server dịch vụ. Mô hình xác thực của hệ thống là như sau :
(i) Mỗi lần người dùng đăng nhập vào hệ thống
(1) C  AS : IDC ║ IDtgs
(2) AS  C : EKC[Thẻtgs]
(ii) Mỗi lần người dùng yêu cầu một server dịch vụ
(3) C  TGS : IDC ║ IDV ║ Thẻtgs
(4) TGS  C : ThẻV


(iii) Mỗi lần người dùng truy nhập vào server dịch vụ đã yêu cầu
(5) C  V : IDC ║ ThẻV
Thẻtgs = EKtgs[IDC ║ ADC ║ IDtgs]
ThẻV = EKV[IDC ║ ADC ║ IDV]
Trong đó, IDC là danh tính người dùng trên máy C, IDtgs là danh tính server cấp thẻ, IDV là danh tính
server dịch vụ, Thẻtgs là thẻ cấp thẻ cho phép người dùng truy nhập vào server cấp thẻ TGS, ThẻV là thẻ
dịch vụ cho phép người dùng truy nhập vào server dịch vụ V, ADC là địa chỉ mạng của máy C, KC là
khóa tương ứng với mật khẩu của người dùng trên máy C, Ktgs là khóa bí mật dùng chung giữa AS và
TGS, KV là khóa bí mật dùng chung giữa TGS và V.
a. (1 điểm)
Theo mô hình trên đây, người dùng không cần gửi mật khẩu đến server xác thực cho server xác thực
kiểm tra. Giải thích bằng cách nào hệ thống vẫn xác thực được người dùng căn cứ vào mật khẩu.
b. (1 điểm)
Tại sao không để server xác thực thực hiện luôn chức năng kiểm tra quyền truy nhập server dịch vụ
của người dùng và trực tiếp cấp ThẻV mà lại dùng thêm server TGS để quản lý riêng chức năng này?
c. (1 điểm)
Giả sử các thẻ Thẻtgs và ThẻV có thể sử dụng nhiều lần (luôn có giá trị). Xét một vấn đề sau đây có
thể xảy ra với hệ thống đã cho. Một đối thủ bằng cách nào đó có thể lấy trộm được một trong hai loại
thẻ của một người dùng hợp lệ trên máy C. Anh ta chờ cho đến khi người dùng hợp lệ rời khỏi máy

C thì dùng máy C để truy nhập vào server cấp thẻ TGS với Thẻtgs hay vào server dịch vụ V với
ThẻV. Trong cả hai trường hợp đối thủ không hợp lệ đều có thể truy nhập được vào server dịch vụ V
dưới danh nghĩa của người dùng hợp lệ trên máy C. Hãy khắc phục tình trạng này bằng cách bổ xung
thêm những thông tin cần thiết vào Thẻtgs và ThẻV. Giả thiết là đối thủ nếu lấy trộm một thẻ nào đó
thì chỉ có thể sử dụng được nó sau một khoảng thời gian nhất định tính từ khi thẻ được tạo ra.
d. (1,5 điểm)
Giả thiết trong câu c (đối thủ lấy trộm chỉ có thể sử dụng được thẻ sau một thời gian nhất định từ khi
thẻ được tạo ra) rõ ràng là không thực tế. Trong thực tế, không bao giờ có thể ước lượng được những
khoảng thời gian như vậy. Vì thế hệ thống đã cho ngay cả khi đã được cải tiến bằng cách bổ xung
thêm những thông tin cần thiết vào mỗi thẻ tạo ra thì vẫn còn những nhược điểm. Hãy chỉ ra những
nhược điểm đó của hệ thống so với Kerberos 4.

DETHISO1_2006
Câu 29. An ninh thư điện tử
Vẽ mô hình thực hiện một chương trình thư điện tử cung cấp đồng thời các dịch vụ xác thực, bảo mật,
nén, và tương thích thư điện tử. Bên gửi A có khóa công khai là KUA, khóa riêng là KRA. Bên nhận B có
khóa công khai là KUB, khóa riêng là KRB. A biết khóa công khai của B và B cũng biết khóa công khai


của A. Thông báo M có kích thước lớn nên yêu cầu đặt ra là không được mã hóa M (kể cả đã nén) bằng
phương pháp mật mã khóa công khai vì nếu vậy tốc độ thực hiện chương trình sẽ rất chậm. Ngoài ra,
chương trình thư điện tử không được sử dụng hàm băm hay mã xác thực thông báo (MAC).

DETHISO1_K49MTT
Câu 30. Các ứng dụng xác thực (2 điểm)
Xét hội thoại xác thực Kerberos 4.
a. (1 điểm)
Giải thích tác dụng của DấuC trong các thông báo client C gửi cho server cấp thẻ TGS và server
dịch vụ V ở các bước 3 và 5.
b. (1 điểm)

Hãy thiết kế một biến thể của Kerberos 4 trong đó chính máy C sinh ra khóa phiên KC,tgs chứ
không phải AS như trong phiên bản chuẩn.
Câu 31. An toàn thư điện tử (2 điểm)
Chương trình PGP của một người dùng A lưu giữ vòng khóa công khai có các trường Public Key, User
ID, Owner Trust, và Signatures như sau:
Public Key

PUA

PUB

PUC

PUD

PUE

PUF

PUG

PUH

User ID

A

B

C


D

E

F

G

H

Owner

Tột

Một

Hoàn toàn

Một

Không

Không

Hoàn

Một

Trust


bậc

phần

phần

tin cậy

biết

toàn

phần

Signatures

-

A, E

B, C

B, C, D

C, E, G

E, F

I


B, D, G, H

Trường Key Legitimacy được PGP tính theo các quy tắc sau:
 Nếu một khóa công khai có ít nhất một chữ ký có độ tin cậy (Signature Trust) là tột bậc thì tính hợp
lệ (Key Legitimacy) của nó là hoàn toàn.
 Nếu không, tính hợp lệ của khóa công khai được tính bằng tổng trọng số độ tin cậy của các chữ ký.
Trọng số ½ được gán cho các chữ ký có độ tin cậy hoàn toàn. Trọng số ¼ được gán cho các chữ ký
có độ tin cậy một phần. Nếu tổng trọng số đạt tới ngưỡng là 1 thì khóa công khai được xác định là
hợp lệ hoàn toàn. Nếu tổng đó lớn hơn 0 nhưng nhỏ hơn 1 thì tính hợp lệ của khóa công khai được
coi là một phần.
 Trong tất cả những trường hợp còn lại, độ tin cậy của khóa là không xác định
a. (1 điểm)
Hãy xác định tính hợp lệ của các khóa công khai trong vòng khóa công khai của người dùng A.
b. (1 điểm)
Vẽ mô hình tin cậy PGP tương ứng.


DETHISO1_K52MTT
Câu 32. Các ứng dụng xác thực (2 điểm)
Một trong những đặc tính của Kerberos 4 là sau khi đăng nhập thành công, người dùng không cần sử
dụng đến mật khẩu mỗi lần anh ta muốn truy nhập vào một server dịch vụ nào đó. Giải thích tại sao. Nếu
địch thủ lấy được danh sách giá trị băm mật khẩu của các người dùng trên server xác thực AS thì anh ta
có thể giả mạo thành một người dùng hợp lệ khi giao tiếp với server cấp thẻ TGS và server dịch vụ V
được không? Giải thích lý do với từng trường hợp (giao tiếp với TGS và giao tiếp với V). So với mật mã
khóa công khai, phương pháp mã hóa khối đối xứng được sử dụng trong Kerberos 4 bộc lộ nhược điểm
gì khi người dùng phát hiện ra khóa phiên chia sẻ giữa anh ta và server cấp thẻ (TGS) bị lộ bí mật?
Câu 33. Chương trình PGP (3 điểm)
Chương trình PGP của một người dùng A lưu giữ vòng khóa công khai có các trường Public Key, User
ID, Owner Trust, và Signatures như sau:

Public
Key
User ID
Owner
Trust
Signatures

PUA

PUB

PUC

PUD

PUE

A
Tột
bậc
-

B
Hoàn
toàn
A

C
Một
phần

A

D
Hoàn
toàn
A

E
Một
phần
B, D

PUF

PUG

F
G
Một
Hoàn
phần
toàn
B, C, E C, F

PUH

PUI

H
Không

biết
G, I

I
Hoàn
toàn
F, J, K

Tính hợp lệ của khóa công khai (Key Legitimacy) được PGP tính theo các quy tắc sau:
 Khóa công khai của bản thân người dùng A có tính hợp lệ là hoàn toàn.
 Nếu một khóa công khai có ít nhất một chữ ký có độ tin cậy (Signature Trust) là tột bậc thì tính hợp
lệ của nó là hoàn toàn.
 Nếu không, tính hợp lệ của khóa công khai được tính bằng tổng trọng số độ tin cậy của các chữ ký.
Trọng số 1/2 được gán cho các chữ ký có độ tin cậy hoàn toàn. Trọng số 1/3 được gán cho các chữ
ký có độ tin cậy một phần. Nếu tổng trọng số đạt tới ngưỡng là 1 thì khóa công khai được xác định
là hợp lệ hoàn toàn.
 Trong tất cả những trường hợp còn lại, độ tin cậy của khóa là không biết.
a. (1 điểm)
Hãy xác định tính hợp lệ của các khóa công khai trong vòng khóa công khai của người dùng A.
b. (2 điểm)
Vẽ mô hình tin cậy PGP tương ứng.



×