Tải bản đầy đủ (.doc) (37 trang)

CÁC GIAO THỨC ĐẢM BẢO AN NINH CHO TẦNG ỨNG DỤ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 (779.28 KB, 37 trang )

Bài tập lớn môn: An Toàn Thông Tin
LỜI NÓI ĐẦU
Không phải nói thì ai cũng biết, chúng ta đang sống trong một thời đại hiện
đại, thời đại của khoa học kỹ thuật, của công nghệ thông tin. Mọi giao dịch và nhu
cầu trao đổi thông tin, dữ liệu qua mạng máy tính ngày càng lớn. Vấn đề đặt ra là
làm sao đảm bảo an toàn mọi mặt cho người dùng? Trả lời câu hỏi này, người ta đã
dùng rất nhiều biện pháp khác nhau, bảo vệ từ khi tạo thông điệp,trong quá trình
truyền đi qua mạng, khi người dùng nhận thông điệp để có thể bảo vệ tối đa
quyền lợi của người sử dụng.
Trong bài tiểu luận này em đã trình bày các giao thức đảm bảo an ninh tầng
ứng dụng mà em đã nghiên cứu như giao thức xác thực ứng dụng Kerberos, giao
thức xác thực X.509, giao thức đảm bảo an ninh thư điện tử PGP, S/MIME và giao
thức đảm bảo giao dịch trong thương mại điện tử SET.
Em xin chân thành cảm ơn!

Sinh viên thực hiện : Nguyễn Hải Điềm
Giảng viên hướng dẫn : Nguyễn Duy Tân
SVTH: Nguyễn Hải Điềm GVHD: Nguyễn Duy Tân
1
Bài tập lớn môn: An Toàn Thông Tin
CÁC GIAO THỨC ĐẢM BẢO AN NINH
CHO TẦNG ỨNG DỤNG
I)Giao thức PGP(Pretty Good Privacy)
1)Giới thiệu về giao thức
+ Giao thức này được Do Phil Zimmermann phát triển vào năm 1991.
+Chương trình miễn phí, chạy trên nhiều môi trường khác nhau (phần
cứng, hệ điều hành)
-Có phiên bản thương mại nếu cần hỗ trợ kỹ thuật
+Dựa trên các giải thuật mật mã hoá an toàn nhất
+Chủ yếu ứng dụng cho thư điện tử và file
+Độc lập với các tổ chức chính phủ


+Bao gồm 5 dịch vụ : xác thực, bảo mật, nén, tương thích thư điện tử, phân
và ghép
-Ba dịch vụ sau trong suốt đối với người dùng
2)Cách hoạt động của PGP
a) Xác thực của PGP
+Thao tác
Người gửi tạo mẩu tin, sử dụng SHA-1 để sinh Hash 160 bit của mẩu tin,
ký hash vói RSA sử dụng khoá riêng của người gửi và đính kèm vào mẩu
tin.
Người nhận sử dụng RSA với khoá công khai của người gửi để giải mã và
khôi phục bản hash .Người nhận kiểm tra mẩu tin nhận sử dụng bản hash
của nó và so sánh với bản hash đã được giải mã.
SVTH: Nguyễn Hải Điềm GVHD: Nguyễn Duy Tân
2
Bài tập lớn môn: An Toàn Thông Tin
+ Mô hình
b) Bảo mật của PGP
+ Thao tác
Người gửi tạo mẩu tin và số ngẫu nhiên 128 bit như khoá phiên cho nó, mã
hoá mẩu tin sử dụng CAST-128/IDEA/3DES trong chế độ CBC với khóa
phiên đó. Khoá phiên được mã sử dụng RSA với khoá công khai người nhận
và đính kèm với mẩu tin.
Người nhận sử dụng RSA với khoá riêng để giải mã và khôi phục khoá phiên.
Khoá phiên được sử dụng và để giải mã mẩu tin.
SVTH: Nguyễn Hải Điềm GVHD: Nguyễn Duy Tân
3
Nguồn A Đích B
So sánh
M = Thông báo gốc EP = Mã hóa khóa công khai
H = Hàm băm DP = Giải mã khóa công khai

