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

Nghiên cứu một số giải pháp bảo đảm an toàn thông tin trong giai đoạn đăng ký bỏ phiếu điện tử

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 (1.77 MB, 70 trang )

1
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ

Trần Đông Hải

NGHIÊN CỨU MỘT SỐ GIẢI PHÁP
BẢO ĐẢM AN TOÀN THÔNG TIN
TRONG GIAI ĐOẠN ĐĂNG KÝ BỎ PHIẾU ĐIỆN TỬ

LUẬN VĂN THẠC SĨ

Hà Nội – 2015


2
ĐẠI HỌC QUỐC GIA HÀ NỘI
TRƢỜNG ĐẠI HỌC CÔNG NGHỆ

Trần Đông Hải

NGHIÊN CỨU MỘT SỐ GIẢI PHÁP
BẢO ĐẢM AN TOÀN THÔNG TIN
TRONG GIAI ĐOẠN ĐĂNG KÝ BỎ PHIẾU ĐIỆN TỬ

Ngành: Công nghệ thông tin
Chuyên ngành: Hệ thống thông tin
Mã số: 60480104

LUẬN VĂN THẠC SĨ


Người hướng dẫn khoa học: PGS.TS.Trịnh Nhật Tiến

Hà Nội - 2015


3
LỜI CAM ĐOAN

Tôi xin cam đoan kết quả đạt đƣợc trong luận văn là sản phẩm của riêng
cá nhân tôi, không sao chép của ngƣời khác. Trong toàn bộ nội dung luận văn,
những điều đã đƣợc trình bày hoặc là của riêng tôi, hoặc là đƣợc tổng hợp từ
nhiều nguồn tài liệu. Nguồn tài liệu tham khảo đều có xuất xứ rõ ràng, đƣợc
trích dẫn hợp pháp.
Tôi xin chịu trách nhiệm hoàn toàn và chịu mọi hình thức kỷ luật theo
quy định cho lời cam đoan của mình.
Học viên

Trần Đông Hải


4
LỜI CẢM ƠN!
Em chân thành cảm ơn thầy PGS.TS.Trịnh Nhật Tiến đã tận tình hƣớng
dẫn, giúp đỡ em thực hiện bản luận văn cao học này.
Em chân thành cảm ơn các thầy giáo, cô giáo Trƣờng Đại học Công
nghệ - Đại học Quốc gia Hà Nội đã giảng dạy truyền đạt kiến thức cho học
viên chúng em trong những năm học vừa qua.
Trong quá trình làm, luận văn không tránh khỏi những hạn chế, em
mong nhận đƣợc sự góp ý của các thầy cô và đồng nghiệp, để em có điều
kiện, nghiên cứu sâu thêm về đề tài đã lựa chọn.

Em xin chân thành cảm ơn!
Học viên

Trần Đông Hải


5
MỤC LỤC
Trang
MỤC LỤC………………………………………………………………….1
DANH MỤC HÌNH………………………………………………………..4
MỞ ĐẦU…………………………………………………………………...6
Chương 1.
1.1.

CÁC KHÁI NIỆM CƠ BẢN ................................................. 13

TỔNG QUAN VỀ AN TOÀN THÔNG TIN .............................. 13

1.1.1.

Khái niệm ............................................................................... 13

1.1.2.

Các yêu cầu đảm bảo an toàn thông tin ................................. 13

1.1.3.

Các nội dung an toàn thông tin .............................................. 14


1.1.4.

Các chiến lƣợc an toàn thông tin ........................................... 15

1.1.5.

Các phƣơng pháp bảo đảm an toàn thông tin ........................ 15

1.1.6.

Ứng dụng an toàn thông tin ................................................... 16

1.2.

MÃ HÓA ...................................................................................... 17

1.2.1.

Khái niệm mã hóa .................................................................. 17

1.2.2.

Phân loại hệ mã hóa ............................................................... 19

1.2.3.

Hệ mã hóa RSA ..................................................................... 21

1.3.


CHỮ KÝ SỐ ................................................................................ 24

1.3.1.

Giới thiệu ............................................................................... 24

1.3.2.

Chữ ký số RSA ...................................................................... 27

1.3.3.

Chữ ký mù .............................................................................. 28

1.4.

SƠ ĐỒ CHIA SẺ BÍ MẬT........................................................... 30

1.4.1.

Khái niệm ............................................................................... 30

1.4.2.

Phân loa ̣i................................................................................. 30


6
1.4.3.

Chương 2.

Sơ đồ ngƣỡng Shamir ............................................................ 31
MỘT SỐ BÀI TOÁN VỀ AN TOÀN THÔNG TIN ............ 37

TRONG GIAI ĐOẠN ĐĂNG KÝ BỎ PHIẾU ĐIỆN TỬ ......................... 37
VÀ PHƢƠNG PHÁP GIẢI QUYẾT .......................................................... 37
2.1.

BỎ PHIẾU ĐIỆN TỬ .................................................................. 37

2.1.1.

Giới thiệu ............................................................................... 37

2.1.2.

Yêu cầu .................................................................................. 38

2.1.3.

Phân loại................................................................................. 40

2.1.4.

Các thành phần trong một hệ thống bỏ phiếu điện tử ............ 41

2.1.5.

Quy trình bỏ phiếu điện tử ..................................................... 42


2.2.

CÁC BÀI TOÁN .......................................................................... 47

