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

Bảo đảm an toàn thông tin trên web sử dụng kỹ thuật mã hóa ứng dụng và gửi nhận công văn tài liệu trong hệ thống mạng quân 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 (2.63 MB, 71 trang )

ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

ĐỖ QUỐC TRƯỞNG

ĐẢM BẢO AN TOÀN THÔNG TIN TRÊN WEB SỬ DỤNG KỸ
THUẬT MÃ HÓA ỨNG DỤNG VÀO GỬI NHẬN CÔNG VĂN TÀI
LIỆU TRONG HỆ THỐNG MẠNG QUÂN SỰ

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

Thái Nguyên - 2020


ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG

ĐỖ QUỐC TRƯỞNG

ĐẢM BẢO AN TOÀN THÔNG TIN TRÊN WEB SỬ DỤNG KỸ
THUẬT MÃ HÓA ỨNG DỤNG VÀO GỬI NHẬN CÔNG VĂN TÀI
LIỆU TRONG HỆ THỐNG MẠNG QUÂN SỰ
Chuyên ngành: Khoa học máy tính
Mã số chuyên ngành: 8480101
LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH
Người hướng dẫn khoa học: TS PHẠM THẾ QUẾ

Thái Nguyên - 2020


LỜI CAM ĐOAN


Tôi xin cam đoan luận văn này là công trình nghiên cứu của chính bản
thân, luận văn này hoàn toàn được hình thành và phát triển từ quan điểm của
chính cá nhân tôi, dưới sự hướng dẫn chỉ bảo của TS Phạm Thế Quế. Các kết
quả nghiên cứu trong luận văn là trung thực và chưa được công bố trong các
công trình nào khác.
Học viên

Đỗ Quốc Trưởng


LỜI CẢM ƠN
Để hoàn thành luận văn “Đảm bảo an toàn thông tin trên web sử dụng
kỹ thuật mã hóa ứng dụng vào gửi nhận công văn tài liệu trong hệ thống
mạng Quân sự” học viên đã nhận được sự hướng dẫn và giúp đỡ nhiệt tình
của nhiều tập thể và cá nhân.
Trước hết, học viên xin bày tỏ lòng biết ơn chân thành đến ban lãnh đạo
cùng quý thầy cô trong khoa Công nghệ thông tin - Trường Đại học Công
nghệ thông tin và truyền thông, Đại học Thái Nguyên đã tận tình dạy dỗ,
truyền đạt kiến thức, kinh nghiệm và tạo điều kiện thuận lợi cho học viên
trong suốt thời gian học tập và thực hiện đề tài.
Đặc biệt, xin bày tỏ lòng biết ơn sâu sắc đến thầy hướng dẫn TS. Phạm
Thế Quế, người đã gợi cho học viên những ý tưởng về đề tài, đã tận tình hướng
dẫn và giúp đỡ để đề tài được thực hiện và hoàn thành.
Tôi cũng xin cảm ơn cơ quan, bạn bè đồng nghiệp, gia đình và những
người thân đã cùng chia sẻ, giúp đỡ, động viên, tạo điều kiện thuận lợi để tôi
hoàn thành tốt nhiệm vụ học tập và hoàn thành bản luận văn.
Thái nguyên, ngày.... tháng…. năm 2020
Học viên

Đỗ Quốc Trưởng



i
MỤC LỤC
MỞ ĐẦU .......................................................................................................... 06
Chương 1: TỔNG QUAN VỀ AN TOÀN THÔNG TIN VÀ BẢO MẬT
TRÊN WEB ..................................................................................................... 09
1.1. Quá trình phát triển của web ...................................................................... 09
1.2. Quá trình phát triển của web ...................................................................... 09
1.3. Các hiểm họa đối với an toàn thông tin trên web ...................................... 09
1.3.1. Tấn công vào vùng ẩn ......................................................................... 09
1.3.2. Can thiệp vào tham số trên URL......................................................... 10
1.3.3. Tấn công dùng cookie ......................................................................... 10
1.3.4. Các lỗ hổng bảo mật............................................................................ 10
1.3.5. Cấu hình không an toàn ...................................................................... 10
1.3.6. Tràn bộ đệm ........................................................................................ 10
1.3.7. Tấn công từ chối dịch vụ DoS (Denial of Service)............................. 11
1.4. Các vấn đề bảo mật ứng dụng web ............................................................ 11
1.4.1. Giao thức IPSec................................................................................... 11
1.4.2. Giao thức SSL và TLS ........................................................................ 11
1.4.3. Giao thức SET ..................................................................................... 14
1.4.4. So sánh giữa SET và SSL ................................................................... 16
1.5. An toàn thông tin trong môi trường web ................................................... 17
1.5.1. Vấn đề an toàn thông tin ..................................................................... 17
1.5.2. Chứng chỉ số và cơ chế xác thực ........................................................ 17
1.5.3. Chứng chỉ khóa công khai .................................................................. 21
1.6. Kết luận chương ......................................................................................... 25
Chương 2: MÃ KHÓA ĐỐI XỨNG, MÃ KHÓA CÔNG KHAI, CHỮ KÝ
SỐ TRONG BẢO MẬT GỬI NHẬN CÔNG VĂN TÀI LIỆU GIỮA CÁC
ĐƠN VỊ TRONG QUÂN SỰ.......................................................................... 26

2.1. Mã khóa đối xứng ...................................................................................... 26
2.1.1. Định nghĩa ........................................................................................... 26


