Tải bản đầy đủ

Nghiên cứu hệ mật mã khối dựa trên hỗn loạn rời rạc

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

TẠ THỊ KIM HUỆ

NGHIÊN CỨU HỆ MẬT MÃ KHỐI
DỰA TRÊN HỖN LOẠN RỜI RẠC

LUẬN ÁN TIẾN SĨ KỸ THUẬT VIỄN THÔNG

HÀ NỘI - 2017


MỞ ĐẦU

1. Mật mã và kỹ thuật hỗn loạn trong bảo mật thông tin
Bảo mật là một kỹ thuật thiết yếu trong hệ thống thông tin. Xu hướng phát
triển công nghệ thông tin là người dùng có thể chia sẻ và sử dụng chung tài
nguyên mạng từ những vị trí địa lý khác nhau trong các thời điểm khác nhau,
dẫn đến sự phân tán tài nguyên và hậu quả là tăng nguy cơ mất mát dữ liệu
và các thông tin có giá trị. Càng mở rộng các kết nối thì xuất hiện càng nhiều

lỗ hổng bảo mật, tài nguyên càng dễ bị tấn công và xâm phạm [104]. Mục tiêu
của bảo mật không chỉ nằm gói gọn trong lĩnh vực bảo vệ dữ liệu mà còn nhiều
phạm trù khác như kiểm duyệt web, bảo mật internet, bảo mật http, bảo mật
trên các hệ thống thanh toán điện tử và giao dịch trực tuyến. Phạm vi bảo mật
không chỉ gói gọn trong một máy tính mà là bảo mật các kết nối máy tính trên
phạm vi toàn cầu, trong nhiều phân loại mạng và đường truyền khác nhau như
mạng internet, mạng di động, mạng thông tin vệ tinh [38, 56, 97].
Hình 1 mô tả một số hình thức tấn công vào hệ thống thông tin, đối tượng
tấn công là các cá nhân hoặc tổ chức sử dụng các kiến thức về công nghệ thông
tin và các công cụ phá hoại (phần cứng hoặc phần mềm) để dò tìm các lỗ hổng
bảo mật trên hệ thống nhằm xâm nhập hoặc chiếm đoạt tài nguyên bất hợp
pháp [104]. Mục đích của đối tượng tấn công mạng là ăn cắp những thông tin
có giá trị về kinh tế, phá hoại hệ thống mạng hoặc thử nghiệm các chương trình
ảnh hưởng đến hoạt động của máy tính người dùng.
Nguyên nhân gây ra những lỗ hổng bảo mật có thể xuất phát từ lỗi của bản
thân hệ thống, hoặc do phần mềm cung cấp hoặc do người quản trị kém. Dựa
vào những lỗ hổng bảo mật mà các đối tượng có thể tấn công vào hệ thống theo
các hình thức như sau:
1. Tấn công ở Mức 1 là tấn công vào các dịch vụ mạng do hệ thống cung cấp
như email, ftp, web, dẫn đến nguy cơ lộ các thông tin về cấu hình mạng.
Mức độ nguy hiểm thấp, chỉ ảnh hưởng tới chất lượng dịch vụ, có thể làm
ngưng trệ, gián đoạn hệ thống; không làm phá hỏng dữ liệu hoặc đạt được
xii


xiii

6
5
4
3
2
1

Chiếm quyền
điều khiển hệ
thống

Kích hoạt một
số dịch vụ,

xem các
thông tin khác
trên hệ thống

Tấn công vào
một số dịch
vụ mạng:
Email, web,
ftp.

Ghi/ đọc
chỉnh sửa các
tập tin, thay
đổi quyền
truy cập

Hình 1: Các hình thức tấn công bảo mật mạng

quyền truy nhập bất hợp pháp.
2. Tấn công ở Mức 2 là sử dụng các chương trình phá mật khẩu, dùng tài
khoản của người dùng hợp pháp để chiếm đoạt tài nguyên hệ thống, hoặc
thay đổi quyền truy cập của người dùng không cần thực hiện kiểm tra tính
hợp lệ. Mức độ nguy hiểm trung bình.
3. Tấn công từ Mức 3 đến 5 là không chỉ sử dụng quyền truy cập của người
dùng thông thường mà còn thêm một số quyền cao hơn đối với hệ thống,
như kích hoạt một số dịch vụ, lan truyền virus trên hệ thống hoặc cài đặt
các đoạn mã độc vào chương trình.
4. Tấn công ở Mức 6 là chiếm được quyền điều khiển hệ thống tương đương
với vai trò của người quản trị chính trong hệ thống. Đây là hình thức tấn
công rất nguy hiểm có thể phá hủy toàn bộ hệ thống.
Mặt khác, các tấn công không chỉ xuất phát từ ngoài mạng mà có thể tiềm
ẩn ngay từ bên trong hệ thống. Các tấn công bên trong mạng có thể tiếp cận về
mặt vật lý đối với các thiết bị trên hệ thống và đạt được quyền truy cập không
hợp lệ ngay tại hệ thống đó. Như vậy, có thể khẳng định rằng không có một
giải pháp bảo mật an toàn tuyệt đối, mà thường phải sử dụng đồng thời nhiều
lớp bảo vệ khác nhau tạo thành rào chắn nhiều mức đối với các hoạt động xâm


xiv

Cài đặt tường lửa

Bảo vệ mức vật lý

Mã hóa dữ liệu

Quản lý truy nhập thông
qua tài khoản đăng ký

Cấp quyền truy nhập
hợp pháp

Thông tin

Hình 2: Các mức độ bảo vệ mạng thông tin

phạm, mô hình hệ thống thông tin an toàn và các mức độ bảo vệ mạng sẽ được
phân tích trong phần dưới đây.
Mô hình an toàn bảo mật của hệ thống thông tin phân loại theo hai hướng
chính như sau: Một là, bảo vệ thông tin trong quá trình truyền thông tin trên
mạng. Hai là, 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.
Hình 2 mô tả các lớp rào chắn thông dụng hiện nay để bảo vệ tài nguyên
thông tin trong hệ thống máy tính. Tài nguyên đầu tiên cần bảo vệ đó chính là
dữ liệu sau đó mới là tài nguyên hệ thống máy tính bao gồm phần cứng, phần
mềm, phần sụn và viễn thông. Bảo mật dữ liệu bao gồm ba mục tiêu: Thứ nhất
là duy trì tính toàn vẹn, dữ liệu không bị sửa đổi, bị đọc/xóa một cách bất hợp
pháp. Thứ hai là đảm bảo tính sẵn sàng, bất cứ lúc nào hệ thống hoặc người
dùng cần thì dữ liệu luôn sẵn sàng. Thứ ba là phải bí mật, mục tiêu này chỉ cho
phép người có quyền hạn truy cập đến nó [38].
1. Lớp bảo vệ trong cùng là quyền truy cập hợp pháp kiểm soát tài nguyên ở
đây là thông tin của mạng và quyền hạn có thể thực hiện những thao tác
gì trên tài nguyên đó.
2. Lớp bảo vệ tiếp theo là hạn chế theo tài khoản truy cập bằng việc đăng ký
tên và mật khẩu tương ứng. Mỗi người sử dụng muốn truy nhập được vào


xv

mạng sử dụng tài nguyên đều phải đăng ký tài khoản. Người quản trị hệ
thống có trách nhiệm quản lý, kiểm soát truy cập.
3. Lớp thứ ba là sử dụng các phương pháp mã hóa dữ liệu, là kỹ thuật biến đổi
dữ liệu từ dạng đọc được đối với người truyền/nhận tin sang dạng không
đọc được đối với đối tượng ăn cắp thông tin, theo một thuật toán nào đó.
Kỹ thuật mật mã là một công cụ cơ bản và thiết yếu của bảo mật thông
tin.
4. Lớp thứ tư là bảo vệ ở mức vật lý, nhằm ngăn chặn các truy nhập vật lý
bất hợp pháp vào hệ thống. Như dùng hệ thống khóa trên máy tính, cài đặt
báo động khi có truy nhập bất hợp pháp vào phòng đặt máy.
5. Lớp thứ năm là cài đặt tường lửa, nhằm ngăn chặn các xâm nhập trái phép
từ xa thông qua các giao thức kết nối và cho phép lọc các gói tin trước khi
truyền và nhận.
Qua phân tích ở trên, phương pháp mã hóa là một trong những biện pháp
an toàn và đáng tin cậy để bảo mật dữ liệu hiệu quả. Do đó, ứng dụng kỹ thuật
mật mã là xu hướng tất yếu trong truyền tin bảo mật.
Mật mã là công cụ quan trọng để che giấu thông tin trong trao đổi thông tin
với giả thiết có sự tồn tại của các đối tượng muốn ăn cắp thông tin để lợi dụng
và phá hoại. Khoa học mật mã sử dụng các phép biến đổi để biến dạng tập tin
đầu vào theo một quy luật toán học nào đó để kẻ địch không hiểu được, đồng
thời vẫn có khả năng khôi phục lại dạng tin ban đầu để người trong cuộc đọc
được, cách lập mã cho một văn bản được gọi là cơ chế sinh mã mật. Ngoài ra
các kỹ thuật toán học dùng để phân tích, phá mã hoặc tạo ra các đoạn mã giả
nhằm đánh lừa bên nhận tin được gọi cơ chế phá giải mã. Trong công trình Lý
thuyết thông tin và bảo mật hệ thống, Claude Shannon đã đặt nền móng cho
lý thuyết mật mã hiện đại khi lần đầu tiên đưa ra khái niệm an toàn bằng mô
hình toán học [97].
Mô hình truyền tin bảo mật được mô tả trên Hình 3, khác với truyền tin
thông thường mô hình này xuất hiện kẻ địch ẩn giấu, để chống lại các tấn công
bảo mật các khối xử lý mã hóa và giải mã được thêm vào theo nguyên tắc hoạt
động như sau: Người gửi S muốn gửi một thông điệp X tới người nhận R qua
một kênh truyền tin. Kẻ địch Enemy lấy/nghe trộm thông tin X . Thông tin X


