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

Nghiên cứu về mã hóa tốc độ cao ứng dụng cho các mạng cảm biến không dây

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

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

KEOTHAVIXAY SOMNEUK

NGHIÊN CỨU VỀ MÃ HĨA TỐC ĐỘ CAO ỨNG DỤNG
CHO CÁC MẠNG CẢM BIẾN KHÔNG DÂY

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

THÁI NGUYÊN - 2020


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

KEOTHAVIXAY SOMNEUK

NGHIÊN CỨU VỀ MÃ HĨA TỐC ĐỘ CAO ỨNG DỤNG
CHO CÁC MẠNG CẢM BIẾN KHÔNG DÂY

LUẬN VĂN THẠC SỸ KHOA HỌC MÁY TÍNH
Chuyên ngành: KHOA HỌC MÁY TÍNH
Mã số: 84 80 101

Người hướng dẫn khoa học: TS. Đỗ Thị Bắc

THÁI NGUYÊN - 2020


I



LỜI CÁM ƠN
Trước tiên tôi bày tỏ lời cảm ơn chân thành đến các thầy, cô giáo đã giảng
dạy, hướng dẫn và giúp đỡ tôi trong thời gian học tập và nghiên cứu hoàn thành
luận văn này.
Xin được bày tỏ lịng biết ơn sâu sắc tới cơ giáo TS. Đỗ Thị Bắc đã tận
tình hướng dẫn, giúp đỡ và đóng góp cho tơi nhiều ý kiến q báu để hồn thành
luận văn này.
Xin trân thành cảm ơn các thầy, cô giáo trường đại học công nghệ thông
tin và truyền thông, đặc biệt là các thầy cô trong khoa công nghệ thông tin đã
giảng dạy, giúp đỡ và tạo điều kiện thuận lợi cho tôi trong thời gian học tập tại
trường.
Cuối cùng, xin trân thành cảm ơn gia đình và bạn bè đã động viên, quan
tâm, giúp đỡ tơi hồn thành khóa học và luận văn.

Thái Nguyên, Năm 2020
Học viên

KEOTHAVIXAY Somneuk


22

LỜI CAM ĐOAN

Tôi cam đoan luận văn này là do bản thân tự nghiên cứu và thực
hiện theo sự hướng dẫn khoa học của TS. Đỗ Thị Bắc
Tơi hồn tồn chịu trách nhiệm về tính pháp lý q trình nghiên
cứu khoa học của luận văn này.


Thái Nguyên, Năm 2020
Học viên

KEOTHAVIXAY Somneuk


33

MỤC LỤC
LỜI CÁM ƠN ................................................................................................................ I
LỜI CAM ĐOAN .........................................................................................................II
MỤC LỤC ................................................................................................................... III
DANH MỤC CÁC BẢNG BIỂU............................................................................... VI
DANH

MỤC

CÁC

...................................................................................VII

HÌNH
MỞ

VẼ
ĐẦU

................................................................................................................. VIII CHƯƠNG
1: TỔNG QUAN VỀ MẬT MÃ VÀ MÃ KHỐI. .....................................1
1.1 Giới thiệu...............................................................................................................1

1.2 Bảo vệ thơng tin trong q trình truyền trên mạng ...............................................1
1.2.1. Các loại hình tấn cơng ..................................................................................1
1.2.2 u cầu của một hệ truyền thơng tin an tồn và bảo mật..............................4
1.3 Vai trị của mật mã trong việc bảo mật thơng tin trên mạng.................................5
1.4 Mã khối .................................................................................................................6
1.4.1 Khái niệm.......................................................................................................6
1.4.2 Phương pháp thiết kế mật mã khối ................................................................6
1.4.3 Tấn công mật mã khối .................................................................................11
1.4.4 Các phương thức hoạt động của mật mã khối. ............................................12
1.5 Tiểu luận chương 1 .............................................................................................17
CHƯƠNG 2 NGUYÊN LÝ THIẾT KẾ MÃ KHỐI TRÊN CSPN ........................18
2.1. Nguyên lý thiết kế CSPN ...................................................................................18
2.1.1. Lớp phần tử nguyên thủy mật mã điều khiển được ....................................18
2.1.2. Cấu trúc CSPN............................................................................................22
2.2. Nguyên lý thiết kế thuật toán mật mã trên FPGA..............................................24
2.2.1 Chiến lược thiết kế.......................................................................................24
2.2.2. Cấu trúc thiết kế..........................................................................................24
2.2.3. Các thông số và mô hình đánh giá..............................................................25
2.3. Ngun lý đánh giá độ an tồn của các thuật toán.............................................27
2.3.1. Đánh giá đặc trưng thống kê theo tiêu chuẩn NESSIE...............................27
2.3.2. Đánh giá độ an toàn theo đặc trưng vi sai ..................................................30
2.4 Nguyên lý đánh giá hiệu quả tích hợp trên FPGA ..............................................31


