1. Trang chủ
  2. » Luận Văn - Báo Cáo

Nghiên cứu giải pháp bảo mật thư điện tử trên hệ mã nguồn mở

80 168 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 80
Dung lượng 3,6 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Xây dựng phần mềm demo bảo mật thư tín điện tử Ý nghĩa khoa học của đề tài Xây dựng và triển khai ứng dụng chữ ký số trong bảo mật thư điện tử tích hợp trên hệ thống thư điện tử Zimbra M

Trang 1

ĐẠI HỌC THÁI NGUYÊN

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

TRẦN THU HIỀN DỊU

NGHIÊN CỨU GIẢI PHÁP BẢO MẬT

THƯ ĐIỆN TỬ TRÊN HỆ MÃ NGUỒN MỞ

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

th¸i nguyªn - n¨m 2014

Trang 2

LỜI CAM ĐOAN

Tôi cam đoan luận văn này là do bản thân nghiên cứu và thực hiện

theo sự hướng dẫn khoa học của thầy giáo TS Hồ Văn Hương.

Tôi hoàn toàn chịu trách nhiệm về tính pháp lý quá trình nghiên cứu khoa học của luận văn này

Thái Nguyên, ngày 29 tháng 09 năm 2014

Người cam đoan

Trần Thu Hiền Dịu

Trang 3

Số hóa bởi Trung tâm Học

liệu h t t p :/ / www l r c - t n u. e d u v n /

LỜI CẢM ƠN Trước tiên em xin chân thành cảm ơn thày giáo TS.Hồ Văn Hương công tác tại Ban Cơ yếu Chính phủ đã tận tình hướng dẫn, giúp đỡ, chỉ

bảo và luôn tạo điều kiện cho em hoàn thành luận văn này

Em xin chân thành cảm ơn các thày, các cô trong trường Đại Học Công Nghệ Thông Tin và Truyền Thông Thái Nguyên và Viện Công Nghệ Thông Tin đã giảng dạy, giúp đỡ và tạo điều kiện thuận lợi cho em

trong suốt thời gian học tập tại trường

Em xin gửi lời cảm ơn tới các bác, các chú và các anh chị công tác

tại Công Ty ECOIT đã cho em một môi trường rất tốt để em được thực

tập, học hỏi trong suốt quá trình thực tập và nghiên cứu luận văn tốtnghiệp

Em đã cố gắng để hoàn thành luận văn trong phạm vi và khả năngcho phép nhưng chắc chắn sẽ không tránh khỏi những khiếm khuyết Emrất mong nhận được sự cảm thông và tận tình chỉ bảo, nhận xét đóng góp

ý kiến quý báu của quý thày cô

Thái Nguyên, ngày 29 tháng 09 năm 2014

Tác giả luận văn

Trần Thu Hiền Dịu

Trang 4

Số hóa bởi Trung tâm Học

liệu h t t p :/ / www l r c - t n u. e d u v n /

MỤC LỤC Danh mục các từ viết tắt………… ………

……… iii Danh mục các hình vẽ………

……… …iv MỞ ĐẦU 1

Chương 1 TỔNG QUAN VỀ AN TOÀN THƯ TÍN ĐIỆN TỬ

4 1.1 Thư điện tử 4

1.1.1 Giới thiệu thư điện tử [11] 4

1.1.2 Tổng quan về thư điện tử 4

1.1.3 Cấu trúc thư điện tử 7

1.1.4 Các giao thức trong thư điện tử 8

1.2 Các hình thức đe dọa tính an toàn của thông tin khi sử dụng Email

10 1.2.1 Sự thiếu bảo mật trong hệ thống Email 10

1.2.2 Các nguy cơ trong quá trình gửi Email [9] 11

1.3 Hệ điều hành mã nguồn mở [3] 14

1.3.1 Giới thiệu chung về Linux 14

1.3.2 Các thành phần của Linux 15

1.3.3 Một số đặc điểm của hệ điều hành Linux 16

Chương 2 BẢO MẬT THƯ ĐIỆN TỬ DỰA TRÊN MÃ HÓA

19 2.1 Cơ sở lý thuyết mật mã [1], [2], [4] 19

2.1.1 Giới thiệu chung về mật mã 19

2.1.2 Hệ mật mã khóa công khai RSA 22

2.1.3 Thuật toán băm 23

2.1.4 Chữ ký số 24

2.1.5 Chứng thư số 28

2.2 Bảo mật email với SSL và TLS [11] 33

Trang 6

Số hóa bởi Trung tâm Học

liệu h t t p :/ / www l r c - t n u. e d u v n /

2.3.2 Khả năng tương thích với Email Client 36

2.3.3 Mã hóa và xác thực bằng PGP 37

2.3.4 Mã hóa và xác thực bằng S/MIME 39

2.4 Bảo mật email với PEM 40

2.5 Giải pháp bảo mật cho thư điện tử [7] 41

Chương 3 XÂY DỰNG PHẦN MỀM DEMO BẢO MẬT THƯ TÍN ĐIỆN TỬ 45

3.1 Giới thiệu hệ thống Zimbra Mail Server [14] 45

3.1.1 Zimbra Collaboration Suite 45

3.1.2 Quá trình cài đặt hệ thống Zimbra Mail Server 48

3.2 Phân tích thiết kế xây dựng hệ thống bảo mật thư điện tử trên Zimbra Mail Server 53

3.3 Hệ thống thư điện tử Zimbra 59

3.3.1 Khởi động hệ thống 59

3.3.2 Nạp public Key vào tài khoản 60

3.3.3 Đăng nhập bằng eToken 62

3.3.4 Gửi thư mã hóa và giải mã 63

3.3.5 Gửi thư kèm chữ ký và xác thực 65

KẾT LUẬN

67 TÀI LIỆU THAM KHẢO 68

Trang 7

CRC Cyclic Redundancy Check

DNS Domain Name System

HĐH Hệ điều hành

IMAP Internet Message Access Protocol

MTA Message Transfer Agent

MD Message Digest

PGP Pretty Good Privacy

PKI Public Key Infrastructure

POP Post Office Protocol

RA Registration Authority

RSA Rivest Shamir Adleman

SHA Secure Hash Algorithm

SMTP Simple Mail Transfer Protocol

SSL Secure Socket Layer

S/MIME Secure/Multipurpose Internet Mail Extensions

TLS Transport Layer Security

ZCS Zimbra Collaboration Suite

Trang 8

21Hình 2.3 Lược đồ tạo chữ ký số

26Hình 2.4 Lược đồ kiểm tra chữ ký số

26Hình 2.5 Mã hoá email bằng PGP

37Hình 2.6 Xác thực email bằng PGP

38Hình 2.7 Kết hợp mã hóa và xác thực email bằng PGP

38Hình 2.8 Mô hình Client/Server

42Hình 3.1 Giao diện trang đăng nhập của admin

50Hình 3.2 Giao diện trang của admin

51Hình 3.3 Giao diện trang đăng nhập cho user

51Hình 3.4 Giao diện trang webmail của user

52Hình 3.5 Giao diện soạn thư

52Hình 3.6 Sơ đồ nạp eToken

54Hình 3.7 Sơ đồ đăng nhập bằng eToken

55Hình 3.8 Sơ đồ mã hóa và giải mã thư

56Hình 3.9 Sơ đồ gửi thư kèm chữ ký và xác thực

58

Trang 9

60Hình 3.12 Nhập mã PIN của eToken

61Hình 3.13 Khung thông báo tìm thấy Public key

61Hình 3.14 Hệ thống yêu cầu nhập mã pin của eToken

62Hình 3.15 Đăng nhập thông qua eToken

62Hình 3.16 Trang màn hình hiển thị sau khi đăng nhập

63Hình 3.17 Gửi thư mã hóa

63Hình 3.18 Giải mã thư

64Hình 3.19 Kết quả sau khi giải mã

64Hình 3.20 Gửi thư kèm theo chữ ký

65Hình 3.21 Xác thực người gửi