xvi

Kênh truyền tin
X

Y

Y

Người gửi
S

X

Người nhận
R

Kẻ địch nghe/lấy trộm thông tin
Enemy

Hình 3: Mô hình truyền tin mật

là ở dạng đọc được, còn gọi là bản rõ. Để bảo mật, S sử dụng một phép biến
đổi mã hoá, tác động lên X , để chế biến ra một bản mã Y , không thể đọc được.
Ta nói bản mã Y đã che giấu nội dung của bản rõ X bản đầu. Giải mã là quá
trình ngược lại cho phép người nhận thu được bản rõ X từ bản mã Y [95].
Hệ thống mã hóa là một bộ năm {P, C, K, E, D} thỏa mãn các điều kiện sau:
1. P là một tập hữu hạn các ký tự bản rõ.
2. C là một tập hữu hạn các ký tự bản mã.
3. K là một tập hữu hạn các khóa.
4. E là một ánh xạ từ K × P vào C , được gọi là phép lập mã (sinh mã), D
là một ánh xạ từ K × C vào P được gọi là phép giải mã. Với mỗi khóa
k ∈ K , giả thiết Ek : P → C và Dk : C → P là hai hàm cho bởi Ek = E (k, X),
Dk = D (k, Y ) được gọi lần lượt là hàm lập mã và giải mã tương ứng, thỏa

mãn hệ thức Dk (Ek (X) = X).
Tính chất 4 thể hiện một hệ mật mã đảm bảo một bản tin X ∈ P được mã
hóa bằng luật lập mã Ek ∈ E có thể được giải mã chính xác bằng luật Dk ∈ D.
Các khối biến đổi sinh và giải mã là các hàm toán học với tham số khoá k ∈ K .
Khóa được xem là một thông số điều khiển của hệ mật mã và thông tin về khóa
là rất hạn chế, thông thường khóa k chỉ được biết đến bởi các bên tham gia
vào quá trình truyền tin là S và R. Sơ đồ truyền tin bảo mật trên Hình 3 thể
hiện rằng toàn bộ tính bảo mật của cơ chế phụ thuộc vào tính mật của khóa
và không phụ thuộc vào luật lập hay giải mã. Điều này được khẳng định trong
Luật Kirchoff, đây là một giả thiết cơ bản của mật mã được phát biểu như sau:


xvii

Toàn bộ cơ chế sinh mã và giải mã ngoại trừ thông tin về khoá là không bí mật
với kẻ thù. Như vậy khóa giữ vai trò trung tâm trong mô hình truyền tin mật.
Các cách thức về tổ chức quản lý khóa khác nhau sẽ đem đến những hệ thống
mật mã có tính năng hoàn toàn khác nhau [104]. Các hệ mật mã hiện đại được
phân loại như sau:
1. Theo tính chất của khoá: Mã khóa đối xứng, Mã khóa bất đối xứng, Mã
không khóa (như là hàm băm, chữ ký điện tử và sinh số ngẫu nhiên).
2. Theo cách thức xử lý dữ liệu đầu vào: Mã khối, Mã dòng.
3. Theo phạm vi ứng dụng: Mật mã tiêu chuẩn, Mật mã hạng nhẹ.
Các khái niệm cơ bản về các hệ thống mã hóa hiện đại có thể tìm thấy trong
tài liệu [38], [95] và [56]. Lý thuyết mật mã học hiện đại được xây dựng dựa trên
lý thuyết trung tâm của khoa học máy tính là lý thuyết độ phức tạp tính toán.
Nếu lý thuyết thuật toán đưa ra cận trên của sự phức tạp để giải quyết một bài
toán thì độ phức tạp nghiên cứu chủ yếu cận dưới hay độ khó tối thiểu để giải
một bài toán. Mối liên hệ mật thiết giữa lý thuyết mật mã và lý thuyết độ phức
tạp tính toán được phân tích trong tài liệu [56]. Dựa vào độ phức tạp tính toán,
một luật lập mã được coi là an toàn khi áp dụng các bài toán khó để làm tăng
độ phức tạp tính toán và đối thủ không có khả năng tìm ra thuật toán "hiệu
quả" để giải và kẻ tấn công không tính được bất kỳ hàm nào của bản rõ. Như
vậy muốn đảm bảo độ an toàn của mật mã thì người lập mã phải chứng tỏ làm
sao, dù về nguyên tắc, kẻ tấn công có thể tìm ra thông tin về khóa mật, nhưng
thời gian để đạt được mục đích đó là rất lớn, cỡ hàng triệu năm trên một máy
tính chạy nhanh nhất chẳng hạn và đó là khoảng thời gian phi thực tế. Tác giả
trong [56] khẳng định rằng tính an toàn của một hệ mã mật không còn dựa vào
khả năng che dấu bí mật mà dựa vào lý thuyết độ phức tạp, những bài toán
trừu tượng trong lý thuyết số trở nên rất hữu ích đối với nghành khoa học mật
mã trở thành một nhánh giao thoa giữa toán học và tin học.
Do vậy những thay đổi trong cách tiếp cận tính an toàn của mật mã hiện đại
đã mở ra nhiều hướng phát triển mới của mật mã như:
• Bảo mật trong điện toán đám mây: Điện toán đám mây cho phép lưu trữ

khối lượng thông tin khổng lồ trên mạng và thực hiện các thao tác trên nó
một cách dễ dàng. Năng lực tính toán của mô hình điện toán đám mây có


xviii

thể giải quyết những bài toán lớn mà trước đây khó có thể thực thi trên
một mạng máy tính cục bộ. Điều này tạo ra sự mâu thuẫn giữa việc lưu
trữ dữ liệu lớn trên các hệ thống máy tính xa lạ dễ bị đánh cắp, nhưng nếu
toàn bộ dữ liệu được mã hóa thì khó có thể tận dụng sức mạnh tính toán
đám mây để thao tác dữ liệu đó. Hiện nay, một số hệ mã đề xuất sử dụng
trong mạng điện toán đám mây như mã Gentry [78] và một số hệ mã cải
tiến của nó, tuy nhiên hiệu quả thấp chỉ mang tính lý thuyết, các thuật
toán mật mã dữ liệu trong mạng điện toán đám mây chưa phải là hệ mã
tối ưu là một vấn đề mở cần được nghiên cứu.
• Mở rộng mô hình mã hóa cho đối tượng nhóm và cho việc giải mã bộ phận:

Mã hóa thường cho ta thiết lập kênh trao đổi thông tin giữa một người với
một người. Tuy nhiên những ứng dụng thực tế đòi hỏi khả năng mã một
lần cho nhiều người cùng có thể giải mã, hay còn được gọi là mã hóa dựa
trên danh tính. Đó là loại mã hàm cho phép người lập mã định nghĩa một
cơ chế giải mã để đối với mỗi người nhận, tùy thuộc vào thuộc tính được
gán mà có thể truy cập sâu vào bản rõ tới đâu.
• An toàn trước các tấn công vật lý: Mật mã thường phân tích tính an toàn

dựa trên giả thuyết là khóa bí mật được bảo vệ tốt. Tuy nhiên, những tấn
công vật lý đôi khi lại có thể tìm ra những thông tin về khóa, ví dụ bằng
cách đo năng lượng tiêu thụ của máy giải mã trên các bản mã khác nhau.
Do vậy, phương án tìm cách hình thức hóa các khái niệm tấn công vật lý
tiếp đó là thiết kế các sơ đồ mã hóa mà tính an toàn dựa vào mô hình khóa
bị lộ.
• An toàn trước sự tấn công của máy tính lượng tử: Công trình của Shor năm