2.2.1.

Bảo vê ̣ hồ sơ cƣ̉ tri ................................................................. 47

2.2.2.

Thẩ m đinh
̣ hồ sơ cƣ̉ tri ........................................................... 50

2.2.3.

Ẩn danh lá phiếu tránh lá phiếu bị theo dõi........................... 51

2.2.4.

Mô ̣t cƣ̉ trí đăng ký bỏ phiế u nhiề u lầ n................................... 52

2.2.5.

Ban đăng ký ký nhiề u lá phiế u cho mô ̣t cƣ tri ....................... 53

Chương 3.

THỬ NGHIỆM CHƢƠNG TRÌNH ỨNG DỤNG ................ 54


3.1.

CÔNG NGHỆ PHÁT TRIỂN ...................................................... 54

3.2.

PHÂN TÍCH THIẾT KẾ HỆ THỐNG ........................................ 56

3.2.1.

Biểu đồ ngữ cảnh ................................................................... 56

3.2.2.

Biểu đồ khung cảnh ............................................................... 56

3.2.3.

Biểu đồ phân rã chức năng..................................................... 57

3.2.4.

Cơ sở dữ liệu .......................................................................... 59

3.3.

MỘT SỐ CHỨC NĂNG .............................................................. 62

3.3.1.


Đăng ký hồ sơ ........................................................................ 62


7
3.3.2.

Giao diện đăng nhập hệ thống ............................................... 63

3.3.3.

Quản lý hồ sơ ......................................................................... 63

3.3.4.

Quản trị hệ thống ................................................................... 64

3.3.5.

Chữ ký mù:............................................................................. 67

KẾT LUẬN…………………………………...………………………..65
TÀI LIỆU THAM KHẢO……………………………………………...66


8
DANH MỤC HÌNH
Trang
Hình 1.1 Mã hóa và giải mã

14


Hình 1.2 Chữ ký số

22

Hình 1.3 Sơ đồ ngƣỡng Shamir

28

Hình 2.1 Quy trình bỏ phiếu điện tử

38

Hình 2.2 Giai đoạn đăng ký bỏ phiếu

40

Hình 2.3 Giai đoạn bỏ phiếu

41

Hình 2.4 Giai đoạn kiểm phiếu

42

Hình 3.1 Biểu đồ ngữ cảnh

52

Hình 3.2 Biểu đồ khung cảnh


52

Hình 3.3 Biểu đồ mô tả chức năng

53

Hình 3.4 Bảng Voter

55

Hình 3.5 Bảng User

56

Hình 3.6 Bảng Role

56

Hình 3.7 Bảng sharekey

56

Hình 3.8 Bảng signballot

57

Hình 3.9 Bảng Config

57


Hình 3.10 Đăng ký hồ sơ

58

Hình 3.11 Đăng nhập

59

Hình 3.12 Quản lý hồ sơ

59


9
Hình 3.13 Quản trị hệ thống

60

Hình 3.14 Quản trị ngƣời dùng

61

Hình 3.15 Khởi tạo chia sẻ bí mật

62

Hình 3.16 Chữ ký mù

63



10
MỞ ĐẦU
Ngày nay, máy tính và mạng internet phát triển mạnh mẽ, đã trở thành
công cụ lƣu trữ, xử lý và truyền tải thông tin chủ yếu của con ngƣời. Mạng
internet khiến thế giới gần nhau hơn, con ngƣời trên khắp thế giới có thể liên
lạc dễ dàng với nhau qua email, chat, gọi điện qua mạng với giá thành rẻ.
Thiết bị di động giúp chúng ta liên lạc với nhau mọi lúc mọi nơi. Máy tính
giúp chúng ta lƣu trữ lƣợng thông tin khổng lồ, tìm kiếm, xử lý thông tin
nhanh chóng và đƣợc sử dụng ngày càng sâu rộng trong mọi lĩnh vực của
cuộc sống kinh tế, chính trị, quân sự, y tế, …
Tuy nhiên, sự tiện lợi đó cũng phát sinh các vấn đề mới về an toàn thông
tin. Nhiều thông tin nhạy cảm nhƣ thông tin cá nhân, tài khoản ngân hàng, các
chiến lƣợc kinh doanh, bí mật quân sự, … đƣợc số hóa, khiến thông tin dễ bị
tấn công, đánh cắp, thay đổi, giả mạo. Theo báo cáo về an toàn thông tin thế
giới 2013 của VNISA (Vietnam Information Security Association: hiệp hội an
toàn thông tin Việt Nam), số lƣợng website nhiễm mã độc và trở thành công
cụ phát tán mã độc đã lên tới 75 triệu. Thiết bị Androi trở thành đích tấn công
lớn nhất với 18.000 mẫu mã độc hại chỉ trong quý 2/2013, số lƣợng mã độc
do McAfee sƣu tầm lên đến 140 triệu mẫu khác nhau. Việc thu thập thông tin
ở mức độ nào là hợp pháp và bất hợp pháp, thu thập thông tin để chống khủng
bố là rất cần thiết, nhƣng việc thu thập thông tin tình báo xâm phạm chủ
quyền số quốc gia lại dẫn tới một thế giới thiếu tin cậy lẫn nhau, điển hình là
việc Edward Snowden, cựu nhân viên CIA, tiết lộ chƣơng trình thu thập thông
tin PRISM của chính phủ Mỹ đã nghe lén các cuộc gọi điện thoại của nhiều
nguyên thủ quốc gia các nƣớc đồng minh Châu Âu, Châu Á.
Trao đổi thông tin trên mạng còn thay đổi cách xác minh trách nhiệm các
thông tin. Khi nhận đƣợc tờ Sec điện tử, làm sao để xác nhận nó là do đối tác
đã thanh toán cho ta, tiền đó là thật hay giả. Khi nhận đƣợc bản hợp đồng

