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

(Luận văn thạc sĩ) nghiên cứu phối hợp các phương pháp nén thông tin, mã hóa thông tin, giấu thông tin để đảm bảo an toàn thông tin trong môi trường đa phương tiện

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.67 MB, 93 trang )

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

LÊ MẠNH THẮNG

NGHIÊN CỨU PHỐI HỢP CÁC PHƢƠNG PHÁP NÉN
THÔNG TIN, MÃ HỐ THƠNG TIN, GIẤU THƠNG TIN
ĐỂ XÂY DỰNG ỨNG DỤNG GIẤU TIN TRONG MÔI
TRƢỜNG ĐA PHƢƠNG TIỆN

LUẬN VĂN THẠC SĨ

Hà Nội - 2009


2

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

LÊ MẠNH THẮNG

NGHIÊN CỨU PHỐI HỢP CÁC PHƢƠNG PHÁP NÉN
THÔNG TIN, MÃ HỐ THƠNG TIN, GIẤU THƠNG TIN
ĐỂ XÂY DỰNG ỨNG DỤNG GIẤU TIN TRONG MƠI
TRƢỜNG ĐA PHƢƠNG TIỆN

Ngành:
Cơng nghệ Thơng tin
Chuyên ngành: Công nghệ phần mềm
Mã số:


60 48 10

LUẬN VĂN THẠC SĨ

NGƯỜI HƯỚNG DẪN KHOA HỌC

TS. Hồ Văn Hƣơng

Hà Nội - 2009


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, không sao chép lại của ngƣời khác. Trong toàn bộ nội dung của luận văn,
những điều đƣợc trình bày hoặc là của cá nhân hoặc là đƣợc tổng hợp từ nhiều
nguồn tài liệu. Tất cả các tài liệu tham khảo đều có xuất xứ rõ ràng và đƣợc trích dẫn
hợp pháp.
Tơi xin hồn tồn chịu trách nhiệm 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à Nội, ngày

tháng 11 năm 2009

Lê Mạnh Thắng


4


LỜI CẢM ƠN
Lời đầu tiên, tơi xin bày tỏ lịng biết ơn sâu sắc đến TS. Hồ Văn Hƣơng – Ban
cơ yếu Chính phủ, ngƣời đã tận tình hƣớng dẫn, chỉ bảo và giúp đỡ tơi trong suốt q
trình nghiên cứu và hồn thành luận văn này.
Tơi xin chân thành cảm ơn các thầy cô giáo trƣờng Đại học Công nghệ - ĐHQG
Hà Nội đã giảng dạy và cung cấp cho chúng tơi những kiến thức rất bổ ích trong thời
gian học cao học, giúp tơi có nền tảng tri thức để phục vụ nghiên cứu khoa học sau
này.
Tôi cũng xin cảm ơn Lãnh đạo và đồng nghiệp tại đơn vị đã tạo điều kiện và
giúp đỡ tôi trong suốt q trình nghiên cứu và hồn thành luận văn.
Tơi cũng xin bày tỏ lịng cảm ơn đến gia đình và bạn bè, những ngƣời luôn
quan tâm, động viên và khuyến khích tơi.
Hà Nội, ngày tháng 11 năm 2009
Học viên

Lê Mạnh Thắng


5

MỤC LỤC
LỜI CAM ĐOAN .................................................................................................................. 3
LỜI CẢM ƠN ........................................................................................................................ 4
MỤC LỤC ............................................................................................................................. 5
DANH MỤC CÁC KÝ HIỆU VIẾT TẮT .............................................................................. 7
DANH MỤC CÁC HÌNH VẼ ................................................................................................ 9
MỞ ĐẦU ............................................................................................................................. 10
CHƢƠNG 1 ......................................................................................................................... 12
TỔNG QUAN VỀ NÉN, MÃ HOÁ VÀ GIẤU TIN MẬT ................................................... 12

1.1. Tổng quan về nén thông tin ...................................................................................... 12
1.1.1. Nhận thức chung................................................................................................. 12
1.1.1.1. Một số khái niệm cơ bản ............................................................................ 12
1.1.1.2. Các thông số quan trọng của nén ................................................................ 12
1.1.2. Nguyên tắc của nén dữ liệu ................................................................................. 13
1.1.3. Phân loại phƣơng pháp nén ................................................................................. 15
1.1.3.1. Theo nguyên lý nén .................................................................................... 15
1.1.3.2. Theo cách thức thực hiện nén ..................................................................... 16
1.1.3.3. Phân loại dựa vào triết lý của sự mã hoá ..................................................... 16
1.1.3.4. Cách phân loại của Anil.K.Jain .................................................................. 16
1.1.4. Các kỹ thuật nén thông tin .................................................................................. 16
1.1.4.1. Nén khơng mất mát thơng tin ..................................................................... 16
1.1.4.2. Nén có mất mát thông tin ........................................................................... 17
1.1.5. Ứng dụng của nén thông tin ................................................................................ 17
1.2. Mã hố thơng tin ...................................................................................................... 18
1.2.1. Sơ lƣợc về lịch sử mật mã học ............................................................................ 18
1.2.2. Các khái niệm cơ bản.......................................................................................... 19
1.2.2.1. Khái niệm mật mã ...................................................................................... 19
1.2.2.2. Khái niệm mã hố thơng tin ....................................................................... 19
1.2.3. Phân loại hệ mật mã ............................................................................................ 20
1.2.3.1. Hệ mã hoá khoá bí mật............................................................................... 20
1.2.3.2. Hệ mã hố khố cơng khai ......................................................................... 21
1.2.3.3. Kết hợp hệ mã hố khố bí mật và hệ mã hố khố cơng khai .................... 23
1.3. Sơ lƣợc về giấu tin mật ............................................................................................. 24
1.3.1. Các khái niệm cơ bản.......................................................................................... 24
1.3.1.1. Khái niệm giấu tin mật ............................................................................... 24
1.3.1.2. Các thành phần của hệ giấu tin mật ............................................................ 25
1.3.2. Tính chất của giấu tin mật ................................................................................... 26
1.3.3. Ứng dụng của giấu tin mật .................................................................................. 27
1.3.3.1. Liên lạc bí mật ........................................................................................... 27

1.3.3.2. Bảo vệ bản quyền....................................................................................... 27
1.3.4. Kỹ thuật tấn công hệ giấu tin mật ........................................................................ 28
1.4. Kết chƣơng ............................................................................................................... 29
CHƢƠNG 2 ......................................................................................................................... 30
MÔI TRƢỜNG ĐA PHƢƠNG TIỆN VÀ KHẢ NĂNG GIẤU TIN .................................... 30
2.1. Âm thanh số ............................................................................................................. 30
2.1.1. Tính chất cơ bản của tín hiệu âm thanh ............................................................... 30
2.1.2. Biểu diễn âm thanh số ......................................................................................... 30
2.1.3. Nén âm thanh ..................................................................................................... 33
2.1.3.1. Lƣợng tử hóa phi tuyến .............................................................................. 33
2.1.3.2. Mã hóa dự báo (Predictive Coding) ............................................................ 33
2.1.3.3. Kỹ thuật nén sử dụng tính chất lọc (masking): Âm thanh MPEG ................ 34


6
2.1.4. Giấu tin mật trong âm thanh số ........................................................................... 35
2.2. Ảnh số ...................................................................................................................... 37
2.2.1. Biểu diễn ảnh số ................................................................................................. 37
2.2.2. Các tham số chính của ảnh số ............................................................................. 38
2.2.3. Nén ảnh .............................................................................................................. 38
2.2.4. Giấu tin mật trong ảnh số .................................................................................... 41
2.2.4.1. Giấu tin mật trong ảnh đen trắng ................................................................ 41
2.2.4.2. Giấu tin trong ảnh màu ............................................................................... 42
2.3. Video số ................................................................................................................... 45
2.3.1. Biểu diễn video số .............................................................................................. 45
2.3.2. Nén video ........................................................................................................... 45
2.3.2.1. Lấy mẫu màu ............................................................................................. 45
2.3.2.2. Ƣớc lƣợng và bù chuyển động ................................................................... 46
2.3.2.3. MPEG........................................................................................................ 46
2.3.2.4. Các chuẩn khác .......................................................................................... 50