ii
2.1.2. Chuẩn mã hóa dữ liệu DES ................................................................. 27
2.2. Mã khóa bất đối xứng (mã hóa khóa công khai) ....................................... 32
2.2.1. Giới thiệu chung .................................................................................. 32
2.2.2. Hệ mật mã RSA .................................................................................. 35
2.2.3. Hàm băm ............................................................................................. 39
2.3. Chữ ký số ................................................................................................... 42
2.3.1. Khái niệm ............................................................................................ 42
2.3.2. Phân loại chữ ký số ............................................................................. 43
2.3.3. Một số lược đồ chữ ký cơ bản............................................................. 46
2.3.4. Quá trình ký và xác thực chữ ký số .................................................... 51
2.3.5. Các phương pháp tấn công chữ ký điện tử ......................................... 52
2.4. Bảo mật việc gửi nhận công văn tài liệu trong hệ thống Quân sự ............. 52
2.4.1. Trình tự quản lý công văn tài liệu chuyển đi ...................................... 53
2.4.2. Kiểm tra, đăng ký và đóng dấu công văn tài liệu ............................... 53
2.4.3. Trình tự quản lý công văn tài liệu đến ................................................ 53
2.5. Kết luận chương ......................................................................................... 53
Chương 3: XÂY DỰNG CHƯƠNG TRÌNH BẢO MẬT GỬI NHẬN
CÔNG VĂN TÀI LIỆU TRONG HỆ THỐNG MẠNG QUÂN SỰ........... 55
3.1. Hiện trạng về gửi nhận công văn tài liệu ở các đơn vị Quân sự ................ 55
3.2. Bảo đảm an toàn thông tin trong đơn vị Quân sự ...................................... 57
3.3. Cài đặt chương trình và thử nghiệm........................................................... 59
3.4. Đáng giá kết quả thử nghiệm chương trình ............................................... 63
KẾT LUẬN ...................................................................................................... 64
KIẾN NGHỊ VÀ HƯỚNG PHÁT TRIỂN .................................................... 65
TÀI LIỆU THAM KHẢO .............................................................................. 66



iii
DANH MỤC CÁC THUẬT NGỮ, TỪ VIẾT TẮT
Từ viết tắt

Tiếng anh

Nghĩa tiếng việt

CA

Certificate Authority

Cơ quan chứng thực chữ ký số

DS

Digital Signatures

Chữ ký số

Digital Signature

Giải thuật ký điện tử

DSA

Algorithm


DES

Data Encryption Standard

Chuẩn mã hóa dữ liệu

DSS

Digital Signature Standard

Chuẩn chữ ký số

DoS

Denial of Service

Tấn công từ chối dịch vụ

FTP

File Transfer Protocol

Giao thức truyền tập tin

HTML

HTTP

LDAP


RSA

Hypertext Markup
Language
Hypertext Transfer

Ngôn ngữ đánh dấu siêu văn bản

Giao thức truyền siêu văn bản

Protocol
Lightweight Directory

Giao thức ứng dụng truy cập các

Access Protocol

cấu trúc thư mục

Rivest, Shamir and
Adleman

Giải thuật mã hóa công khai

PKI

Public Key Infrastructure

Cơ sở hạ tầng khóa công khai


SHA

Secure Hash Algorithm

Giải thuật băm an toàn

SSL

Secure Socket Layer

Giao thức an ninh thông tin


iv

Từ viết tắt
SQL

TCP/IP

TLS
URL

Tiếng anh

Nghĩa tiếng việt

Structured Query Language Ngôn ngữ truy vấn
Transmission Control


Một hệ thống các giao thức hỗ trợ

Protocol/Internet Protocol

việc truyền thông tin trên mạng

Transport Layer Security

Bảo mật tầng giao vận

Uniform Resource Locator Định vị tài nguyên thống nhất


v
DANH MỤC HÌNH VẼ
Hình 1.1: Mô hình hoạt động của web .............................................................. 09
Hình 1.2: Sử dụng SSL gửi và nhận trên internet ............................................. 12
Hình 1.3: Sơ đồ hoạt động của SSL .................................................................. 14
Hình 1.4: Dùng mật khẩu để xác thực máy khách kết nối tới máy dịch vụ...... 18
Hình 1.5: Chứng thực của máy khách kết nối tới máy dịch vụ ........................ 20
Hình 1.6: Sơ đồ hoạt động của Hệ thống cấp chứng chỉ khóa công khai ......... 22
Hình 1.7: Mô hình dây chuyền chứng thực ...................................................... 24
Hình 2.1: Sơ đồ mã hóa khóa đối xứng ............................................................ 26
Hình 2.2: Một vòng của DES ............................................................................ 28
Hình 2.3: Hàm f của DES ................................................................................. 29
Hình 2.4: Sơ đồ thuật toán tạo các khóa từ K1 đến K16 .................................. 30
Hình 2.5: Sơ đồ mô tả chi tiết DES ................................................................... 31
Hình 2.6: Gửi nhận tài liệu mã hóa bất đối xứng .............................................. 33
Hình 2.7: Sơ đồ mô tả chi tiết thuật toán RSA ................................................. 37
Hình 2.8: Sơ đồ mô tả bản băm thông điệp....................................................... 39

Hình 2.9: Đường đi đúng của thông tin ............................................................ 40
Hình 2.10: Thông tin bị lấy trộm và đã bị thay đổi trên đường truyền ............. 40
Hình 2.11: Mô hình lược đồ chữ ký khôi phục thông điệp ............................... 46
Hình 2.12: Quá trình ký thông điệp .................................................................. 51
Hình 2.13: Mô hình lược đồ chữ ký khôi phục thông điệp ............................... 52
Hình 3.1: Sử dụng thiết bị lưu trữ di động để trao đổi tài liệu (USB) .............. 55
Hình 3.2: Sử dụng máy tính kết nối internet để gửi tài liệu.............................. 56
Hình 3.3: Chương trình gửi nhận công văn tài liệu đang triển khai ................. 56
Hình 3.4: Giao diện tạo khóa ............................................................................ 59
Hình 3.5: Giao diện gửi tài liệu......................................................................... 60
Hình 3.6: Giao diện lựa chọn các chế độ gửi tài liệu ........................................ 60
Hình 3.7: Giao diện tài liệu đến khi gửi bảo mật và ký số ............................... 61
Hình 3.8: Giao diện giải mã tài liệu thành công ............................................... 61
Hình 3.9: Giao diện xác thực chữ ký tài liệu thành công.................................. 62
Hình 3.10: Giao diện xác thực chữ ký tài liệu không thành công .................... 62