kinh tế, làm sao biết chữ ký phía dƣới là đúng của các bên tham gia hợp đồng,


11
các chữ ký đó hoàn toàn có thể bị giả mạo bằng cách lấy chữ ký của các bên
tham gia hợp đồng từ các giấy tờ khác và dán vào bản hợp đồng hiện tại. Xác
định trách nhiệm bằng chữ ký truyền thống không còn phù hợp với tài liệu số,
chúng ta cần dùng cách khác là chữ ký số.
Để giải quyết các vấn đề trên, nghiên cứu an toàn thông tin là yêu cầu
cấp bách, cần phải làm thƣờng xuyên, liên tục.
Bỏ phiếu để thăm dò ý kiến cộng đồng là những hoạt động có từ lâu đời
trong xã hội loài ngƣời. Bỏ phiếu truyền thống đã đáp ứng tốt các yêu cầu của
cuộc bỏ phiếu, nhƣng cũng còn tồn tại nhiều vấn đề: thời gian bỏ phiếu lâu,
việc gian lận phiếu bầu khó tránh khỏi, cử tri phải trực tiếp đến các địa điểm
bỏ phiếu …. Để khắc phục các vấn đề đó, bỏ phiếu điện tử ra đời áp dụng
công nghệ thông tin, internet vào quá trình bỏ phiếu. Bỏ phiếu điện tử hứa
hẹn mang lại nhiều lợi ích lớn: cho phép bỏ phiếu từ xa, kiểm phiếu nhanh
chóng và chính xác … Tuy vậy, chúng ta phải đối mặt với nhiều vấn đề mới
ảnh hƣởng tới độ tin cậy của kết quả bầu cử: đảm bảo bí mật, bảo toàn, xác
thực thông tin cử tri, lá phiếu trên đƣờng truyền hay khi lƣu trữ trên máy,
tránh gian lận, thay đổi lá phiếu ...
Trên thế giới, tính đến năm 2012, mới có khoảng 11 nƣớc nghiên cứu
phát triển bỏ phiếu điện tử, trong đó có 4 nƣớc áp dụng đầy đủ vào thực tế là
Estonia, Canada, Pháp và Thụy Sĩ, 7 nƣớc còn lại đang trong giai đoạn thử
nghiệm. Trong 11 nƣớc đó, có 7 nƣớc có ý định tiếp tục phát triển, một số
nƣớc còn lại đã ngừng nghiên cứu do thấy phát sinh vấn đề mới làm cho tính
hiệu quả của bỏ phiếu điện tử không hơn gì bỏ phiếu truyền thống nhƣ: Anh,
Hà Lan, Tây Ban Nha. Thực tế các nƣớc cho thấy, còn nhiều vấn đề phải giải
quyết để có hệ thống bỏ phiếu điện tử tin cậy, hiệu quả, trong đó vấn để bảo
đảm an toàn thông tin là vấn đề lớn [9].

Tại Việt Nam, bầu cử điện tử là lĩnh vực mới, đang đƣợc nghiên cứu và
cài đặt thử nghiệm ở một số lĩnh vực hẹp. Trƣớc yêu cầu lý luận và thực tế


12
đó, tôi lƣ̣a chọn đề tài: “Nghiên cứu một số giải pháp bảo đảm an toàn thông
tin trong giai đoạn đăng ký bỏ phiếu điện tử” làm luận văn tốt nghiệp cao học
của mình.
Bố cục của luận văn bao gồm 3 chƣơng:
Chƣơng 1: Các khái niệm cơ bản. Chƣơng này trình bày các vấn đề về
yêu cầu, nội dung, chiến lƣợc, các phƣơng pháp đảm bảo an toàn thông tin.
trình bày các khái niệm về an toàn thông tin, mã hóa, chữ ký số, về chia sẻ bí
mật,…các kiến thức này giúp giải quyết các vấn đề đặt ra của luận văn.
Chƣơng 2: Tìm hiểu về bỏ phiếu điện tử, các yêu cầu, quy trình bỏ phiếu
và một số bài toán về an toàn thông tin trong giai đoạn đăng ký bỏ phiếu điện
và phƣơng pháp giải quyết. Chƣơng này nghiên cứu năm bài toán an toàn
thông tin trong giai đoạn đăng ký bỏ phiếu điện tử: bảo vệ hồ sơ cử tri, thẩm
định hồ sơ, ẩn danh lá phiếu, chống một cử tri đăng ký bỏ phiếu nhiều lần,
chống ban đăng ký ký nhiều lá phiếu.
Chƣơng 3: Cài đặt thử nghiệm chƣơng trình ứng dụng
Chƣơng này trình xây dƣ̣ng h ệ thống bỏ phiếu điện tử với các chức năng
chính nhƣ: đăng ký mới, thẩm định hồ sơ, kiểm tra chữ ký cử tri, chia sẻ khóa
bí mật, ký mù lá phiếu, quản trị thành viên.
Phần cuối cùng là kết luận và định hƣớng phát triển của đề tài.