2.3.3. Giấu tin trong video số........................................................................................ 50
2.4. Kết chƣơng ............................................................................................................... 50
CHƢƠNG 3 ......................................................................................................................... 52
PHỐI HỢP CÁC PHƢƠNG PHÁP NÉN, MÃ HOÁ VÀ GIẤU TIN ĐỂ XÂY DỰNG ỨNG
DỤNG LIÊN LẠC BÍ MẬT................................................................................................. 52
3.1. Vì sao phải kết hợp nén thơng tin, mã hố thơng tin và giấu tin mật .......................... 52
3.2. Tình hình nghiên cứu, ứng dụng giấu tin mật hiện nay .............................................. 53
3.2.1. Một số kỹ thuật và phần mềm giấu tin mật trên thị trƣờng................................... 53
3.2.2. Giấu tin mật và nhu cầu liên lạc bí mật trong cơng tác An ninh Quốc phòng ở Việt
Nam 55
3.3. Giải pháp đề xuất...................................................................................................... 56
3.3.1. Mục tiêu, yêu cầu ............................................................................................... 56
3.3.2. Giải pháp ............................................................................................................ 57
3.4. Xây dựng và cài đặt ứng dụng .................................................................................. 59
3.4.1. Yêu cầu xây dựng ............................................................................................... 59
3.4.2. Lựa chọn giải pháp kỹ thuật cho ứng dụng .......................................................... 60
3.4.2.1. Lựa chọn môi trƣờng và phƣơng tiện truyền ............................................... 60
3.4.2.2. Xây dựng cơ sở dữ liệu vật mang ............................................................... 60
3.4.2.3. Lựa chọn kỹ thuật nén ................................................................................ 60
3.4.2.4. Lựa chọn phƣơng pháp mã hoá .................................................................. 60
3.4.2.5. Lựa chọn giải thuật giấu tin ........................................................................ 61
3.4.2.6. Lựa chọn môi trƣờng xây dựng .................................................................. 61
3.4.3. Thiết kế và cài đặt phần mềm.............................................................................. 63
3.4.4. Kết quả xây dựng ................................................................................................ 70
3.4.5. Giới hạn và cải thiện tƣơng lai: ........................................................................... 71
3.5. Kết chƣơng ............................................................................................................... 72
KẾT LUẬN ......................................................................................................................... 73
TÀI LIỆU THAM KHẢO .................................................................................................... 74
PHỤ LỤC ............................................................................................................................ 76



7

DANH MỤC CÁC KÝ HIỆU VIẾT TẮT
VIẾT TẮT

TỪ GỐC

NGHĨA TIẾNG VIỆT

3-DES

Triple Data Encrytion Standard

Áp dụng giải thuật DES 3
lần cho mỗi khối dữ liệu

ADC

Analog to Digital Converter

Chuyển đổi từ tín hiệu
tƣơng tự sang tín hiệu số

AES

Advanced Encryption Standard

Hệ mật mã tiên tiến


DAC

Digital to Analog Converter

Bộ chuyển đổi từ tín hiệu
số sang tín hiệu tƣơng tự

DCT

Discrete Cosine Transform

Biến đổi Cơsi rời rạc

DES

Data Encryption Standard

Hệ mật mã chuẩn

DPCM

Differential pulse code
modulation

Điều xung mã vi phân

ECC

Elliptic curve cryptography


Hệ mã hóa đƣờng con
Elliptic

HAS

Human Auditory System

Hệ thơng thính giác con
ngƣời

HVS

Human Vision System

Hệ thống thị giác của con
ngƣời

JPEG

Joint Photographic Experts
Group

Ảnh nén có mất mát thơng
tin

LZ77,
LZ78

Abraham Lempel, Jacob Ziv


Các thuật tốn nén khơng
mất mát thơng tin do
Abraham Lempel, Jacob Ziv
đề xuất năm 1977 và 1978

LZW

Lempel – Zip, Welch

Một phƣơng pháp nén đƣợc
phát minh bởi Lempel - Zip
và Welch

MNP5

Microcom Network Protocol 5

Kỹ thuật nén sử dụng cho
modem

PCM

Pulse-code modulation

Điều biên mã xung

QAM

Quadrature Amplitude
Modulation


Điều chế biên độ trực giao


8

RLC

Run Length Coding

Mã hóa loạt dài

RLE

Run Length Encoding

Mã hóa loạt dài

RSA

Ron Rivest, Adi Shamir, Len
Adleman

Thuật tốn mã hóa khóa
cơng khai do 3 tác giả Ron
Rivest, Adi Shamir,
Adleman đề xuất

Len



9

DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ
Hình vẽ
Hình 1
Hình 2
Hình 3
Hình 4
Hình 5
Hình 6
Hình 7
Hình 8
Hình 9
Hình 10
Hình 11
Hình 12
Hình 13
Hình 14
Hình 15
Hình 16
Hình 17
Hình 18
Hình 19
Hình 20
Hình 21
Hình 22
Hình 23
Hình 24
Hình 25

Hình 26

Chú thích
Q trình nén và giải nén thơng tin
Q trình mã hóa và giải mã
Mơ hình hế thống mã hố khố bí mật
Mơ hình hệ thống mã hố với khố cơng khai
Quy trình trao đổi khố bí mật sử dụng hệ mã hố khố cơng khai
Phân cấp các lĩnh vực nghiên cứu của ngành mật mã học
Các nhánh của giấu tin
Sơ đồ chung của hệ giấu tin mật
Cân nhắc giữa chất lƣợng, dung lƣợng và tính bền vững
Sóng âm thanh
Biểu diễn âm thanh số
Các bƣớc lƣợng tử hoá
Lƣợng tử hoá phi tuyến
Mã hoá dự báo
Lƣợc đồ giấu tin phía ngƣời gửi
Lƣợc đồ tách tin phía ngƣời nhận
Sơ đồ phân cấp các lớp giải thuật mã hoá khoá bí mật trong .NET
Framework
Sơ đồ phân cấp các lớp giải thuật mã hố khố cơng khai trong .NET
Framework
Sơ đồ tính toán hiệu quả nhúng trên từng vật mang
Sơ đồ giấu tin mật theo giải thuật F5
Giao diện chính của phần mềm
Tạo ngẫu nhiên cặp khóa cơng khai/bí mật
Sơ đồ khối quá trình giấu tin theo giải thuật F5
Vật mang tốt nhất đƣợc lựa chọn
Tách tin mật từ vật mang tin

Bảng kết quả thực nghiệm


10