6
MỞ ĐẦU
1. Đặt vấn đề
1.1. Sự cần thiết lựa chọn đề tài
Hiện nay tình hình an toàn thông tin số ở nước ta diễn biến phức tạp đe
dọa nghiêm trọng đến ứng dụng công nghệ thông tin phục vụ phát triển kinh tế
xã hội và đảm bảo Quốc phòng an ninh. Bảo mật và đảm bảo an toàn thông tin
dữ liệu đang nhiều nhà khoa học tập trung nghiên cứu, là một chủ đề rộng có
liên quan đến nhiều lĩnh vực, trong thực tế có thể có nhiều phương pháp được
thực hiện để đảm bảo an toàn thông tin dữ liệu. Ngày nay, với sự phát triển
nhanh chóng của hạ tầng truyền thông, người sử dụng dựa trên nền tảng này để
truyền các thông tin trên mạng thì các nguy cơ xâm nhập vào các hệ thống
thông tin, các mạng dữ liệu ngày càng gia tăng. Nhiều chuyên gia đang tập

trung nghiên cứu và tìm mọi giải pháp để đảm bảo an toàn, an ninh cho hệ
thống, đặc biệt là các hệ thống mạng máy tính trong Quân sự. Việc bảo mật cho
hệ thống mạng máy tính có thể thực hiện theo nhiều phương diện, ở nhiều tầng
khác nhau, bao gồm từ phương diện kiểm soát truy nhập vật lý vào hệ thống,
thực hiện sửa chữa, cập nhật, nâng cấp hệ điều hành cũng như vá mọi lỗ hổng
về an ninh, quản lý các hoạt động gửi nhận công văn và truyền tải văn bản trên
mạng (Giám sát qua tường lửa, các bộ định tuyến Router, phát hiện và phòng
ngừa sự xâm nhập,…) xây dựng các giải pháp bảo mật ở mỗi phần mềm để
quản lý người dùng thông qua việc cấp quyền sử dụng, mật khẩu, mật mã, mã
hóa dữ liệu để che giấu thông tin.
Trên thực tế hiện nay các chiến lược Quân sự Quốc phòng các phương
án tác chiến, các bí mật về khoa học Quân sự cho đến các công văn tài liệu bí
mật, tuyệt mật đều được tạo lập soạn thảo lưu trữ trên các máy tính. Do không
kiểm soát được việc sử dụng các thiết bị lưu trữ di động như USB, thẻ nhớ, ổ
cứng di động hay các thiết bị thu phát sóng như USB 3G, Wifi…nên tất các các
tài nguyên thông tin Quân sự đang nằm trên không gian mạng đều có thể bị lộ
lọt, bị làm giả, bị chỉnh sửa…Nhận thức được vấn đề nêu trên nên em đã chọn
đề tài: “Đảm bảo an toàn thông tin trên web sử dụng kỹ thuật mã hóa ứng dụng


7
vào gửi nhận công văn tài liệu trong hệ thống mạng Quân sự”. Làm luận văn
báo cáo tốt nghiệp của mình.
1.2. Mục tiêu nghiên cứu của đề tài
Nghiên cứu một số kỹ thuật mã hóa, chữ ký số sử dụng trên môi trường
Web. Sau đó là xây dựng chương trình ứng dụng vào thực tế đơn vị.
2. Đối tượng và phạm vi nghiên cứu
Đối tượng nghiên cứu của đề tài là đảm bảo an toàn dữ liệu gửi trên môi
trường Web, các giao thức bảo mật, các thuật toán mã hóa đối xứng (như DES),
bất đối xứng (như mật mã khóa công khai RSA), chữ ký số, ứng dụng mã hóa

và chữ ký số trong gửi nhận công văn tài liệu trên hệ thống mạng Quân sự.
3. Hướng nghiên cứu của đề tài
- Nghiên cứu các vấn đề mất an toàn thông tin trên môi trường web, cơ
sở khoa học của mã hóa, chữ ký số của các tác giả trong và ngoài nước, các bài
báo thông tin trên mạng từ đó trình bày theo ý tưởng của mình và đề xuất các
giải pháp bảo mật, an toàn thông tin trong gửi nhận công văn tài liệu qua mạng
của các đơn vị trong toàn quân.
- Cài đặt đưa vào triển khai thực tiễn tại đơn vị chương trình gửi nhận
công văn tài liệu để làm nổi bật tính bảo mật, an toàn thông tin so với các
chương trình cũ hiện hành.
4. Cấu trúc của luận văn
Luận văn gồm: Phần mở đầu, ba chương chính, kết luận và tài liệu tham
khảo cụ thể:
Phần mở đầu: Trình bày lý do chọn đề tài và bố cục của luận văn
Chương 1: Tổng quan về an toàn thông tin và bảo mật trên web
Chương 2. Mã khóa đối xứng, mã khóa công khai, chữ ký số trong bảo mật
gửi nhận công văn tài liệu giữa các đơn vị trong Quân sự
Chương 3. Xây dựng chương trình bảo mật gửi nhận công văn tài liệu
trong hệ thống mạng Quân sự
Kết luận và hướng phát triển của luận văn