║ = Ghép KR
a
= Khóa riêng của A
Z = Nén KU
a
= Khóa công khai của A
Z
-1
= Cởi nén
Bài tập lớn môn: An Toàn Thông Tin
+ Mô hình

c) Xác thực và bảo mật của PGP
SVTH: Nguyễn Hải Điềm GVHD: Nguyễn Duy Tân
Nguồn A Đích B
EC = Mã hóa đối xứng
DC = Giải mã đối xứng
K
s
= Khóa phiên
Nguồn A Đích B
4
Bài tập lớn môn: An Toàn Thông Tin
d) Nén của PGP
Theo mặc định PGP nén mẩu tin sau khi ký nhưng trước khi mã.Như vậy
cần lưu mẩu tin chưa nén và chữ ký để kiểm chứng về sau. Vì rằng nén là
không duy nhất . Ở đây sử dụng thuật toán nén ZIP.
 PGP nén thông báo sử dụng giải thuật ZIP
 Ký trước khi nén
 Thuận tiện lưu trữ và kiểm tra, nếu ký sau khi nén thì

o Cần lưu phiên bản nén với chữ ký, hoặc
o Cần nén lại thông báo mỗi lần muốn kiểm tra
 Các phiên bản khác nhau của giải thuật nén không cho kết quả
duy nhất
o Mỗi phiên bản cài đặt có tốc độ và tỷ lệ nén khác nhau
o Nếu ký sau khi nén thì các chương trình PGP cần sử dụng
cùng một phiên bản của giải thuật nén
 Mã hóa sau khi nén
 Ít dữ liệu sẽ khiến việc mã hóa nhanh hơn
 Thông báo nén khó phá mã hơn thông báo thô
e) Tương thích thư điện tử của PGP
 PGP bao giờ cũng phải gửi dữ liệu nhị phân
 Nhiều hệ thống thư điện tử chỉ chấp nhận văn bản ASCII (các ký tự đọc
được)
 Thư điện tử vốn chỉ chứa văn bản đọc được
 PGP dùng giải thuật cơ số 64 chuyển đổi dữ liệu nhị phân sang các ký
tự ASCII đọc được
SVTH: Nguyễn Hải Điềm GVHD: Nguyễn Duy Tân
5
Bài tập lớn môn: An Toàn Thông Tin
 Mỗi 3 byte nhị phân chuyển thành 4 ký tự đọc được
 Hiệu ứng phụ của việc chuyển đổi là kích thước thông báo tăng lên 33%
 Nhưng có thao tác nén bù lại
Tóm lại cần có khoá phiên cho mỗi mẩu tin ,có kích thước khác nhau :56
bit –DES, 128 bit CAST hoặc IDEA, 168 bit Triple-DES, được sinh ra sử
dụng dữ liệu đầu vào ngẫu nhiên lấy từ sử dụng trước và thời gian gõ bàn
phím của người sử dụng
SVTH: Nguyễn Hải Điềm GVHD: Nguyễn Duy Tân
6
Bài tập lớn môn: An Toàn Thông Tin

Bảng chuyển đổi cơ số 64
f) Phân và ghép của PGP
 Các giao thức thư điện tử thường hạn chế độ dài tối đa của thông báo
 Ví dụ thường là 50 KB
 PGP phân thông báo quá lớn thành nhiều thông báo đủ nhỏ
 Việc phân đoạn thông báo thực hiện sau tất cả các công đoạn khác
 Bên nhận sẽ ghép các thông báo nhỏ trước khi thực hiện các công đoạn
khác
g) Danh tính khoá của PGP
SVTH: Nguyễn Hải Điềm GVHD: Nguyễn Duy Tân
7
Bài tập lớn môn: An Toàn Thông Tin
 Với một thông báo nhất định cần xác định sử dụng khóa nào trong