MỞ ĐẦU
Cuộc cách mạng thông tin kỹ thuật số đã đem lại những thay đổi sâu sắc cho xã
hội và trong cuộc sống con ngƣời. Bên cạnh những thuận lợi mà thông tin kỹ thuật số
mang lại cũng nảy sinh những thách thức và cơ hội cho quá trình đổi mới. Sự ra đời
những phần mềm có tính năng rất mạnh, các thiết bị mới nhƣ máy ảnh kỹ thuật số,
máy quét chất lƣợng cao, máy in, máy ghi âm kỹ thuật số…đã giúp ngƣời dùng có thể
sáng tạo, xử lý và thƣởng thức các dữ liệu đa phƣơng tiện. Mạng Internet toàn cầu trở
thành một xã hội ảo, nơi diễn ra q trình trao đổi thơng tin trong mọi lĩnh vực chính
trị, qn sự, quốc phịng, kinh tế, thƣơng mại…Và chính trong mơi trƣờng mở và tiện
nghi nhƣ thế đã xuất hiện những vấn nạn, tiêu cực đang rất cần đến các giải pháp hữu
hiệu cho vấn đề an tồn thơng tin nhƣ nạn ăn cắp bản quyền, nạn xuyên tạc thông tin,
truy nhập thông tin trái phép...
Nhiều phƣơng pháp bảo vệ thông tin đã đƣợc đƣa ra trong đó phƣơng pháp
dùng mật mã học là giải pháp đƣợc ứng dụng rộng rãi nhất. Các hệ mật mã đã đƣợc
phát triển nhanh chóng và đƣợc ứng dụng rất phổ biến cho đến tận ngày nay. Sử dụng
các hệ này, thơng tin ban đầu sẽ đƣợc mã hố thành các ký hiệu vơ nghĩa, sau đó sẽ
đƣợc lấy lại thơng qua việc giải mã nhờ khoá của hệ mã. Đã có rất nhiều những hệ mã
phức tạp đƣợc sử dụng, bao gồm các hệ mã hóa khóa đối xứng nhƣ DES, 3-DES, AES,
hệ mã hóa khóa cơng khai nhƣ RSA...Phƣơng pháp mật mã hoá đã đƣợc chứng minh
là rất hiệu quả và có nhiều ứng dụng trong thực tiễn.
Một phƣơng pháp khác đang đƣợc nghiên cứu và ứng dụng rất mạnh mẽ ở
nhiều nƣớc trên thế giới đó là phƣơng pháp giấu tin mật. Trong khi phƣơng pháp mã
hoá nhằm bảo vệ nội dung của thơng tin thì phƣơng pháp giấu tin mật lại che giấu sự
có mặt của thơng tin bằng cách giấu thông tin này vào thông tin khác. Đây là phƣơng
pháp mới và phức tạp, đƣợc xem nhƣ một cơng nghệ chìa khố cho vấn đề bảo vệ bản

quyền, nhận thực thơng tin và kiểm sốt truy cập…ứng dụng trong an tồn và bảo mật
thơng tin. Nhiều kỹ thuật giấu tin mật đã đƣợc nghiên cứu và ứng dụng trên nhiều định
dạng đa phƣơng tiện khác nhau nhƣ âm thanh số, ảnh số và video số.
Có thể nói, phƣơng pháp mã hóa và phƣơng pháp giấu tin mật đều có những ƣu,
nhƣợc điểm nhất định. Trên thực tế, ngƣời ta đã áp dụng cả hai phƣơng pháp này để
giúp cho việc đảm bảo an tồn thơng tin khi trao đổi. Để tăng dung lƣợng thông tin
đƣợc trao đổi, ngƣời ta cũng thƣờng kết hợp thêm các kỹ thuật nén thông tin.
Trong phạm vi luận văn này, chúng tôi tập trung nghiên cứu một số nội dung cơ
bản của các kỹ thuật nén thơng tin, mã hố thơng tin, giấu tin mật trong dữ liệu đa
phƣơng tiện, trên cơ sở đó nghiên cứu phối hợp các phƣơng pháp này để xây dựng ứng
dụng giúp cho việc đảm bảo an tồn khi trao đổi thơng tin trên mạng máy tính, đáp
ứng nhu cầu liên lạc bí mật ngày càng tăng hiện nay, đặc biệt là cho lĩnh vực quân sự,
an ninh quốc phịng. Ngồi ra, nhằm tăng tính thực tế cho ứng dụng, chúng tôi cũng
đƣa ra ý tƣởng sử dụng cơ sở dữ liệu vật mang nhằm chọn vật mang ―phù hợp nhất‖
cho việc chứa thông tin mật cần giấu.


11

Luận văn gồm 3 chƣơng, cụ thể nhƣ sau:
Chƣơng 1: Tổng quan về nén, mã hoá và giấu tin mật. Chƣơng này tìm hiểu
tổng quan về các kỹ thuật nén thơng tin, mã hố thơng tin và giấu tin mật. Nội dung đề
cập là các khái niệm cơ bản, tính chất, đặc điểm, ứng dụng và một số vấn đề có liên
quan của các kỹ thuật này.
Chƣơng 2: Mơi trƣờng đa phƣơng tiện và khả năng giấu tin. Để có thể thực
hiện các kỹ thuật nén, mã hoá và giấu tin mật trong mơi trƣờng đa phƣơng tiện thì vấn
đề đặt ra là cần tìm hiểu cấu trúc, đặc điểm và tính chất của các định dạng trong mơi
trƣờng đa phƣơng tiện. Chƣơng này tập trung trình bày các khái niệm cơ bản, đặc
điểm, tính chất và các kỹ thuật nén đƣợc áp dụng đối với các định dạng phổ biến nhƣ
ảnh số, âm thanh số và video số cũng nhƣ phƣơng pháp giấu tin mật trong các định

dạng này.
Chƣơng 3: Phối hợp các phƣơng pháp nén, mã hoá và giấu tin mật để xây
dựng ứng dụng cho liên lạc bí mật. Trên cơ sở phân tích những ƣu điểm, hạn chế của
từng kỹ thuật để phối hợp các phƣơng pháp trên xây dựng mơ hình giúp cho việc liên
lạc, trao đổi thơng tin có bảo mật trên mạng cơng khai. Mơ hình đề xuất cịn sử dụng
cơ sở dữ liệu vật mang để có thể chọn những vật mang ―phù hợp nhất‖ với một thơng
điệp mật nhất định, góp phần làm giảm thiểu nguy cơ mất an ninh an tồn thơng tin.
Đây là một điểm cải tiến so với các phần mềm hiện có trên thị trƣờng hiện nay. Ứng
dụng đƣợc xây dựng dựa trên kỹ thuật nén không mất mát thơng tin ZIP, hệ mã hố
cơng khai RSA và giải thuật F5 để giấu thông tin trong ảnh JPEG. Cơ sở dữ liệu vật
mang bao gồm các ảnh đƣợc download ngẫu nhiên trên mạng Internet.


12

CHƢƠNG 1
TỔNG QUAN VỀ NÉN, MÃ HOÁ VÀ GIẤU TIN MẬT
1.1. Tổng quan về nén thông tin
1.1.1. Nhận thức chung
1.1.1.1.

Một số khái niệm cơ bản

Nén dữ liệu là quá trình làm giảm lƣợng thông tin ―dư thừa‖ trong dữ liệu gốc và
do vậy lƣợng thông tin thu đƣợc sau nén thƣờng nhỏ hơn dữ liệu gốc rất nhiều.
Nén dữ liệu phổ biến vì hai lý do:
- Do nhu cầu lưu trữ dữ liệu: lƣợng thông tin cần lƣu trữ ngày càng lớn nên nếu
khơng có cách thức tổ chức thì sẽ vƣợt quá dung lƣợng của các thiết bị nhớ. Nén dữ
liệu có tác dụng làm giảm dung lƣợng thơng tin cần lƣu trữ.
- Do yêu cầu truyền dữ liệu: dữ liệu lớn sẽ làm chậm tốc độ truyền dữ liệu. Do

vậy, nảy sinh nhu cầu nén thông tin để tăng tốc độ truyền. Ví dụ, khi lƣớt web hoặc
khi download file.
Quá trình nén và quá trình giải nén nhƣ sau:

Hình 1: Q trình nén và giải nén thơng tin

Ngồi thuật ngữ ―nén dữ liệu hay data compression‖, ngƣời ta cịn có tên gọi
khác ―mã hố nguồn – source coding‖ hay ―giảm độ dƣ thừa‖. Đó là bởi vì các ký
hiệu đầu vào (có thể là các bit, các mã ASCII, các byte, các mẫu audio hoặc các giá trị
điểm ảnh) đƣợc phát ra bởi một nguồn thông tin nào đó và phải đƣợc mã hố trƣớc khi
gửi tới đích.
Từ hơn hai thập kỷ nay, có rất nhiều kỹ thuật nén đã đƣợc công bố trên các tài
liệu, các phần mềm nén dữ liệu đã xuất hiện ngày càng nhiều trên thị trƣờng. Tuy
nhiên, chƣa có phƣơng pháp nén nào đƣợc coi là phƣơng pháp vạn năng vì nó phụ
thuộc vào nhiều yếu tố và bản chất của dữ liệu gốc.
1.1.1.2.
-