44

2.4.1 Lưu lượng thơng tin .....................................................................................31
2.4.2. Diện tích (Area) ..........................................................................................31
2.4.3 Lưu lượng/diện tích .....................................................................................32
2.5. Tiểu luận chương 2 ............................................................................................32

CHƯƠNG 3: XÂY DỰNG CHƯƠNG TRÌNH THỬ NGHIỆM VÀ ĐÁNH GIÁ
KẾT QUẢ.....................................................................................................................33
3.1 Mạng cảm biến không dây ..................................................................................33
3.1.1 Định nghĩa của mạng cảm biến không dây..................................................33
3.1.2 Cấu trúc của mạng cảm biến không dây......................................................33
3.1.3 Đặc điểm của mạng cảm biến không dây ....................................................34
3.2 Mơ tả thuật tốn mơ phỏng .................................................................................35
3.2.1 Cấu trúc của các phần từ điều khiển được sử dụng .....................................36
3.2.2 Thuật tốn mã khối BM-64..........................................................................39
3.3 Đánh giá độ an tồn của BM-64 .........................................................................42
3.3.1 Đánh giá về đặc trưng thống kê của BM-64 theo chuẩn NESSIE...............42
3.3.2 Đánh giá về thám mã vi sai..........................................................................43
3.4. Cài đặt mô phỏng và đánh giá hiệu quả tích hợp của thuật tốn .......................46
3.4.1 Cơng cụ cài đặt mô phỏng ...........................................................................46
3.4.2 Kết quả đánh giá và so sánh hiệu suất trên FPGA.......................................48
3.4.2.1 Minh họa một số giao diện mô phỏng trền FPGA: .................................48
3.4.2.2 Kết quả đánh giá......................................................................................53
KẾT LUẬN ..................................................................................................................54
TÀI LIỆU THAM KHẢO...........................................................................................55


55

DANH MỤC CHỮ VIẾT TẮT
Chữ viết tắt
SPN
SAC
DDO
ECB
CBC

OFB
CFB
CTR
CSPN
FPGA
NL
IL
LU
PP
CLB
LUT
IOB
NESSIE
LC
DC
SDDO
WSNs
ISE Design
HDL
IDE
GUI
ISE
PLD
CAD
MCF
LUT
CPLD
AES
SHA
VHDL

PE

Chữ đẩy đủ
Substitution Permutation Network
Strict Avalanche Criteria
Data Dependent Operation
Electronic Code Book
Cipher Block Chaining
Output Feed Back
Cipher Feed Back
Counter mode
Controlled Substitution Permutation Network
Field-programmable gate array
Non Linearity
Iterative Looping
Loop Unrolling
Pipeline
Configurable Logic Block
Look-Up Table
Input/Output Block
New European Schemes for Signatures, Integrity and
Encryption
Linear Cryptanalysis
Differential Cryptanalysis
Switchable Data Dependent Operation (data-driven
operation)
Wireless sensor networks
Integrated Synthesis Environment Design
Hardware Description Languages
Integrated Device Electronics

Graphical user interface
Integrated Synthesis Environment
Programmable Logic Device
Computer Aided Design
Maximum Clock Frequency
Look-Up Table
Complex Programmable Logic Device
Advanced Encryption Standard
Secure Hash Algorithm
VHSIC Hardware Description Language
Primitive Element


66

DANH MỤC CÁC BẢNG BIỂU
Bảng 3.1 XÁC XUẤT PR(IJK)=PR(YI /XJ , VK)
F2/2.....37

CỦA ĐẶC TÍNH VI PHÂN CỦA

Bảng 3.2 Miêu tả các phép thế trong hộp S4x4 và S-14x4 ..................................... 39
Bảng 3.3 Lịch biểu sử dụng khóa trong thuật tốn BM-64 với khóa mật 128 bits.
...41
Bảng 3.4 Lịch biểu sử dụng khóa trong thuật tốn BM-64 với khóa mật 192 bits.
...42
Bảng 3.5 Lịch biểu sử dụng khóa trong thuật tốn BM-64 với khóa mật 256
bits. ...................................................................................................................... 42
Bảng 3.6 Ảnh hưởng của bit dữ liệu và bit khóa trong thuật tốn BM-64. ........ 43
Bảng 3.7 So sánh đặc trưng vi sai của một số mã hóa khối................................ 46