1994 đã chỉ ra rằng bài toán phân tích số có thể giải được trong thời gian
đa thức bởi máy tính lượng tử, bài toán logarithm rời rạc trong trường hữu
hạn hay trên đường cong elliptic cũng có thể giải được trong thời gian đa
thức bởi máy tính lượng tử. Điều đó có nghĩa là các hệ mã thông dụng hiện
nay có thể bị phá bởi một máy tính lượng tử được thiết kế chạy trên tập
dữ liệu lớn. Hai hướng chính đang được quan tâm là các hệ mã dựa trên
mã sửa sai và dựa trên lý thuyết lưới Euclid.
• Bảo mật trong mạng lưới IoTs: Các hệ mật mã truyền thống và tiêu chuẩn


xix

dễ dàng triển khai trên các thiết bị công nghệ có cấu hình cao, tuy nhiên
các thiêt bị trong mạng IoTs như các thẻ thông minh, các thiết bị truyền tin
sóng ngắn, bộ đàm, mạng cảm biến không dây hoặc các Chip xử lý có khả
năng tính toán hạn chế. Ví dụ, chip Atmel Mega 128L là bộ vi điều khiển
8 bit, 4Mhz, được dùng trong các thiết bị bộ đàm sóng vô tuyến của nhiều
hãng sản xuất thiết bị đầu cuối Trunking với 4KB SRAM là quá nhỏ. Do
đó các thiết kế các hệ mật mã hạng nhẹ đang là bài toán mở để giải quyết
nhu cầu bảo mật cho các thiết bị có tài nguyên tính toán hạn chế. Mật mã
hạng nhẹ là sự "thỏa hiệp" một cách tối ưu giữa độ an toàn và việc cài đặt
thuật toán mã.
Hướng phát triển của các hệ mật mã dựa trên độ phức tạp tính toán cũng là
cơ sở để Mật mã hỗn loạn được nghiên cứu và đề xuất trong khoảng mười năm
trở về đây. Các hàm hỗn loạn rời rạc được chứng minh là kế thừa được các tính
chất của các hàm hỗn loạn liên tục như tính chất nhạy cảm với điều kiện đầu,
nhạy cảm sự thay đổi giá trị của các tham số và không thể dự báo dài hạn. Ưu
điểm của mật mã khối hỗn loạn được xem như mô hình phát triển mật mã hiện
đại [62, 76].
Hỗn loạn thể hiện trạng thái lộn xộn thiếu trật tự của các hiện tượng tự nhiên
như sự biến đổi của thời tiết khí hậu, trạng thái động học của các hành tinh
trong hệ mặt trời, thời gian tiến hóa của trường điện từ của các thiên thể và sự
phát triển dân số trong hệ sinh thái. Về mặt khoa học, lý thuyết hỗn loạn dùng
để mô hình hóa một hệ thống vận động có vẻ như không có trật tự nhưng lại
tuân theo một quy luật hoặc nguyên tắc nào đó [62]. Ba tính chất quan trọng
của hỗn loạn là:
1. Nhạy cảm với các điều kiện đầu: Quỹ đạo xuất phát từ các điều kiện khởi
tạo có sai khác nhau rất nhỏ (gần như là như nhau) sẽ phân tách rất nhanh
theo luật số mũ tạo ra các quỹ đạo di chuyển hoàn toàn khác nhau. Sự
nhạy cảm với điều kiện đầu liên quan đến hàm mũ Lyapunov [42]. Số mũ
Lyapunov dương là một tiêu chuẩn xác định hành vi hỗn loạn trong hệ động
học phi tuyến. Nếu số mũ Lyapunov (LE ) lớn nhất của hệ động học phi
tuyến là số dương thì hệ được mở rộng và các quỹ đạo lân cận sẽ phân kỳ.
Về bản chất các số mũ Lyapunov định lượng độ nhạy cảm vào điều kiện đầu
của quỹ đạo trong vùng hút. Khi có ít nhất một số mũ Lyapunov dương


xx

làm các quỹ đạo lân cận phân kỳ theo cấp số nhân, hệ sẽ giãn nở theo một
hướng hoặc nhiều hướng.
2. Vận động bất quy tắc trong mặt phẳng pha: Đường di chuyển của hệ thống
trong mặt phẳng pha không đi vào bất kỳ điểm cố định hay quỹ đạo có chu
kỳ nào khi thời gian vận động tiến tới vô cùng. Vận động bất thường trong
hệ thống hỗn loạn được tạo ra do tính phi tuyến bên trong nó chứ không
phải do nhiễu. Sự vận động này không thể dự báo dài hạn.
3. Hệ thống xác định: là hệ thống không có các thông số thống kê xác suất.
Đây là điểm khác nhau quan trọng giữa hệ thống hỗn loạn và hệ thống
nhiễu với quá trình ngẫu nhiên.
Cuộc cách mạng máy tính của nửa sau thế kỷ 20 đã cung cấp một công cụ
hiệu quả cho quá trình phân tích hệ thống động phi tuyến. Một ví dụ đơn giản
được tìm thấy bởi Lorenz vào năm 1963 với phân tích đối lưu của tầng khí quyển
sử dụng mô hình phi tuyến bậc ba [72]. Phân tích chỉ ra rằng khi các thông số
xác định thiết lập sự ổn định của hệ thống không phải là một điểm cân bằng
và cũng không phải là trạng thái có chu kỳ, lúc này các tín hiệu đầu ra của hệ
thống sẽ phân kỳ và trở nên không tương quan với nhau với chỉ một sự khác
nhau rất nhỏ của các điều kiện khởi tạo. Từ các kết quả này, trạng thái hỗn
loạn đã được mở rộng nghiên cứu trong các chuyên ngành kỹ thuật khác nhau
như sinh học, hóa học, vật lý, vvv [106].
Ứng dụng thực tế của hỗn loạn trong kỹ thuật được các nhà khoa học bắt đầu
khai thác vào đầu những năm 1990, phân tích các đặc tính động học phi tuyến
và hỗn loạn trong điều khiển hỗn loạn [12] dựa trên sự chuyển động của một hệ
thống hỗn loạn khối lượng lớn có thể được điều khiển bởi những năng lượng rất
nhỏ. Trong xử lý tín hiệu, các phương pháp khác cũng đã được đề xuất để giảm
nhiễu, trong đó tín hiệu hỗn loạn và nhiễu có cùng dải tần có thể được tách biệt
sử dụng các kỹ thuật tối ưu hóa [51]. Việc sử dụng hỗn loạn trong nén tín hiệu
cũng được nghiên cứu trong [2]. Bên cạnh đó, rất nhiều các nỗ lực đã dành cho
việc nghiên cứu ứng dụng hỗn loạn vào xử lý thông tin, điều chế, mạch điện
tử dao động phi tuyến, truyền thông, truyền thông bảo mật [80], [31], [62]. Các
nghiên cứu về hỗn loạn và ứng dụng trong truyền tin bảo mật trong nước cũng
có nhiều công bố khoa học, như gần đây nhất là nghiên cứu về hành vi hỗn loạn
của mạng nơ-ron tế bào (CNN) của nhóm nghiên cứu tại viện Công nghệ thông


xxi

tin, Viện hàn lâm khoa học Việt nam [85]. Trong đó, nhóm tác giả đề xuất mô
hình CNN hỗn loạn mới tạo ra tín hiệu hỗn loạn cho giải pháp ứng dụng mạng
CNN hỗn loạn trong mã hóa, bảo mật truyền thông ảnh [30].
Các hệ thống động hỗn loạn được phân loại theo theo hai dạng sau:
1. Dạng liên tục theo thời gian: dx/dt = f (x), x (t0 ) = x0 . Trong đó x (t) là biến
trạng thái có thể một hoặc nhiều chiều, t0 và x0 là thời điểm và giá trị khởi
tạo của hệ thống.
2. Dạng rời rạc theo thời gian: xn = f (xn−1 ) = f n (x0 ). Với x0 là giá trị khởi
tạo, xn là biến trạng thái một hoặc nhiều chiều của hệ thống ở bước lặp thứ
n.

Để minh họa cho các tính chất trên của hỗn loạn, xem xét hệ thống động
Lorenz rời rạc ba chiều [43, 72] được biểu diễn bởi hệ phương trình sau:



 xn = σ × (yn−1 − xn−1 ) ,
y =x

× (ρ − z

)−y

n
n−1
n−1
n−1


 zn = xn−1 × yn−1 − β × zn−1 ,

,

(0.1)