Các thông số quan trọng của nén

Tỷ lệ nén (compression ratio) : Tỷ lệ nén là một trong các đặc trƣng quan


13

trọng nhất của mọi phƣơng pháp nén. Nhìn chung, có thể định nghĩa tỷ lệ nén nhƣ sau:

Tỷ lệ nén có thể đƣợc tính theo bpb (bit per bit). Trong nén ảnh thì bpb cũng có
nghĩa là ―bits per pixel‖; trong các phƣơng pháp nén văn bản, ngƣời ta thƣờng đề cập
đến bpc (bits per character).

- Nhân tố nén (compression factor) : là nghịch đảo của tỷ lệ nén. Nhân tố
nén đƣợc tính theo cơng thức sau:

-

Hiệu suất nén: đƣợc tính theo cơng thức:
Hiệu suất nén = 100 x (1- Tỷ lệ nén) %.

Tuy nhiên, cũng phải thấy rằng những chỉ số của một phƣơng pháp nén chỉ có giá
trị với chính sự nén đó, vì hiệu quả của nén còn phụ thuộc vào kiểu dữ liệu định nén.
Tỷ lệ nén cũng chỉ là một trong các đặc trƣng cơ bản của phƣơng pháp nén. Nhiều khi
tỷ lệ nén cao cũng chƣa thể nói rằng phƣơng pháp nén đó là hiệu quả hơn các phƣơng
pháp khác, vì cịn các chi phí khác nhƣ thời gian, khơng gian và thậm chí cả độ phức
tạp tính tốn nữa. Thí dụ nhƣ nén phục vụ trong truyền dữ liệu: vấn đề đặt ra là hiệu
quả nén có tƣơng hợp với đƣờng truyền khơng.
Cũng cần phân biệt nén dữ liệu với nén băng truyền. Mục đích chính của nén là
làm giảm lƣợng thơng tin dƣ thừa và dẫn tới giảm kích thƣớc dữ liệu. Tuy vậy, đơi khi
q trình nén cũng làm giảm băng truyền tín hiệu số hố thấp hơn so với truyền tín
hiệu tƣơng tự.
1.1.2. Nguyên tắc của nén dữ liệu
Các nguyên tắc, kỹ thuật và giải thuật để nén các loại dữ liệu khác nhau đƣợc
phát triển bởi nhiều ngƣời, và đều dựa trên các khái niệm về thống kê, biến đổi Fourier
và các dạng biến đổi khác…
Có nhiều phƣơng pháp nén dữ liệu. Chúng dựa trên các ý tƣởng khác nhau để phù
hợp với các loại dữ liệu khác nhau và tạo ra các kết quả khác nhau, nhƣng tất cả đều
dựa trên cùng một nguyên tắc là nén dữ liệu bằng cách loại bỏ dƣ thừa từ dữ liệu gốc
trong file nguồn. Các dữ liệu không ngẫu nhiên đều có một cấu trúc nhất định và cấu
trúc này có thể đƣợc khai thác để thu đƣợc biểu diễn nhỏ hơn của dữ liệu, một biểu
diễn trong đó khơng có cấu trúc có thể nhận thức đƣợc.
Ví dụ, trong văn bản tiếng Anh, ký tự E xuất hiện thƣờng xuyên trong khi ký tự Z



14

lại rất ít khi xuất hiện. Đây gọi là loại dƣ thừa bảng chữ cái. Để thực hiện nén, ngƣời ta
thực hiện gán các mã kích thƣớc thay đổi cho các chữ cái, với E nhận mã ngắn nhất và
Z nhận mã dài nhất. Một loại dƣ thừa khác là dƣ thừa theo ngữ cảnh, ví dụ nhƣ chữ cái
Q hầu nhƣ luôn đƣợc theo sau bởi chữ cái U.
Ý tƣởng của nén bằng cách giảm bớt dƣ thừa gợi ý đƣa ra luật chung của nén dữ
liệu: ―gán các mã ngắn hơn cho các sự kiện chung (các symbol hoặc các phrase) và
các mã dài đối với các sự kiện hiếm‖. Có nhiều cách để thi hành luật này và việc phân
tích các phƣơng pháp nén đã cho thấy nén hoạt động tuân theo luật chung này.
Ngƣời ta phân loại thành 4 kiểu dƣ thừa chính:
- Sự phân bố ký tự
Trong một dãy ký tự, có một số ký tự có tần suất xuất hiện nhiều hơn một số dãy
khác. Do vậy, ta có thể mã hố dữ liệu một cách cơ đọng hơn. Các dãy ký tự có tần
suất cao đƣợc thay bởi một từ mã nhị phân với số bit nhỏ; ngƣợc lại, các dãy có tần
suất thấp sẽ đƣợc mã hố bởi từ mã có nhiều bit hơn. Đây chính là bản chất của
phƣơng pháp mã hoá Huffman.
- Sự lặp lại của các ký tự
Trong một số tình huống (ví dụ nhƣ trong ảnh số), một ký hiệu (bit ―0‖ hay bit
―1‖) có thể đƣợc lặp đi lặp lại một số lần. Kỹ thuật nén dùng trong trƣờng hợp này là
thay dãy lặp đó bởi dãy mới gồm 2 thành phần: số lần lặp và ký hiệu dùng để mã.
Phƣơng pháp mã hố kiểu này có tên là mã hoá loạt dài RLC.
- Những mẫu sử dụng tần suất
Có thể có dãy ký hiệu nào đó xuất hiện với tần suất tƣơng đối cao. Do vậy, có thể
mã hố bởi ít bit hơn. Đây là cơ sở của phƣơng pháp mã hoá kiểu từ điển do Lempel –
Ziv đƣa ra và có cải tiến vào năm 1977, 1978 và do đó có tên gọi LZ77, LZ78. Năm
1984, Terry Welch đã cải tiến hiệu quả hơn và đặt tên là LZW (Lempel-Ziv-Welch).
- Độ dƣ thừa vị trí

Do sự phụ thuộc lẫn nhau của dữ liệu, đôi khi biết đƣợc ký hiệu (giá trị) xuất hiện
tại một vị trí, đồng thời có thể đốn trƣớc đƣợc sự xuất hiện của các giá trị ở các vị trí
khác nhau một cách phù hợp. Chẳng hạn, ảnh biểu diễn trong một lƣới hai chiều, một
số điểm ở hàng dọc trong một khối dữ liệu lại xuất hiện trong cùng một vị trí của các
hàng khác nhau. Do vậy, thay vì lƣu trữ dữ liệu, ta chỉ cần lƣu trữ vị trí hàng và cột.
Phƣơng pháp nén dựa trên sự dƣ thừa này gọi là phƣơng pháp mã hố dự đốn.
Ngồi ra cịn có cách phân loại độ dƣ thừa khác
- Dƣ thừa về không gian hay tƣơng quan về không gian
Bên trong một ảnh đơn hoặc một frame đơn lẻ của video sẽ có những tƣơng quan
đáng kể giữa các mẫu liền kề (các pixel) và kết quả là sẽ có những dƣ thừa về khơng


15