8
5. Phương pháp nghiên cứu
- Thu thập, phân tích và tổng các tài liệu, thông tin về các nội dung có
liên quan đến đề tài.
- Tìm hiểu về các hiểm họa an toàn thông tin trên web.
- Tìm hiểu về hệ mật mã đối xứng, hệ mật mã bất đối xứng, chữ ký số để
mã hóa dữ liệu, xác thực thông tin trong gửi nhận công văn tài liệu.
- Phân tích nghiệp vụ gửi nhận công văn hiện tại ở đơn vị để xây dựng

chương trình gắn sát với thực tế người sử dụng đảm bảo an toàn thông tin cho
tài liệu.
6. Ý nghĩa khoa học của đề tài
- Ứng dụng các dịch vụ của web kết hợp với các giải pháp an toàn thông
tin, chú trọng nghiên cứu khóa công khai, chữ ký số để xây dựng phần mềm
gửi/nhận công văn tài liệu trên hệ thống mạng Quân sự. Hệ thống đáp ứng yêu
cầu về truyền tài thông tin trong Quân sự: “Kịp thời, chính xác, bí mật, an toàn”,
góp phần hiện đại hóa Quân đội.
- Cài đặt thành công chương trình đưa vào sử dụng thực tế tại đơn vị.


9
CHƯƠNG 1
TỔNG QUAN VỀ AN TOÀN THÔNG TIN VÀ BẢO MẬT TRÊN WEB
1.1. Quá trình phát triển của web
Ý tưởng về web do Tim Berners Lee, ông đã phát minh ra một giao thức
cơ bản cho việc chuyển tải các tài liệu lên mạng là HTTP, ngôn ngữ đánh dấu
siêu văn bản HTML để mô tả cấu trúc của một tài liệu. Kể từ khi ra đời web đã
phát triển không ngừng và đã trải qua các thế hệ web 1.0, web 2.0, web 3.0,
web 4.0, web 5.0.
1.2. Mô hình hoạt động của web
Từ một trình duyệt, người dùng gõ vào địa chỉ của một trang web, trình
duyệt sẽ thực hiện một kết nối tới máy chủ tên miền để chuyển đổi tên miền ra
địa chỉ IP tương ứng. Sau đó, trình duyệt sẽ gửi tiếp một kết nối tới máy chủ
của website có địa chỉ IP này qua cổng 80. Dựa trên giao thức HTTP, trình
duyệt sẽ gửi yêu cầu GET đến máy chủ. Khi đó máy chủ sẽ xử lý các yêu cầu
của người dùng, rồi gửi trả kết quả về cho phía client.

Hình 1.1: Mô hình hoạt động của web
1.3. Các hiểm hoạ đối với an toàn web

1.3.1. Tấn công vào vùng ẩn
Dựa vào chức năng "View Source" của trình duyệt mà có thể biết được
thông tin về các phiên làm việc của client do đó có thể tìm ra sơ hở của trang
web mà ta muốn tấn công và từ đó có thể truy cập vào hệ thống của máy chủ...


10
1.3.2. Can thiệp vào tham số trên URL
Dùng các câu lệnh SQL để khai thác cơ sở dữ liệu trên server bị lỗi, điển
hình nhất là tấn công bằng "SQL INJECT". Khi hacker gửi những dữ liệu (thông
qua các form), ứng dụng web sẽ thực hiện và trả về trình duyệt kết quả câu truy
vấn hay những thông báo lỗi có liên quan đến cơ sở dữ liệu và từ đó có thể điều
khiển toàn bộ hệ thống ứng dụng.
1.3.3. Tấn công dùng cookie
Cookie là những phần dữ liệu nhỏ có cấu trúc được chia sẻ giữa trình chủ
và trình duyệt của người dùng chứa thông tin về người dùng đã ghé thăm trang
web và những vùng mà họ đã đi qua trong trang web và lưu trên đĩa cứng của
máy tính. Những người biết tận dụng những thông tin này có thể gây nên những
hậu quả nghiêm trọng.
1.3.4. Các lỗ hổng bảo mật
Hiện nay các lỗ hổng được phát hiện ra ngày càng nhiều về hệ điều hành,
máy chủ web, và các phần mềm của các hãng khác... Tuy khi phát hiện ra được
và có bổ sung các bảng path nhưng các khách hàng không cập nhật thường
xuyên nên là cơ hội cho các hacker tấn công.
1.3.5. Cấu hình không an toàn
Các phần mềm và hệ điều hành trên máy chủ không được cập nhật với
bản vá lỗi bảo mật mới nhất, không phân đúng quyền cho các thư mục và tập
tin trong trang web, những chức năng quản lý và debug được triển khai không
cần thiết, phần mềm web server đăng quá nhiều thông tin trong trang báo lỗi,
cấu hình SSL và các hàm mã hóa không đúng.

1.3.6. Tràn bộ đệm
Tin tặc gửi một đoạn mã được thiết kế đặc biệt đến ứng dụng, tin tặc có
thể làm cho ứng dụng web thi hành bất kỳ đoạn mã nào, điều này tương đương
với việc chiếm quyền làm chủ máy server.