65Hình 3.22 Kết quả xác thực

66

Trang 10

Số hóa bởi Trung tâm Học

liệu h t t p :/ / www l r c - t n u. e d u v n /

Trang 11

Số hóa bởi Trung tâm Học

số yêu cầu được đặt ra đối với việc trao đổi thông tin trên mạng:

- Bảo mật tuyệt đối thông tin trong giao dịch

- Đảm bảo tính toàn vẹn của thông tin

- Chứng thực được tính đúng đắn về pháp lí của thực thể tham giatrao đổi thông tin

Từ những yêu cầu trên vấn đề đặt ra là cần có phương pháp bảo mậtthông tin nhằm cải thiện an toàn trên Internet Việc tìm ra giải pháp bảomật dữ liệu, cũng như việc chứng nhận quyền sở hữu của cá nhân là mộtvấn đề luôn luôn mới Bảo mật phải được nghiên cứu và cải tiến để theokịp sự phát triển không ngừng của cuộc sống

- Làm thế nào để bảo mật dữ liệu?

- Làm sao để tin tức truyền đi không bị mất mát hay bị đánh tráo?

Trang 12

- Làm sao để người nhận biết được thông tin mà họ nhận được cóchính xác hay không? đã bị thay đổi gì chưa?

- Làm sao để biết được thông tin này do ai gửi đến? thuộc quyền sởhữu của ai?

Những câu hỏi được đặt ra là một thách thức rất lớn đối với nhữngngười nghiên cứu bảo mật Có rất nhiều cách thức để bảo vệ thông tin trênđường truyền, nhiều giải pháp được đề xuất như: Sử dụng mật khẩu, mãhóa dữ liệu, hay giấu sự tồn tại của dữ liệu…cùng với sự phát triển củacác biện pháp bảo mật ngày càng phức tạp, thì các hình thức tấn côngngày càng tinh vi hơn, do đó vấn đề là làm sao đưa ra một giải pháp thíchhợp và có hiệu quả theo thời gian và sự phát triển mạnh mẽ của khoa học

kỹ thuật

Với mong muốn nghiên cứu tìm hiểu giải pháp bảo mật cho thư điện

tử em đã quyết định lựa chọn đề tài : “Nghiên cứu giải pháp bảo mật thư điện tử trên hệ mã nguồn mở ”.

Đối tượng và phạm vi nghiên cứu

Đối tượng và phạm vi nghiên cứu của đề tài:

- Tổng quan về thư điện tử

- Tìm hiểu về hệ điều hành mã nguồn mở

- Tìm hiểu về lý thuyết mật mã

- Tìm hiểu các giải pháp bảo mật thư điện tử

- Xây dựng ứng dụng chữ ký số trong bảo mật thư điện tử với hệthống thư điện tử Zimbra Mail Server

Hướng nghiên cứu của đề tài.

Đề tài tập trung tìm hiểu, nghiên cứu về thư điện tử, xây dựng ứngdụng chữ ký số trong bảo mật thư điện tử trên hệ thống Zimbra MailServer để ký số, mã hóa, giải mã và xác thực mail

Trang 13

Những nội dung chính nghiên cứu

Luận văn gồm 3 chương tập trung nghiên cứu những nội dung chính sau:

Chương 1 Tổng quan về an toàn thư tín điện tử

Chương 2 Bảo mật thư điện tử dựa trên mã hóa

Chương 3 Xây dựng phần mềm demo bảo mật thư tín điện tử

Ý nghĩa khoa học của đề tài

Xây dựng và triển khai ứng dụng chữ ký số trong bảo mật thư điện

tử tích hợp trên hệ thống thư điện tử Zimbra Mail Server: Cài đặt hệ thốngZimbra Mail Server, tích hợp bảo mật trên hệ thống Zimbra gồm cácnhiệm vụ là gửi thư mã hóa, thư kèm chữ ký, giải mã thư mã hóa, và xácthực người gửi

Trang 14

Chương 1 TỔNG QUAN VỀ AN TOÀN THƯ TÍN ĐIỆN TỬ

1.1 Thư điện tử

1.1.1 Giới thiệu thư điện tử [11]

Để gửi một bức thư thông thường ta có thể mất một vài ngày vớimột bức thư được gửi ở trong nước và nhiều thời gian hơn với bức thưđược gửi ra nước ngoài Do đó, để tiết kiệm thời gian và tiền bạc nhiềungười đã sử dụng thư điện tử

Thư điện tử được gửi đến người nhận rất nhanh, dễ dàng và rẻ hơnnhiều so với sử dụng thư tay truyền thống

Vậy thư điện tử là gì? nói một cách đơn giản, thư điện tử là mộtthông điệp gửi từ máy tính này đến máy tính khác trên mạng máy tính vàmang nội dung cần thiết từ người gửi đến người nhận Thư điện tử khôngnhững có thể truyền gửi được chữ mà nó còn có thể gửi với file đính kèmnhư hình ảnh, các công văn tài liệu, âm thanh, phim, các chương trìnhphần mềm…

1.1.2 Tổng quan về thư điện tử

1.1.2.1 Electronic mail

Email là dịch vụ thư điện tử được sử dụng nhiều nhất hiện nay, trởthành một phương tiện trao đổi thông tin không thể thiếu Sự nhanh chóng,tiện lợi và đặc biệt là miễn phí hoặc rất rẻ đã khiến email trở thành một

“huyết thanh điện tử”, sự xuất hiện email được đánh giá là dẫn đến cuộccách mạng trong kinh doanh Dường như không một doanh nghiệp nào trênthế giới không dùng email trong các công việc kinh doanh của mình

Một email không có gì đơn giản hơn là một “thông điệp chữ”, mộtđoạn văn bản được gửi cho người nhận

Trang 15

1.1.2.2 Mail client

Email client mang bốn đặc điểm sau:

- Cho bạn thấy một danh sách các message trong hộp thư của bạnbằng cách hiển thị phần message header (đầu mục của thư) Messageheader này chỉ cho bạn ai đã gửi message, tiêu đề của message, nhữngthông tin khác như thời gian gửi, thời gian nhận, kích cỡ …

- Cho phép bạn chọn và đọc nội dung của một message

- Cho phép bạn tạo một message mới và gửi nó đi Bạn nhập vàođịa chỉ người gửi, tiêu đề và nội dung của message

- Hầu hết các email client cho phép đính kèm file, văn bản, hìnhảnh, video vào message gửi đi và lưu những đính kèm khác từ messagenhận được Những email client phức tạp còn có thể có những chức năngkhác như: Chat, gọi video Nhưng nói chung về bản chất, đấy là tất cảnhững gì mà một email client có

1.1.2.3 Máy chủ Mail và tìm hiểu quá trình gửi và nhận mail

Bạn đã có email client trên máy tính của bạn, bạn đã sẵn sàng đểgửi và nhận email Tất cả điều bạn cần bây giờ là có một máy chủ thưđiện tử để các email client kết nối đến

Những hệ thống máy tính trên Internet có thể chạy những phầnmềm ứng dụng được gọi là server (máy chủ, máy phục vụ) Chúng gồmnhững loại server như web server (máy chủ web), FPT server (máy chủtruyền file), telnet server (máy chủ telnet) và email server (máy chủ thưđiện tử)… Những máy chủ này chạy suốt ngày suốt đêm và kiểm tranhững cổng đặc biệt, chờ đợi những chương trình kết nối vào cổng đó.Một máy chủ email đơn giản nhất sẽ làm những việc như sau:

Máy chủ email sẽ có một danh sách tài khoản email, với mỗi tàikhoản ứng với mỗi người có thể nhận email trên máy chủ Nó sẽ có một

Trang 16

file văn bản ứng với mỗi tài khoản trong danh sách Nếu một ai đó muốngửi một message ngắn, khi người đó nhấn nút gửi, email client sẽ kết nốitới các máy chủ thư điện tử và chuyển cho máy chủ tên của người nhận,tên của người gửi và nội dung của bức thư Máy chủ sẽ định dạng đoạnvăn bản ngắn này và gắn nó vào phần cuối của bức thư Phần thêm vàocủa file sẽ có định dạng như ví dụ sau:

Khi những người khác gửi message, máy chủ thư điện tử sẽ đơngiản là gán tiếp những bức thư đó vào phần cuối của file bức thư ban đầu.File văn bản sẽ bao gồm một nhóm 5 hoặc 10 bức thư và cuối cùng ngườinhận sẽ truy cập vào và đọc chúng Khi người nhận muốn đọc thư, emailclient sẽ kết nối với máy chủ trong một tiến trình đơn giản nhất mà emailclient sẽ:

- Hỏi máy chủ để gửi một bản sao của file

- Hỏi máy chủ để xóa và điều chỉnh lại file

- Lưu file trên máy tính cục bộ

- Phân tích file ra từng bức thư riêng biệt (tìm từ “ Form” để táchcác bức thư)

- Hiển thị cho người nhận tất cả các message header (đầu mục thư)theo từng danh sách

Trang 17

Khi người nhận nhấp đúp chuột lên một đầu mục thư, trình duyệt sẽtìm nội dung của bức thư đó trong file để hiển thị lên.

Chúng ta thấy rằng đây là một hệ thống khá đơn giản, thật ngạcnhiên những hệ thống máy chủ email trong thực tế bạn sử dụng hàng ngàyđều không phức tạp hơn.

1.1.3 Cấu trúc thư điện tử

Thư điện tử (email) được cấu tạo tương tự như những bức thư thôngthường và chia làm hai phần chính:

- Phần đầu (header): Chứa tên và địa chỉ của người nhận, tên và địachỉ của những người sẽ được chuyển đến, chủ đề của thư (subject) Tên vàđịa chỉ của người gửi, ngày tháng của bức thư

From: Địa chỉ của người gửi

To: Người gửi chính của bức thư

Cc : Những người đồng gửi (sẽ nhận được một bản copy thư)

Bcc : Những người cũng nhận được một bản- nhưng những ngườinày không xem được những ai được nhận thư

Date : Thời gian gửi bức thư

Subject : Chủ đề của bức thư

Messages – ID mã xác định của thư (là duy nhất và được tự độngđiền vào)

Reply – To: Địa chỉ nhận được phúc đáp

- Thân của bức thư (body): Chứa nội dung của bức thư

Như khi gửi các bức thư bình thường bạn cần phải có địa chỉ chínhxác Nếu sử dụng sai địa chỉ hoặc gõ nhầm địa chỉ, thì thư sẽ không thểgửi đến người nhận và nó sẽ chuyển lại cho người gửi, và báo địa chỉkhông biết (address unknown)

Trang 18

Khi nhận được một thư điện tử, thì phần đầu (header) của thư sẽcho biết nó từ đâu đến, và nó đã được gửi đi như thế nào và khi nào Nónhư việc đóng dấu bưu điện.

Không như những bức thư thông thường, những bức thư thôngthường được để trong phong bì còn thư điện tử thì không được riêng tưnhư vậy mà nó như một tấm thiếp postcard Thư điện tử có thể bị chặn lại

và bị đọc bởi những người không được quyền đọc Để tránh điều đó vàgiữ bí mật chỉ có cách mã hóa thông tin gửi trong thư

1.1.4 Các giao thức trong thư điện tử

1.1.4.1 Các giao thức mail thông dụng

Cũng như bất kỳ một dịch vụ nào liên quan tới máy tính, thư điện tửđòi hỏi một ngôn ngữ chung cho việc truyền thư trên Internet, ngôn ngữ

đó được nói đến như là một giao thức được dùng để truyền thông giữa cácmail server với nhau hoặc giữa MTA (Message Transfer Agent) với mailserver SMTP (Simple Mail Transfer Protocol) là một giao thức phổ biếnnhất trong việc gửi thư, trong việc nhận thư thì phải kể đến là hai giaothức POP (Post Office Protocol) và IMAP (Internet Message AccessProtocol)

1.1.4.2 Giao thức SMTP

SMTP là một giao thức được sử dụng rộng rãi cho việc gửi mail,chuẩn này hiện thực hệ thống Store and Forward (lưu trữ và vận chuyển).SMTP được MTA sử dụng trong việc truyền thư của người gửi đến mailserver của người nhận hoặc từ mail server này đến mail server khác Kếtquả là mail được gửi sẽ nằm trong mailbox trên mail server của ngườinhận, SMTP được dùng để gửi mail, không dùng để nhận mail SMTP baogồm một tập các câu lệnh đơn giản được dùng để khai báo các thông tin

Trang 19

cần thiết trong việc gửi mail như là địa chỉ người nhận, người gửi và dữliệu thực tế ứng với các lệnh Mail, Rcpt và Data.

Đặc biệt, giao thức SMTP không đòi hỏi phải xác nhận người gửi là

ai, do đó bất kỳ ai trên Internet cũng có thể gửi email đến một người hoặcthậm chí một nhóm người nào đó, đây là lý do vì sao lại xuất hiện thư nặcdanh, thư quảng cáo trong hộp thư của chúng ta

sử dụng, thường sau khi lấy thư về thì thư đó sẽ bị xóa trên server

Phiên bản hiện nay của POP là POP3 và đang được sử dụng rất phổbiến nhờ vào những ưu điểm như các mail được lấy về máy cục bộ nênkhi đọc mail thì không cần phải kết nối Internet và giảm đáng kể khônggian lưu trữ trên Mail server POP3 định nghĩa 3 giai đoạn tạo thành POPseesion:

- Giai đoạn 1: là giai đoạn xác định tính hợp pháp của người nhận mail

- Giai đoạn 2: là giai đoạn giao dịch giữa PC và mail server

- Giai đoạn 3: là giai đoạn đóng kết nối hiện hành

POP cũng có những hạn chế như bạn không thể đọc mail bởi nhiềumáy khác nhau, ví dụ như một nhân viên văn phòng đã duyệt mail ở mộtmáy nào đó trong văn phòng thì họ không thể duyệt những mail đó mộtlần nữa tại nhà vì những mail đó đã được lấy về máy tại văn phòng vàkhông còn trên mail server nữa Vấn đề trên sẽ được giải quyết nếu sửdụng giao thức IMAP để duyệt mail

Trang 20

1.1.4.4 Giao Thức IMAP

IMAP cho phép bạn duyệt mail trực tiếp ngay trên mail server màkhông phụ thuộc bạn sử dụng máy tính nào để duyệt mail Điều đó chothấy bạn có thể duyệt mail ở bất cứ đâu, bằng bất cứ máy tính nào nhưngcũng vẫn có hạn chế đó là nếu bạn không thể kết nối Internet hay chấtlượng đường truyền quá xấu thì bạn không thể duyệt mail được Phiên bảnhiện nay của IMAP là IMAP4, vì việc thực hiện giao thức IMAP rất phứctạp cho nên IMAP không được dùng rộng rãi bằng POP

Tóm lại, mỗi giao thức POP và IMAP đều có ưu điểm và khuyếtđiểm riêng nên tùy vào các điều kiện cụ thể mà sử dụng cho thích hợp

1.2 Các hình thức đe dọa tính an toàn của thông tin khi sử dụng Email

1.2.1 Sự thiếu bảo mật trong hệ thống Email

Webmail : Nếu kết nối với Webmail server là không an toàn, lúc đómọi thông tin bao gồm username và password không được mã hóa khi nó

từ Webmail server tới máy tính

SMTP: SMTP không mã hóa thông điệp, mọi kết nối giữa SMTPservers gửi thông điệp của bạn dưới dạng chữ cho mọi kẻ nghe trộm thấy.Thêm vào đó, nếu Email server yêu cầu bạn gửi username và password để