gian trong dữ liệu.
- Dƣ thừa về trải phổ hay tƣơng quan về trải phổ
Đối với dữ liệu thu đƣợc từ nhiều nguồn (multiple cameras), sẽ có những tƣơng
quan đáng kể trong các mẫu từ các nguồn. Tƣơng quan này đƣợc coi nhƣ là những
tƣơng quan về trải phổ và dẫn tới những dƣ thừa trong dữ liệu.
- Dƣ thừa về mặt thời gian hay tƣơng quan theo thời gian
Đối với dữ liệu về thời gian (chẳng hạn nhƣ audio và video), có những tƣơng
quan đáng kể trong các phân đoạn (segment) thời gian khác nhau. Đây đƣợc coi nhƣ
tƣơng quan theo thời gian và dẫn đến các dƣ thừa về thời gian trong dữ liệu.
Ý tƣởng cốt lõi trong bất kỳ kỹ thuật nén nào cũng là giảm số mẫu có tương
quan cao thành các mẫu biểu diễn thấp hơn, trong nhóm khác nhau của các mẫu
tƣơng quan để có thế giảm bớt các dƣ thừa về dữ liệu và vì vậy giảm kích thƣớc của
dữ liệu.
Ngun tắc của việc nén bằng cách loại bỏ dƣ thừa cũng trả lời cho câu hỏi:
―Vì sao một file đã nén khơng thể được nén thêm nữa?‖
Khi một file đƣợc nén lần đầu thì các dữ liệu dƣ thừa của nó đƣợc loại bỏ. Do

vậy, khi tiếp tục nén thêm thì khơng có dữ liệu dƣ thừa nào đƣợc loại bỏ. Cũng có thể
trả lời cho câu hỏi trên bằng cách giả định nếu có thể nén các file đã nén thì file này sẽ
đƣợc giảm kích thƣớc và việc nén này có thể đƣợc lặp đi lặp lại cho đến kích thƣớc 1
byte hoặc thậm chí 1 bit. Tất nhiên, điều này là vơ lý vì một byte đơn lẻ khơng thể
chứa thơng tin hiện có trong một file lớn tuỳ ý.
1.1.3. Phân loại phƣơng pháp nén
Có nhiều cách phân loại các phƣơng pháp nén khác nhau.
1.1.3.1.

Theo nguyên lý nén

- Nén chính xác hay nén khơng mất mát thơng tin: Bao gồm các phƣơng pháp
nén mà sau khi giải nén ta thu đƣợc chính xác dữ liệu gốc. Nén loại này đƣợc yêu cầu
đối với lƣu trữ và truyền vật lý. Các giải thuật loại này thƣờng dựa vào thay thế các
mẫu lặp lại với các ký hiệu đặc biệt mà khơng quan tâm đến ý nghĩa luồng bit (mã hố
entropy – entropy encoding).
- Nén có mất mát thơng tin: bao gồm các phƣơng pháp mà sau khi giải nén ta
không thu đƣợc dữ liệu nhƣ bản gốc. Trong nén ảnh, ngƣời ta gọi là các phƣơng pháp
―tâm lý thị giác‖. Các phƣơng pháp này lợi dụng tính chất của mắt ngƣời, chấp nhận
một số vặn xoắn trong ảnh khi khôi phục lại. Tất nhiên, các phƣơng pháp này chỉ có
hiệu quả khi mà độ vặn xoắn là chấp nhận đƣợc bằng mắt thƣờng hay với một dung sai
nào đó. Các phƣơng pháp nén loại này rất hữu ích đối với việc lƣu trữ và truyền tải
audio, video và ảnh tĩnh trên các mạng có băng thơng hạn chế.


16

1.1.3.2.

Theo cách thức thực hiện nén


- Các phƣơng pháp không gian: các phƣơng pháp thuộc họ này thực hiện nén
bằng cách tác động trực tiếp lên việc lấy mẫu của ảnh trong miền không gian.
- Phƣơng pháp sử dụng biến đổi: gồm các phƣơng pháp tác động lên sự biến đổi
của ảnh gốc mà không tác động trực tiếp nhƣ họ các phƣơng pháp khác.
1.1.3.3.

Phân loại dựa vào triết lý của sự mã hoá

- Các phƣơng pháp nén thế hệ thứ nhất: gồm các phƣơng pháp mà mức độ tính
tốn là đơn giản: ví dụ nhƣ việc lấy mẫu, gán từ mã…
- Các phƣơng pháp nén thế hệ thứ hai: dựa vào mức độ bão hoà của tỷ lệ nén.
1.1.3.4.

Cách phân loại của Anil.K.Jain

- Phƣơng pháp điểm
- Phƣơng pháp dự đoán
- Phƣơng pháp dựa vào biến đổi
- Các phƣơng pháp tổ hợp (Hybrid).
1.1.4. Các kỹ thuật nén thông tin
1.1.4.1.

Nén không mất mát thông tin

Trong nén dữ liệu không mất mát, tính nhất qn của dữ liệu đƣợc bảo tồn. Dữ
liệu gốc và dữ liệu sau khi nén và giải nén hồn tồn giống nhau bởi vì trong các
phƣơng pháp này, các giải thuật nén và giải nén là đảo ngƣợc của nhau: khơng có phần
dữ liệu nào bị mất mát trong tiến trình nén và giải nén. Dữ liệu dƣ thừa đƣợc loại bỏ
trong nén và đƣợc bổ sung trong q trình giải nén. Các phƣơng pháp nén khơng mất

mát thƣờng đƣợc sử dụng khi không muốn mất mát một chút dữ liệu nào.
Tất cả các phƣơng pháp nén không mất mát thông tin hoạt động bằng cách xác
định một số khía cạnh của khơng ngẫu nhiên (dƣ thừa) trong dữ liệu đầu vào, và bằng
cách biểu diễn các dữ liệu ngẫu nhiên đó theo một cách hiệu quả.
Có ít nhất 2 cách mà dữ liệu có thể khơng ngẫu nhiên:
- Một số ký hiệu đƣợc sử dụng nhiều hơn những ký hiệu khác. Ví dụ, trong văn
bản tiếng Anh thì các khoảng trắng và chữ cái E phổ biến hơn nhiều so với các dấu
chấm và chữ cái Z.
- Có nhiều mẫu bên trong dữ liệu, các kết hợp của các ký hiệu nhất định xuất
hiện nhiều hơn các kết hợp khác. Nếu một phƣơng pháp nén có thể xác định các mẫu
lặp đó, nó có thể biểu diễn chúng theo một cách thức hiệu quả hơn.
Các phƣơng pháp nén không mất mát thông tin tiêu biểu là;
- Mã hoá loạt dài (Run Length Encoding)


17

- Mã hoá Huffman (Huffman Coding)
- Mã hoá Shannon-Fano (Shannon-Fano Coding)
- Các phƣơng pháp LZ78, LZH, LZW…
1.1.4.2.

Nén có mất mát thông tin

Trong nhiều trƣờng hợp, mắt và tai của con ngƣời không thể phân biệt các thay
đổi nhỏ. Trong các trƣờng hợp này, có thể sử dụng phƣơng pháp nén có mất mát. Các
phƣơng pháp này có chi phí rẻ hơn vì chúng sử dụng ít khơng gian và thời gian hơn
khi thực hiện gửi hàng triệu bit/giây đối với dữ liệu ảnh và video. Một số phƣơng pháp
đã đƣợc phát triển sử dụng các kỹ thuật nén không mất mát. Mã hoá JPEG đƣợc sử
dụng để nén các ảnh và đồ hoạ, mã hoá MPEG đƣợc sử dụng để nén video và mã hoá