Bảng 3.8 So sánh kết quả thực hiện các thuật toán khác nhau trên FPGA với BM64..53


77

DANH MỤC CÁC HÌNH VẼ
Hình 1. 1 Xem trộm thơng tin ............................................................................ 2
Hình 1. 2 Sửa thơng điệp .................................................................................... 2
Hình 1. 3 Mạo danh ............................................................................................. 3
Hình 1. 4 Phát lại thơng điệp.............................................................................. 4
Hình 1. 5 Mơ hình bảo mật thơng tin trên mạng................................................... 5
Hình 1. 6 Cấu trúc mạng Feistel............................................................................ 7
Hình 1. 7 Cấu trúc SPN......................................................................................... 8
Hình 1. 8 Các chế độ hoạt động của mã khối ..................................................... 12
Hình 1. 9 Chế độ mã hóa ECB ........................................................................... 13
Hình 1. 10 Chế độ mã hóa CBC.......................................................................... 14
Hình 1. 11 Chế độ mã hóa s-bít CFB.................................................................. 15
Hình 1. 12 Chế độ mã hóa s-bít OFB.................................................................. 16
Hình 1. 13 Chế độ mã hóa CTR......................................................................... 17
Hình 2.1 Cấu trúc biểu diễn của F2/1.........................................................................
19
Hình 2. 2 Cấu trúc biểu diễn của F2/2........................................................................
21
Hình 2. 3 Cấu trúc tổng quát của Fn/m (a) và F-1n/m (b) xây dựng từ F2/1 .............. 23
Hình 2. 4 Cấu trúc thiết kế mật mã khối trên FPGA,.......................................... 25
Hình 3. 1 Cấu trúc của F4/8 (a) và F-14/8 (b). ....................................................... 38
Hình 3. 2 Cấu trúc của F16/64 (a) và F-116/64(b)................................................... 38
Hình 3. 3 Sơ đồ cấu trúc của thuật toán BM-64. a). Sơ đồ tổng qt................. 41
Hình 3. 4 Thơng tin về vi sai sau vịng 2 của thuật tốn BM-64. ....................... 45
Hình 3. 5 Sơ đồ thiết kế tổng thể của BM-64 trên FPGA (cấu trúc IL) ............. 50

Hình 3. 6 Sơ đồ thiết kế BM-64 trên FPGA (cấu trúc PP) ................................. 52


VIII

MỞ ĐẦU
Mật mã là một ngành khoa học công nghệ mà nhiều lĩnh vực ứng dụng
phải dùng nhằm đảm bảo an ninh, tính bí mật, tính xác thực, chống từ chối và
tồn vẹn thơng tin. Nhất là trong thời đại công nghệ số, thời đại mà mọi hoạt
động, mọi giao dịch của hầu hết các ngành nghề, lĩnh vực đều thông qua môi
trường mạng.
Mã khối là một giải pháp hiện đại trong lĩnh vực mật mã. Nhiều giải pháp
đã được đưa ra thơng qua các cuộc thi trên tồn thế giới. Như chuẩn mã hóa dữ
liệu AES, SHA1, SHA2. Và ngay trong năm nay sẽ công bố kết quả của cuộc thi
SHA3.
Việc ứng dụng mạng hoán vị thay thế điều khiển được (CSPN) trong xây
dựng và phát triển các thuật tốn mã hóa khối hiện nay là hướng đi của hầu hết
các nhà nghiên cứu với đề tài “ Nghiên cứu về mã hóa tốc độ cao ứng dụng cho
các mạng cảm biến không dây ”
Đây là chủ đề rộng lớn và phức tạp có sự phát triển rất mạnh được giới
khoa học quan tâm, nên cũng là khó khăn cho nghiên cứu sinh. Mặc dù đã chuẩn
bị kỹ nhưng không thể tránh được những khiếm khuyết. Em rất mong nhận được
các ý kiến quý báu của các nhà khoa học và các thầy cô giáo để báo cáo của em
hoàn thiện hơn.


11

CHƯƠNG 1: TỔNG QUAN VỀ MẬT MÃ VÀ MÃ KHỐI.