“login” vào SMTP server mục đích để chuyển thông điệp tới một serverkhác, khi đó tất cả đều được gửi dưới dạng chữ, mục tiêu để nghe trộm.Cuối cùng, thông điệp gửi bằng SMTP bao gồm thông tin về máy tính màchúng được gửi đi, và chương trình email này đã được sử dụng Nhữngthông tin này sẵn sàng cho mọi người nhận, có thể mang tính chất cá nhân

POP và IMAP: Giao thức POP và IMAP yêu cầu bạn gửi username

và password để login, đều không được mã hóa Vì vậy, thông điệp củabạn có thể được đọc bởi bất kì kẻ nào đang nghe lén thông tin của máytính cũng như nhà cung cấp dịch vụ email của bạn

Trang 21

Backups: Thông điệp được lưu trữ trên SMTP server dưới dạngchữ, không được mã hóa Việc sao lưu dữ liệu trên server có thể đượcthực hiện bất cứ lúc nào và người quản trị có thể đọc bất kỳ dữ liệu nàotrên máy tính.

1.2.2 Các nguy cơ trong quá trình gửi Email [9]

Khi truyền thông tin trên mạng chúng ta có thể bị Hacker tấn côngbằng hình thức chủ động hoặc thụ động để lấy cắp thông tin

Tấn công thụ động là tìm hiểu hoặc sử dụng thông tin từ hệ thốngnhưng không ảnh hưởng tới tài nguyên của hệ thống

Tấn công chủ động là cố gắng để thay đổi tài nguyên của hệ thốnghoặc ảnh hưởng đến hoạt động của hệ thống

1.2.2.1 Tấn công thụ động

Các cuộc tấn công thụ động bản chất gần giống với việc ai đó ởphòng kế bên đang nghe lén, hoặc giám sát, truyền tải Mục tiêu của kẻtấn công là để có được thông tin đang truyền đi Hai loại hình tấn côngcủa thụ động là phát lại các nội dung thông điệp và phân tích lưu lượng

Việc phát lại các nội dung thông điệp được hiểu như sau: Một cuộctrò chuyện điện thoại, một tin nhắn gửi qua thư điện tử và một tập tin gửi

đi có thể chứa thông tin nhạy cảm hoặc bí mật, người tấn công ngăn chặn

và sao chép nội dung của các nội dung truyền đi

Loại thứ hai của tấn công thụ động, phân tích lưu lượng truy cập làtinh vi hơn Giả sử chúng ta có một cách để che giấu các nội dung của cácthông điệp để ngay cả khi người tấn công chiếm được tin nhắn cũngkhông thể trích xuất các thông tin từ tin nhắn Kỹ thuật phổ biến cho bảo

vệ nội dung là mã hóa Nếu chúng ta có bảo vệ mã hóa tại chỗ thì ngườitấn công vẫn có thể quan sát các mô hình của những tin nhắn này

Trang 22

Người tấn công có thể xác định được vị trí và địa chỉ máy chủ và cóthể quan sát được tần số và độ dài của tin nhắn được trao đổi, thông tin này

có thể có ích trong việc đoán bản chất của truyền thông đã được diễn ra

Các cuộc tấn công thụ động rất khó để phát hiện, bởi vì chúngkhông liên quan đến bất kỳ sự thay đổi nào của dữ liệu Thường thì lưulượng tin nhắn được gửi và nhận trong một thời gian dường như là bìnhthường và không phải là người gửi nào cũng nhận biết được là có một bênthứ 3 đã đọc thông điệp hoặc quan sát mô hình gửi

Tuy nhiên, để ngăn chặn sự thành công của các cuộc tấn côngthường là sử dụng phương tiện mã hóa Do đó, điểm nhấn trong đối phóvới các cuộc tấn công thụ động là phòng chứ không phải phát hiện

Xét trường hợp sau: Giả sử Mai là nhân viên ngân hàng còn Hương

là một khách hàng Hương gửi thông điệp cho Mai đề nghị chuyển choNam số tiền là 10 triệu Hương có áp dụng các biện pháp như chữ ký điện

tử với mục đích không cho Nam mạo danh cũng như sửa chữa thông điệp.Tuy nhiên nếu Nam sao chép và phát lại thông điệp thì các biện pháp bảo

Trang 23

vệ này không có ý nghĩa Mai tin rằng Hương gửi tiếp một thông điệp mới

để chuyển thêm cho Nam 10 triệu nữa

- Thay đổi thông điệp (modification of mesages): Thay đổi thông điệp

là một phần của thông điệp hợp pháp bị thay đổi, bị trì hoãn hoặc sắp xếplại

Ví dụ: Một thông báo có nghĩa là “cho phép Mai đọc tập tin tài khoản

bí mật” được sửa đổi lại thành “cho phép Nam đọc các tài khoản bí mật tậptin”

- Từ chối dịch vụ (denial of service): Từ chối dịch vụ là ngăn chặnhoặc cản trở sự sử dụng bình thường hoặc quản lý các cơ sở thông tin liênlạc, cuộc tấn công này có thể có mục tiêu cụ thể

Dịch vụ kiểm toán bảo mật là một hình thức khác của từ chối dịch

vụ là sự gián đoạn của toàn bộ mạng hoặc bằng cách vô hiệu hóa mạnghoặc do quá tải

Các cuộc tấn công chủ động trình bày các đặc điểm ngược lại vớicác cuộc tấn công thụ động Trong khi các cuộc tấn công thụ động khóphát hiện thì các cuộc tấn công chủ động khá khó khăn để ngăn chặn.Thay vào đó, phát hiện tấn công chủ động để phục hồi từ bất kỳ sự giánđoạn hoặc chậm trễ bị gây ra Nếu phát hiện được có tác dụng răn đe vàcũng có thể đóng góp cho công tác phòng chống

1.2.2.3 Một số phương pháp tấn công hệ thông tin mã hóa

Bất cứ ai cũng có thể tạo ra một hệ thống thông tin mã hóa choriêng mình Nhưng để có một hệ thống an toàn và hiệu quả đòi hỏi ngườithiết kế phải có kiến thức toán học sâu sắc, có kinh nghiệm về bảo mật và

am hiểu các phương pháp tấn công

- Brute – Force attack (exhaustive key search): Phương pháp tấncông bằng cách thử tất cả những khóa có thể có, đây là phương pháp tấn

Trang 24

công thô sơ nhất và cũng khó khăn nhất Theo lý thuyết, tất cả các thuậttoán hiện đại đều có thể bị đánh bại bởi Brute- Force nhưng trong thực

Trang 25

tiễn việc này chỉ có thể thực hiện được trong thời gian hàng triệu, thậmchí hàng tỉ năm Vì thế có thể coi một thuật toán là an toàn nếu như khôngcòn cách nào khác để tấn công nó dễ hơn là Brute-Force.

- Frequency Analysis: Thống kê tần suất chỉ có thể áp dụng đượcđối với các thuật toán cổ điển dùng phương pháp thay thế Để thực hiệnphương pháp này ta cần một lượng văn bản đã mã hóa đủ lớn để phépthống kê được chính xác Ngoài ra còn phải biết ngôn ngữ sử dụng trongvăn bản ban đầu, nếu văn bản ban đầu là Tiếng Anh thì nhiều khả năng kí

tự xuất hiện nhiều nhất trong văn bản đã mã hóa là do chữ e mã hóathành, kí tự nhiều thứ nhì bắt nguồn từ chữ a

- Differential cryptanalysis: Eli Bibam và Adi Shamir tìm raphương pháp này vào khoảng cuối năm 1980, nó thường được sử dụng đểtấn công các thuật toán khối Phương pháp này dựa trên việc phân tíchnhững biết đổi của hai văn bản gốc có liên quan khi được mã hóa bởi cùngmột khóa Còn rất nhiều phương pháp khác như Mod-n cryptanalysis,Linear cryptanalysis, Birthday attack, Algebraic attack…

1.3 Hệ điều hành mã nguồn mở [3]

1.3.1 Giới thiệu chung về Linux