MP3 đƣợc sử dụng để nén âm thanh số.
Phƣơng pháp nén có mất mát thơng tin tận dụng các thuộc tính bổ sung của dữ
liệu để tạo ra nén nhiều hơn so với chỉ sử dụng các thông tin dƣ thừa đơn lẻ. Thông
thƣờng, phƣơng pháp nén này liên quan đến hàng loạt các phép biến đổi dữ liệu của
các giải thuật nén, từ một miền này sang một miền khác (ví dụ nhƣ miền tần số trong
biến đổi Fourier) mà không chứa tất cả các thuật ngữ biến đổi kết quả và vì vậy mất
một số thơng tin.
Các giải thuật tiêu biểu của nén có mất mát thơng tin là:
- Mã hố khác biệt: lƣu trữ các khác biệt giữa các mẫu dữ liệu liền mạch sử dụng
một số giới hạn các bit.
- Biến đổi Cosine rời rạc (DCT): đƣợc áp dụng cho dữ liệu ảnh
- Lƣợng hoá vectơ
- Nén JPEG
- Nén MPEG
1.1.5. Ứng dụng của nén thông tin
Trong các lĩnh vực của công nghệ thông tin – viễn thông hiện nay, việc truyền tải
thông tin đã là một công việc xảy ra thƣờng xuyên. Tuy nhiên lƣợng thông tin đƣợc
truyền tải đi thƣờng rất lớn, điều này gây khó khăn cho cơng việc truyền tải vì nó làm
tốn tài ngun mạng, tiêu phí khả năng của hệ thống…Để giải quyết đƣợc những vấn
đề đó, các phƣơng pháp nén đã ra đời và ngày càng đƣợc ứng dụng rộng rãi.
Thông thƣờng, hầu hết các tập tin trong máy tính có rất nhiều thơng tin dƣ thừa,
việc thực hiện nén tập tin thực chất là mã hố lại các tập tin để loại bỏ các thơng tin dƣ
thừa. Nhìn chung khơng thể có phƣơng phát nén tổng quát nào cho kết quả tốt đối với
tất cả các loại tập tin. Kỹ thuật nén tập tin thƣờng đƣợc áp dụng cho các tập tin văn
bản (trong đó có một số kí tự nào đó có xác suất xuất hiện nhiều hơn các kí tự khác),
các tập tin ảnh bitmap (mà có thể có những mảng lớn đồng nhất), các tập tin dùng để


18


biểu diễn âm thanh dƣới dạng số hoá và các tín hiệu tƣơng tự (analog signal) khác (các
tín hiệu này có thể có các mẫu đƣợc lặp lại nhiều lần). Ðối với các tập tin nhị phân nhƣ
tập tin chƣơng trình thì sau khi nén cũng khơng tiết kiệm đƣợc nhiều. Ngoài ra, trong
một số trƣờng hợp để nâng cao hệ số nén ngƣời ta có thể bỏ bớt một số thơng tin của
tập tin (ví dụ nhƣ kỹ thật nén ảnh JPEG).
Trong kỹ thuật truyền tin nối tiếp, do các bit dữ liệu đƣợc truyền đi nối tiếp, lại bị
giới hạn về dải thông của kênh truyền và giới hạn về các chuẩn ghép nối...nên tốc độ
truyền tin tƣơng đối chậm. Ðể tăng tốc độ truyền ta có thể dùng nhiều phƣơng pháp
nhƣ sử dụng kỹ thuật điều chế pha nhiều mức, điều chế QAM, TCM...
Nén dữ liệu trƣớc khi truyền đi cũng là một trong các phƣơng pháp nhằm tăng tốc
độ truyền dữ liệu. Trong các modem hiện đại, việc thực hiện nén dữ liệu trƣớc khi
truyền đi có thể đƣợc thực hiện ngay trong modem theo các giao thức V42bis, MNP5.
Phƣơng pháp này đòi hỏi hai modem phải có cùng một giao thức nén dữ liệu, điều này
nhiều khi khó thoả mãn.
Có một phƣơng pháp khác là thực hiện nén các tập tin ngay tại các máy vi tính
trƣớc khi truyền đi, tại các máy tính nhận, các tập tin lại đƣợc giải nén để phục hồi lại
dạng ban đầu. Phƣơng pháp này có ƣu điểm là bên phát và bên thu chỉ cần có chung
phần mềm nén và giải nén, ngồi ra cịn có thể áp dụng đƣợc để truyền dữ liệu qua các
modem không hỗ trợ nén dữ liệu hoặc truyền dữ liệu trực tiếp qua cổng COM của máy
tính. Nhƣợc điểm của phƣơng pháp này là các máy vi tính phải tốn thêm thời gian nén
và giải nén, nhƣng do sự phát triển nhanh chóng của các bộ vi xử lý mà thời gian thực
hiện nén và giải nén đƣợc giảm nhỏ hơn rất nhiều thời gian để truyền dữ liệu.

1.2. Mã hố thơng tin
1.2.1. Sơ lƣợc về lịch sử mật mã học
Mật mã học nghiên cứu các kỹ thuật toán học nhằm cung cấp các dịch vụ bảo
vệ thông tin. Đây là ngành khoa học quan trọng, có nhiều ứng dụng trong đời sống xã
hội.
Khoa học mật mã đã ra đời từ hàng nghìn năm. Tuy nhiên, trong suốt nhiều thế
kỷ, các kết quả của lĩnh vực này hầu nhƣ không đƣợc ứng dụng trong các lĩnh vực dân

sự thông thƣờng của đời sống xã hội mà chủ yếu đƣợc sử dụng trong lĩnh vực quân sự,
chính trị, ngoại giao...
Với sự phát triển ngày càng nhanh chóng của Internet và các ứng dụng giao
dịch điện tử trên mạng, nhu cầu bảo vệ thông tin trong các hệ thống và ứng dụng tin
học ngày càng đƣợc quan tâm và có ý nghĩa hết sức quan trọng. Các kết quả của khoa
học mật mã ngày càng đƣợc triển khai trong nhiều lĩnh vực khác nhau của đời sống xã
hội, trong đó phải kể đến rất nhiều những ứng dụng trong lĩnh vực dân sự, thƣơng
mại...Các ứng dụng mã hóa thơng tin cá nhân, trao đổi thông tin kinh doanh, thực hiện
các giao dịch điện tử qua mạng... đã trở nên gần gũi và quen thuộc với mọi ngƣời.


19

Cùng với đó, các nghiên cứu và ứng dụng của mật mã học ngày càng trở nên đa
dạng hơn, mở ra nhiều hƣớng nghiên cứu chuyên sâu vào từng lĩnh vực ứng dụng cụ
thể với những đặc trƣng riêng. Ứng dụng của khoa học mật mã không chỉ đơn thuần là
mã hóa và giải mã thơng tin mà cịn bao gồm nhiều vấn đề khác nhau cần đƣợc nghiên
cứu và giải quyết, ví dụ nhƣ chứng thực nguồn gốc nội dung thông tin (kỹ thuật chữ ký
điện tử), chứng nhận tính xác thực về ngƣời sở hữu mã khóa (chứng nhận khóa cơng
khai), các quy trình giúp trao đổi thơng tin và thực hiện giao dịch điện tử an toàn trên
mạng...
Các ứng dụng của mật mã học và khoa học bảo vệ thông tin rất đa dạng và
phong phú; tùy vào tính đặc thù của mỗi hệ thống bảo vệ thơng tin mà ứng dụng sẽ có
các tính năng với đặc trƣng riêng.
Những kết quả nghiên cứu về mật mã cũng đã đƣợc đƣa vào trong các hệ thống
phức tạp hơn, kết hợp với những kỹ thuật khác để đáp ứng yêu cầu đa dạng của các hệ
thống ứng dụng khác nhau trong thực tế, ví dụ nhƣ hệ thống bỏ phiếu bầu cử qua
mạng, hệ thống đào tạo từ xa, hệ thống quản lý an ninh của các đơn vị với hƣớng tiếp
cận sinh trắc học, hệ thống cung cấp dịch vụ đa phƣơng tiện trên mạng với yêu cầu
cung cấp dịch vụ và bảo vệ bản quyền sở hữu trí tuệ đối với thơng tin số...

1.2.2. Các khái niệm cơ bản
1.2.2.1.

Khái niệm mật mã