13
Chương 1. CÁC KHÁI NIỆM CƠ BẢN
1.1. TỔNG QUAN VỀ AN TOÀN THÔNG TIN
1.1.1. Khái niệm


An toàn thông tin là hoạt động bảo vệ thông tin, đảm bảo cho các hệ
thống dịch vụ có khả năng chống trả lại các lỗi, những tai họa không mong
đợi và các tác động ảnh hƣởng đến độ an toàn của hệ thống. Hệ thống không
an toàn tồn tại những nhƣợc điểm nhƣ: thông tin bị rò rỉ ra ngoài, dữ liệu hệ
thống bị ngƣời không có quyền truy cập lấy và sử dụng, thông tin bị thay đổi
làm sai lệch hoàn toàn nội dung.
1.1.2. Các yêu cầu đảm bảo an toàn thông tin

Một hệ thống thông tin đƣợc coi là bảo mật nếu thỏa mãn các yêu cầu:
bảo mật, toàn vẹn, xác thực và sẵn sàng.
Một là, tính bảo mật, hệ thống có tính bảo mật nếu thông tin không bị
tiết lộ cho ngƣời không đƣợc phép. Tính bí mật ở đây là sự giới hạn về đối
tƣợng đƣợc quyền truy xuất thông tin. Đối tƣợng truy xuất có thể là con
ngƣời, máy tính. Tùy theo tính chất của thông tin mà mức độ bí mật cũng
khác nhau. Sự bí mật thông tin cần xem xét hai yếu tố tách rời: sự tồn tại
thông tin và nội dung thông tin, đôi khi tiết lộ sự tồn tại thông tin còn có ý
nghĩa cao hơn việc biết nội dung thông tin đó. Có nhiều phƣơng pháp bảo
đảm sự bí mật thông tin: các phƣơng pháp vật lý nhƣ nhà xƣởng, dịch vụ bảo
vệ, hay phƣơng pháp mã hóa.
Hai là, tính toàn vẹn ngăn chặn, hạn chế việc bổ sung, loại bỏ, sửa đổi dữ
liệu, tài nguyên của ngƣời không đƣợc phép. Có hai loại cơ chế bảo đảm sự
toàn vẹn thông tin: các cơ chế ngăn chặn và các cơ chế phát hiện. Các cơ chế
ngăn chặn có chức năng ngăn các hành vi cố gắng thay đổi nội dung thông tin
khi không đƣợc phép truy xuất, hành vi thay đổi nội dung thông tin theo cách
khác với cách đã đƣợc cho phép. Các cơ chế phát hiện chỉ thực hiện chức


14
năng giám sát và thông báo khi có các thay đổi diễn ra trên thông tin bằng

cách phân tích các sự kiện diễn ra trên hệ thống.
Ba là, tính xác thực, xác thực đúng thực thể cần kết nối, giao dịch, ngƣời
có quyền mới đƣợc truy cập tài nguyên, xác thực đúng thực thể có trách
nhiệm về nội dung thông tin (xác thực nguồn gốc thông tin). Ngƣời nhận
thông tin phải biết chắc ai gửi thông tin cho mình, tránh giả mạo, chứng minh
đƣợc giả mạo. Có nhiều cơ chế xác thực nhƣ dùng cơ chế đăng nhập, giao
thức chống chối bỏ …
Bốn là, tính sẵn sàng, thông tin và tài nguyên luôn sẵn sàng để đáp ứng
nhu cầu sử dụng của ngƣời có quyền hạn. Đây là yêu cầu quan trọng của hệ
thống vì một hệ thống không sẵn sàng cho sử dụng thì cũng coi nhƣ không
tồn tại, và các yêu cầu bảo mật khác cũng không có ý nghĩa. Một hệ thống
khả dụng là một hệ thống làm việc trôi chảy và hiệu quả, có khả năng phục
hồi nhanh chóng nếu có sự cố xảy ra. Hiện nay, hình thức tấn công từ chối
dịch vụ DoS và từ chối phân tán dịch vụ DDoS là những nguy cơ lớn nhất với
sự an toàn, sẵn sàng của các hệ thống thông tin, gây ra thiệt hại lớn và đặc
biệt là chƣa có giải pháp ngăn chặn hiệu quả.
1.1.3. Các nội dung an toàn thông tin

- Nội dung chính: Ngày nay máy tính và Internet đƣợc sử dụng rộng rãi
để lƣu trữ, xử lý, lan truyền thông tin. Có hai nội dung của an toàn thông tin là
an toàn máy tính và an toàn truyền tin. An toàn máy tính là sự bảo vệ các
thông tin, dữ liệu bên trong máy tính, là khoa học về bảo đảm an toàn thông
tin trong máy tính. An toàn truyền tin: là sự bảo vệ thông tin trên đƣờng
truyền tin, là khoa học về bảo đảm an toàn thông tin trên đƣờng truyền tin.
- Nội dung chuyên ngành: Để bảo vệ thông tin bên trong máy tính hay
trên đƣờng truyền, phải nghiên cứu các nội dung chuyên ngành sau: an toàn
dữ liệu, an toàn cơ sở dữ liệu, an toàn hệ điều hành và an toàn mạng máy tính.