Phiên bản Linux đầu tiên do Linus Torvalds viết vào năm 1991, lúcông còn là một sinh viên của Đại học Helsinki tại Phần Lan Ông làm việcmột cách hăng say trong vòng 3 năm liên tục và cho ra đời phiên bảnLinux 1.0 vào năm 1994 Bộ phận chủ yếu này được phát triển và tung rathị trường dưới bản quyền GNU General Public License Do đó mà bất cứ

ai cũng có thể tải và xem mã nguồn của Linux

Một cách chính xác thuật ngữ “Linux” được sử dụng để chỉ nhânLinux, nhưng tên này được sử dụng một cách rộng rãi để miêu tả tổng thểmột hệ điều hành giống Unix được tạo ra bởi việc đóng gói nhân Linux

Trang 26

cùng với các thư viện và công cụ GNU, cũng như là các bản phân phốiLinux, thực tế thì đó là tập hợp một số lượng lớn các phần mềm như máychủ web, các ngôn ngữ lập trình, các hệ quản trị cơ sở dữ liệu, các môitrường làm việc desktop như GNOME và KDE, và các ứng dụng thíchhợp cho công việc văn phòng như OpenOffice.

Ban đầu, Linux được phát triển cho dòng vi xử lý 368, hiện tại hệđiều hành này hỗ trợ một số lượng lớn các kiến trúc vi xử lý, và được sửdụng trong nhiều ứng dụng khác nhau từ máy tính cá nhân cho tới các siêumáy tính và các thiết bị nhúng như các máy điện thoại di động

Linux được phát triển và sử dụng bởi những người say mê Tuynhiên, hiện nay Linux đã có được sự hỗ trợ bởi các công ty lớn như IBM

và Hewlett-Packard, đồng thời nó cũng bắt kịp được các phiên bản Unixđộc quyền và thậm chí là một thách thức đối với sự thống trị củaMicrosoft Windows trong một số lĩnh vực Sở dĩ Linux đạt được nhữngthành công một cách nhanh chóng là nhờ vào các đặc tính nổi bật so vớicác hệ thống khác: Chi phí phần cứng thấp, tốc độ cao và khả năng bảomật tốt, độ tin cậy cao cũng như là đặc điểm về giá thành rẻ, không bị phụthuộc vào nhà cung cấp Một đặc tính nổi trội của nó là được phát triểnbởi một mô hình phát triển phần mềm nguồn mở hiệu quả, hiện tại sốlượng phần cứng được hỗ trợ bởi Linux vẫn còn rất khiêm tốn so vớiWindows vì các trình điều khiển thiết bị tương thích với Windows nhiềuhơn là Linux Nhưng trong tương lai số lượng phần cứng được hỗ trợ choLinux sẽ tăng lên

1.3.2 Các thành phần của Linux

Hệ điều hành Linux gồm các thành phần: Nhân hệ điều hành, cáccông cụ hệ thống, giao diện đồ họa và ứng dụng

Trang 27

Nhân HĐH: Nhân HĐH cung cấp một giao diện cho các chươngtrình và người sử dụng có thể quản lý và khai thác phần cứng máy tính.Nhân HĐH bao gồm các driver của một số phần cứng cơ bản, các chươngtrình lập lịch CPU, quản lý bộ nhớ và quản lý các thiết bị vào ra.

Các driver: Ngoài các phần cứng cơ bản của các hệ thống máy tính,còn nhiều các phần cứng khác được quản lý bởi các driver chưa được tíchhợp trong nhân Các driver này có thể được tải cùng với nhân hoặc sau khinhân đã được tải Việc một driver được tích hợp vào trong nhân hay đặtdưới dạng một module hoàn toàn do người dịch nhân quyết định

Các phần mềm hệ thống: Các phần mềm liên quan đến cấu hình hệthống, giám sát hệ thống, thực hiện các thao tác quản trị

Các phần mềm ứng dụng: Các phần mềm ứng dụng cho người sửdụng: Bộ soạn thảo, mail client, trình biên dịch, thông dịch,…

X Windows và các phần mềm ứng dụng với giao diện đồ họa: Giaodiện đồ họa được xây dựng trên cơ sở X, phần mềm cho phép quản lý cácvùng logic của màn hình theo các cửa sổ Trên nền của X, có các chươngtrình quản lý cửa sổ như KDE, GNOME cho phép quản lý các cửa sổ mộtcách thống nhất, người sử dụng có thể sử dụng các chương trình chạy trênnền đồ họa của X

1.3.3 Một số đặc điểm của hệ điều hành Linux

1.3.3.1 Vấn đề bản quyền

Trong bối cảnh nền kinh tế thế giới đang có xu hướng toàn cầu hóanhư hiện nay thì bản quyền là vấn đề đang được quan tâm Hiện nay, ViệtNam là nước dẫn đầu thế giới về số lượng phần mềm dùng không có bảnquyền Trước tình hình đó, việc xây dựng cho mình những phần mềmthương hiệu Việt Nam đang là một vấn đề khá cấp bách Phần mềm mãnguồn mở được xem là một giải pháp hữu hiệu nhất cho bài toán bảnquyền ở nước ta hiện nay, nó có chi phí rẻ hơn so với các phần mềm

Trang 28

truyền thống, mặt khác dễ nâng cấp, cải tiến Chính vì thế, phát triển phầnmềm mã nguồn mở chúng ta có thể tận dụng được những công nghệ tiêntiến có sẵn trên thế giới, cải tiến cho phù hợp với người Việt Nam, tiếtkiệm được rất nhiều công sức so với việc phát triển từ đầu Linux là một

hệ điều hành mã nguồn mở như vậy

1.3.3.2 Một số đặc điểm kỹ thuật của Linux

Linux là một hệ điều hành mã nguồn mở nên có thể tùy ý sửa chữatheo như yêu cầu của người sử dụng Bạn có thể chỉnh sửa Linux và cácứng dụng trên đó sao cho phù hợp với mình nhất Việc việt hóa Windowsđược xem là không thể nếu như bạn không có sự đồng ý và hỗ trợ củaMicrosoft Tuy nhiên với Linux thì bạn có thể làm được điều này, mặtkhác do Linux được một cộng đồng rất lớn những người làm phần mềmcùng phát triển trên các môi trường nên việc tìm một phiên bản phù hợpvới yêu cầu của bạn không phải là một vấn đề quá khó khăn

Trong Linux có một cơ cấu phân quyền rõ ràng, chỉ có “root” mới

có quyền cài đặt và thay đổi hệ thống Linux cũng có cơ chế để một ngườidùng bình thường có thể chuyển tạm thời sang quyền “root” để thực hiệnmột số thao tác Điều này giúp cho hệ thống có thể chạy ổn định và tránhphải những sai sót dẫn đến đổ vỡ hệ thống

Ngoài ra chính nhờ tính chất mở đã tạo nên sự an toàn của Linux, nếunhư một lỗ hổng nào đó trên Linux được phát hiện thì nó sẽ được cả cộngđồng mã nguồn mở cùng sửa và thường thì chỉ sau 24h sẽ có thể cho ra bảnsửa lỗi Với những hệ điều hành mã nguồn đóng như Windows, bạn khôngthể biết được người ta viết gì, và viết ra sao mà chỉ biết chúng được chạynhư thế nào Đối với người dùng bình thường như chúng ta vấn đề này có

vẻ như không quan trọng nhưng đối với một hệ thống tầm cỡ như hệthống quốc phòng thì vấn đề như thế lại mang tính chất sống còn Các nhânviên an ninh không được phép để lộ một kẽ hở nào, dù là nhỏ nhất vì nóliên quan

Trang 29

đến an ninh của cả một quốc gia Một lần nữa các phần mềm mã nguồn mởnói chung và Linux nói riêng lại là sự lựa chọn số 1 Trong Linux mọi thứđều công khai, người quản trị có thể tìm hiểu tới mọi ngõ ngách của hệ điềuhành Điều đó cũng có nghĩa là độ an toàn được nâng cao.

