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

Tổng hợp đề thi môn An toàn an ninh mạng

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 (713.01 KB, 17 trang )

Tự kỉ sâu sắc

1

DeThiSo1_k50MTT
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ụ
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.
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
rAlà 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ừ
t1là thời điểm rAđược sinh ra đến t2là thời điểm rAhết hạn, A lưu lại các thời điểm t1và
t2cùng với giá trị rAtrong bộ nhớ cho đến thời điểm hết hạn t2thì xóa đi tất cả những thông tin
đó
rBlà 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ị rBtrong 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.


DeThiSo1_k53MTT
3. Phân phối khóa và xác thực người dùng (2 điểm)


Tự kỉ sâu sắc

2

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 : EK [Thẻtgs]
C
(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 = EK [IDC ║ ADC ║ IDtgs ║ TS1 ║ Hạn1]
tgs
ThẻV = EK [IDC ║ ADC ║ IDV ║ TS2 ║ Hạn2]
V
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.


Tự kỉ sâu sắc

3

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ụ?
a. (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.
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ì.
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

Owner
Trust

Tột bậc

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

Signatures

-

A

A

C

C, D

B

C, F

G, I

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


Tự kỉ sâu sắc

4



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
6.Các ứng dụng xác thực (2 điểm)
Xét dịch vụ xác thực X.509.
c. (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.
W
P<<R>>

P

X<<R>>
R<<P>>

P<<Q>>
Q<<P>>

X

Y

R

Q

W<<X>>

W<<Y>>

X<<W>>

Y<<W>>

Q<<S>>
S<<Q>>

Z
S


T

U
X<<Z>>

Q<<T>>

R<<U>>

T<<Q>>

U<<R>>

Z<<X>>


Tự kỉ sâu sắc

5

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.
d. (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.

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.
c. (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.

DeThiSo1TC
8.(4 điểm)


Tự kỉ sâu sắc

6

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.
e. (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?
f. (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
9.(2,5 điểm)
Cho một phương thức mã hóa khối đối xứng thực hiện việc mã hóa theo sơ đồ sau (giả sử thông
báo gồm có N khối p1, p2,…, pN) :

p2

p1
IV

K

pN
pN-1


Mã hóa

K

Mã hóa

...

K

Mã hóa

CN-1
C1

C2

g. (1,5 điểm)
Vẽ sơ đồ giải mã suy ra từ sơ đồ mã hóa đã cho.

CN


Tự kỉ sâu sắc

7

h. (1 điểm)
Chứng mình rằng nếu một khối bản mã bị lỗi thì khi giải mã thông báo tất cả các khối
nguyên bản thu được tiếp theo cũng đều bị lỗi.


10.(1,5 điểm)
Trên một mạng công cộng, mỗi người mã hóa tất cả các thông báo gửi cho những người khác
bằng hệ mã hóa khóa công khai RSA. Alice và Bob có cùng thành phần n của khóa công khai (nA
= nB), nhưng có các thành phần e khác nhau (eA  eB). Chứng minh rằng Alice có thể giải mã tất
cả các thông báo gửi tới Bob.

DeThiSo2_2006
11.(2 điểm)Xét môđun n trong giải thuật RSA. Như đã biết, thành phần này là một giá trị công
khai. Tính xác suất để một số chọn ngẫu nhiên theo phân bố đồng xác suất trong khoảng từ 1 đến
n – 1 không nguyên tố cùng nhau với n. Nếu tìm được một số như vậy thì hiểm họa gì sẽ xảy ra ?
Giải thích.
12.(2 điểm)
Xét một hệ xác thực như sau. Alice lấy một giá trị ngẫu nhiên K làm khóa phiên, rồi gửi định
danh IDA của cô ta cùng với khóa phiên K cho Bob, tất cả những thông tin này được mã hóa sử
dụng khóa công khai KUB của Bob. Bob gửi lại cho Alice định danh IDB của anh ta cùng với
khóa K cho Alice, tất cả được mã hóa sử dụng khóa công khai của Alice.
Alice  Bob : EKUB[IDA || K]
Bob  Alice : EKUA[IDB || K]
Một địch thủ tên Eve có khả năng chặn được các thông báo Alice và Bob gửi cho nhau cũng như
gửi được thông báo cho Alice và Bob.
i. (1 điểm)
Theo giao thức trên đây, Eve có thể giả mạo Alice, tức là có thể làm cho Bob tin rằng Eve
chính là Alice được không ? Giải thích.
j. (1 điểm)
Eve có thể giả mạo Bob, tức là có thể làm cho Alice tin rằng Eve chính là Bob được
không ? Giải thích.
13.(3 điểm)



Tự kỉ sâu sắc

8

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.
k. (1 điểm)
Viết thông báo B gửi cho A ở bước (4) của giao thức.
l. (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.
m. (1 điểm)
Giải thích vai trò của T, RA và RB.

DeThiSo2_2007

14.Mã hóa khối đối xứng (3 điểm)
Xét một phương thức mã hóa đối xứng áp dụng cho các thông báo gồm nhiều khối. Nó thực hiện
mã hóa thông báo theo sơ đồ giải mã CBC và giải mã theo sơ đồ mã hóa CBC.
n. (1,5 điểm)


Tự kỉ sâu sắc

9

Phương thức đã nêu có cho phép mã hóa thông báo và giải mã để thu được nguyên bản
ban đầu không? Vẽ sơ đồ mã hóa và sơ đồ giải mã của nó.
o. (1,5 điểm)
Hãy chỉ ra những nhược điểm của phương thức trong chức năng đảm bảo sự an toàn của các
thông báo
15.Mã hóa khối đối xứng và mã hóa khóa công khai (3 điểm)
Alice muốn gửi thông báo đến Bob một cách an toàn thông qua một mạng truyền thông không an
toàn. Alice có một cặp khóa công khai và khóa riêng RSA là KUa và KRa. Bob cũng có khóa
công khai RSA là KUb và khóa riêng tương ứng là KRb. Alice biết khóa công khai của Bob. Bob
cũng biết khóa công khai của Alice.
Để gửi một thông báo m đến Bob, Alice tiến hành như sau:
1. Chọn ngẫu nhiên một khóa phiên K, rồi tính các giá trị c = E_RSAKUb(K), c' =
E_AES-CBCK(m), và t = E_RSAKRa(c ║ c'), trong đó E_RSA là phép mã hóa theo
giải thuật RSA, E_AES_CBC là phép mã hóa theo phương thức CBC sử dụng giải
thuật AES.
2. Gửi thông báo c ║ c' ║ t đến Bob.
Khi nhận được thông báo c ║ c' ║ t, Bob tiến hành như sau:
1. Kiểm tra xem t có phải là một chữ ký RSA hợp lệ của Alice trên c ║ c' hay không.
Nếu không hợp lệ thì không làm gì tiếp theo.
2. Tính K' = D_RSAKRb(c) và m' = D_AES-CBCK'(c'), trong đó D_RSA là phép giải mã

theo giải thuật RSA, D_AES-CBC là phép giải mã theo phương thức CBC sử dụng
giải thuật AES.
3. Ghi nhận thông báo m' là do Alice gửi.
p. (1 điểm)
Giao thức nêu trên có đảm bảo tính bảo mật của các thông báo do Alice gửi cho Bob
không? Giải thích.
q. (1 điểm)
Giao thức nêu trên có đảm bảo nguồn gốc và tính toàn vẹn của các thông báo Bob nhận
được hay không? Giải thích.
r. (1 điểm)
Giả sử Bob là nhân viên môi giới chứng khoán của Alice. Bob tự động chuyển các thông
báo do Alice gửi đến một trung tâm giao dịch chứng khoán, sao cho nếu Alice sử dụng
giao thức đã nêu gửi một thông báo là "Bán 500 cổ phiếu của MB" thì giao dịch sẽ ngay


Tự kỉ sâu sắc

10

lập tức được tự động thực hiện trên tài khoản của Alice. Hãy đưa ra một lý do cho thấy sự
không an toàn của giao thức trong bối cảnh một ứng dụng như vậy.
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.
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.
s. (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.
t. (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
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).
u. (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.
v. (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.
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:


Tự kỉ sâu sắc

11

Đâ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.
w. (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.
x. (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.
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.
y. (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.
z. (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.


Tự kỉ sâu sắc

12

DeThiSo2_k50MTT
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ấuC) để 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?

2.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?
c. (0,5 điểm)
Hai chứng thực khác nhau chứa cùng khóa công khai.
d. (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

DeThiSo2TC
22.(4,5 điểm)
Cho một phương thức mã hóa khối đối xứng thực hiện việc mã hóa theo sơ đồ sau (giả sử thông
báo nguyên bản gồm có N khối p1, p2,…, pN) :


Tự kỉ sâu sắc
p2

p1

K

Mã hóa

K

Mã hóa

13

pN


...

K

Mã hóa

IV

C1

C2

CN

aa. (2,5 điểm)
Vẽ sơ đồ giải mã suy ra từ sơ đồ mã hóa đã cho (không cần giải thích gì thêm về sơ đồ
giải mã).
bb. (1 điểm)
Nếu có một lỗi trong khối nguyên bản p1 (tức là p1 trở thành p'1  p1) thì lỗi này sẽ gây ra
bao nhiêu khối bản mã bị lỗi? Giải thích.
cc. (1 điểm)
Nếu có lỗi từ bên gửi theo giả thiết ở câu b thì sau khi giải mã bên nhận có thu được
thông báo nguyên bản gồm đúng N khối p1, p2,…, pN như dự định hay không? Nếu không
thì hãy chỉ ra những khối khác với dự định? Giải thích tại sao. Giả sử đường truyền đáng
tin cậy, không gây ra lỗi, nội dung thông báo bản mã từ lúc gửi đến lúc nhận không bị
thay đổi.

DeThiThu
23.(4 điểm)
Có một nước X nọ muốn quản lý hoàn toàn mật mã khóa công khai bằng cách quy định rằng chỉ

có chính phủ là cơ quan chứng thực (CA) duy nhất, và mọi người chỉ được công bố khóa công
khai có chứng thực của chính phủ. Để được chứng thực khóa công khai, người dùng phải nộp
cho chính phủ một phiên bản của khóa riêng tương ứng.
dd. (2 điểm)


Tự kỉ sâu sắc

14

Hãy đưa ra hai cách theo đó người dùng có thể sử dụng mật mã khóa công khai với nhau
mà không vi phạm quy định của chính phủ.
ee. (2 điểm)
Sử dụng dịch vụ chứng thực của chính phủ để hai người dùng bất kỳ có thể trao đổi với
nhau theo cả hai tiêu chí xác thực và bảo mật mà chính phủ không thể biết được nội dung
trao đổi.

DeThiThuSo1_2006
24.(3 điểm)
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' || IDC
Trong đó, IDC là định danh của C.
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 :


Tự kỉ sâu sắc

15

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.
ff. (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.
gg. (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
25.Các ứng dụng xác thực (3 điểm)

Một máy A muốn thiết lập một khóa phiên thông qua một trung tâm phân phối khóa KDC để
giao tiếp với một máy B. Cả hai máy A và B đều có khóa bí mật dùng chung với KDC. Máy A
gửi tới KDC yêu cầu xin cấp thẻ giao tiếp với B. Thông báo yêu cầu bao gồm định danh của A
và một giá trị ngẫu nhiên nonce. KDC gửi trả lại A một khóa phiên KAB, giá trị nonce vừa nhận
được, định danh của B và một thẻ giao tiếp. Toàn bộ thông báo được mã hóa bằng khóa bí mật
dùng chung giữa A và KDC. Máy A giải mã thông báo và gửi thẻ giao tiếp đến B. Máy B giải
mã thẻ, qua đó thu được khóa phiên dùng chung với A.
hh. (1 điểm)
Hãy mô tả cấu trúc của thẻ giao tiếp.
ii. (2 điểm)
Hãy cải tiến giao thức để cho phép A và B xác thực lẫn nhau.
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:


Tự kỉ sâu sắc

16

Public Key

PUA

PUB

PUC

PUD


PUE

PUF

PUG

User ID

A

B

C

D

E

F

G

Owner Trust

Tin cậy
tột bậc

Tin cậy
hoàn toàn


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

Signatures

-

A

D, E

A, B

D, G

C, E

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
jj. (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.

kk. (1,5 điểm)
Vẽ mô hình tin cậy PGP tương ứng
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_K52MTT
28.An toàn Web (1 điểm)


Tự kỉ sâu sắc

17

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?



×