1.1 Giới thiệu
Trước đây khi cơng nghệ máy tính chưa phát triển, khi nói đến vấn đề
an tồn bảo mật thơng tin (Information Security), chúng ta thường hay nghĩ
đến các biện pháp nhằm đảm bảo cho thông tin được trao đổi hay cất giữ một
cách an tồn và bí mật. Chẳng hạn là các biện pháp như:
Đóng dấu và ký niêm phong một bức thư để biết rằng lá thư có được
chuyển nguyên vẹn đến người nhận hay không.
Dùng mật mã mã hóa thơng điệp để chỉ có người gửi và người nhận
hiểu được thông điệp. Phương pháp này thường được sử dụng trong chính trị
và quân sự.
Lưu giữ tài liệu mật trong các két sắt có khóa, tại các nơi được
bảo vệ nghiêm ngặt, chỉ có những người được cấp quyền mới có thể xem tài
liệu.
Với sự phát triển mạnh mẽ của công nghệ thông tin, đặc biệt là sự phát
triển của mạng Internet, ngày càng có nhiều thơng tin được lưu giữ trên máy
vi tính và gửi đi trên mạng Internet. Và do đó xuất hiện nhu cầu về an tồn và
bảo mật thơng tin trên máy tính. Có thể phân loại mơ hình an tồn bảo mật
thơng tin trên máy tính theo hai hướng chính như sau:
Bảo vệ thơng tin trong q trình truyền thơng tin trên mạng (Network
Security). Các giải pháp mật mã được sử dụng.
Bảo vệ hệ thống máy tính, và mạng máy tính, khỏi sự xâm nhập phá
hoại từ bên ngoài (System Security)
1.2 Bảo vệ thơng tin trong q trình truyền trên mạng
1.2.1. Các loại hình tấn cơng
Để xem xét những vấn đề bảo mật liên quan đến truyền thông
trên mạng, chúng ta hãy lấy một bối cảnh sau: có ba nhân vật tên là
Alice, Bob và Trudy, trong đó Alice và Bob thực hiện trao đổi thơng
tin với nhau, cịn Trudy là kẻ xấu, đặt thiết bị can thiệp vào kênh



22

truyền tin giữa Alice và Bob. Sau đây là các loại hành động tấn công
của Trudy mà ảnh hưởng đến quá trình truyền tin giữa Alice và Bob:
a. Xem trộm thông tin (Release of Message Content)
Trong trường hợp này Trudy chặn các thông điệp Alice gửi cho
Bob, và xem được nội dung của thơng điệp.

Hình 1. 1 Xem trộm thơng tin

b.

Thay đổi thông điệp (Modification of Message)

Sửa thông diệp của
Alice gửi cho Bob

Hình 1. 2 Sửa thơng điệp
Trudy chặn các thông điệp Alice gửi cho Bob và ngăn không cho
các thơng điệp này đến đích. Sau đó Trudy thay đổi nội dung của
thông điệp và gửi tiếp cho Bob. Bob nghĩ rằng nhận được thông điệp
nguyên bản ban đầu của Alice mà không biết rằng chúng đã bị sửa đổi.


33

c. Mạo danh (Masquerade)
Trong trường hợp này Trudy giả là Alice gửi thông điệp cho
Bob. Bob không biết điều này và nghĩ rằng thơng điệp là của Alice.


Hình 1. 3 Mạo danh
d. Phát lại thông điệp (Replay)
Trudy sao chép lại thơng điệp Alice gửi cho Bob. Sau đó một
thời gian Trudy gửi bản sao chép này cho Bob. Bob tin rằng thông
điệp thứ hai vẫn là từ Alice, nội dung hai thơng điệp là giống nhau.
Thoạt đầu có thể nghĩ rằng việc phát lại này là vô hại, tuy nhiên trong
nhiều trường hợp cũng gây ra tác hại không kém so với việc giả mạo
thơng điệp. Xét tình huống sau: giả sử Bob là ngân hàng còn Alice là
một khách hàng. Alice gửi thông điệp đề nghị Bob chuyển cho Trudy
1000$. Alice có áp dụng các biện pháp như chữ ký điện tử với mục
đích khơng cho Trudy mạo danh cũng như sửa thông điệp. Tuy nhiên
nếu Trudy sao chép và phát lại thơng điệp thì các biện pháp bảo vệ này
khơng có ý nghĩa. Bob tin rằng Alice gửi tiếp một thông điệp mới để
chuyển thêm cho Trudy 1000$ nữa.


44