15

1.1.4. Các chiến lƣợc an toàn thông tin

- Cấp quyền hạn tối thiểu: Nguyên tắc chung là hạn chế sự ƣu tiên, mỗi
ngƣời dùng hệ thống chỉ đƣợc cấp phát một số quyền hạn nhất định đủ dùng
cho công việc của họ.
- Phòng thủ theo chiều sâu: không nên dựa vào một chế độ an toàn nào
dù là rất mạnh, ta nên tạo lập nhiều lớp bảo vệ cho hệ thống: quyền truy cập,
đăng nhập bằng mật khẩu, mã hóa dữ liệu, bảo vệ vật lý, tƣờng lửa.
1.1.5. Các phƣơng pháp bảo đảm an toàn thông tin

Có nhiều phƣơng pháp bảo đảm an toàn thông tin:
- Phƣơng pháp che giấu, bảo đảm toàn vẹn và xác thực thông tin: “Che”
(mã hóa) làm thay đổi hình dạng dữ liệu gốc, ngƣời khác khó nhận ra. “Giấu”
là Cất giấu dữ liệu trong môi trƣờng dữ liệu khác. Bảo đảm toàn vẹn và xác
thực thông tin (đánh giấu thông tin). Có các kỹ thuật để thực hiện nhƣ mã
hóa, hàm băm, giấu tin, ký số, giao thức bảo toàn thông tin, giao thức xác
thực thông tin . . .
- Phƣơng pháp kiểm soát lỗi vào ra của thông tin, có các hình thức kiểm
soán: kiểm soát, ngăn chặn các thông tin vào ra hệ thống máy tính; kiểm soát,
cấp quyền sử dụng thông tin trong hệ thống máy tính; kiểm soát, tìm diệt phần
mềm độc hại vào trong hệ thống máy tính. Kỹ thuật có thể là mật khẩu, tƣờng
lửa, mạng riêng ảo, nhận dạng, xác định thực thể, cấp quyền hạn.
- Phát hiện và xử lý các lỗ hổng trong an toàn thông tin, có các loại lỗ
hổng: “Lỗ hổng” trong các thuật toán hay giao thức mật mã, giấu tin; “lỗ
hổng” trong các giao thức; “lỗ hổng” trong các hệ điều hành; “lỗ hổng” trong
các ứng dụng.
- Phối hợp các phƣơng pháp xây dựng các “hành lang”, “đƣờng đi” an
toàn cho thông tin gồm: hạ tầng mật mã khóa công khai (PKI), kiểm soát lối
vào/ra: Mật khẩu, tƣờng lửa, mạng riêng ảo, cấp quyền hạn, kiểm soát và xử
lý các lỗ hổng.



16
- Các kỹ thuật bảo đảm an toàn thông tin: kỹ thuật diệt trừ virus máy
tính, chƣơng trình trái phép; kỹ thuật tƣờng lửa nhằm ngăn chặn truy cập trái
phép, lọc thông tin không hợp pháp; kỹ thuật mạng riêng ảo tạo ra hành lang
riêng cho thông tin “đi lại”; kỹ thuật mật mã nhƣ mã hóa, ký số, giao thức mật
mã, chống chối cãi; kỹ thuật giấu tin giúp che giấu thông tin trong môi trƣờng
dữ liệu khác; kỹ thuật thủy ký nhằm bảo vệ bản quyền tài liệu số hóa; kỹ thuật
truy tìm “dấu vết” kẻ trộm tin.
- Các công nghệ đảm bảo an toàn thông tin, có một số công nghệ chung
nhƣ tƣờng lửa, mạng riêng ảo, PKI (hạ tầng mã hóa khóa công khai), thẻ
thông minh . . . và các công nghệ cụ thể: SSL, TLS, PGP, SMINE . . .
1.1.6. Ứng dụng an toàn thông tin

Ngày nay an toàn thông tin đƣợc ứng dụng trong nhiều rất nhiều lĩnh vực
của đời sống.
- Lĩnh vực an ninh quốc phòng: thông tin quốc phòng là thông tin tuyệt
mật ảnh hƣởng đến an ninh quốc gia. Bảo mật thông tin và hoạt động tình báo
sử dụng nhiều kỹ thuật nhƣ mã hóa, thám mã, lọc tin, bắt trộm …
- Lĩnh vực chính trị xã hội: bầu cử, bỏ phiếu từ xa, thăm dò từ xa …
- Lĩnh vực hành chính: chính phủ điện tử đang đƣợc nhiều nƣớc phát
triển sử dụng ở mức độ khác nhau, có các ứng dụng phổ biến nhƣ chứng minh
thƣ điện tử, giấy phép điện tử, gửi công văn, quyết định từ xa trên mạng máy
tính công khai, thủ tục hành chính trực tuyến.
- Lĩnh vực kinh tế: thƣơng mại điện tử, ngân hàng điện tử đang phát triển
rộng khắp, mang lại giá trị kinh tế to lớn khiến vấn đề an toàn thông tin có ý
nghĩa sống còn. Có các ứng dụng phổ biến nhƣ thỏa thuận hợp đồng, đấu giá,
thanh toán trực tuyến, thẻ tiến dụng điện tử, ví tiền điện tử, tiền điện tử …
- Lĩnh vực giáo dục: lĩnh vực này cũng có nhiều ứng dụng cần bảo mật