11
1.3.7. Tấn công từ chối dịch vụ DoS (Denial of Service)
Là các cuộc tấn công trên hệ thống mạng nhằm ngăn cản những truy xuất
tới các dịch vụ, làm cho các dịch vụ mạng bị tê liệt, không còn khả năng đáp
ứng được yêu cầu bằng cách làm tràn ngập số lượng kết nối, quá tải server hoặc
ứng dụng chạy trên server.
1.4. Các vấn đề bảo mật ứng dụng web
1.4.1. Giao thức IPSec
- IPSec là một tiêu chuẩn nhằm bổ sung an toàn cho Internet, được xác
định trong RFC 1825, so với giao thức IP, IPSec thêm vào hai trường mào đầu
IP để cung cấp tính năng xác thực và bảo mật tại lớp IP.
- IPSec có hai cơ chế mã hoá là Tunnel Mode và Transport Mode, sử
dụng thuật toán mã hoá đối xứng để mã hoá truyền thông. Các thực thể tham
gia truyền thông sử dụng các khoá chia sẻ được tạo ra bằng thuật toán DiffieHellman kèm với việc xác thực để đảm bảo khoá đối xứng được thiết lập giữa
những bên truyền thông một cách chính xác.
- Trước khi IPSec trao đổi dữ liệu đã xác thực hoặc mã hoá, cả bên gửi
và bên nhận phải thống nhất với nhau về thuật toán mã hoá và khoá (hoặc các
khoá) sử dụng.
1.4.2. Giao thức SSL và TLS
1.4.2.1. Lịch sử SSL, TLS
Giao thức SSL (Secure Socket Layer) đầu tiên do Netscape phát triển để
bảo mật dữ liệu gửi và nhận trên Internet của các giao thức thuộc lớp ứng dụng
như HTTP, LDAP hay POP3. Các phiên bản gồm: SSL 1.0, SSL 2.0 - 1994,
SSL 3.0 - 1996. SSL nhanh chóng hoàn thiện qua các phiên bản sau đó nó trở

thành giao thức phổ biến nhất cho an toàn truyền thông trên WWW.
Tổ chức IETF (Internet Engineering Task Force) đã chuẩn hoá SSL và
đặt lại tên là TLS (Transport Layer Security). Mặc dù là có sự thay đổi về tên
nhưng TSL chỉ là một phiên bản mới của SSL. Phiên bản TLS v1.0 (được biết


12
đến như là SSL v3.1)-1999 tuy nhiên các giao thức hoạt động không được đầy
đủ. TLS còn được nâng cấp hơn nữa các chức năng qua các phiên bản TLS v1.1
vào năm 2006, TLS v1.2 vào năm 2008, TLS v1.3 vào năm 2018. Tuy nhiên
SSL là thuật ngữ được sử dụng rộng rãi hơn.

Hình 1.2: Sử dụng SSL gửi và nhận trên internet
1.4.2.2. Nhiệm vụ và kiến trúc SSL
- Nhiệm vụ: Xác thực server, xác thực client, mã hoá kết nối.
- Kiến trúc SSL: Gồm 4 giao thức con sau: SSL Handshake, SSL Change
Cipher Spec, SSL Alert, SSL Record Layer.
-

SSL là một lớp (bảo mật) trung gian giữa lớp vận chuyển và lớp ứng

dụng. SSL được xếp lớp lên trên một dịch vụ vận chuyển định hướng nối kết
và đáng tin cậy, SSL nằm trong tầng ứng dụng của giao thức TCP/IP.
-

SSL Record Protocol: Sử dụng để trao đổi tất cả các kiểu dữ liệu trong

một phiên - bao gồm các thông điệp, dữ liệu của các giao thức SSL khác và dữ
liệu của ứng dụng. SSL Record Protocol liên quan đến việc bảo mật và đảm
bảo toàn vẹn dữ liệu, mục đích là thu nhận những thông điệp mà ứng dụng

chuẩn bị gửi, phân mảnh dữ liệu cần truyền, đóng gói, bổ xung header tạo thành
một đối tượng bản ghi được mã hoá và có thể truyền bằng giao thức TCP.
-

Handshake Protocol: Giao thức này được sử dụng để khởi tạo phiên SSL

giữa client và server, nhờ giao thức này các bên sẽ xác thực lẫn nhau và thoả
thuận các tham số cho phiên làm việc sẽ được thiết lập.


13
-

Alert Protocol: Sử dụng để mang các thông điệp của phiên liên quan tới

việc trao đổi dữ liệu và hoạt động của các giao thức.
-

Change Cipher Spec Protocol: Chứa một thông điệp mang giá trị 1 làm

chuyển trạng thái của một phiên từ “đang chờ” sang “bền vững”.
1.4.2.3. Hoạt động của SSL
Khi trình duyệt của một máy khách đến một Website bí mật của một máy
chủ, máy chủ gửi một lời chào tới trình duyệt. Trình duyệt đáp lại bằng một lời
chào. Việc tiến hành trao đổi lời chào, hoặc bắt tay cho phép 2 máy tính quyết
định các chuẩn mã hoá và nén (mà chúng cùng hỗ trợ).
Trình duyệt máy khách yêu cầu máy chủ đưa ra một chứng chỉ số. Máy
chủ gửi cho trình duyệt một chứng chỉ đã được công nhận bởi CA. Trình duyệt
kiểm tra chữ ký số có trên chứng chỉ của máy chủ, dựa vào khoá công khai của
CA, khoá này được lưu giữ trong trình duyệt. Hoạt động này xác thực máy chủ

thương mại.
Máy khách và máy chủ thoả thuận rằng mọi trao đổi phải được giữ bí
mật, bởi vì những thông tin này là quan trọng. Để thực hiện bí mật, SSL sử
dụng mã hoá khoá công khai (không đối xứng) và mã hoá khoá riêng (đối xứng).
Thoạt đầu, trình duyệt sinh ra một khoá riêng dùng chung cho cả hai. Sau đó,
trình duyệt mã hoá khoá riêng bằng khoá công khai của máy chủ. Khoá công
khai của máy chủ được lưu giữ trong chứng chỉ số, máy chủ gửi chứng chỉ này
cho trình duyệt trong quá trình xác thực. Một khi khoá được mã hoá, trình duyệt
gửi nó cho máy chủ. Ngược lại, máy chủ giải mã thông báo bằng khoá riêng
của nó và tìm ra khoá riêng dùng chung. Tất cả các thông báo giữa máy khách
và máy chủ được mã hoá bằng khoá riêng dùng chung (cũng được biết đến như
là một khoá phiên).
Sau khi kết thúc phiên giao dịch, khoá phiên bị huỷ bỏ. Một kết nối mới
lại bắt đầu tương tự.