Hình 1. 4 Phát lại thơng điệp
1.2.2 u cầu của một hệ truyền thơng tin an tồn và bảo mật
Phần trên đã trình bày các hình thức tấn cơng, một hệ truyền tin được
gọi là an toàn và bảo mật thì phải có khả năng chống lại được các hình thức
tấn cơng trên. Như vậy hệ truyền tin phải có các đặt tính sau:
a) Tính bảo mật (Confidentiality): Ngăn chặn được vấn đề xem trộm
thơng điệp.
b) Tính chứng thực (Authentication): Nhằm đảm bảo cho Bob rằng
thông điệp mà Bob nhận được thực sự được gửi đi từ Alice, và không bị thay
đổi trong q trình truyền tin. Như vậy tính chứng thực ngăn chặn các hình
thức tấn cơng sửa thơng điệp, mạo danh, và phát lại thơng điệp.
c) Tính khơng từ chối (Nonrepudiation): xét tình huống sau:

Giả sử Bob là nhân viên mơi giới chứng khốn của Alice. Alice gởi
thơng điệp yêu cầu Bob mua cổ phiếu của công ty Z. Ngày hôm sau, giá cổ
phiếu công ty này giảm hơn 50%. Thấy bị thiệt hại, Alice nói rằng Alice
khơng gửi thông điệp nào cả và quy trách nhiệm cho Bob. Bob phải có cơ chế
để xác định rằng chính Alice là người gởi mà Alice không thể từ chối trách
nhiệm được.


55

Khái niệm chữ ký trên giấy mà con người đang sử dụng ngày nay là
một cơ chế để bảo đảm tính chứng thực và tính khơng từ chối. Và trong lĩnh
vực máy tính, người ta cũng thiết lập một cơ chế như vậy, cơ chế này được
gọi là chữ ký điện tử.

Hình 1. 5 Mơ hình bảo mật thơng tin trên mạng
1.3 Vai trò của mật mã trong việc bảo mật thơng tin trên mạng
Mật mã hay mã hóa dữ liệu (cryptography), là một công cụ cơ bản thiết
yếu của bảo mật thông tin. Mật mã đáp ứng được các nhu cầu về tính bảo mật
(confidentiality), tính chứng thực (authentication) và tính khơng từ chối (nonrepudiation) của một hệ truyền tin.
Mã hóa dữ liệu bao gồm mã hóa đối xứng và mã hóa bất đối xứng,
chúng đóng vai trị quan trọng trong mật mã hiện đại. Mã khối là một hình
thức của mã hóa đối xứng.
Ngồi ra, hàm băm (hàm Hash) cũng là một công cụ bảo mật quan
trọng mà có nhiều ứng dụng lý thú, trong đó có chữ ký điện tử.
Trong khuôn khổ của đề tài nghiên cứu, sẽ đi sâu để nghiên cứu về mã
khối và các mạng hoán vị thay thế điều khiển được để xây dựng các mã khối
áp dụng trong các mạng truyền thông tốc độ cao.



66

1.4 Mã khối
1.4.1 Khái niệm
Mật mã khối là phương thức cho phép mã hóa trên một nhóm các bit
(khối) với độ dài nào đó, lần lượt mỗi khối được mã hoặc giải mã. Kích thước
mỗi khối thường là 64 bit hoặc lớn hơn. Các tham số quan trọng của mã hóa
khối là kích thước (độ dài) của mỗi khối, kích thước khóa, cấu trúc của vịng
mã hóa cơ sở, ... Các mã khối đều được xây dựng dựa trên ý tưởng của
Shannon đưa ra năm 1949.
1.4.2 Phương pháp thiết kế mật mã khối
a. Cấu trúc thiết kế
Xuất phát từ ý tưởng của Shannon, một số cấu trúc mã hóa khối cơ sở
đã được đề xuất. Trong số đó, cấu trúc mạng Feistel (Feistel network) và
mạng hoán vị thay thế (Substitution Permutation Network - SPN) là 2 cấu
trúc mã hóa khối được sử dụng phổ biến trong việc phát triển các thuật tốn
mã hóa khối hiện nay.
- Cấu trúc Feistel
Horst Feistel đề xuất ra cấu trúc Feistel dựa trên mã tích nghịch đảo
được, tức là kết hợp mã thay thế với mã hốn vị và qui trình mã/giải mã là
giống nhau, q trình giải mã chỉ cần thay đổi vai trị khối bản mã với khối
bản rõ và thứ tự các khố con được dùng. Từ khóa chính sẽ sinh ra cho mỗi
vịng mã hóa một khóa con tương ứng. Quy trình thực hiện được mơ tả như
trong hình 1.6.


77