Được thiết kế ngay từ đầu cho chế độ đa người dùng, Linux đượcxem là một hệ điều hành mạng rất giá trị Linux là hệ điều hành thống trịđối với các Server đó là do Linux có rất nhiều ưu điểm thỏa mãn đòi hỏicủa một hệ điều hành mạng: Tính bảo mật cao, chạy ổn định, các cơ chếchia sẻ tài nguyên tốt… Giao thức TCP/IP mà chúng ta vẫn thấy ngày naychính là một giao thức truyền tin của Linux

Dù cho có rất nhiều phiên bản Linux được các nhà phân phối khácnhau ban hành nhưng nhìn chung đều chạy khá ổn định trên mọi thiết bịphần cứng, từ Intel 486 đến những máy Pentium mới nhất, từ những máy

có dung lượng Ram nhỏ đến những máy có cấu hình lớn (không nhưWindows chỉ do Microsoft phát triển) Đó là do Linux được rất nhiều lậptrình viên ở nhiều môi trường khác nhau cùng phát triển và bạn sẽ bắt gặpnhiều người có cùng cảnh ngộ như mình và dễ dàng tìm được các drivertương ứng với thiết bị của mình Tính chất này hoàn toàn trái ngược vớiWindows, mỗi khi có một phiên bản mới ra đời thì bao giờ cũng kèm theo

đó là một cơn khát về phần cứng vì hệ điều hành mới thường không hỗ trợcác thiết bị quá cũ

Kết luận chương: Chương này đã trình bày được tổng quan về thư

điện tử, hệ điều hành mã nguồn mở, các giao thức trong thư điện tử, cáchình thức đe dọa tính an toàn của thông tin khi sử dụng email, làm cơ sở

để tiến hành nghiên cứu các chương tiếp theo

Trang 30

Chương 2 BẢO MẬT THƯ ĐIỆN TỬ DỰA TRÊN MÃ HÓA

2.1 Cơ sở lý thuyết mật mã [1], [2], [4]

2.1.1 Giới thiệu chung về mật mã

Mật mã đã được con người sử dụng từ lâu đời Các hình thức mật

mã sơ khai đã được tìm thấy từ khoảng bốn nghìn năm trước trong nềnvăn minh Ai Cập cổ đại Trải qua hàng nghìn năm lịch sử, mật mã đãđược sử dụng rộng rãi ở khắp nơi trên thế giới từ đông sang tây để giữ bímật cho việc giao lưu thông tin trong nhiều lĩnh vực hoạt động giữa conngười và các quốc gia, đặc biệt trong lĩnh vực quân sự, chính trị, ngoạigiao Mật mã trước hết là một loại hoạt động thực tiễn, nội dung chính của

nó là để giữ bí mật thông tin

Trong thực tiễn, có những hoạt động ngược lại với hoạt động bảomật là khám phá bí mật từ các bản mã “lấy trộm” được, hoạt động nàythường được gọi là thám mã hay phá khóa

5 D là tập các hàm giải mã Với mỗi k K, có một hàm lập mã ek

E, ek : P → C và một hàm giải mã dk D, dk : C → P sao cho dk (ek (x))

= x, x P

2.1.1.2 Mã hóa khóa bí mật

Mã hóa khóa đối xứng hay còn gọi là mã hóa khóa đơn là hệ mãhóa chỉ dùng một khóa cho cả việc mã hóa và giải mã, khóa đó gọi làkhóa bí mật

Trang 31

Số hóa bởi Trung tâm Học

liệu h t t p :/ / www l r c - t n u. e d u v n /

Hình 2.1 Mô hình hệ mật mã khóa bí mật

Sơ đồ mã hóa khóa đối xứng gồm 5 thành phần:

- Bản rõ: Dữ liệu hay thông điệp cần mã hóa

- Thuật toán mã hóa: Thuật toán mã hóa thực hiện những chuyển dịchhay thay thế khác nhau trên bản rõ để sinh ra bản mã

- Khóa bí mật: Khóa bí mật dùng để mã hóa bản rõ, tức nó là đầu vàocủa thuật toán mã hóa và là giá trị độc lập với bản rõ Thuật toán sinh rabản mã phụ thuộc vào khóa mã hóa

- Bản mã: Dữ liệu hay thông điệp đã mã hóa Bản mã phụ thuộc vàobản mã và khóa bí mật

- Thuật toán giải mã: Thuật toán giải mã thực hiện những chuyểndịch và thay thế trên bản mã và khóa bí mật để sinh ra bản rõ

Ưu điểm: Tốc độ mã hóa và giải mã nhanh Đây là ưu điểm nổi bật

của hệ mã hóa đối xứng Sử dụng đơn giản chỉ cần dùng một khóa cho haiquá trình mã hóa và giải mã

Nhược điểm: Không an toàn vì độ phức tạp tính toán nằm trong

khả năng của máy tính ngày nay Để an toàn hơn đòi hỏi thuật toán mãhóa mạnh.Vì bên nhận và bên gửi đều sử dụng một khóa, cho nên khóa

Trang 32

Số hóa bởi Trung tâm Học

liệu h t t p :/ / www l r c - t n u. e d u v n /

cần phải được trao tận tay hay truyền trên kênh an toàn, điều này làmphức tạp cho hệ thống khi cài đặt hệ mật mã khóa đối xứng, không thểcho phép tạo ra chữ ký điện tử

2.1.1.3 Mã hóa khóa công khai

Hệ mã hóa khóa công khai là hệ mã hóa có khóa lập mã và khóagiải mã khác nhau, biết được khóa này khó tính được khóa kia

Hệ mã hóa này được gọi là hệ mã hóa khóa công khai vì khóa lập

mã được công khai (Public key), khóa giải mã giữ bí mật (Private key).Điều quan trọng đối với hệ thống là không thể tìm ra khóa bí mật nếu chỉbiết khóa công khai

Hình 2.2 Mô hình mã hóa khóa công khai

Sơ đồ mã hóa khóa công khai gồm 5 thành phần:

- Bản rõ: Dữ liệu hay thông điệp cần mã hóa

- Thuật toán mã hóa: Thuật toán mã hóa thực hiện những chuyểndịch khác nhau trên bản rõ để tạo ra bản mã

- Khóa công khai và khóa riêng: Đây là một cặp khóa, mà khóacông khai dùng để mã hóa còn khóa riêng dùng để giải mã

- Bản mã: Dữ liệu hay thông điệp đã mã hóa dùng khóa công khai

Trang 33

Số hóa bởi Trung tâm Học

liệu h t t p :/ / www l r c - t n u. e d u v n /

- Thuật toán giải mã: Thuật toán giải mã sinh ra bản rõ dùng khóa

bí mật và bản mã

Ưu điểm: Mặc dù kẻ tấn công biết thuật toán mã hóa và khóa mã

hóa cũng không thể xác định được khóa giải mã Chức năng này đạt đượctrên nguyên tắc sử dụng các hàm một chiều trong toán học khi tính hàmy= f(x) là đơn giản nhưng ngược lại việc tính giá trị y khi đã biết x là rấtkhó khăn Vậy, khi biết khóa công khai hoặc không thể tính được khóariêng hoặc tính được khóa riêng với khoảng thời gian dài hàng trăm năm

Nhược điểm: Quá trình mã hóa, giải mã chậm, chỉ nên dùng cho

những dữ liệu không quá lớn Quá trình mã hóa khóa đối xứng bằng khóacông khai sẽ tạo ra phong bì số Tuy có tính bảo mật cao khó có thể phá

vỡ nhưng phương pháp mã hóa khóa công khai vẫn có lỗ hổng

Nơi sử dụng: Sử dụng chủ yếu trên các mạng công khai như

Internet Ví dụ khóa công khai trong các giao dịch điện tử

2.1.2 Hệ mật mã khóa công khai RSA

Thuật toán RSA

RSA là tên viết tắt của ba tác giả Rivest, Sharmir, Adleman củatrường MIT đã đề ra hệ mật mã công khai Hệ mật này được đề xuất năm