nhiều khóa công khai / khóa riêng
 Có thể gửi khóa công khai cùng với thông báo nhưng lãng phí
đường truyền không cần thiết
 Gán cho mỗi khóa một danh tính riêng
 Gồm 64 bit bên phải của khóa
 Xác suất cao là mỗi khóa có một danh tính duy nhất
 Sử dụng danh tính khóa trong chữ ký
h) Khoá riêng và khoá công khai của PGP
Vì có nhiều khoá riêng và khoá công khai có thể sử dụng, nên cần phải xác
định rõ cái nào được dùng để mã hoá khoá khoá phiên trong mẩu tin. Có thể
gửi khoá công khai đầy đủ với từng mẩu tin. Nhưng điều đó là không đủ, vì
cần phải nêu rõ danh tính của người gửi. Do đó có thể sử dụng định danh khoá
để xác định người gửi. Có ít nhất 64 bit có ý nghĩa của khoá và là duy nhất, có
thể sử dụng định danh của khoá trong chữ ký.
SVTH: Nguyễn Hải Điềm GVHD: Nguyễn Duy Tân
8
Bài tập lớn môn: An Toàn Thông Tin

i) Các chùm khoá của PGP
Mỗi người sử dụng PGP có một cặp chùm khoá. Chùm khoá công khai
chứa mọi khoá công khai của người sử dụng PGP khác được người đó biết và
được đánh số bằng định danh khoá (ID key). Chùm khoá riêng chứa các cặp
khoá công khai/riêng của người đó được đánh số bởi định danh khoá và mã
SVTH: Nguyễn Hải Điềm GVHD: Nguyễn Duy Tân
9
Bài tập lớn môn: An Toàn Thông Tin
của khoá lấy từ giai đoạn duyệt Hash. An toàn của khoá công khai như vậy
phụ thuộc vào độ an toàn của giai đoạn duyệt.
Cấu trúc khoá riêng và khoá công khai của PGP
j) Sinh mẩu tin PGP
SVTH: Nguyễn Hải Điềm GVHD: Nguyễn Duy Tân
10
Bài tập lớn môn: An Toàn Thông Tin
Cách PGP gửi thông tin từ A sang B
k ) Quản lý khoá của PGP
 Thay vì dựa trên các CA (cơ quan chứng thực), đối vởi PGP mỗi người
dùng là một CA
 Có thể chứng thực cho những người dùng quen biết
 Tạo nên một mạng lưới tin cậy
 Tin các khóa đã được chứng thực
 Mỗi khóa có một chỉ số tin cậy
 Người dùng có thể thu hồi khóa của bản thân
SVTH: Nguyễn Hải Điềm GVHD: Nguyễn Duy Tân
11
Bài tập lớn môn: An Toàn Thông Tin
n) Mô hình PGP tin cậy
II) Giao thức S/MIME (Secure/Multipurpose Internet Mail Extensions)
1) Giới thiệu về S/MIME

 Nâng cấp từ chuẩn khuôn dạng thư điện tử MIME có thêm tính năng an
toàn thông tin
 MIME khắc phục những hạn chế của SMTP (Simple Mail Transfer
Protocol)
 Không truyền được file nhị phân (chương trình, ảnh, )
 Chỉ gửi được các ký tự ASCII 7 bit
 Không nhận thông báo vượt quá kích thước cho phép

SVTH: Nguyễn Hải Điềm GVHD: Nguyễn Duy Tân
12
Bài tập lớn môn: An Toàn Thông Tin
 S/MIME có xu hướng trở thành chuẩn công nghiệp sử dụng trong
thương mại và hành chính
 S/MIME dùng cho cá nhân
2) Các chức năng của S/MIME
 Bao bọc dữ liệu
 Mã hóa nội dung thông báo và các khóa liên quan
 Ký dữ liệu
 Chữ ký số tạo thành nhờ mã hóa thông tin tổng hợp thông báo sử