Bản rõ (2w bits)
L0

Vịng 1

R0
K1

˷
F
R1

L1
Vịng 2

Ki

˷
F
Ri

Li

Kn

Vịng n
˷
F
Rn

Ln

Rn+1


Ln+1
Bản mã (2w bits)

Hình 1. 6 Cấu trúc mạng Feistel
- Cấu trúc SPN
Cấu trúc SPN là một trong các cấu trúc được sử dụng chung nhất trong
các mã khối. Cấu trúc SPN được dựa trên các nguyên tắc của Shannon về tính
hỗn loạn (confusion) và khuếch tán (diffusion). Các nguyên tắc này được
được thực hiện thông qua việc sử dụng các phép thay thế và các phép hốn vị.
Quy trình thực hiện được mơ tả như trong hình 1.7


Khóa vịng
K1

S1

S2

Sn

Phép biến đổi tuyến tính
Khóa vịng
K2

S1

S2


Sn

Khóa vịng
Km

S1

S2

Sn

Hình 1. 7 Cấu trúc SPN
b. Tiêu chuẩn thiết kế
b1.Tiêu chuẩn thiết kế chung
Các tiêu chuẩn chung sau được chấp nhận bởi phần lớn các nhà mật mã
học. Nó bao gồm: độ an tồn, tính hiệu quả, tính linh hoạt của khóa và tính đa
dụng. Ngồi ra cịn một số các tiêu chuẩn khác như: tính đơn giản, tính đối
xứng (gồm đối xứng qua các vòng, đối xứng trong biến đổi vòng, đối xứng
trong hộp S, đối xứng giữa phép mã và giải mã), tính song song, tính mềm
dẻo đối với thứ tự của các bước, độ dài khối thay đổi, lựa chọn một số phép
tốn số học.
Tiêu chuẩn về độ an tồn và tính hiệu quả được áp dụng bởi tất cả các
nhà thiết kế mật mã. Có một số trường hợp tính hiệu quả phải hy sinh để nhận


được một ngưỡng an toàn cao. Thách thức được đặt ra cho việc thiết kế mật
mã là đề xuất một ngưỡng an tồn hợp lý trong khi tối ưu tính hiệu quả.
Tiêu chuẩn về độ linh hoạt của khóa và tính đa dụng là ít vạn năng hơn.
Trong một số trường hợp các tiêu chuẩn này là khơng thích đáng bởi vì mã
pháp được ngụ ý cho một ứng dụng cụ thể và sẽ được cài đặt trên một nền

tảng cụ thể.
b2. Tiêu chuẩn khuếch tán.
Hai nguyên tắc quan trọng đối với việc thiết kế mật mã khối đó là: Tiêu
chuẩn thác lũ chặt (SAC: Strict Avalanche Criteria) và chiến lược vết rộng và
số nhánh (The wide-trail strategy and the branch number).
1) Tiêu chí thác lũ chặt
Về mặt lịch sử, SAC [3] được sử dụng trong các thiết kế mã khối đơn
giản để mô tả sự khuếch tán của chúng. Theo đó, một hộp S được xác định
như hàm logic
phân

hoặc như một tập của m hàm logic nhị
,

. Một hàm logic nhị phân thỏa

mãn SAC nếu một bit của véc tơ đầu vào thay đổi thì có một nửa số bit của
đầu ra thay đổi. Cụ thể hơn, f thỏa mãn SAC nếu
logic cân bằng

là hàm

.

2) Chiến lược vết rộng và số nhánh
Chiến lược vết rộng [25] là một phương pháp tiếp cận để thiết kế hàm
vịng của thuật tốn mật mã khối. Hàm này mang lại hiệu suất tổ hợp và
chống lại các kỹ thuật thám mã. Trong chiến lược vết rộng, một lớp khuếch
tán được xây dựng để cung cấp sự khuếch tán và giải pháp chính để đánh giá
lớp khuếch tán là số nhánh. Tuy nhiên trong vấn đề này, cần hạn chế sự mở

rộng số nhánh theo một phép biến đổi tuyến tính.
b3. Tiêu chuẩn hỗn loạn
Các hộp S thường là phần phi tuyến trong mã hóa khối và là phần quan
trọng đầu tiên cho sự hỗn loạn. Các hộp S được xây dựng từ các hàm logic