Theo nghĩa hẹp, “mật mã” chủ yếu dùng để bảo mật dữ liệu, ngƣời ta quan
niệm: Mật mã học là khoa học nghiên cứu mật mã, bao gồm: Tạo mã và Phân tích
mã.
Phân tích mã là kỹ thuật, nghệ thuật phân tích mật mã, kiểm tra tính bảo mật
của nó hoặc phá vỡ sự bí mật của nó. Phân tích mã cịn gọi là Thám mã.
Theo nghĩa rộng, ―mật mã” là một trong những công cụ hiệu quả bảo đảm an
tồn thơng tin nói chung: bảo mật, bảo toàn, xác thực, chống chối cãi,…
1.2.2.2.

Khái niệm mã hố thơng tin

- Mã hóa là q 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 để bảo mật thơng tin.
- Giải mã là q trình chuyển thông tin ngƣợc lại, từ Bản mã thành Bản rõ
- Thuật tốn mã hóa hay giải mã là thủ tục tính tốn để mã hóa hay giải mã
- Khóa mã hóa là một giá trị làm cho thuật tốn mã hóa thực hiện theo cách riêng
biệt sinh ra bản rõ. Thơng thƣờng khóa càng lớn (độ dài và tính ngẫu nhiên của khố
càng lớn) thì bản mã càng an tồn. Phạm vi giá trị có thể có của khóa đƣợc gọi là
Khơng gian khóa


20

- Hệ mã hóa là tập các thuật tốn, các khóa nhằm che giấu thơng tin, cũng nhƣ

làm cho rõ nó.
Hệ mã hố đƣợ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: tập hữu hạn các bản mã có thể.
- K: tập hữu hạn các khố có thể.
- E: tập các hàm lập mã.
- D: tập các hàm giải mã.
Với khoá lập mã ke  K, có hàm lập mã eke  E, eke: P →C.
Với khố giải mã kd  K, có hàm giải mã dkd  D, dkd: C→P, sao cho
dkd(eke(x))=x, Với mọi x  P. Ở đây x đƣợc gọi là bản rõ, eke(x) đƣợc gọi là bản mã.
Q trình mã hố và giải mã:

Hình 2: Q trình mã hóa và giải mã

Ngƣời gửi tin G muốn gửi bản tin T cho ngƣời nhận N. Để đảm báo bí mật, G
mã hố bản tin bằng khoá lập mã ke, nhận đƣợc bản mã eke(T), sau đó gửi cho N. Tin
tặc có thể trộm bản mã eke(T) nhƣng cũng ―khó‖ để hiểu đƣợc bản tin gốc T nếu khơng
có khố giải mã kd.
Ngƣời nhận N nhận đƣợc bản mã, họ dùng khoá giải mã kd để giải mã e ke(T) và
nhận đƣợc bản tin gốc T=dkd(eke(T)).
1.2.3. Phân loại hệ mật mã
Hiện có 2 loại hệ mật mã chính: mã hố khố bí mật và mã hố khố cơng khai.
1.2.3.1.

Hệ mã hố khố bí mật

Trong hệ thống mã hóa khố bí mật, q trình mã hóa và giải mã một thơng điệp
sử dụng cùng một mã khóa gọi là khóa bí mật (secret key) hay khóa đối xứng
(symmetric key). Do đó, vấn đề bảo mật thơng tin đã mã hóa hồn tồn phụ thuộc vào
việc giữ bí mật nội dung của mã khóa đã đƣợc sử dụng.

Trƣớc đây, phƣơng pháp mã hóa chuẩn DES đƣợc coi là tiêu chuẩn của hệ mã
hóa khóa bí mật. Tuy nhiên, với tốc độ và khả năng xử lý ngày càng đƣợc nâng cao
của các bộ vi xử lý hiện nay, phƣơng pháp mã hóa DES đã trở nên khơng an tồn trong
bảo mật thơng tin. Do đó, Viện Tiêu chuẩn và Công nghệ Quốc gia Hoa Kỳ đã quyết


21

định chọn một chuẩn mã hóa mới với độ an tồn cao nhằm phục vụ nhu cầu bảo mật
thơng tin liên lạc của chính phủ Hoa Kỳ cũng nhƣ trong các ứng dụng dân sự. Thuật
toán Rijndael do Vincent Rijmen và Joan Daeman đã đƣợc chính thức chọn trở thành
chuẩn mã hóa nâng cao AES từ 02 tháng 10 năm 2000.

Hình 3: Mơ hình hế thống mã hố khố bí mật

Hệ mã hố khố bí mật có đặc điểm sau:
- Ƣu điểm: Hệ mã hố khố bí mật mã hố và giải mã nhanh hơn Hệ mã hố
khố cơng khai.
- Hạn chế:
+ Mã hố khóa bí mật chƣa thật an toàn với lý do sau: ngƣời giải mã và ngƣời mã
hố phải có chung một khố. Khố phải đƣợc giữ bí mật tuyệt đối, vì biết khố này dễ
xác định đƣợc khoá kia và ngƣợc lại.
+ Vấn đề thỏa thuận và quản lý khố chung là khó khăn và phức tạp. Ngƣời gửi
và ngƣời nhận phải luôn thống nhất với nhau về khố. Việc thay đổi khố là rất khó và
dễ bị lộ. Khóa chung phải đƣợc gửi cho nhau trên kênh an toàn.
Mặt khác, khi ngƣời lập mã và ngƣời giải mã cùng biết chung một bí mật thì càng
khó giữ bí mật.
Hệ mã hố khố bí mật thƣờng đƣợc sử dụng trong mơi trƣờng mà khố chung có
thể dễ dàng trao chuyển bí mật, chẳng hạn trong cùng một mạng nội bộ và để mã hoá
những bản tin lớn vì tốc độ mã hố và giải mã nhanh hơn hệ mã hố khố cơng khai.

1.2.3.2.

Hệ mã hố khố cơng khai

Nếu nhƣ vấn đề khó khăn đặt ra đối với các phƣơng pháp mã hóa khố bí mật
chính là bài tốn trao đổi mã khóa thì ngƣợc lại, các phƣơng pháp mã hóa khóa cơng
khai giúp cho việc trao đổi mã khóa trở nên dễ dàng hơn. Nội dung của khóa cơng khai
(public key) khơng cần phải giữ bí mật nhƣ đối với khóa bí mật trong các phƣơng pháp
mã hóa bí mật. Sử dụng khóa cơng khai, chúng ta có thể thiết lập một quy trình an tồn
để truy đổi khóa bí mật đƣợc sử dụng trong hệ thống mã hóa khố bí mật.
Trong những năm gần đây, các phƣơng pháp mã hóa khóa cơng khai, đặc biệt là


22

phƣơng pháp RSA, đƣợc sử dụng ngày càng nhiều trong các ứng dụng mã hóa trên thế
giới và có thể xem nhƣ đây là phƣơng pháp chuẩn đƣợc sử dụng phổ biến nhất trên
Internet, ứng dụng trong việc bảo mật thông tin liên lạc cũng nhƣ trong lĩnh vực
thƣơng mại điện tử.
Có thể định nghĩa hệ mã hố cơng khai nhƣ sau:
Hệ mã hố cơng khai (Hệ mã hố khố phi đối xứng): là hệ mã hố có khố
lập mã và khoá giải mã khác nhau (ke khác kd). Hệ mã hố này đƣợc gọi là Hệ mã hố
khố cơng khai vì:
- Khố lập mã cho cơng khai, gọi là khố cơng khai
- Khố giải mã: giữ bí mật, cịn gọi là khố riêng hay khố bí mật.
Một ngƣời bất kỳ có thể dùng khố cơng khai để mã hố bản tin nhƣng chỉ có
ngƣời nào có đúng khố giải mã thì mới có khả năng đọc đƣợc bản rõ. Hệ mã hố cơng
khai hay cịn gọi là hệ mã hoá phi đối xứng đƣợc Diffie và Hellman phát minh vào
năm 1970.