dụng khóa riêng của người ký
 Thông báo và chữ ký số được chuyển đổi cơ số 64
 Ký và để nguyên dữ liệu
 Chỉ chữ ký số được chuyển đổi cơ số 64
 Ký và bao bọc dữ liệu
 Kết hợp ký và bao bọc dữ liệu
3) Các thuật toán mã hoá S/MIME
Các chữ ký điện tử DSS và RSA, các hàm hash: SHA-1 và MD5, mã
hoá phiên :Elgamal và RSA ,mã mẩu tin :AES ,Triple-DES,RC2/40,
…,MAC;HMAC với SHA-1.
Có quá trình đối thoại để quyết định sử dụng thuật toán nào.

4) Các mẩu tin S/MIME
S/MIME bảo vệ các thực thể MIME với chữ ký, mã hoặc cả 2 tạo thành
các đối tượng đóng gói MIME .có phạm vi các kiểu nội dung khác nhau
;dữ liệu đóng phong bì ,dữ liệu được ký ,dữ liệu rõ ràng được ký ,yêu cầu
đăng ký chứng nhận mẩu tin.
5) Xử lý chứng thực của S/MIME
 S/MIME sử dụng các chứng thực khóa công khai theo X.509 v3
 Phương thức quản lý khóa lai ghép giữa cấu trúc phân cấp CA theo
đúng X.509 và mạng lưới tin cậy của PGP
SVTH: Nguyễn Hải Điềm GVHD: Nguyễn Duy Tân
13
Bài tập lớn môn: An Toàn Thông Tin
 Mỗi người dùng có một danh sách các khóa của bản thân, danh sách các
khóa tin cậy và danh sách thu hồi chứng thực
 Chứng thực phải được ký bởi CA tin cậy
III) Giao thức SET (Secure Electronic Transactions)
1) Giới thiệu
 Phát triển năm 1996 bởi Mastercard, Visa, …
 Đặc tả mở về mã hóa và bảo mật nhằm bảo vệ các giao dịch thẻ tín
dụng trên Internet
 không phải hệ thống trả tiền điện tử
 Là một tập hợp các định dạng & giao thức
 đảm bảo truyền tin an toàn giữa các bên
 đảm bảo tính tin cậy
 sử dụng chứng thực X.509v3
 đảm bảo tính riêng tư
 thông tin chỉ được truy cập hạn chế bởi những bên thực sự
cần
2) Các thành phần của SET
SVTH: Nguyễn Hải Điềm GVHD: Nguyễn Duy Tân

14
Bài tập lớn môn: An Toàn Thông Tin
3) Giao dịch SET
1. Người mua mở tài khoản
2. Người mua nhận được chứng nhận
3. Người bán có chứng nhận cuả họ
4. Người mua đặt hàng
5. Người bán được kiểm chứng
6. Đơn đặt hàng và trả tiền được gửi
7. Người bán yêu cầu giấy phép trả tiền
8. Người bán duyệt đơn đặt hàng
9. Người bán cung cấp hàng và dịch vụ
10.Người bán yêu cầu trả tiền
4) Chữ ký kép
Người mua tạo chữ ký kép
SVTH: Nguyễn Hải Điềm GVHD: Nguyễn Duy Tân
15
Bài tập lớn môn: An Toàn Thông Tin
 Thông tin đơn đặt OI cho người bán
 Thông tin trả tiền PI cho ngân hàng
Không bên nào biết chi tiết của người khác. Nhưng cần phải biết là họ
được kết nối với nhau. Sử dụng chữ ký kép cho mục đích này
 Ký trên bản ghép của OI và PI
5) Xây dựng chữ ký kép

SVTH: Nguyễn Hải Điềm GVHD: Nguyễn Duy Tân
16
Bài tập lớn môn: An Toàn Thông Tin
6) Các bước thực hiện mua bán
 Gửi yêu cầu mua

 Xác thực yêu cầu mua
 Yêu cầu trả tiền