trong đó (x, y, z) là các biến trạng thái và (σ, ρ, β) là các tham số của hệ thống.
Với bộ tham số (σ = 10, ρ = 28, β = 8/3), hệ Lorenz rơi vào trạng thái vận động
hỗn loạn. Rõ ràng tính chất hệ thống xác định hoàn toàn được thỏa mãn với hệ
thống này bởi vì nó được biểu diễn bằng hệ phương trình vi phân xác định với
các thông số cụ thể (không có thông số thống kê). Với một điều kiện khởi động
xác định có thể xác định trạng thái của hệ thống ở một thời điểm bất kỳ.
Hình 4 chỉ ra kết quả mô phỏng sử dụng Matlab của hệ thống Lorenz với bộ
tham số như trên. Trục thời gian chuẩn hóa trong các kết quả mô phỏng là số
vòng lặp tính toán được thực hiện. Có thể nhận thấy tính vận động không có
chu kỳ của hệ thống thông qua sự biến đổi biên độ không dự đoán được của các
biến (x, y, z) theo thời gian như trong Hình 4. Tính chất phụ thuộc nhạy cảm với
các điều kiện khởi động được thể hiện trong Hình 5. Trong đó biến đổi biên độ
của biến với hai điều kiện khởi động có giá trị sai khác rất nhỏ được chỉ ra. Có
thể thấy rằng các tín hiệu ban đầu xuất phát gần như cùng một điểm, nhưng
sau đó chúng tách biệt nhanh chóng và trở nên khác nhau hoàn toàn.
Hỗn loạn được nghiên cứu trong bảo mật về cơ bản chia làm hai nhánh nghiên
cứu chính. Một là, bảo mật cho luồng bit ngay trong quá trình truyền tin và bảo


xxii
20

50

15
40

10

30
Z

5
0

xn

20
10

-5

0
50

-10
0
-50
Y

20

10

0

-10

-20

-15
-20
0

X

5

10

20

n

25

30

35

40

45

35

40

45

(b) Mặt phẳng pha xn

(a) Vùng hút của hệ hỗn loạn Lorenz trong không gian pha
30

15

50

20

40

10

zn

yn

30
0

20
-10
10

-20
-30
0

5

10

15

20

n

25

30

(c) Mặt phẳng pha yn

35

40

45

0
0

5

10

15

20

n

25

30

(d) Mặt phẳng pha zn

Hình 4: Biến đổi theo thời gian rời rạc của biến trạng thái trong hệ Lorenz hỗn loạn

mật cho cả một đơn vị dữ liệu, thường được tính theo khối bit/byte dữ liệu [62].
Hai là, bảo mật cho chuỗi bit trước khi được truyền đã được nghiên cứu cho các
ứng dụng ở lớp vật lý của hệ truyền tin và thường được đề xuất ứng dụng cho
đường truyền tin vô tuyến hoặc trong cáp sợi quang. Về nguyên lý, các phương
pháp bảo mật ứng dụng hỗn loạn là lợi dụng sự phức tạp của các đặc tính động
học của hệ thống hỗn loạn cũng như đặc trưng của hệ thống hỗn loạn để che
giấu thông tin dựa trên các giải thuật và phương pháp thực thi khác nhau.
Mật mã hỗn loạn được nghiên cứu và đề xuất trong khoảng 10 năm trở về
đây, các hàm hỗn loạn rời rạc được chứng minh là kế thừa được các tính chất
của các hàm hỗn loạn liên tục như tính chất nhạy cảm với điều kiện đầu, nhạy
cảm sự thay đổi giá trị của các tham số và không thể dự báo dài hạn. Ưu điểm
của mật mã khối hỗn loạn được xem như mô hình phát triển mật mã hiện đại
[62, 76]. Do đó, mật mã hỗn loạn là một hướng nghiên cứu mới, an toàn và đáng
tin cậy để bảo mật dữ liệu hiệu quả. Hàm hỗn loạn được đề xuất trong các ứng
dụng mật mã là một giải pháp để thay thế mật mã chuẩn hiện nay. Các hàm
hỗn loạn một chiều thông dụng như: Logistic, Skew tent, Tent, Chebyshev, Sine,
Sawtooth, hoặc hai chiều như Cat, Baker, Hénon, Lozi, Standard hoặc ba chiều


xxiii

Hình 5: Biến đổi theo thời gian của biến xn với hai điều kiện khởi tạo sai khác nhau
rất nhỏ là ∆x = 0.05 trong hệ Lorenz hỗn loạn

như mô hình cánh bướm của Lozen. Trong mật mã hỗn loạn, rời rạc hệ thống
hỗn loạn là phương pháp thông dụng dùng trong nhiều thuật toán mật mã như
mật mã ảnh [22], thủy phân [116], tạo chuỗi giả ngẫu nhiên [108], [111]. Do đó,
chu kỳ của hệ hỗn loạn rời rạc cũng là một trong nhưng tham số quan trọng
trong bài toán thiết kế mật mã hỗn loạn nói chung và phân tích phân bố chu
kỳ của các hàm rời rạc mở rộng để tìm ra số bước lặp hàm phù hợp nói riêng là
vấn đề cần được nghiên cứu.
Hiện nay, tốc độ xử lý thông tin ngày càng được nâng cao, sự phát triển của
Tính toán khắp nơi người ta cần những thuật toán hạng nhẹ để có thể cài đặt
trong các thiết bị Thâm nhập khắp nơi với kích thước nhỏ và năng lực tính toán
ở mức độ thích hợp. Mật mã hạng nhẹ với thuật toán được rút ngọn, thực thi
nhanh, an toàn và chi phí thực hiện thấp đã ra đời và ngày càng phát triển,
hướng tới việc tạo ra các giải pháp cài đặt rất gọn nhẹ nhưng không làm giảm
quá nhiều về tính an toàn. Do đó, mật mã hạng nhẹ là một giải pháp đưa ra sự
thỏa hiệp giữa độ an toàn và tính hiệu quả trong cài đặt của các thuật toán mật
mã. Tuy nhiên, các nhân tố làm tăng nguy cơ mất an toàn luôn tồn tại trong
các môi trường không được kiểm soát hoặc môi trường mà đối phương có thể
truy cập vật lý tới thiết bị và điều khiển thiết bị. Điều đó làm tăng thêm khả
năng tấn công vật lý, nhất là các tấn công kênh kề, chẳng hạn như phân tích
năng lượng vi sai/phân tích năng lượng tương quan hoặc các tấn công bức xạ
điện từ.


xxiv

Thuật toán mật mã khối hạng nhẹ hiện nay được tổ chức ECRYPT chấp nhận
và giới thiệu trong [34, 55, 87]: các loại mật mã cơ bản như DESXL, HIGHT,
KASUMI, KATAN, KTANTAN, mCRYPTON, PRESENT, SEA và các loại mã
mới được đề xuất như XTEA, PUFFIN, PUFFIN2, LBlock, Piccolo, TWINE.
Mật mã khối hạng nhẹ được thiết kế trên hai mô hình cơ bản là SPN và Feistel,
xu hướng thiết kế theo cấu trúc mạng phân bố đều SPN được đề xuất nhiều
hơn bởi tính hiệu quả của thuật toán, tốt trong cả cài đặt phần mềm cũng như
phần cứng. Do đó, dùng kỹ thuật hỗn loạn cho mật mã hạng nhẹ để cải thiện
các nhược điểm về bảo mật của mật mã hạng nhẹ mà vẫn thỏa mãn hiệu quả
thực thi với tiêu chuẩn hạng nhẹ cũng là một hướng nghiên cứu cần được quan
tâm.
Qua phân tích ở trên ta thấy, các hệ mật mã hiện đại được đề xuất và đưa
ra ứng dụng, và thông thường sẽ bị phân tích thành công sau một thời gian sử
dụng. Chính vì vậy, các chuyên gia về mã luôn tìm cách phân tích và đánh giá
nhằm đề xuất các cải tiến cho mã mật đang được sử dụng, đề xuất hệ mã mật
mới có khả năng chống lại các tấn công về mặt vật lý hoặc phân tích mã được
thực hiện bởi máy tính lượng tử. Ứng dụng kỹ thuật hỗn loạn vào mật mã bằng
cách dựa vào sự phức tạp về đặc tính động học của các hệ thống hỗn loạn, để
cải thiện khả năng chịu được tấn công cho mật mã mà vẫn thỏa mãn hiệu quả
về mặt thực thi là một xu hướng phát triển tất yếu của mật mã hiện đại.
2. Những vấn đề còn tồn tại
Một trong các ứng dụng nổi bật nhất của hệ thống hỗn loạn mà các nhà khoa
học tập trung nghiên cứu gần đây là trong mật mã và truyền tin bảo mật. Lý
do các hệ thống hỗn loạn được dùng cho ứng dụng mật mã là tính nhạy cảm
với điều kiện đầu, nhạy cảm với giá trị các tham số và không thể dự báo dài
hạn [42]. Tính chất phức tạp của hệ hỗn loạn tạo ra tính ưu việt trong bảo mật
thông tin như là khả năng chịu đựng các tấn công phân tích mã, tăng tốc độ
xử lý, tăng độ phức tạp thuật toán. Điều này đã được khẳng định trong các
nghiên cứu của Kocarev [61], Masuda [76] và Fridrich [40]. Dựa trên nguyên lý
thiết kế mật mã hỗn loạn để tìm ra các thuật toán lập mã mật phù hợp với xu
hướng phát triển của mật mã hiện đại vẫn là một thách thức đối với các nhà
nghiên cứu hiện nay. Tuy nhiên các mô hình thiết kế mật mã khối của Kocarev,
Masuda, Lian chưa có đánh giá về mặt thực thi phần cứng, giảm hiệu quả tính