1977, dựa trên cơ sở tính các lũy thừa trong số học Độ an toàn của hệ mậtdựa trên độ khó của việc phân tích thành thừa số nguyên tố của các sốnguyên lớn Nhiều hệ mật mã khóa công khai sau này đã được phát triểnnhưng đều thua kém hệ RSA Các hệ balo cửa sập đã bị phá vỡ và cho đếnnay, ngoài hệ RSA, chưa có một hệ nào khác cung cấp được cả độ an toàn

và chữ ký số

Thuật toán tạo khóa

Bước 1: B (người nhận) tạo hai số nguyên tố lớn ngẫu nhiên p và q (p<>q)Bước 2: B tính n = p*q và (n) = (p-1)(q-1)

Trang 34

Số hóa bởi Trung tâm Học

liệu h t t p :/ / www l r c - t n u. e d u v n /

Bước 3: B chọn một số ngẫu nhiên e (0< e < (n)) sao cho ƯCLN(e, (n))=1

Bước 4: B tính d=e-1 bằng cách dùng thuật toán Euclide

Bước 5: B công bố n và e trong danh bạ làm khóa công khai, còn d làm khóa bí mật

Thuật toán mã hóa và giải mã

- Mã hóa

Bước 1: A nhận khóa công khai của B

Bước 2: A biểu diễn thông tin cần gửi thành số m (0<= m <= n-1)

Bước 3: Tính c = me mod n

Bước 4: Gửi c cho B

- Giải mã: B giải mã bằng cách tính m=cd mod n

2.1.3 Thuật toán băm

Để đảm bảo tính toàn vẹn của dữ liệu (không bị thay đổi so với dữliệu ban đầu), người ta đưa ra các phương thức mã hóa một chiều sử dụngcác thuật toán băm

Dù chỉ là một sự thay đổi nhỏ, ví dụ chỉ thay đổi 1 bit dữ liệu của bản

tin gốc x, thì giá trị băm h(x) của nó cũng vẫn thay đổi Điều này có nghĩa là:

hai thông điệp khác nhau, thì giá trị băm của chúng cũng khác nhau

Nội dung của bản tin gốc khó thể suy ra từ giá trị hàm băm của nó.Nghĩa là với thông điệp x thì dễ tính được z = h(x), nhưng lại khó tínhngược lại được x nếu chỉ biết giá trị băm h(x) (kể cả khi biết hàm băm h)

Trang 35

Số hóa bởi Trung tâm Học

liệu h t t p :/ / www l r c - t n u. e d u v n /

Tính chất của hàm băm

Hàm băm không va chạm yếu: Hàm băm h được gọi là không va chạm yếu, nếu cho trước bức điện x, khó thể tính toán để tìm ra bức điện x’ x mà h(x’) = h(x).

Hàm băm không va chạm mạnh: Hàm băm h được gọi là không

va chạm mạnh nếu khó thể tính toán để tìm ra hai bức thông điệp khác

- Một ứng dụng điển hình của phương pháp tóm lược thông điệp làphương pháp kiểm tra CRC (Cyclic Redundancy Check) được sử dụngtrong hầu hết các cơ chế truyền nhận dữ liệu

- Phương pháp này là nền tảng của việc tạo và kiểm tra chữ ký số

2.1.4 Chữ ký số

2.1.4.1 Giới thiệu chữ ký số

Chữ ký số là thông tin được mã hóa bằng khóa riêng của người gửi,được gửi đính kèm theo văn bản đảm bảo cho người nhận xác thực đúngnguồn gốc, tính toàn vẹn của dữ liệu

Chữ ký số chỉ dùng được trong môi trường số, giao dịch điện tử vớimáy tính và mạng Internet, chữ ký số có thể sử dụng trong các giao dịch

Trang 36

Số hóa bởi Trung tâm Học

- Sử dụng giải thuật MD5 (Message Digest 5) nên thu được digest có độdài 128 bits

- Tiếp tục sử dụng giải thuật SHA (Secure Hash Algorithm) nên thu đượcmessage digest có độ dài 160 bits

- Sử dụng khóa bí mật của người gửi để mã hóa bản phân tích văn bản thuđược ở các bước trước Trong bước này, thông thường, người ta sử dụnggiải thuật RSA Kết quả thu được trong bước này là chữ ký điện tử củathông điệp ban đầu

- Gộp chữ ký điện tử vào thông điệp ban đầu Công việc này gọi là kýnhận thông điệp

- Sau khi đã ký nhận thông điệp, mọi sự thay đổi trên thông điệp sẽ bịphát hiện trong giai đoạn kiểm tra Ngoài ra, việc ký nhận này đảm bảongười nhận tin tưởng vào thông điệp này xuất phát từ người gửi chứkhông phải ai khác

- Sau khi nhận được thông điệp có đính kèm chữ ký điện tử người nhậnkiểm tra lại thông điệp:

Trang 37

Số hóa bởi Trung tâm Học

là chính xác và ngược lại

Hình 2.3 Lược đồ tạo chữ ký số

Hình 2.4 Lược đồ kiểm tra chữ ký số

Bản chất của thuật toán tạo chữ ký số là đảm bảo nếu chỉ biết thôngđiệp thì rất khó (hầu như không thể) tạo ra chữ ký số của người gửi nếu

Trang 38

Số hóa bởi Trung tâm Học

liệu h t t p :/ / www l r c - t n u. e d u v n /

không biết khóa bí mật của người gửi Nên nếu phép so sánh cho kết quảđúng thì có thể xác nhận người gửi là chính xác

Tuy nhiên khi tạo chữ ký số, người gửi thường không mã hóa toàn

bộ thông điệp với khóa bí mật mà chỉ thực hiện với bản băm của thông

điệp (bản tóm tắt thông điệp 160 bits) nên có thể xảy ra trường hợp hai

thông điệp khác nhau có cùng bản băm nhưng với xác suất rất thấp

2.1.4.2 Các cách tấn công chữ ký điện tử [8]

Khi nói đến chữ ký điện tử chúng ta luôn đặt mục tiêu an toàn lênhàng đầu, một chữ ký điện tử chỉ thực sự được áp dụng trong thực tế nếunhư nó được chứng minh là không hề giả mạo Mục tiêu lớn nhất củanhững kẻ tấn công các sơ đồ chữ ký là giả mạo, điều này có nghĩa là kẻtấn công sinh ra được chữ ký của người ký lên thông điệp mà chữ ký này

sẽ được chấp nhận bởi người xác nhận Trong thực tế các hành vi tấn côngchữ ký điện tử rất đa dạng, để dễ dàng phân tích một sơ đồ chữ ký là antoàn hay không người ta tiến hành kiểm nghiệm độ an toàn của chữ kýtrước các sự tấn công sau:

- Total break (tấn công toàn bộ): Một kẻ giả mạo không những tính đượcthông tin về khóa riêng còn có thể sử dụng một thuật toán sinh chữ kýtương ứng tạo ra được chữ ký cho thông điệp

- Selective forgert (giả mạo có lựa chọn): Kẻ tấn công có khả năng tạo rađược một tập hợp các chữ ký cho một lớp các thông điệp nhất định, cácthông điệp này được ký mà không cần có khóa bí mật của người ký

- Existential forgery (giả mạo với thông điệp biết trước): Kẻ tấn công cókhả năng giả mạo chữ ký cho một thông điệp, kẻ tấn công không thểhoặc có rất ít khả năng kiểm soát thông điệp giả mạo này

Trang 39

Số hóa bởi Trung tâm Học

liệu h t t p :/ / www l r c - t n u. e d u v n /

Ngoài ra hầu hết các chữ ký điện tử đều dựa vào cơ chế mã hóakhóa công khai, các chữ ký điện tử dựa trên cơ chế này có thể bị tấn côngtheo phương thức như sau:

- Key-only attacks (tấn công với khóa): Kẻ tấn công chỉ biết khóa chungcủa người ký