nhƣ gửi đề thi, bài thi qua mạng, đào tạo từ xa.


17
1.2. MÃ HÓA
1.2.1. Khái niệm mã hóa

Mã hóa là quá trình chuyển thông tin có thể đọc đƣợc (gọi là bản rõ)
thành thông tin khó thể đọc đƣợc theo cách thông thƣờng (gọi là bản mã).
Đây là một trong những kỹ thuật lâu đời để bảo mật thông tin [3].
Giải mã là quá trình chuyển thông tin ngƣợc lại từ bản mã thành bản rõ.
Thuật toán mã hóa hay giải mã là thủ tục tính toán để thực hiện mã hóa hay
giải mã. Khóa mã hóa là một giá trị làm cho thuật toán mã hóa thực hiện theo
cách riêng biệt, sinh ra bản rõ riêng. Thông thƣờng khóa càng lớn thì bản mã
càng an toàn. Phạm vi các giá trị có thể có của khóa gọi là không gian khóa.
Hệ mã hóa là tập các thuật toán, các khóa nhằm che giấu thông tin, cũng
nhƣ làm cho rõ thông tin. Hệ mã hóa đƣợc định nghĩa là bộ năm (P, C, K, E,
D), trong đó:
P là tập hữu hạn các bản rõ có thể.
C là tập hữu hạn các bản mã có thể.
K là tập hữu hạn các khoá có thể.
E là tập các hàm lập mã.
D là tập các hàm giải mã.
Với khóa lập mã k e ∈ K, có hàm lập mã eke ∈ E, eke : P → C
Với khóa giải mã k d ∈ K, có hàm giải mã dkd ∈ D, dkd : C → P
sao cho dkd eke x

= x, ∀ x ∈ P

Ở đây x gọi là bản rõ, eke x gọi là bản mã.



18

Hình 1.1 Mã hóa và giải mã
Ngƣời gửi G muốn gửi bản tin T tới ngƣời nhận N, để đảm bảo bí mật, G
mã hóa T bởi khóa lập mã ke và nhận đƣợc eke (T), và gửi cho N. Tin tặc có
thể lấy trộm đƣợc eke (T) nhƣng khó hiểu đƣợc bản tin gốc T do không có
khóa giả mã kd. N nhận đƣợc bản mã, dùng khóa kd giải mã sẽ nhận đƣợc
bản tin gốc T = dkd (eke T ).
Quá trình mã hóa, giải mã bản tin có các bƣớc chính nhƣ sau:
- Lập mã:
Bƣớc 1: nhập bản rõ ký tự: RÕ_CHỮ.
Bƣớc 2: chuyển RÕ_CHỮ ==> RÕ_SỐ.
Bƣớc 3: chuyển RÕ_SỐ ==> MÃ_SỐ.
Bƣớc 4: chuyển MÃ _SỐ ==> MÃ_CHỮ.
- Giải mã:
Bƣớc 1: nhập bản mã ký tự: MÃ_CHỮ.
Bƣớc 2: chuyển MÃ_CHỮ ==> MÃ_SỐ.
Bƣớc 3: chuyển MÃ_SỐ ==> RÕ_SỐ.
Bƣớc 4: chuyển RÕ_SỐ ==> RÕ_CHỮ.


19
Để chuyển từ CHỮ sang SỐ hay ngƣợc lại, ngƣời ta có một quy ƣớc nào
đó, ví dụ dựa theo modulo 26 nhƣ bảng sau:
AB C DE F GH I J K L MN O P Q R S T U V X Y Z W
0 1 2 3 4 5 6 7 8 9 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6


1.2.2. Phân loại hệ mã hóa
1.2.2.1. Hệ mã hóa khóa đối xứng

Mã hóa khóa đối xứng là hệ mã hóa mà biết đƣợc khóa lập mã thì có thể
dễ tính đƣợc khóa giải mã và ngƣợc lại [3]. Trong nhiều trƣờng hợp, khóa lập
mã và khóa giải mã trùng nhau. Hệ mã hóa khóa đối xứng còn gọi hệ mã hóa
khóa bí mật hay khóa riêng vì phải giữ bí mật cả hai khóa. Trƣớc khi sử dụng,
ngƣời gửi và ngƣời nhận phải thỏa thuận thuật toán mã hóa và khóa chung.
Độ an toàn của hệ phụ thuộc vào khóa.
Hệ mã hóa cổ điển là mã hóa khóa đối xứng, dễ hiểu, dễ thực thi, nhƣng
độ an toàn không cao. Một số hệ mã hóa cổ điển phổ biến: hệ mã hóa dịch
chuyển, hệ mã hóa thay thế, hệ mã hóa Affine, hệ mã hóa Vigenere, hệ mã
hóa hoán vị.
Hệ mã hóa DES là mã hóa khóa đối xứng hiện đại, có độ an toàn cao.
- Ƣu điểm hệ mã hóa khóa đối xứng: quá trình mã hóa và giải mã nhanh
hơn hệ mã hóa khóa công khai.
- Nhƣợc điểm: chƣa thật sự an toàn do ngƣời gửi và ngƣời nhận dùng
chung khóa, vì vậy phải giữ bí mật tuyệt đối cả hai khóa, lộ một khóa thì sẽ dễ
suy ra khóa kia, việc giữ bí mật khóa khó khăn vì hai ngƣời cùng biết một bí
mật sẽ dễ bị lộ khóa. Vấn đề thỏa thuận khóa và quản lý khóa chung là khó
khăn phức tạp, việc thay đổi khóa phức tạp và dễ bị lộ vì phải trao đổi qua lại,
với một mạng có nhiều ngƣời dùng, cứ hai ngƣời phải có một khóa chung,
nên số lƣợng khóa rất lớn và thông tin khóa trao đổi trên mạng nhiều.