xxv

toán vì lựa chọn các hệ động học hỗn loạn có cấu trúc phức tạp. Fridrich đề
xuất hệ động học hỗn loạn rời rạc cho bài toán mã hóa ảnh nhưng tương đối
đơn giản và đã bị phân tích mã hoàn toàn [100].
Ngày càng nhiều các sản phẩm được nâng cấp thành các thiết bị thâm nhập
khắp nơi nhờ năng lực tính toán nhúng. Quan hệ mật thiết giữa các thiết bị này
dẫn đến triển vọng rằng tính toán khắp nơi sẽ là mô hình tiếp theo trong công
nghệ thông tin và truyền thông. Việc triển khai hàng loạt của các thiết bị thâm
nhập khắp nơi đem đến nhiều lợi ích như chi phí thấp hơn, các chuỗi cung cấp
được tối ưu hoặc có thêm các dịch vụ dựa trên xác định vị trí. Công nghệ RFID
được tin là công nghệ cho phép đối với liên mạng của các vật dụng (IoTs). Các
thẻ RFID bao gồm một hệ thống phát nhận tín hiệu và một anten có khả năng
nhận dữ liệu từ xa từ một máy chủ RFID hoặc thiết bị đọc. Tuy nhiên, các thiết
bị RFID có kích thước chip nhỏ, thời gian hoạt động không dài, nguồn cung cấp
năng lượng hạn chế ví dụ ở dạng pin hoặc chỉ dựa vào năng lượng của tín hiệu
mạng được truyền đi bởi các thiết bị đọc. Do vậy việc tích hợp các thuật toán
mật mã phù hợp trên các chip RFID, cũng như trên các thiết bị thâm nhập
khắp nơi cũng là vấn đề cần được mở rộng nghiên cứu.
Mật mã hạng nhẹ hướng tới việc tìm ra điểm cân bằng của ba yếu tố: Giảm
tài nguyên thực thi, giảm thời gian xử lý, tăng mức độ bảo mật [34]. Do đó,
hướng phát triển của mật mã hạng nhẹ được quan tâm nhiều hiện nay là cải tiến
các hệ mã thông qua việc đề xuất các hàm mã hóa mới [81]. Tuy nhiên các thuật
toán hiện nay thường tăng độ xáo trộn hỗn độn và khuếch tán bằng việc thực
thi nhiều vòng lặp như: PRESENT lặp 31 vòng , LED-64 lặp 32 vòng, LED-128
lặp 48 vòng, TWINE 32 vòng và SEA lặp 92 vòng v.v. [13, 48, 105, 107]. Điều
này dẫn tới tăng thời gian thực thi vì số chu kỳ tăng lên nhanh khi tăng số khối
đầu vào. Ngoài ra, các thuật toán vẫn bị phá vỡ bởi các phép tấn công phân
tích thống kê truyền thống như tấn công tuyến tính và tấn công vi phân [53].
Dựa trên những tính chất này, luận án đề xuất dùng hàm hỗn loạn cho mật mã
hạng nhẹ để cải thiện các nhược điểm về bảo mật của mật mã hạng nhẹ. Bài
toán thiết kế mật mã hạng nhẹ sử dụng hàm hỗn loạn rời rạc như là một hướng
đi mới để cải thiện thời gian thực thi và khả năng bảo mật cho mật mã hạng
nhẹ.
Hơn nữa, một vấn đề khác của mật mã hỗn loạn là các thuật toán mật mã
được đề xuất trong [75], [40] và thuật toán ẩn tin (steganography) [58] dễ dàng


xxvi

bị phân tích khi chu kỳ của hàm hỗn loạn rời rạc quá ngắn [18]. Các tác giả
trong [19] đã giải thích sự phụ thuộc của chu kỳ vào các tham số điều khiển. Tác
giả trong [19] bình luận rằng chu kỳ của hàm hỗn loạn càng dài thì càng tốt về
mặt bảo mật khi áp dụng hàm hỗn loạn đó vào hệ mật mã. Đối với hàm Cat rời
rạc, chu kỳ có tính độc lập tương đối với các tham số. Việc tìm ra quan hệ giữa
chu kỳ, toán hạng phép chia Modulo và tham số là thực sự cần thiết [108], tăng
số chiều đồng nghĩa với tăng chu kỳ dẫn đến tăng hiệu quả bảo mật. Trong đề
xuất mở rộng hàm Cat, mối quan hệ giữa chu kỳ chuỗi Fibonacci giới hạn bởi
phép chia modulo bởi một số nguyên tố và chu kỳ của hàm Cat-Hadamard đã
được tìm ra. Từ đó, giảm được độ phức tạp của thuật toán tìm chu kỳ tổng quát
cho hàm Cat mở rộng nhiều chiều. Phân bố chu kỳ của hàm này đã được phân
tích bởi Chen và các cộng sự trong [18, 19, 20], các tác giả cũng đã mô tả các
đặc tính của chu kỳ khi các hàm biểu diễn trong vòng Galois (ZN , +, ×), tương
ứng với N là một số nguyên tố, là hàm mũ của các số nguyên tố hoặc là một
hàm đa hợp. Tuy nhiên phương pháp này chỉ áp dụng cho hàm Cat hai chiều và
cho các trường hợp giá trị tham số hoàn toàn xác định. Mục tiêu của họ là sử
dụng phương pháp thang Hensel [41] để tìm phân bố chu kỳ. Khi áp dụng cho
hàm Cat đa chiều phương pháp này trở nên phức tạp rắc rối, và việc đánh giá
chu kỳ của hàm Cat mở rộng vẫn là một vấn đề mở cần tìm hiểu.
3. Mục tiêu, đối tượng và phạm vi nghiên cứu
Mục tiêu của luận án: Đề xuất thuật toán mật mã khối hỗn loạn để cải thiện về
mặt thực thi, đề xuất các thiết kế cải thiện về mặt bảo mật cho mật mã khối
hạng nhẹ. Mở rộng hàm hỗn loạn rời rạc nhiều chiều, giải quyết bài toán về
phân bố chu kỳ của hàm Cat rời rạc và ứng dụng tạo ma trận MDS và bộ tạo
chuỗi số giả ngẫu nhiên PRNG.
Đối tượng nghiên cứu:
• Luận án nghiên cứu một số hướng phát triển của mật mã hiện đại từ đó

dẫn dắt các ra vấn đề trong mật mã hỗn loạn. Dựa trên những vấn đề đã
phân tích, luận án đề xuất thuật toán tạo mật mã khối hỗn loạn theo cấu
trúc mạng hoán vị thay thế (SPN), sử dụng các ánh xạ một chiều cho các
hàm thay thế S-box, sử dụng các ánh xạ hai chiều hoặc nhiều chiều cho quá
trình hoán vị, số lượng mỗi lần lặp được điều chỉnh để làm tăng hoặc giảm
mức độ phức tạp của thuật toán.


xxvii
• Luận án tìm các đặc trưng của các hệ hỗn loạn khác nhau như là số mũ

Lyapunov luôn dương, hoặc khả năng mở rộng không gian khóa và các đặc
trưng phân tích thống kê như entropy và phân bố đều để làm tiêu chí lựa
chọn các hàm hỗn loạn phù hợp. Hai hàm hỗn loạn rời rạc là Skew Tent và
Standard lần lượt được sử dụng trong đề xuất tạo các S-box 4 × 4 cho lớp
thay thế, và lớp hoán vị bit cho lớp khuếch tán của mô hình thiết kế hệ mật
mã khối hỗn loạn hạng nhẹ.
• Luận án đề xuất phương pháp mở rộng hàm Arnold Cat rời rạc dựa trên