phức tạp để làm mờ đi mối quan hệ giữa bản rõ, bản mã và khóa. Ta tập trung
vào 3 tiêu chí cần thiết: tính phi tuyến, đặc trưng vi sai và bậc phi tuyến.
Tính phi tuyến
Tính phi tuyến của hàm logic liên quan đến khoảng cách giữa hàm và
tập tất cả các phép xấp xỉ tuyến tính của hàm này. Các phép xấp xỉ của các
hộp S có thể giúp cho kẻ tấn cơng có khả năng đe dọa độ an tồn của thuật
tốn mã hóa khối.
Định nghĩa 1.1 Gọi

là hộp S. Khi đó, có thể có

các phép xấp xỉ của hộp S này. Mỗi phép xấp xỉ có 1 xác suất nhất
định p. Ta ký hiệu độ chênh lệch (hay sai số) của 1 phép xấp xỉ tuyến tính là
và nó được tính bằng cơng thức:
. Gọi
là giá trị tuyệt đối của
độ chênh lệch và
là giá trị tuyệt đối của độ lệch xấp xỉ tuyến tính lớn
nhất. Như thế, thông số phi tuyến của hộp S (ký hiệu là ) sẽ tương đương là
.
Đặc trưng vi sai
Do có thể ước đoán (xấp xỉ) hộp S bằng các hàm logic tuyến tính nên ta
cũng có thể nghiên cứu sự lan truyền vi sai trong các hộp S.
Định nghĩa 1.2 Cho hộp S dưới dạng hàm

hàm này ta có thể có

giá trị vi sai đầu vào

tương tự cũng có thể có
vi sai của hộp S như sau:
tạo ra vi sai đầu ra

giá trị vi sai đầu ra

. Với
khác nhau và
. Ta biểu diễn

, nó được hiểu là với vi sai đầu vào

sẽ

với xác suất p. Khi đó, thơng số vi sai của một hộp S

tương đương với xác suất của vi sai lớn nhất của nó.
Bậc phi tuyến
Lars Knudsen là người đưa ra khái niệm bậc phi tuyến vào năm 1994
và khái niệm này dựa vào mức độ phức tạp đại số của hàm logic. Ta có thể
coi đó là một khái niệm tổng quát của các khái niệm vi sai.


Định nghĩa 1.3. Cho
của f tại một điểm


là một hàm logic. Đạo hàm
được định nghĩa như sau:

Đạo hàm bậc i của f tại điểm:

được định nghĩa:

Định nghĩa 1.4 Bậc phi tuyến của

, được kí hiệu

là giá trị i lớn nhất mà
Ở đây, yêu cầu véc tơ

không phải là một hằng.
là độc lập tuyến tính vào đạo hàm

bậc i khơng có giá trị 0.
1.4.3 Tấn công mật mã khối
Tấn công được xem là việc phân tích bản tin mã hóa để nhận được bản
tin rõ trong điều kiện không biết trước khóa mã. Thực tế, cơng việc tấn cơng
gặp nhiều khó khăn hơn khi không biết rõ hệ mật mã nào được sử dụng. Tuy
nhiên, để đơn giản hóa, giả sử người tấn công đã biết rõ hệ mật mã được sử
dụng khi tiến hành phân tích mã. Giả định này đặt ra với mục đích là thiết kế
được một hệ mật mã an tồn bảo mật.
Các mức độ tấn cơng có thể được phân loại như sau: tấn cơng chỉ biết
bản mã (ciphertext-only) tức người tấn cơng chỉ có bản tin mã hóa; tấn cơng
biết bản rõ (known plaintext) tức người thám mã có bản tin rõ và bản mã; tấn
công chọn bản rõ (chosen plaintext) tức người thám mã tạm thời có quyền
truy xuất tới bộ mã hóa, do đó người tấn cơng có khả năng chọn bản tin rõ và

xây dựng bản mã tương ứng; tấn công chọn bản mã (chosen ciphertext) tức là
người tấn công tạm thời có quyền truy xuất tới bộ giải mã, do đó có khả năng
chọn bản mã và xây dựng lại bản tin rõ tương ứng
Một số phương pháp phổ biến được sử dụng để tấn công vào mật mã
khối được biết đến cho đến hiện nay bao gồm:
- Tấn công bằng phương pháp vét cạn (brute force).
- Tấn công dựa vào thám mã tuyến tính (linear cryptanalysis).