14

Hình 1.3: Sơ đồ hoạt động của SSL
1.4.3. Giao thức SET
1.4.3.1. Giới thiệu tổng quan về SET
SET là một giao thức chuẩn để đảm bảo an toàn cho các giao dịch thẻ tín
dụng trong các mạng không an toàn và Internet. SET không phải là một hệ
thống thanh toán mà là một bộ các giao thức và khuôn dạng an toàn cho phép
người sử dụng triển khai cơ sở hạ tầng thanh toán bằng thẻ tín dụng trên một
mạng một cách an toàn.
1.4.3.2. Nguyên tắc thanh toán bằng thẻ với giao thức SET
Trong giao thức SET, có 5 thực thể gồm: Chủ thẻ, Thương nhân, Ngân
hàng thương nhân, Tổ chức cấp thẻ, Cơ quan chứng thực.
1.4.3.3. Mô tả một quá trình giao dịch

Bước 1: Chủ thẻ và thương nhân đăng ký với một CA để nhận được
chứng chỉ số.
Bước 2: Khách hàng duyệt website và đặt mua hàng với hình thức thanh
toán là SET.


15
- Thương nhân gửi một bản sao chứng chỉ của mình để khách hàng xác
minh rằng đây là một kho hàng hợp lệ. Thương nhân cũng gửi chứng chỉ số của
ngân hàng thanh toán.
- Khách hàng nhận và xác minh chứng chỉ của Thương nhân để khẳng
định thương nhân đó có hợp lệ hay không.
- Khách hàng gửi thông điệp đặt hàng cho thương nhân bao gồm thông
tin đặt hàng, thông tin thanh toán và thông tin để đảm bảo thanh toán chỉ có thể
được thực hiện với lệnh cụ thể này. Thông tin đặt hàng được mã hoá bằng khoá
công khai của Thương nhân, còn thông tin thanh toán được mã hoá bằng khoá
công khai của ngân hàng.
- Thương nhân xác minh khách hàng và yêu cầu Ngân hàng thương nhân
uỷ quyền thanh toán bằng cách gửi lệnh đặt hàng bao hàm khoá công khai của
ngân hàng, thông tin thanh toán của khách hàng và chứng chỉ của Thương nhân.
- Ngân hàng thương nhân xác minh và uỷ quyền thanh toán.
- Thương nhân xác nhận lệnh và giao hàng và điền uỷ quyền này vào
lệnh rồi gửi xác nhận lệnh cho khách hàng, sau đó giao hàng cho khách hàng.
Thông qua ngân hàng thanh toán yêu cầu ngân hàng của chủ thẻ thanh toán. Để
khởi động thanh toán, thương nhân tạo và ký một yêu cầu cầm giữ và gửi cho
cổng nối thanh toán. Do đã có uỷ quyền, cổng nối thanh toán chuyển yêu cầu
cầm giữ thành nguồn tiền chuyển vào tài khoản của Thương nhân.
- Tổ chức cấp thẻ in hoá đơn thẻ tín dụng cho khách hàng.
1.4.3.4. Mã hóa SET
- Sử dụng khóa đối xứng: Gói dữ liệu được mã hóa bằng cách dùng một

khóa đối xứng ngẫu nhiên (DES 56 bit). Khóa này được mã hóa với khóa công
khai (RSA) trong thông báo của người nhận. Kết quả thu được gọi là “Phong
bì số” của thông báo.
- Sử dụng khóa bất đối xứng, chữ ký số:


16
+ Mật mã khóa phi đối xứng: Mật mã khóa công khai được dùng để mã
hóa các khóa DES và dùng để xác thực, mỗi lần SET thực hiện xử lý dùng hai
cặp khóa bất đối xứng: một cặp khóa trao đổi để mã hóa và giải mã khóa phiên,
và một cặp “signature” để tạo và xác minh các chữ ký số (160 bit).
+ Chữ ký số: Nhằm bảo đảm tính xác thực và toàn vẹn của thông báo,
người nhận ký số có thể chắc chắn rằng thông báo thật sự đến từ người gửi.
+ Chứng chỉ số: Dùng để xác nhận bên tham gia, CA sẽ tạo ra một thông
báo chứa tên của người tham gia và khóa công khai của nó.
+ Chữ ký kép: Chữ ký kép liên kết 2 thông điệp dành cho hai đối tượng
nhận khác nhau gồm thông tin đặt hàng OI cho thương nhân và thông tin thanh
toán PI cho ngân hàng.
1.4.3.5. Ưu điểm của SET
Đảm bảo tính chính xác của thông tin cho bên gửi và bên nhận, sự toàn
vẹn của thông tin trong quá trình truyền dữ liệu thông qua việc sử dụng chữ ký
số, khó bẻ khoá, bảo vệ tất cả những người tham gia hợp pháp trong giao dịch
và sử dụng một cách an toàn nhất, hạn chế tình trạng từ chối dịch vụ và lừa đảo
qua mạng do có cơ chế xác thực cả hai phía.
1.4.3.6. Hạn chế của SET
Yêu cầu phần mềm, phần cứng chuyên dụng với chi phí cao, độ trễ khi
giao dịch do tính phức tạp của các thuật toán mã hóa công khai và thường xuyên
tiến hành giao dịch với các ngân hàng trung gian, hệ thống cồng kềnh và quá
trình giao dịch chậm, các tổ chức tài chính phải trả thêm phí cài đặt và duy trì
PKI cho CA, các giao dịch dựa trên tài khoản như: séc điện tử không hỗ trợ