biến đổi giả Hadamard nhanh gọi là hàm Cat-Hadamard. Phân tích các
đặc trưng hỗn loạn của hàm Cat-Hadamard như số mũ Lyapunov lớn nhất,
đánh giá độ ngẫu nhiên tín hiệu đầu ra bằng KS entropy hoặc kiểm tra tính
chất phân bố đều qua hàm thống kê Chi-bình phương. Hai ứng dụng hàm
Cat mở rộng là thiết kế bộ tạo đa ma trận MDS cho hệ mật mã khối và bộ
tạo chuỗi số giả ngẫu nhiên với ưu điểm của bộ tạo này là một nguồn giả
ngẫu nhiên có Entropy đủ lớn, chu kỳ phụ thuộc vào tham số điều kiển.
Phạm vi nghiên cứu: Luận án nghiên cứu gồm lý thuyết, mô phỏng và thực
nghiệm. Luận án phân tích lý thuyết để giải quyết vấn đề được đặt ra thông
qua công cụ toán học bằng các chứng minh rất rõ ràng. Các đánh giá về mặt lý
thuyết được kiểm chứng qua công cụ mô phỏng trên máy tính là Matlab. Một
phần trong các nghiên cứu được thực hiện trên phần cứng và phần mềm nhằm
cho thấy khả năng ứng dụng thực tế của các ý tưởng đề xuất.
4. Ý nghĩa khoa học và những đóng góp của luận án
Luận án nghiên cứu tính chất của các hàm hỗn loạn khi được biểu diễn trong
miền hữu hạn chính xác. Ảnh hưởng của các tham số đến tính chất đầu ra và
chu kỳ của hàm hỗn loạn một chiều, hai chiều hoặc nhiều chiều. Từ đó đề xuất
thuật toán mật mã khối theo cấu trúc mạng lưới hoán vị thay thế với các cấu
trúc lớp thay thế S-box và lớp hoán vị dựa trên hỗn loạn.
Mở rộng hàm CAT rời rạc trong miền số nguyên hữu hạn và trong trường Galois, so sánh với các phương pháp hiện có thông qua việc tính toán KolmogorovSinai (KS) entropy, hoặc phân bố xác suất Chi- bình phương với giả thiết phân
bố của chuỗi giả ngẫu nhiên được tạo ra là một phân bố đều.
Đánh giá các trạng thái trung gian được tạo ra theo các bước lặp hàm Cat
map mở rộng, lựa chọn tham số thay đổi. Chứng minh các tính chất của hàm


xxviii

CAT mở rộng có sự kế thừa từ hàm CAT hai chiều, thông qua biến đổi Hadamard
nhanh, số chiều của CAT được tăng lên nhanh chóng trở thành một hàm đa biến
đầu vào. Hai ứng dụng hàm Cat mở rộng là thiết kế bộ tạo đa ma trận MDS
cho hệ mật mã khối và bộ tạo chuỗi số giả ngẫu nhiên với ưu điểm của bộ tạo
này là một nguồn giả ngẫu nhiên có Entropy đủ lớn, chu kỳ phụ thuộc vào tham
số điều kiển. Chuỗi đầu ra nhanh chóng hội tụ về phân bố đều, gần với tín hiệu
ngẫu nhiên.
5. Cấu trúc nội dung của luận án
Bố cục của luận án được tổ chức như sau: Trong Chương 1, luận án trình bày
các nguyên tắc thiết kế hệ mật mã hỗn loạn và các vấn đề còn tồn tại trong hệ
mật mã hỗn loạn, từ đó đề xuất một mô hình thiết kế hệ mật mã khối hỗn loạn
dựa trên cấu trúc lưới hoán vị thay thế cho ứng dụng mã hóa ảnh.
Trong Chương 2, luận án đề xuất hai biến thể cho thuật toán mật mã khối
hạng nhẹ theo cấu trúc mạng hoán vị thay thế (SPN) dựa trên hỗn loạn. Một
là, thiết kế khối thay thế S-box kích thước 4 × 4 liên kết móc xích sử dụng hàm
SKEW TENT rời rạc. Hai là thiết kế lớp hoán vị dựa trên tính chất phi tuyến
của hàm hỗn loạn STANDARD 2 chiều rời rạc. Các thiết kế hướng tới tiêu chí
tăng độ bảo mật nhưng vẫn thỏa mãn yêu cầu cài đặt, tài nguyên sử dụng và
thời gian xử lý phù hợp với yêu cầu của thuật toán mật mã hạng nhẹ.
Chương 3 đề xuất một dạng thức mở rộng hàm Cat dựa trên biến đổi GiảHadamard nhanh (FPHT), được gọi là hàm Cat-Hadamard. Một số tính chất
của hàm Cat-Hadamard liên quan đến đặc trưng hỗn loạn thông qua các phép
đo lường như kiểm tra phân bố đều Chi-bình phương (χ2 ), hoặc bằng việc quan
sát sự phát triển của hàm sau nhiều lần lặp. Ngoài ra, Kolmogorov-Sinai (KS)
entropy cũng được biết đến như là một tiêu chuẩn đo đặc tính hỗn loạn của hệ
động học, hoặc số mũ Lyapunov lớn nhất cũng là tham số thể hiện đặc tính của
hệ động học hỗn loạn. Đề xuất hai ứng dụng hàm Cat mở rộng là thiết kế bộ
tạo đa ma trận MDS cho hệ mật mã khối và bộ tạo chuỗi số giả ngẫu nhiên với
ưu điểm của bộ tạo này là một nguồn giả ngẫu nhiên có Entropy đủ lớn, chu kỳ
phụ thuộc vào tham số điều kiển. Chuỗi đầu ra nhanh chóng hội tụ về phân bố
đều, gần với tín hiệu ngẫu nhiên.
Và cuối cùng là kết luận và đóng góp của nghiên cứu sinh trong luận án này.


Chương 1
MẬT MÃ KHỐI HỖN LOẠN

1.1. Giới thiệu
Trong phần mở đầu đã trình bày về vai trò của mật mã trong bảo mật thông
tin, phân tích các lớp bảo vệ thông tin trong mô hình bảo mật và mật mã là
một phần không thể thiếu. Mật mã là một mô hình toán học để chuyển đổi cách
biểu diễn thông tin từ dạng đọc được đối với người sử dụng thông tin thành
dạng không đọc được đối với những kẻ muốn phá hoại thông tin hoặc muốn ăn
cắp thông tin. Khoa học mật mã trải qua nhiều giai đoạn phát triển từ các mô
hình sơ khai như mật mã cổ điển đến mô hình toán học phức tạp của mật mã
hiện đại. Các xu thế phát triển của khoa học mật mã cũng được phân tích và
một xu thế được quan tâm nhiều hiện nay là mở rộng các hệ mật mã dựa trên
lý thuyết độ phức tạp tính toán, hoặc thiết kế các hệ mật mã có hiệu suất thực
thi phần cứng cao là mật mã hạng nhẹ.
Mật mã hỗn loạn được nghiên cứu trong khoảng 10 năm gần đây, dựa trên
các đặc trưng hỗn loạn của hệ động học gần giống với các tính chất xáo trộn lộn
xộn và khuếch tán của hệ mật mã mà nhiều tác giả đã đề xuất các hệ mật mã
hỗn loạn như là một cách thay đổi quan điểm thiết kế mã truyền thống. Mật mã
hỗn loạn hướng tới tiêu chí tạo ra độ phức tạp thuật toán cần thiết về mặt bảo
mật nhưng vẫn đảm bảo việc thực thi và cài đặt hiệu quả trên cả phần cứng và
mềm. Lập mã mật dựa trên hỗn loạn là bài toán phù hợp với xu thế phát triển
của khoa học mật mã hiện đại.
Chương này phân tích các nguyên tắc thiết kế hệ mật mã hỗn loạn và các
vấn đề còn tồn tại trong hệ mật mã hỗn loạn, từ đó đề xuất một mô hình thiết
kế hệ mật mã khối hỗn loạn dựa trên cấu trúc lưới thay thế - hoán vị cho ứng
dụng mã hóa ảnh.

1


2