- Message attacks (tấn công vào thông điệp): Ở đây kẻ tấn công có khảnăng kiểm tra các chữ ký khác nhau có phù hợp với một thông điệp chotrước hay không Đây là kiểu tấn công rất thông dụng trong thực tế nóthường được chia làm 3 lớp:

+ Know-message attack (tấn công với thông điệp đã biết): Kẻ tấncông có chữ ký cho một lớp các thông điệp

+ Chosen-message attack (tấn công lựa chọn thông điệp): Kẻ tấncông dành được các chữ ký đúng cho một danh sách các thông điệp trướckhi tiến hành hoạt động phá hủy chữ ký, cách tấn công này là non-adaptive (không mang tính phù hợp) bởi vì thông điệp được chọn trướckhi bất kỳ một chữ ký nào được gửi đi

+ Adaptive-message attack (tấn công lựa chọn thông điệp chủ

động): Kẻ tấn công được phép sử dụng người ký như là một bên đáng tin

cậy, kẻ tấn công có thể yêu cầu chữ ký số cho các thông điệp mà cácthông điệp này phụ thuộc vào khóa công khai của người ký, như vậy kẻtấn công có thể yêu cầu chữ ký của các thông điệp phụ thuộc vào chữ ký

và thông điệp dành được trước đây và qua đó tính toán được chữ ký

2.1.5 Chứng thư số

Phương pháp mã hóa khóa công khai đã thực hiện được yêu cầu mãhóa, chữ ký số đã đảm bảo được tính toàn vẹn (thực chất là phát hiện sựthay đổi của thông điệp trên đường truyền chứ không ngăn cản được sựthay đổi) và xác thực được người gửi Trở lại vấn đề giả mạo khóa công

Trang 40

Số hóa bởi Trung tâm Học

liệu h t t p :/ / www l r c - t n u. e d u v n /

khai, vấn đề này đòi hỏi xác thực người nhận là ai Điều này chữ ký sốchưa thực hiện được Vì vậy, để đáp ứng nhu cầu đó một hệ thống tổ chức

đã ra đời để các cung cấp chứng thư số

Chứng thư số là một file điện tử dùng để xác thực danh tính một cánhân, một máy chủ hay một công ty, tổ chức trên Internet

2.1.5.1 Nhà cung cấp chứng thư số (Certificate Authority – CA)

Cũng như các giấy tờ chứng thực cá nhân khác, chứng thư số phải

do một tổ chức đứng ra chứng nhận những thông tin của bạn là chính xác

Tổ chức đó gọi là nhà cung cấp chứng thư số (Certificate Authority –CA) Các CA phải đảm bảo về độ tin cậy, chịu trách nhiệm về độ chínhxác của chứng thư số mà mình cấp cho khách

2.1.5.2 Nhà quản lý đăng ký

Một nhà quản lý đăng ký là một cơ quan thẩm tra trên một mạngmáy tính Nó có chức năng xác minh yêu cầu của người sử dùng muốnxác thực một chứng thư số và yêu cầu CA đưa ra kết quả

2.1.5.3 Cơ sở hạ tầng bảo mật khóa công khai PKI [10]

Cơ sở hạ tầng bảo mật khóa công khai (Public Key PKI) là một tập hợp phần cứng, phần mềm, chính sách, thủ tục cần thiết

Infrastructure-để tạo, quản lý và lưu trữ, phân phối và thu hồi các chứng chỉ số dựa trêncông nghệ mã hóa khóa công khai

Mã hóa và chữ ký số đã trở thành một phần không thể thiếu đượcđối với thương mại điện tử cũng như các lĩnh vực đòi hỏi an toàn và bảomật PKI cung cấp cơ sở hạ tầng giúp cho việc sử dụng mã hóa và chữ ký

số một cách dễ dàng và trong suốt đối với người sử dụng

PKI là một khái niệm mô tả toàn bộ nền tảng cơ sở nhằm cung cấpcác dịch vụ quản lý truy cập, tính toàn vẹn, tính xác thực, tính bí mật vàtính chống chối bỏ Nền tảng này bao gồm các hệ thống phần mềm như

Ngày đăng: 20/01/2019, 23:46

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Phan Đình Diệu, Lý thuyết mật mã và an toàn thông tin, Đại Học Quốc Gia Hà Nội, năm 2002 Sách, tạp chí
Tiêu đề: Lý thuyết mật mã và an toàn thông tin
[2] Nguyễn Hiếu Minh, Bài giảng lý thuyết mật mã, Học Viện Kỹ Thuật Quân Sự, năm 2007 Sách, tạp chí
Tiêu đề: Bài giảng lý thuyết mật mã
[3] Hà Quang Thụy, Nguyễn Trí Thành, Hệ điều hành Unix-Linux, Đại Học Quốc Gia Hà Nội, năm 2004 Sách, tạp chí
Tiêu đề: Hệ điều hành Unix-Linux
[4] Trịnh Nhật Tiến, Bài giảng về mật mã và an toàn dữ liệu, Khoa CNTT-Trường Đại Học Công Nghệ, 2009 Sách, tạp chí
Tiêu đề: Bài giảng về mật mã và an toàn dữ liệu
[5] TS. Hồ Văn Hương, Ths Đào Thị Ngọc Thuỳ, Ứng dụng hệ thống kiểm soát truy nhập mạng theo mô hình truy nhập một lần, Tạp chí An toàn thông tin, số 1 (025) 2013 Sách, tạp chí
Tiêu đề: Ứng dụng hệ thốngkiểm soát truy nhập mạng theo mô hình truy nhập một lần
[6] TS. Hồ Văn Hương, KS. Hoàng Chiến Thắng, KS. Nguyễn Quốc Uy, Giải pháp bảo mật và xác thực cho văn phòng điện tử, Hội nghị Quốc gia về điện tử và truyền thông (REV 2013-KC01) Sách, tạp chí
Tiêu đề: Giải pháp bảo mật và xác thực cho văn phòng điện tử
[7] TS. Hồ Văn Hương, KS. Hoàng Chiến Thắng, KS. Nguyễn Quốc Uy Giải pháp bảo mật và xác thực thư điện tử, Tạp chí An toàn thông tin số 04 (028), 2013 Sách, tạp chí
Tiêu đề: Giải pháp bảo mật và xác thực thư điện tử
[8] Vũ Anh Tuấn, Bảo Mật Và An Toàn Thông Tin Trong Thương Mại Điện Tử, luận văn thạc sĩ khoa học máy tính, trường Đại Học Công Nghệ Thông Tin Và Truyền Thông – Đại Học Thái Nguyên, 2008.Tiếng Anh Sách, tạp chí
Tiêu đề: Bảo Mật Và An Toàn Thông Tin Trong Thương MạiĐiện Tử
[9] Willian Stallings, Cryptography and Network Security Principles and Practices, Fourth Edition, 2005 Khác
[10] Carlisle Adams and Stevel Lioyd, Understancling PKI: Concepts, Standards and Deployment Considerations, Addision-Wesley, 2003 Khác
[11] Milestracy, Wayne Jansen, Scott Bisker, Guidelines on Electronic Mail Securrity U.S Government Printing Office Washington, 2002.Tài liệu trên Internet Khác
[12]ht t p:/ / www.wing f os s . c o m / c on t e nt / ho w - t o - i n st a l l -z i m b r a - o p e n - so u r c e - o n - u b unt u Khác
[13] ht t p:/ / www. c tu .ed u .vn / ~t h a nh d i e n/ t a il i e u / Gi a o T r i n h W e b/ c o n t e n t / c on t e nt l . ht m l Khác
[14] http : //l u a n v a n . c o / lu a n - v a n /t i m - h i eu - m a i l - z i m b r a - v a -z i m b r a - d e sk t o p - t a i - c on g - t y - p h a t - t r i en- ngu on - n h a n - l uc - l e - v a - a s s o c i a t e - 3428 3 / Khác

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w