trong SET.
1.4.4. So sánh giữa SET và SSL
- SSL: Không sử dụng cổng nối thanh toán và Thương nhân nhận được
cả thông tin về việc đặt hàng lẫn thông tin thẻ tín dụng, thực hiện xác thực tại
thời điểm khởi đầu của mỗi phiên, không yêu cầu cơ quan chứng thực gốc.


17
- SET: Giấu thông tin về thẻ tín dụng của khách hàng đối với Thương
nhân và cùng giấu thông tin về đơn hàng đối với các ngân hàng để bảo vệ việc
riêng tư, xác thực tại mỗi lần yêu cầu/đáp ứng, Yêu cầu cơ quan chứng thực
gốc và kiến trúc phân cấp.
1.5. An toàn thông tin trong môi trường web
1.5.1. Vấn đề an toàn thông tin
An toàn thông tin là vấn đề đặc biệt quan trọng cần phải được đảm bảo
an toàn trước việc khai thác thông tin trái phép và cần tập trung vào việc bảo
vệ các tài sản khi chúng được chuyển tiếp giữa client và server phải đảm bảo
tính toàn vẹn, an toàn và bao gồm cả tính xác thực. Các kỹ thuật đảm bảo cho
an toàn giao dịch điện tử chính là sử dụng các hệ mật mã, các chứng chỉ số và
sử dụng chữ ký số trong quá trình thực hiện các giao dịch.
1.5.2. Chứng chỉ số và cơ chế xác thực
1.5.2.1. Chứng chỉ số
Chứng chỉ số là một tệp tin điện tử được sử dụng để nhận diện một cá
nhân, một tổ chức,… nó gắn định danh của đối tượng đó với một khóa công
khai, giống như bằng lái xe, hộ chiếu hoặc chứng minh thư của một người.
Cơ quan chứng thực chữ ký số (Certificate Authority - CA). Đó là một
đơn vị có thẩm quyền xác nhận định danh và cấp các chứng chỉ số. CA có thể
là một đối tác thứ ba đứng độc lập hoặc các tổ chức vận hành một hệ thống tự
cấp các chứng chỉ cho nội bộ của họ. Các phương pháp để xác định định danh
phụ thuộc vào các chính sách mà CA đặt ra. Chính sách lập ra phải đảm bảo

việc cấp chứng chỉ số là đúng đắn, ai được cấp và mục đích dùng vào việc gì.
Thông thường, trước khi cấp một chứng chỉ số, CA sẽ cung cấp một thủ
tục cần thiết phải thực hiện cho các loại chứng chỉ số. Trong chứng chỉ số chứa
một khóa công khai được gắn với một tên duy nhất của một đối tượng. Các
chứng chỉ số giúp ngăn chặn việc sử dụng khóa công khai một cách giả mạo.
Chỉ có khóa công khai được chứng thực bởi chứng chỉ số sẽ làm việc với khóa


18
bí mật tương ứng, nó được sở hữu bởi đối tượng có định danh nằm trong chứng
chỉ số. Ngoài khóa công khai, chứng chỉ số còn chứa thông tin về đối tượng
như: tên để nhận diện, hạn dùng, tên của CA cấp chứng chỉ số, mã số,…Điều
quan trọng nhất là chữ ký số phải được chứng thực bởi CA. Nó cho phép chứng
chỉ số như đã được đóng dấu để người sử dụng có thể dùng các phần mềm ký
số để kiểm tra chính các chữ số đó.
1.5.2.2. Cơ chế xác thực
Việc giao tiếp trên mạng điển hình là giữa một máy khách - Client và
một máy dịch vụ - Server. Việc chứng thực có thể thực hiện ở cả hai phía.
Có hai hình thức xác thực máy khách: Xác thực dựa trên tên truy nhập
và mật khẩu, xác thực dựa trên chứng chỉ số.
- Xác thực dựa trên tên truy nhập và mật khẩu (Username và Password).
Tất cả các máy dịch vụ cho phép người dùng nhập mật khẩu, để có thể truy
nhập vào hệ thống. Máy dịch vụ sẽ quản lý danh sách các Username, Password
này và thực hiện việc xác thực người sử dụng trước khi cho phép họ truy nhập
tài nguyên của hệ thống.

Hình 1.4: Dùng mật khẩu để xác thực máy khách kết nối tới máy dịch vụ
Khi sử dụng loại xác thực này, người dùng phải nhập mật khẩu cho mỗi
máy khách khác nhau, máy dịch vụ sẽ lưu lại dấu vết của các mật khẩu này cho
mỗi người dùng. Quá trình này được thưc hiện theo các bước sau:



19
Bước 1: Để đáp lại yêu cầu từ máy dịch vụ, máy khách sẽ hiện hộp thoại
yêu cầu nhập mật khẩu, người dùng phải nhập mật khẩu cho mỗi máy dịch vụ
khác nhau trong cùng một phiên làm việc.
Bước 2: Máy khách gửi mật khẩu qua mạng, không cần một hình thức
mã hóa nào.
Bước 3: Máy dịch vụ tìm kiếm mật khẩu trong cơ sở dữ liệu.
Bước 4: Máy dịch vụ xác định xem mật khẩu đó có quyền truy cập vào
những tài nguyên nào của hệ thống.
- Xác thực dựa trên chứng chỉ số: Máy khách ký số vào dữ liệu, sau đó
gửi cả chữ ký số và chứng chỉ số qua mạng. Máy dịch vụ sẽ dùng kỹ thuật mã
hóa khóa công khai để kiểm tra chữ ký và xác định tính hợp lệ của chứng chỉ
số. Chứng chỉ số có thể thay thế 3 bước đầu của phương pháp chứng thực bằng
mật khẩu với cơ chế cho phép người dùng chỉ phải nhập mật khẩu một lần và
không phải truyền qua mạng, người quản trị có thể điều khiển quyền truy nhập
một cách tập trung.
Chứng chỉ số chứng thực cho máy khách kết nối tới máy dịch vụ có dùng
giao thức bảo mật SSL truyền thông tin an toàn, máy khách và máy chủ quản
lý các hoạt động mã hóa và giải mã trong một phiên Web an toàn qua mạng,
giao thức SSL là một phiên bản an toàn của HTTP, được gọi là HTTPs, SSL
có 2 độ dài của khóa phiên riêng được sinh ra trong mọi giao dịch có mã hóa là
40 bits và 128 bits). Máy khách phải có chứng chỉ số để cho máy dịch vụ nhận
diện. Sử dụng chứng chỉ số để chứng thực có lợi thế hơn khi dùng mật khẩu.
Bởi vì nó dựa trên những gì mà người sử dụng có: Khóa bí mật và mật khẩu để
bảo vệ khóa bí mật. Điều cần chú ý là chỉ có chủ nhân của máy khách mới được
phép truy nhập vào máy khách, phải nhập mật khẩu để vào cơ sở dữ liệu của
chương trình có sử dụng khóa bí mật.
Cả hai cơ chế xác thực trên đều phải truy nhập mức vật lý tới các máy cá

nhân. Mã hóa khóa công khai chỉ có thể kiểm tra việc sử dụng khóa bí mật
tương ứng khóa công khai trong chứng chỉ số. Nó không đảm nhận trách nhiệm


20
bảo mật vật lý và mật khẩu sử dụng của khóa bí mật. Trách nhiệm này thuộc
về người sử dụng.
Quá trình xác thực bằng chứng chỉ số thực hiện như sau:
Bước 1: Phần mềm máy khách quản lý cơ sở dữ liệu về các cặp khóa bí
mật và khóa công khai. Máy khách sẽ yêu cầu nhập mật khẩu để truy nhập vào
cơ sở dữ liệu này chỉ một lần hoặc theo định kỳ. Khi máy khách truy cập vào
máy dịch vụ có sử dụng SSL, để xác thực máy khách dựa trên chứng chỉ số,
người dùng chỉ phải nhập mật khẩu một lần, họ không phải nhập lại khi cần
truy nhập lần thứ hai.
Bước 2: Máy khách dùng khóa bí mật tương ứng với khóa công khai ghi
trong chứng chỉ số để ký lên dữ liệu được tạo ra ngẫu nhiên cho mục đích chứng
thực từ cả phía máy khách và máy dịch vụ. Dữ liệu này và chữ ký số vừa thiết
lập là một bằng chứng để xác định tính hợp lệ của khóa bí mật. Chữ ký số có
thể được kiểm tra bằng khóa công khai tương ứng với khóa bí mật đã dùng để
ký và nó là duy nhất trong mỗi phiên làm việc của giao thức SSL.
Bước 3: Máy khách gửi cả chứng chỉ số và dữ liệu kèm theo (một phần
dữ liệu được tạo ngẫu nhiên và được ký) qua mạng.

Hình 1.5. Chứng thực của máy khách kết nối tới máy dịch vụ
Bước 4: Máy dịch vụ sử dụng chứng chỉ số và dữ liệu kèm theo đó để
xác thực người dùng.


21
Bước 5: Máy dịch vụ có thể thực hiện tuỳ chọn các nhiệm vụ xác thực

khác như lưu trữ và quản lý các chứng chỉ số hoặc xác định xem người sử dụng
có những quyền gì đối với các tài nguyên của hệ thống.
1.5.3. Chứng chỉ khóa công khai
1.5.3.1. Giới thiệu chung
Khái niệm hạ tầng khóa công khai (PKI) thường được dùng để chỉ toàn
bộ hệ thống bao gồm nhà cung cấp chứng thực số cùng các cơ chế liên quan sử
dụng các thuật toán mật mã khóa công khai trong trao đổi thông tin. PKI cho
phép những người tham gia xác thực nhau và sử dụng thông tin từ các chứng
thực khóa công khai để mã hóa và giải mã thông tin trong quá trình trao đổi.
PKI cho phép các trao đổi thông tin tr ên mạng đảm bảo tính bí mật, toàn vẹn
và xác thực lẫn nhau.
Một người muốn dùng kỹ thuật mã hóa khóa công khai để mã hóa một
thông điệp và gửi cho người nhận, người gửi cần một bản sao khóa công khai
của người nhận. Khi một người bất kì muốn kiểm tra chữ ký số thì cần phải có
một bản sao khóa công khai của thành viên ký. Chúng ta gọi cả hai thành viên
mã hóa thông điệp và thành viên kiểm tra chữ ký số là những người sử dụng
khóa công khai. Một tổ chức chứng thực đóng vai trò xác nhận khóa công khai
phải thực hiện các kỹ thuật đảm bảo dễ dàng phát hiện bất kỳ sự thay đổi phần
thông tin nào chứa trong chứng chỉ.
Khi khóa công khai được gửi đến cho người sử dụng, thì không cần thiết
phải giữ bí mật khóa công khai này. Tuy nhiên người dùng khóa công khai
phải đảm bảo rằng khóa công khai đang dùng đúng là dành cho thành viên khác
(có thể là người nhận thông điệp có chủ định hoặc bộ sinh chữ ký số được yêu
cầu). Nếu Hacker dùng khóa công khai khác thay thế khóa công khai hợp lệ,
nội dung các thông điệp đã mã hóa có thể bị lộ. Vì vậy để truyền thông an toàn
giữa người gửi và người nhận thì họ phải có được bản sao khóa công khai của
nhau. Đây chính là hình thức phân phối khóa công khai thủ công.
Tuy nhiên hình thức phân phối khóa công khai kiểu này bị coi là không



×