20
Hệ mã hóa khóa đối xứng thƣờng đƣợc sử dụng trong môi trƣờng mà
khóa chung có thể dễ dàng trao đổi bí mật, chẳng hạn trong cùng một mạng
nội bộ. Hệ đƣợc dùng để mã hóa các bản tin lớn, vì tốc độ mã hóa và giải mã
nhanh hơn hệ mã hóa khóa công khai.

1.2.2.2. Hệ 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óa giải mã
khác nhau, biết đƣợc khóa này cũng khó tính đƣợc khóa kia [3]. Khóa lập mã
đƣợc công khai, gọi là khóa công khai, ngƣời nhận tin giữ bí mật khóa giải
mã, đƣợc gọi là khóa bí mật, hay khóa riêng. Một ngƣời bất kỳ có thể mã hóa
bản tin bằng khóa công khai và gửi cho ngƣời nhận, chỉ có ngƣời nhận mới
giải đƣợc mã bản tin bằng khóa bí mật.
Một số hệ mã hóa khóa công khai phổ biến: RSA, Elgamal …
- Ƣu điểm hệ mã hóa khóa công khai
+ Thuật toán đƣợc viết một lần, công khai cho nhiều lần dùng, cho nhiều
ngƣời dùng, họ chỉ cần giữ bí mật khóa riêng của mình.
+ Khi biết các tham số ban đầu của hệ mã hóa, việc tính ra cặp khóa
công khai và bí mật phải là dễ, trong thời gian đa thức. Ngƣời gửi có bản rõ P
và khóa công khai thì dễ tạo ra bản mã C. Ngƣời nhận có bản mã C và khóa bí
mật thì dễ giải đƣợc bản rõ P.
+ Ngƣời mã hóa dùng khóa công khai, ngƣời giải mã giữ khóa bí mật.
Khả năng lộ khóa bí mật khó hơn vì chỉ có một ngƣời giữ bí mật.
+ Nếu thám mã biết khóa công khai, cố gắng tìm khóa bí mật thì phải
giải bài toán khó. Nếu thám mã biết khóa công khai và bản mã thì việc tìm ra
bản rõ P cũng là bài toán khó.
- Nhƣợc điểm
Quá trình mã khóa và giải mã chậm hơn hệ mã khóa khóa đối xứng.


21
Hệ mã hóa khóa công khai thƣờng đƣợc sử dụng chủ yếu trên mạng công
khai nhƣ Internet, khi mà việc trao đổi khóa bí mật tƣơng đối khó khăn. Do
tốc độ mã hóa và giải mã chậm, hệ đƣợc sử dụng để mã hóa bản tin ngắn nhƣ
mã hóa khóa bí mật.

Hệ mã hóa khóa công khai thƣờng đƣợc dùng để mã hóa thông tin trong
quá trình thỏa thuận và phân phối khóa cho cặp ngƣời dùng hệ mã hóa khóa
bí mật.
1.2.3. Hệ mã hóa RSA

Hệ mã hóa RSA là một hệ mã hóa khóa đối xứng do Rivest, Shamir,
Adleman đề xuất năm 1977.
1.2.3.1. Sơ đồ

- Tạo cặp khóa bí mật, công khai (a,b) [3]:
+ Chọn bí mật số nguyên tố lớn p, q
+ Tính n = p*q, công khai n, đặt P = C = Zn.
+ Tính bí mật:
ɸ n = p − 1 (q − 1)

(1.1)

Chọn khóa công khai b < ɸ(n) nguyên tố với ɸ(n).
+ Khóa bí mật a là phần tử nghịch đảo của b theo mod ɸ(n):
a ∗ b ≡ 1(mod ɸ n ).
+ Tập cặp khóa (bí mật, công khai) K
K = { a, b / a, b ∈ Zn , a ∗ b = 1 (mod ɸ(n))}.
Với bản rõ x ∈ P và bản mã y ∈ C, ta định nghĩa:
- Hàm mã hóa:
y = ek x = x b mod n

(1.2)


22

- Hàm giải mã:
x = dk y = y a mod n

(1.3)

1.2.3.2. Ví dụ

Bản rõ: HELLOWORLD
- Sinh khóa:
Chọn bí mật hai số nguyên tố p=53, q=61, tính n = p*q = 3233, công
khai n.
Đặt P = C = Zn, tính ɸ n = p − 1 ∗ q − 1 = 52 ∗ 60 = 3120
Chọn khóa công khai b nguyên tố cùng nhau với ɸ(n): b=71
Chọn a là phần tử nghịch đảo của b theo mod ɸ(n): a = 791
- Bản rõ số:
H E

L L

O W

07 04

11 11 14 25 14 17 11 03

m1

m2

m3


O R

m4

L D

m5

Theo phép lập mã: ci = mbi mod n = m71
i mod 3233 ta nhận đƣợc:
- Bản mã số:
c1

c2