1.2. Nguyên lý thiết kế mật mã hỗn loạn
Hỗn loạn được nghiên cứu trong mật mã về cơ bản chia làm hai nhánh nghiên
cứu chính, là bảo mật cho luồng bit ngay trong quá trình truyền tin và bảo mật
cho cả một đơn vị dữ liệu, thường được tính theo khối bit/byte dữ liệu [61]. Mã
hóa chuỗi bit trước khi được truyền đã được nghiên cứu cho các ứng dụng ở lớp
vật lý của hệ truyền tin, đề xuất ứng dụng cho đường truyền tin vô tuyến, trên
đường cáp sợi quang. Mã hóa khối bit dữ liệu thường được ứng dụng trong các
nội dung thông tin có thể cho truyền dưới dạng gói hoặc lưu trữ, như mật mã
ảnh, mật mã các gói dữ liệu được truyền trên mạng Internet, dịch vụ thoại IP,
multimedia và RFID. Sự khác nhau giữa bảo mật cho dòng bit và bảo mật cho
khối dữ liệu là cách thức sử dụng khóa cũng như sự lan truyền ảnh hưởng lẫn
nhau giữa các bit dữ liệu. Về nguyên lý, các phương pháp mã hóa ứng dụng hỗn
loạn là lợi dụng sự phức tạp của các đặc tính động học của hệ thống hỗn loạn
để tạo ra sự xáo trộn và khuếch tán cần thiết để che giấu thông tin dựa trên các
giải thuật khác nhau. Mật mã hỗn loạn được định nghĩa như sau:
Định nghĩa 1.2.1. Phép lập mã (giải mã) hỗn loạn là một bộ các tham số như
sau (P ∗ , C ∗ , K ∗ , E ∗ , D∗ ), các phần tử của tập P ∗ là giá trị khởi tạo, K ∗ là một
tập hữu hạn các tham số điều khiển trong hệ hỗn loạn và đóng vai trò như tham
số khóa trong hệ lập mật mã (giải mã). Hàm lập mã (giải mã) E ∗ (D∗ ) là các
mở rộng hỗn loạn lên các miền tương ứng với tập P ∗ và C ∗ chịu tác động của
tham số điều khiển K ∗ . C ∗ là tập biến trạng thái một chiều hoặc nhiều chiều.
Giả thiết x0 là một dãy ký tự bản rõ, tức là phần tử thuộc tập P ∗ , xn là chuỗi
các trạng thái đầu ra của hàm lập mã hỗn loạn E ∗ : xn = E ∗ (xn−1 , Kn ) do đó xn
cũng là một dãy ký tự bản mã tức là các phần tử của tập C ∗ . Trong đó, n là số
lần lặp (bước lặp) của hàm lập mã E ∗ , Kn là tham số khóa (tham số điều khiển)
tại bước lặp thứ n.
Nghiên cứu về hệ mật mã hỗn loạn trong [62], [61] và [109], các tác giả đã đề
xuất 10 nguyên tắc thiết kế hệ mã mật dựa trên hỗn loạn1 như sau:
1. Định nghĩa đầy đủ và nghiêm ngặt các nguyên lý thiết kế: Một hệ mật
mã bất kỳ phải tuân theo định luật Kerchhoffs, khả thi trong việc thiết kế
nhưng vẫn đảm bảo về bảo mật. Các thuật toán lập mã/ giải mã dựa trên
1 Để tránh trùng lặp quá nhiều cụm từ "Hệ mật mã dựa trên hỗn loạn", trong luận án sử dụng cụm "hệ mật mã hỗn
loạn", hoặc "Sinh khóa dựa trên hỗn loạn" là "Sinh khóa hỗn loạn" có ý nghĩa tương đương


3

hỗn loạn phải đảm bảo rằng các tham số là nhân tố ảnh hưởng trực tiếp đến
tính chất hỗn loạn của các hàm được lựa chọn. Đánh giá bảo mật của một
thuật toán lập mã hỗn loạn vẫn dựa vào khuôn khổ phân tích mã cổ điển.
Hệ mã phải đảm bảo rằng kẻ tấn công không thể có được đầy đủ thông tin
về quỹ đạo hỗn loạn do đó không thể ước lượng giá trị các tham số hoặc
thống các điều kiện khởi tạo.
2. Định nghĩa đầy đủ và nghiêm ngặt về khóa và không gian khóa: Xác định
rõ ràng các mối liên hệ giữa khóa mật và các thông số xác định trong bản
đồ sinh khóa như các tham số hay điều kiện đầu. Trong trường hợp này,
hoặc các tham số hoặc các điều kiện đầu hoặc cả hai đều là một phần của
khóa mật. Khóa mật của hệ mật mã hỗn loạn cũng có thể được sinh ra từ
một nguồn hỗn loạn, các tham số điều khiển luôn phải đảm bảo rằng tồn
tại ít nhất một số mũ Lyapunov (LE ) của hệ thống là số dương.
3. Lựa chọn các hàm hỗn loạn (ánh xạ hỗn loạn) có độ nhạy cao để điều khiển
các tham số không phù hợp: Không gian khóa phải đủ lớn để đảm bảo các
tấn công vét cạn là không khả thi. Ví dụ, với tốc độ xử lý của máy tính
hiện nay yêu cầu không gian khóa phải lớn hơn 2100 ≈ 1030 [62]. Đặc điểm
của mật mã hỗn loạn như đã nêu ở Quy tắc 2, các tham số điều khiển vừa
là một phần của không gian khóa mà vẫn phải đảm bảo duy trì tính chất
hỗn loạn của hệ động học do đó việc tìm giá trị LE dương sẽ ảnh hưởng
đến kích thước của không gian khóa chính.
4. Lựa chọn hàm hỗn loạn không nên làm lộ toàn bộ đặc tính động lực học
của hệ thống: Điều này có thể làm cho kẻ tấn công dự đoán thông tin về
các tham số điều khiển hoặc điều kiện khởi tạo.
5. Phân tích hiệu năng của các quỹ đạo hỗn loạn như nguồn Entropy: Trong
quan niệm về mật mã, hỗn loạn sẽ dẫn tới trạng thái giống ngẫu nhiên của
hệ thống. Bản chất của hệ lập mã là một chuỗi các chuyển đổi thông tin
thành các dạng biểu diễn bất định khác nhau. Entropy được dùng như đại
lượng đo lường hiệu quả của các chuỗi biến đổi trong hệ lập mã để đánh giá
xem dữ liệu thu được có giả (giống) ngẫu nhiên hay không.
6. Nên sử dụng các hàm (ánh xạ) hỗn loạn có hàm mật độ phân bố đều và sự
đo lường tập bất biến không phụ thuộc vào các tham số điều khiển: Nếu


4