+ Yêu cầu mua
 Trao đổi yêu cầu trả tiền gồm 4 mẩu tin như sau
1. Khởi tạo yêu cầu - nhận chứng nhận
2. Khởi tạo trả lời – ký trả lời
3. Yêu cầu trả tiền của OI-PI
4. Trả lời trả tiền –đơn phúc đáp
Yêu cầu mua –Khách hàng
SVTH: Nguyễn Hải Điềm GVHD: Nguyễn Duy Tân
17
Bài tập lớn môn: An Toàn Thông Tin
Yêu cầu mua - Người bán
1. Kiểm tra chứng nhận người giữ thẻ bằng chữ ký của CA
2. Kiểm tra chữ ký kép bằng cách sử dụng khoá chữ ký công khai của
người mua để tin tưởng rằng đơn không bị giả mạo khi truyền và được
ký sử dụng chữ ký khoá riêng của người giữ thẻ
3. Xử lý đơn đặt và gửi tiếp thông tin trả tiền cho cổng trả tiền để xác thực
4. Gửi phản hồi trả tiền cho người giữ thẻ
SVTH: Nguyễn Hải Điềm GVHD: Nguyễn Duy Tân
18
Bài tập lớn môn: An Toàn Thông Tin
Xác thực tại Payment Gateway (cổng trả tiền)
1. Kiểm chứng mọi chứng nhận
2. Giải mã phong bì điện tử của khối giấy phép và nhận được khoá đối
xứng, sau đó giải mã khối giâý phép
3. Kiểm tra chữ ký của người bán trên khối giấy phép
4. Giải mã phong bì điện tử khối trả tiền ,nhận được khoá đối xứng, sau đó
giải mã khối trả tiền
SVTH: Nguyễn Hải Điềm GVHD: Nguyễn Duy Tân

19
Bài tập lớn môn: An Toàn Thông Tin
5. Kiểm tra chữ ký kép trên khối trả tiền
6. Kiểm tra rằng, thanh toán ID nhận được từ người bán phù hợp với danh
tính trong PI nhận được (không trực tiếp) từ người bán
7. Yêu cầu và nhận được giấy phép từ nơi phát hành
8. Gửi trả lời giấy phép cho người bán
Yêu cầu thanh toán
Người bán gửi cho cổng trả tiền yêu cầu nhận trả tiền. Cổng kiểm tra
yêu cầu đó. Sau đó yêu cầu chuyển tiền đến tài khoản người bán. Thông báo
cho người bán và chờ trả lời việc nhận
IV) Giao thức Kerberos
1) Giới thiệu về Kerberos
Kerberos phục vụ cho việc xác thực thông tin truyền giữa người A và người
B
Kerberos sử dụng chuẩn mã hoá DES trong một phiên truyền, cung cấp việc
xác thực cho người dùng.
+ Một ví dụ đơn giản về việc đối thoại giữa 2 người sử dụng Kerboros
Trong một môi trường mạng có nhiều người sử dụng. Bảo mật sẽ làm cho
mọi người không biết thông tin gì về nhau
(1) C AS:
ID
C
||P
C
||ID
V
(2) AS C:
Ticket
(3) C V:

ID
C
||Ticket
SVTH: Nguyễn Hải Điềm GVHD: Nguyễn Duy Tân
20
Bài tập lớn môn: An Toàn Thông Tin
Ticket = E(K
v
, [ID
C
||AD
C
||ID
V
])
ở đó
C = client
AS = authentication server
V =server
ID
C
= identifier of user on C
ID
V
= identifier of V
P
C
= password of user on C
AD
C