Hình 4: Mơ hình hệ thống mã hố với khố cơng khai

Hệ mã hố khố cơng khai có đặc điểm sau:
- Về ƣu điểm:
+ Hệ mã hố cơng khai có thuật tố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 mà họ chỉ cần giữ bí mật khố riêng của mình.
+ Khi biết các tham số ban đầu của hệ mã hố, việc tính ra cặp khố cơng khai và
bí mật phải là ―dễ‖ tức là trong thời gian đa thức.
Ngƣời gửi có bản rõ P và khố cơng khai thì ―dễ‖ tạo ra bản mã C.
Ngƣời nhận có bản mã C và khố bí mật thì ―dễ‖ giải đƣợc thành bản rõ P.
+ Ngƣời mã hố dùng khố cơng khai, ngƣời giải mã giữ khố bí mật. Khả năng


23

lộ khố bí mật khó hơn vì chỉ một ngƣời giữ gìn. Nếu thám mã chỉ biết khóa cơng khai
thì chúng phải đƣơng đầu với bài tốn ―rất khó‖ (thƣờng là lớp bài toán strong hard).
+ Nếu thám mã biết khố cơng khai và bản mã C thì việc tìm ra bản rõ P cũng là
bài tốn ―khó‖, số phép thử là vô cùng lớn, không khả thi.
- Về hạn chế: hệ mã hố cơng khai có q trình mã hoá và giải mã chậm hơn hệ
mã hoá khoá đối xứng.
Hệ mã hố khố cơng khai thƣờng đƣợc sử dụng chủ yếu trên các mạng công
khai nhƣ Internet, khi mà việc trao chuyển khố bí mật tƣơng đối khó khăn.
Đặc trƣng nổi bật của hệ mã hố khố cơng khai là khố cơng khai và bản mã đều
có thể gửi đi trên một kênh truyền tin khơng an tồn. Có biết cả khố cơng khai và
bản mã thì thám mã cũng khơng dễ khám phá bản rõ. Nhƣng vì có tốc độ mã hoá và
giải mã chậm nên hệ mã hố khố cơng khai chỉ dùng để mã hố những bản tin ngắn,
ví dụ nhƣ mã hố khố bí mật gửi đi.
1.2.3.3.


Kết hợp hệ mã hố khố bí mật và hệ mã hố khố cơng khai

Các phƣơng pháp mã hóa khố bí mật có ƣu điểm xử lý rất nhanh so với các
phƣơng pháp mã hóa khóa cơng khai. Do khóa dùng để mã hóa cũng đƣợc dùng để
giải mã nên cần phải giữ bí mật nội dung của khóa và mã khóa đƣợc gọi là khóa bí
mật. Ngay cả trong trƣờng hợp khóa đƣợc trao đổi trực tiếp thì mã khóa này vẫn có
khả năng bị phát hiện. Vấn đề khó khăn đặt ra đối với các phƣơng pháp mã hóa này
chính là bài tốn trao đổi mã khóa.
Ngƣợc lại, các phƣơng pháp mã hóa khóa cơng khai giúp cho việc trao đổi mã
khóa trở nên dễ dàng hơn. Nội dung của khóa cơng khai khơng cần phải giữ bí mật
nhƣ đối với khóa bí mật trong các phƣơng pháp mã hóa khố bí mật.
Sử dụng khóa cơng khai, mã khóa bí mật có thể đƣợc trao đổi an tồn theo quy
trình trong hình vẽ dƣới đây:

Hình 5: Quy trình trao đổi khố bí mật sử dụng hệ mã hố khố cơng khai


24

1.3. Sơ lƣợc về giấu tin mật
1.3.1. Các khái niệm cơ bản
1.3.1.1.

Khái niệm giấu tin mật

Giấu tin là nghệ thuật nhúng mẩu tin mật vào một vật mang tin khác.
Giấu tin và mật mã:
Có thể coi nghệ thuật viết mật là một nhánh của ngành mật mã với mục tiêu là
che giấu các thơng tin mật.


Hình 6: Phân cấp các lĩnh vực nghiên cứu của ngành mật mã học

Giấu tin và mật mã tuy cùng có một mục đích là không để đối phƣơng phát hiện
ra tin cần giấu nhƣng chúng có một số đặc điểm khác biệt sau:
- Mật mã là giấu đi ý nghĩa của thông tin
- Giấu tin là giấu đi sự hiện diện của thông tin. Về bản chất, giấu tin gần với nén
dữ liệu hơn.
Thuỷ ấn số và giấu tin:
Trong lĩnh vực bảo mật, giấu tin đƣợc phân nhánh nhƣ sau:

Hình 7: Các nhánh của giấu tin

Thủy ấn (Water marking) là lĩnh vực nghiên cứu việc nhúng thơng tin phục vụ
xác thực, ví dụ nhƣ xác nhận bản quyền… Nếu thông tin giấu là một định danh duy
nhất, ví dụ nhƣ định danh ngƣời dùng, thì ngƣời ta gọi đó là Fingerprinting (nhận
dạng vân tay, điểm chỉ).
Giấu tin mật (hay còn gọi là viết phủ) là lĩnh vực nghiên cứu việc nhúng các tin


25

mật vào một mơi trƣờng phủ. Trong q trình giấu tin, để tăng tính bảo mật, ngƣời ta
có thể dùng một khố viết mật, khi đó ngƣời ta nói về Intrinsic Steganography (giấu
tin có xử lý). Để giải mã ngƣời dùng cũng phải có khố viết mật đó. Khố này có thể
khơng phải là khố dùng để lập mật mã mẩu tin, ví dụ nó có thể là khố để sinh ra hàm
băm phục vụ rải tin vào môi trƣờng phủ. Ngƣợc lại nếu khơng dùng khố viết mật thì
ngƣời ta chỉ giấu tin đơn thuần vào môi trƣờng phủ thì khi đó ngƣời ta nói về Pure
Steganography (giấu tin đơn thuần).
Xét về tính chất thuỷ ấn giống giấu tin ở chỗ tìm cách nhúng thơng tin mật vào
một mơi trƣờng. Tuy nhiên xét về bản chất thì thuỷ ấn có những nét khác ở một số

điểm:
- Mục tiêu của thuỷ ấn là nhúng thông tin không lớn thƣờng là biểu tƣợng, chữ
ký hay các đánh dấu khác vào môi trƣờng phủ nhằm phục vụ việc xác nhận bản quyền
- Khác với giấu tin ở chỗ giấu tin sau đó cần tách lại tin cịn thuỷ ấn tìm cách
biến tin giấu thành một thuộc tính của vật mang
- Chỉ tiêu quan trọng nhất của một thuỷ ấn là tính bền vững, của giấu tin là dung
lƣợng giấu.
- Điểm khác nữa giữa thuỷ ấn và giấu tin là thuỷ ấn có thể vơ hình hoặc hữu hình
trên vật mang.
1.3.1.2.

Các thành phần của hệ giấu tin mật

Các thành phần chính của một hệ giấu tin mật gồm có:
- Mẩu tin mật: có thể là văn bản, hình ảnh hay tệp tin tuỳ ý (âm thanh số, video
số), vì trong quá trình giấu tin, chúng đều đƣợc chuyển thành các chuỗi bit..
- Môi trƣờng sẽ chứa tin mật: thƣờng là ảnh, nên gọi là ảnh phủ hay ảnh gốc.
Ngồi ra cịn có thể là âm thanh số, video số, văn bản…
- Khoá K: khố viết mật, tham gia vào q trình giấu tin để tăng tính bảo mật
- Mơi trƣờng đã chứa tin mật: là môi trƣờng chứa tin mật sau khi đã đƣợc
nhúng tin mật vào. Trong trƣờng hợp môi trƣờng ảnh thì gọi là ảnh mang.

Hình 8: Sơ đồ chung của hệ giấu tin mật


×