yêu cầu này được thỏa mãn thì hệ mật mã hỗn loạn sẽ có tính xáo trộn
(confusion). Do thuộc tính ergodic nên quỹ đạo là sự thống kê độc lập của
tham số điều khiển và điều kiện đầu. Kết quả là các bản mã là các thống kê
không thể xác định giống như đầu ra của hàm thật sự ngẫu nhiên và phân
bố là như nhau với tất cả các khóa.
7. Không gian bản mã phải được xác định theo cách mà sự khôi phục lại đặc
tính động học của các hàm hỗn loạn là không khả thi.
8. Thời gian mã hóa/giải mã không phụ thuộc vào giá trị của khóa bí mật của
một hệ mật mã hỗn loạn: Số lượng vòng lặp hoặc các bước lặp hàm hỗn
loạn trong thuật toán lập mã phải được công khai và không được coi như
là một phần của khóa bí mật.
9. Hệ mật mã hỗn loạn có khả năng chống lại các kiểu tấn công cổ điển
[101, 109]: Các phân tích mật mã của hệ thống mã hóa hỗn loạn dựa trên
việc kết hợp các kỹ thuật từ lý thuyết của hệ thống động lực học và từ các
phép phân tích mật mã quy ước như tấn công biết trước bản rõ/bản mã,
tấn công dùng bản mã/rõ chọn sẵn vv...
10. Chống được các tấn công tương ứng với các ứng dụng cụ thể : Mã hóa thông
tin với các tính năng đặc biệt phải được xác định một cách cẩn thận để
tránh việc tiết lộ các tính năng như vậy trong bản mã. Trong trường hợp
mật mã hình ảnh kỹ thuật số và video. Trong hình ảnh kỹ thuật số (video
tồn tại sự tương quan rất mạnh giữa các điểm ảnh khác nhau (chuyển đổi
hệ số), có thể dẫn tới sự phát triển một số cuộc tấn công dựa trên hiệu quả
tương quan.
Các tác giả trong [61] đã so sánh tính chất hỗn loạn của một hệ động học và
tính chất mật mã [97] như Bảng 1.1. Bảng 1.2 so sánh các đặc trưng cơ bản của
hệ mật mã chuẩn và hệ mật mã hỗn loạn.
Từ Bảng 1.2, có thể thấy mật mã hỗn loạn có không gian biểu diễn giá trị và
tham số khóa trong miền số thực, ưu điểm là sẽ dẫn tới không gian giá trị và
khóa là vô hạn nhưng dẫn tới sự hạn chế về mặt thực thi và phức tạp về mặt
tính toán trên miền số thực. Do đó việc lựa chọn các hệ hỗn loạn thỏa mãn bài
toán lập mã mật cũng là một hướng nghiên cứu cần được quan tâm, các hàm
hỗn loạn này vừa phải kế thừa được những đặc tính động học hỗn loạn phù hợp


5
Bảng 1.1: So sánh tính chất mật mã và tính chất hỗn loạn
Tính chất hỗn loạn

Tính chất mật mã

Mô tả

Dao động

Lộn xộn, hỗn độn

Đầu ra có cùng

theo quỹ đạo

(Confusion)

phân bố với bất kỳ

(Ergodicity)

đầu vào

Nhạy cảm với

Tính khuếch tán (Diffusion)

Sai số nhỏ ở đầu vào

các điều kiện đầu

khi có một thay đổi

có thể là sự thay đổi

/các tham số

rất nhỏ của bản rõ/khóa

rất lớn ở đầu ra

Tính trộn lẫn (Mixing)

Tính khuếc tán đối với

Thay đổi trong một khu vực

sự thay đổi nhỏ trong một khối

nội bộ là nguyên nhân thay đổi

của bản rõ lên toàn bộ bản rõ

toàn bộ không gian

Tính giả ngẫu nhiên

Một chu trình tất định

tất định

là nguyên nhân của hành vi

Đặc tính động tất định

giả ngẫu nhiên
Cấu trúc phức tạp

Thuật toán phức tạp

Một chu trình đơn giản có
độ phức tạp tính toán lớn

Bảng 1.2: So sánh thuật toán lập mật mã chuẩn và mật mã hỗn loạn
Thuật toán lập mật mã chuẩn

Thuật toán lập mật mã hỗn loạn

Không gian pha: là tập hữu hạn

Không gian pha: Tập (tập con)

các phần tử số nguyên

các phần tử số thực

Phương pháp số học

Phương pháp phân tích

Sử dụng các vòng lặp (rounds)

Sử dụng các bước lặp (iterations)

Khóa (Key) - Hàm Boolean

Tham số (Parameters) - Số thực

Không gian khóa rời rạc

Không gian khóa liên tục

Tính khuếch tán

Nhạy cảm với sự thay đổi
của điều kiện đầu/tham số

Thực hiện số hóa

Thực hiện số hóa bằng

trong miền số nguyên

hệ thống giá trị xấp xỉ liên tục

Đánh giá bảo mật và sự thực thi theo tiêu chuẩn

Là vấn đề mở cần được nghiên cứu sâu hơn

với hệ thống lập mã, vừa phải dễ dàng trong việc biểu diễn giá trị và thực thi.
Trong phần tiếp theo, luận án phân tích các vấn đề còn tồn tại trong hệ mật
mã hỗn loạn từ đó đề xuất thuật toán mật mã khối hỗn loạn phù hợp với bài
toán mã hóa ảnh số.

1.3. Các vấn đề còn tồn tại trong hệ mật mã hỗn loạn
Theo các kết quả nghiên cứu gần đây nhất được công bố [62], việc ứng dụng hỗn
loạn vào bảo mật vẫn còn nhiều vấn đề cần quan tâm và phát triển để đạt hiệu


6

quả hơn so với các phương pháp bảo mật truyền thống. Để chứng minh nhận
định trên là đúng, hệ mật mã hỗn loạn phải được đánh giá trong nhiều mô hình
tần công khác nhau với khả năng phá vỡ bảo mật tăng dần. Mỗi mô hình tấn
công đặc trưng cho năng lực của kẻ tấn công như: Tài nguyên tính toán, loại
thông tin mà kẻ tấn công có khả năng tiếp cận và khả năng tiếp xúc với máy
mật mã hoặc thiết bị phần cứng có cài đặt thuật toán lập/giải mã. Các mô hình
tấn công thông thường được sắp xếp theo thứ tự tăng dần về khả năng tấn công
của kẻ thù. Nếu hệ mật mã bị phá vỡ trong một mô hình tấn công căn bản thì
sẽ bị chắc chắn là không an toàn trong tất cả các mô hình tấn công tiếp sau.
Sau đây là một số mô hình tấn công cơ bản.
Tấn công chỉ-biết-bản-mã (ciphertext-only attack)- Kẻ địch E là một đối
tượng tấn công bên ngoài và tìm cách nghe trộm trên đường truyền để lấy được
các giá trị Y , bản mã của thông tin gửi đi. Giả thiết kẻ địch E chỉ biết các bản
rõ Y , nhưng mục tiêu hướng tới là tìm được nội dung của một/nhiều bản rõ X
hoặc lấy khóa mật K . Đây là mô hình tấn công kinh điển nhất trong đó kẻ địch
không có năng lực hoặc quan hệ đặc biệt, diện thông tin tiếp xúc chỉ là các bản
mã. Nếu một hệ mật mã bị phá vỡ bởi mô hình này thì chắc chắn không đáng
tin cậy.
Tấn công biết-bản-rõ (known-plaintext attack)- Trong mô hình này, giả thiết
là kẻ địch E chỉ biết một số cặp bản rõ/bản mã (X/Y ) tương ứng nào đó. Kẻ
địch E thu được cặp giá trị này là hoàn toàn tình cờ hoặc thông qua một số
nhân viên quản lý thấp cấp trong hệ thống. Mục tiêu của E vẫn là tìm ra nội
dung của các bản rõ quan trọng khác và/hoặc lấy được khóa mật. Mô hình tấn
công này mạnh hơn so với tấn công chỉ biết bản mã vì việc biết một số cặp
(X/Y ) sẽ tăng đầu mối phân tích, đặc biệt E có thể dùng phép thử loại trừ để

vét cạn không gian khóa (exshautive key search) và tìm ra khóa đúng thỏe mãn
E(K, X) = Y .

Tấn công bản-rõ-chọn-sẵn (chosen-plaintext attack) và Tấn công bản-mãchọn-sẵn (chosen-ciphertext attack)- Đối với mô hình Tấn công bản-rõ-chọn-sẵn,
giả thiết kẻ địch E có tay trong là thư ký văn phòng của công ty bị tấn công,
thu nhặt được một số cặp X/Y và một số bản rõ X do bản thân E soạn ra. Và
điều kiện ràng buộc là tất cả các văn bản dù quan trọng hay không đều được
truyền gửi mật mã khi phân phát giữa các chi nhánh của công ty này. Việc được
tự chọn giá trị của một số bản rõ X sẽ mang lại nhiều lợi thế hơn cho E khi


7

phân tích quan hệ giữa bản rõ/bản mã để tìm ra được giá trị khóa. Một cách
tương tự, trong mô hình Tấn công bản-mã-chọn-sẵn, kẻ địch E cũng thu nhặt
được một số cặp (X/Y ) và một số bản mã Y . Điều này xảy ra khi E truy nhập
được vào máy mật mã 2 chiều có khả năng lập mã và sinh mã. Đây là hai kiểu
tấn công mạnh, E đều có thể sử dụng chiến thuật thiết kế bản rõ/bản mã chọn
sẵn theo kiểu thích nghi, tức là các bản rõ chọn sau có thể thiết kế dựa vào kiến
thức phân tích dựa vào các cặp (X/Y ) đã thu nhặt từ trước.
Dựa vào việc phân tích mã bằng các phương thức tấn công cơ bản như trên,
các tác giả trong [62] đã chỉ ra một số vấn đề còn tồn tại trong thiết kế hệ mật
mã hỗn loạn như sau:
1. Vấn đề trong việc lựa chọn các hàm hỗn loạn cho thuật toán sinh/giải mã.
i) Định nghĩa về khóa dẫn đến tính không hỗn loạn của hệ động học - Các
giá trị của tham số điều khiển quyết định đến tính chất hỗn loạn hoặc không
hỗn loạn của hệ động học, tính chất bảo mật của hệ mật mã hỗn loạn dựa
trên các thông số điều khiển (hoặc một phần của nó) [8]. Nếu thiết lập liên
kết giữa khóa bí mật và các thông số điều khiển không cẩn thận sẽ làm cả
hệ thống hỗn loạn mất đi tính chất đặc trưng của mật mã là tính xáo trộn
(Confusion) và tính khuếch tán (Diffusion). Xét hệ hỗn loạn một chiều được
biểu diễn thông qua hàm Logistic như sau
xn = f (xn−1 ) = r × xn−1 (1 − xn−1 )

(1.1)

trong đó, r được gọi là tham số điều khiển thỏa mãn điều kiện 0 ≤ r ≤ 4 và
0 ≤ x0 ≤ 1 là điều kiện khởi tạo. Thay đổi giá trị của tham số r là thay đổi

bản chất động lực học của hệ thống. Lược đồ phân nhánh của hàm Logistic
như Hình 1.1 mô tả giá trị của tham số r thỏa mãn điều kiện hỗn loạn khi
r ≥ 3.828427.

Việc thiết lập các giá trị của các tham số điều khiển phải dẫn đến sự hỗn
loạn để đảm bảo hệ thống động học phù hợp với bài toán lập mã. Nếu không
sẽ làm giảm entropy của bản mã (tức là, đầu ra của hệ thống mật mã) và
cũng giảm sự ảnh hưởng lên các bản mã của khi có sự thay đổi trong bản
rõ (đầu vào của các hệ thống mật mã).
ii) Hàm phân bố xác suất không đều - Trong các hệ mật mã hỗn loạn tính
lộn xộn/khuếch tán (Confusion/Diffusion) phụ thuộc vào hàm phân bố xác


Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay

×