= network address of C
K
v
= secret encryption key shared by AS and V
2. Mô hình Kerberos
SVTH: Nguyễn Hải Điềm GVHD: Nguyễn Duy Tân
21
Bài tập lớn môn: An Toàn Thông Tin
a. Cách hoạt động của Kerberos
+ Kerberos phục vụ cho tất cả người dùng, và người dùng phải có
mật khẩu trong cơ sở dữ liệu của Kerberos, tất cả người dùng
Kerberos phải đăng ký với Kerberos
+ Kerberos cung cấp khoá cho tất cả người dùng đã đăng ký với
Kerberos
SVTH: Nguyễn Hải Điềm GVHD: Nguyễn Duy Tân
22
Bài tập lớn môn: An Toàn Thông Tin
1) C AS:
ID
c
||ID
tgs
||TS
1
(2) AS C:
E(K
c
, [K
c,tgs
||ID

tgs
||TS
2
||Lifetime
2
||Ticket
tgs
])
(3) C TGS:
ID
tgsrem
||Ticket
tgs
||Authenticator
c
(4) TGS C:
E(K
c,tgs
, [K
c,tgsrem
||ID
tgsrem
||TS
4
||Ticket
tgsrem
])
(5) C TGS
rem
:

ID
vrem
||Ticket
tgsrem
||Authenticator
c
(6) TGS
rem
C:
E(K
c,tgsrem
, [K
c,vrem
||ID
vrem
||TS
6
||Ticket
vrem
])
(7) C V
rem
:
Ticket
vrem
||Authenticator
c
V) Giao thức SSL (Secure Sockets Layer)
1) Giới thiệu về SSL
SVTH: Nguyễn Hải Điềm GVHD: Nguyễn Duy Tân

23
Bài tập lớn môn: An Toàn Thông Tin
SSL là giao thức được biết đến nhiều nhất về khả năng bảo mật và độ tin cậy
trong giao dịch khách - chủ (client-server) trên mạng internet. Bản thân SSL
được dựa trên các khái niệm khá đơn giản. Nó sắp xếp các thuật toán mã hoá
và khoá giữa 2 lần gửi - nhận của một giao dịch. Sau đó thiết lập một đưòng
dẫn ảo mã hoá thông qua các giao thức khác (như HTTP). SSL cũng có thể
thẩm định cả hai chiều của giao dịch thông qua việc dùng các “chứng chỉ”
(certificate).
SSL là giao thức tầng (Application layer), bao gồm 4 giao thức con sau:
• Giao thức SSL Handshake
• Giao thức SSL Change Cipher Spec
• Giao thức SSL Alert
• SSL Record Layer
Vị trí của các giao thức trên, tương ứng với mô hình TCP/IP được minh hoạ
theo biểu đồ sau:
Biểu đồ 1. Các giao thức con của SSL trong mô hình TCP/IP
Theo biểu đồ trên, SSL nằm trong tầng ứng dụng của giao thức TCP/IP. Do
đặc điểm này, SSL có thể được dùng trong hầu hết mọi hệ điều hành hỗ trợ
TCP/IP mà không cần phải chỉnh sửa nhân của hệ thống hoặc ngăn xếp
SVTH: Nguyễn Hải Điềm GVHD: Nguyễn Duy Tân
24
Bài tập lớn môn: An Toàn Thông Tin
TCP/IP. Điều này mang lại cho SSL sự cải tiến mạnh mẽ so với các giao thức
khác như IPSec (IP Security Protocol). Vì giao thức này đòi hỏi nhân hệ điều
hành phải hỗ trợ và chỉnh sửa ngăn xếp TCP/IP. SSL cũng có thể dễ dàng vượt
qua tường lửa và proxy, cũng như NAT (Network Address Translation) mà
không cần nguồn cung cấp.
2) Cách hoạt động của SSL
Biểu đồ dưới đây sẽ chỉ ra một cách đơn giản với từng bước quá trình thiết lập

kết nối SSL giữa máy khách (client – dùng một đường dẫn web browser) và
máy chủ (server – dùng một SSL web server)
SVTH: Nguyễn Hải Điềm GVHD: Nguyễn Duy Tân
25

×