- Tấn công dựa vào thám mã lượng sai (differential cryptanalysis).
Tuy nhiên trong số các phương pháp này, thám mã lượng sai được đánh
giá là giải pháp hiệu quả hơn cả đối với mã khối nói chung và đặc biệt là mã
khối tốc độ cao dựa trên các toán tử DDO ứng dụng trong các hệ thống truyền
thông không dây.
Các điểm yếu sau có thể áp dụng được cho một mã khối để thực hiện
cuộc tấn công:
1. Tồn tại các tấn cơng khơi phục khóa nhanh hơn tìm kiếm vét cạn.
Khả năng này thường được gọi là các tấn công đường tắt.
2. Các tính chất đối xứng nào đó trong mã khối (ví dụ như tính chất bù).
3. Sự có mặt của các lớp khóa yếu (như trong IDEA).
4. Các tấn cơng vào khóa liên kết.
1.4.4 Các phương thức hoạt động của mật mã khối.
Với bản tin có độ dài vượt quá độ dài của một khối dữ liệu thì phương
án mã hóa phải được tính đến. Đó chính là các chế độ hoạt động của mật mã
khối. Trong mật mã khối, việc mã hóa chuyển các khối bản rõ thành các khối
bản mã và ngược lại.

Hình 1. 8 Các chế độ hoạt động của mã khối
(a) Electronic Code Book (ECB).
(b) Cipher Block Chaining (CBC).

(c) Output Feed Back (OFB).
(d) Cipher Feed Back (CFB).
(e) Counter mode (CTR).


Đứng trên quan điểm thực hiện trên phần cứng, chúng ta có thể chia ra
làm 2 loại chế độ hoạt động chính:
Chế độ khơng hồi tiếp: bao gồm Electronic Code Book mode (ECB) và
Counter mode (CTR).
Chế độ có hồi tiếp: bao gồm Cipher Block Chaining mode (CBC),
Cipher Feedback Mode (CFB), và Output Feedback Mode (OFB).
Như vậy chỉ có ở chế độ khơng hồi tiếp mới có thể tận dụng hết khả
năng thực thi mật mã bằng phần cứng. Xem xét các chế độ làm việc của các
sơ đồ mã khối ta có thể nhận thấy một số vấn đề sau:
Chế độ ECB (Chế độ chuyển mã điện tử- Chế độ bảng tra mã điện tử):
là chế độ đơn giản nhất của mã khối, nó thường được sử dụng khi cần truyền
an tồn một thơng tin riêng (ví dụ, mã hóa khóa). Chế độ này có nhược điểm
là mức độ an tồn khơng cao, vì rằng đối thủ có thể dựng lại các bản mã từ
các bản mã gốc. Nhược điểm này khơng chỉ ảnh hưởng đến độ an tồn mà
cịn ảnh hưởng đến hiệu quả năng lượng của sơ đồ mã. Nhưng khi hoạt động
ở chế độ này, sơ đồ mã có khả năng dùng lỗi chống lại lỗi của bản mã (chỗ
các bits bị thay đổi) và lỗi đồng bộ hóa (chỗ các bits có thể được thêm vào
hoặc mất đi).

(a) Encryption

(b) Decryption

Hình 1. 9 Chế độ mã hóa ECB



14

Chế độ CBC (chế độ liên kết khối mã- Chế độ mã móc xích): là chế độ
thường được sử dụng nhất của mã khối, nó thường được sử dụng khi truyền
các khối dữ liệu hoặc dùng để xác thực.
Khi làm việc ở chế độ này, các sơ đồ mã có nguy cơ bị lộ thông tin do
kiểu tấn công “nghịch lý ngày sinh nhật”. Với khả năng chống lại lỗi bản mã
thì một bits lỗi truyền sẽ chỉ ảnh hưởng đến việc giải mã của 2 khối tiếp sau.
Chế độ này khơng có khả năng chống lại lỗi đồng bộ hóa.

(a) Encryption

(b) Decryption

Hình 1. 10 Chế độ mã hóa CBC
Chế độ CFB (chế độ phản hồi mã- Chế độ Mã phản hồi): thường được
sử dụng khi truyền các dòng dữ liệu hoặc dùng để xác thực. Chế độ này có
khả năng khơi phục chống lại lỗi bản mã và có khả năng khơi phục chống lại
lỗi đồng bộ hóa sau khi truyền một số lượng nào đó các khối.


15

(a) Encryption

(b) Decryption

Hình 1. 11 Chế độ mã hóa s-bít CFB
Chế độ OFB (chế độ phản hồi đầu ra- Chế độ mật mã kết quả phản

hồi): thường được sử dụng khi truyền dịng dữ liệu trên các kênh có nhiễu.
Với chế độ này lỗi trong một bản mã chỉ ảnh hưởng lên lỗi của bản rõ tương
ứng.


×