c3

c4

c5

1614

2426

652

292


4

Theo phép giải mã: mi = cia mod n = ci791 mod 3233 ta nhận lại bản rõ.
1.2.3.3. Độ an toàn

- Hệ mã hóa RSA là tất định, tức là với một bản rõ x và một khóa công
khai thì chỉ có một bản mã y.
- Hệ mã hóa RSA an toàn, khi giữ đƣợc bí mật khóa giải mã a, p, q, ɸ(n).


23
+ Nếu biết đƣợc p, q thì thám mã dễ tính đƣợc ɸ(n) = (p-1)*(q-1).
+ Nếu biết đƣợc ɸ(n), thì thám mã sẽ tính đƣợc a theo thuật toán Euclide
mở rộng do đã biết b và a ∗ b ≡ 1(mod ɸ n ).
+ Nhƣng phân tích n thành tích p*q là bài toán khó do p, q là số nguyên
tố lớn. Độ an toàn của hệ mật RSA dựa vào khả năng phân tích số nguyên
dƣơng n thành tích 2 thừa số nguyên tố lớn.


24
1.3. CHỮ KÝ SỐ
1.3.1. Giới thiệu
1.3.1.1. Khái niệm

Để chứng thực nguồn gốc tài liệu, lâu nay chúng ta vẫn dùng chữ ký tay,
ký vào phía dƣới tài liệu. Ngày nay, nhiều tài liệu đƣợc số hóa, nhu cầu chứng
thực tài liệu số đƣợc đặt ra. Chúng ta không thể dùng đƣợc cách ký truyền
thống do tài liệu số không đƣợc in ra, hơn nữa, nếu chúng ta chụp ảnh chữ ký
tay dán vào tài liệu số, thì chữ ký tay này dễ bị giải mạo, vì chữ ký đó có thể
đƣợc dán từ tài liệu này sang tài liệu khác. Vì vậy, cần phải có một cách

chứng thực khác, đó là chữ ký số.
Một chữ ký số có hai khóa bí mật và công khai. Khóa bí mật để ký chữ
số, khóa công khai dùng để chứng thực chữ ký số có phải đúng của ngƣời ký
tài liệu hay không.
Chữ ký số ngoài việc chứng thực nguồn gốc tài liệu, còn dùng để bảo
đảm tính toàn vẹn tài liệu, chống chối bỏ. Ƣu điểm của chữ ký số là có thể ký
từ xa trên mạng công khai, có thể ký bằng các thiết bị cầm tay miễn là kết nối
Internet.
1.3.1.2. Sơ đồ

Chữ ký số là bộ năm (P, A, K, S, V), trong đó:
P là tập hữu hạn các văn bản có thể
A là tập hữu hạn các chữ ký số có thể
K là tập hữu hạn các khóa có thể
S là tập các thuật toán ký
V là tập các thuật toán kiểm thử.
Với mỗi khóa k ∈ K, có thuật toán ký Sig k ∈ S, Sig k : P → A


25
Có thuật toán kiểm tra chữ ký Verk ∈ V, Verk : P ∗ A → đúng, sai
Thỏa mãn điều kiện sau: ∀x ∈ P, y ∈ A:
Verk x, y =

Đúng, nếu y = Sig k (x)
Sai, nếu y ≠ Sig k x

(1.4)

Chú ý: Ta thƣờng dùng hệ mã hóa khóa công khai để lập sơ đồ chữ ký

số. Ở đây, khóa bí mật a dùng làm khóa ký, khóa công khai b dùng làm khóa
kiểm tra chữ ký. Điều này ngƣợc với quá trình mã hóa, khóa mã hóa là công
khai, khóa giải mã là bí mật.
1.3.1.3. Phân loại

- Phân loại theo đặc trƣng kiểm tra chữ ký
+ Chữ ký khôi phục thông điệp: là chữ ký ngƣời gửi chỉ cần gửi chữ ký,
ngƣời nhận khôi phục lại đƣợc thông điêp đã đƣợc ký bởi chữ ký đó. Ví dụ:
chữ ký RSA.
+ Chữ ký không thể khôi phục thông điệp: là chữ ký, trong đó ngƣời gửi
ngoài gửi chữ ký phải gửi kèm thông điệp đã đƣợc ký bởi chữ ký này, nếu
không sẽ không khôi phục lại đƣợc thông điệp. Ví dụ: chữ ký Elgamal.
- Phân loại theo mức an toàn:
+ Chữ ký không thể phủ nhận: Nhằm tránh việc nhân bản chữ ký để sử
dụng nhiều lần, ngƣời ký nên tham gia trực tiếp vào việc kiểm thử chữ ký
thông qua một giao thức kiểm thử mời hỏi và trả lời.
+ Chữ ký một lần: để đảm bảo an toàn, khóa ký chỉ dùng một lần trên
một tài liệu.
- Phân loại theo ứng dụng đặc trƣng: có chữ ký mù, chữ ký nhóm, chữ ký
bội, chữ ký mù nhóm, chữ ký mù bội.
1.3.1.4. Đại diện tài liệu, hàm băm

Chữ ký số nế u ký trực tiếp lên tài liệu sẽ có kích thƣớc ít nhất bằng kích
thƣớc tài liê ̣u , có thuật toán ký , chƣ̃ ký có kić h thƣớc gấ p đôi kích thƣớc tài


×