BỘ GIÁO DỤC VÀ ĐÀO TẠO
BAN CƠ YẾU CHÍNH PHỦ
HỌC VIỆN KỸ THUẬT MẬT MÃ
NGUYỄN ĐỨC TÂM
MỘT SỐ PHƯƠNG PHÁP MÃ HÓA CÓ THỂ CHỐI TỪ
DỰA TRÊN MÃ HÓA XÁC SUẤT
MẬT MÃ TỐT NHẰM XÂY DỰNG TẦNG KHUẾCH TÁN/KHUẾCH TÁN
ĐỘNG HIỆU QUẢ CHO MÃ KHỐI CẤU TRÚC SPN
LUẬN ÁN TIẾN SĨ KỸ THUẬT MẬT MÃ
Hà Nội – 2021
i
LỜI CAM ĐOAN
Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi dưới sự
hướng dẫn của tập thể cán bộ hướng dẫn khoa học. Các nội dung, số liệu và
kết quả trình bày trong Luận án là hoàn toàn trung thực và chưa có tác giả
nào công bố trong bất cứ một công trình nào khác, các dữ liệu tham khảo
được trích dẫn đầy đủ.
Tác giả Luận án
Nguyễn Đức Tâm
ii
LỜI CẢM ƠN
Luận án được nghiên cứu sinh thực hiện tại Học viện Kỹ thuật mật mã Ban Cơ yếu Chính phủ. Nghiên cứu sinh xin bày tỏ lòng biết ơn sâu sắc tới
các nhà khoa học: Phó Giáo sư Tiến sĩ Lê Mỹ Tú và Tiến sĩ Nguyễn Nam
Hải, các Thầy đã tận tình giúp đỡ, trang bị phương pháp nghiên cứu, kinh
nghiệm, kiến thức khoa học và kiểm tra, đánh giá các kết quả trong suốt quá
trình thực hiện Luận án.
Nghiên cứu sinh xin trân trọng cảm ơn Học viện Kỹ thuật mật mã là cơ
sở đào tạo và đơn vị quản lý chuyên môn, các Đồng chí lãnh đạo Học viện Kỹ
thuật mật mã - Ban Cơ yếu Chính phủ, nơi nghiên cứu sinh đang công tác đã
tạo mọi điều kiện thuận lợi, hỗ trợ và giúp đỡ nghiên cứu sinh trong suốt quá
trình học tập, nghiên cứu và thực hiện Luận án. Xin chân thành cảm ơn các
nhà giáo, các nhà khoa học, các đồng chí và đồng nghiệp thuộc Khoa Mật mã,
Phòng Sau Đại học - Học viện Kỹ thuật mật mã; các nhà khoa học tại Viện
Khoa học Công nghệ mật mã - Ban Cơ yếu Chính phủ đã giúp đỡ, hỗ trợ
nghiên cứu sinh trong quá trình thực hiện Luận án.
Nghiên cứu sinh chân thành cảm ơn sự động viên, giúp đỡ to lớn từ
phía gia đình, đồng nghiệp đã hỗ trợ nghiên cứu sinh trong suốt quá trình thực
hiện và hoàn thành Luận án này.
Nghiên cứu sinh
Nguyễn Đức Tâm
Nguyễn Đức Tâm
iii
MỤC LỤC
trang
DANH MỤC KÝ HIỆU VÀ CHỮ VIẾT TẮT ........................................................ vi
BẢNG ĐỐI CHIẾU THUẬT NGỮ ........................................................................ viii
DANH MỤC CÁC BẢNG........................................................................................ ix
DANH MỤC CÁC HÌNH VẼ.....................................................................................x
MỞ ĐẦU .....................................................................................................................1
Chương 1. TỔNG QUAN VỀ MÃ HÓA CÓ THỂ CHỐI TỪ ...................................8
1.1 Tổng quan về mã hóa có thể chối từ ................................................... 8
1.1.1 Khái niệm mã hóa có thể chối từ ................................................. 8
1.1.2 Ứng dụng của mã hóa có thể chối từ ......................................... 10
1.1.3 Khái niệm không phân biệt được về mặt tính toán .................... 10
1.1.4 Tính đúng đắn, an toàn, chối từ của mã hóa có thể chối từ ....... 11
1.1.5 Một số định nghĩa phân loại lược đồ mã hóa có thể chối từ...... 13
1.1.6 Tấn công cưỡng ép trong mã hóa có thể chối từ........................ 20
1.1.7 Thẩm quyền của đối phương khi thực hiện cưỡng ép ............... 22
1.2 Các hướng nghiên cứu về mã hóa có thể chối từ .............................. 23
1.2.1 Các công trình nghiên cứu về mà hóa có thể chối từ................. 23
1.2.2 Nhận xét các công trình nghiên cứu về mã hóa có thể chối từ .. 27
1.3 Phương thức gài đặt mã hóa có thể chối từ dựa trên mã hóa xác suất
...................................................................................................................... 29
1.3.1 Mã hóa xác suất và ứng dụng mã hóa xác suất để gài đặt
MHCTCT ................................................................................................. 29
1.3.2 Hai chế độ hoạt động của giao thức mã hóa có thể chối từ ....... 31
1.4 Mô tả bài toán cần giải quyết của Luận án ....................................... 32
1.5 Kết luận chương 1 ............................................................................. 33
Chương 2. ĐỀ XUẤT PHƯƠNG PHÁP MÃ HÓA CÓ THỂ CHỐI TỪ DỰA
TRÊN GIAO THỨC BA BƯỚC SHAMIR ..............................................................34
2.1 Giao thức ba bước Shamir ................................................................ 34
iv
2.1.1 Thuật toán mã hóa giao hoán ..................................................... 34
2.1.2 Giao thức ba bước Shamir ......................................................... 34
2.2 Phương pháp mã hóa có thể chối từ dựa trên giao thức ba bước
Shamir .......................................................................................................... 35
2.2.1 Phương pháp thực hiện MHCTCT và ngữ cảnh tấn công ......... 35
2.2.2 Một số thuật toán sử dụng .......................................................... 37
2.3 Đề xuất một số giao thức mã hóa có thể chối từ dựa trên giao thức ba
bước Shamir ................................................................................................. 38
2.3.1 Giao thức 2.1: giao thức mã hóa có thể chối từ sử dụng thuật
toán Pohlig-Hellman ................................................................................ 38
2.3.2 Giao thức 2.2: giao thức MHCTCT sử dụng thuật toán SRA ... 53
2.3.3 Giao thức 2.3: giao thức mã hóa có thể chối từ sử dụng mã hóa
Vernam kết hợp thuật toán ElGamal ........................................................ 62
2.4 Nhận xét và khuyến nghị sử dụng các giao thức đề xuất ................. 72
2.4.1 Đánh giá độ phức tạp thời gian tính toán của các giao thức đề
xuất ........................................................................................................... 72
2.4.2 So sánh các giao thức đề xuất với một số công trình cùng hướng
nghiên cứu ................................................................................................ 73
2.4.3 Nhận xét và khuyến nghị sử dụng các giao thức đề xuất .......... 76
2.5 Kết luận chương 2 ............................................................................. 78
Chương 3. ĐỀ XUẤT PHƯƠNG PHÁP MÃ HÓA CÓ THỂ CHỐI TỪ DỰA
TRÊN MÃ KHỐI ......................................................................................................79
3.1 Mô hình truyền tin, ngữ cảnh tấn công và tiêu chí thiết kế .............. 79
3.2 Phương pháp mã hóa xác suất dựa trên mã khối .............................. 81
3.2.1 Lược đồ tổng quát của mã hóa xác suất dựa trên mã khối ........ 81
3.2.2 Lược đồ mã hóa xác suất dựa trên mã khối với hai giai đoạn mã
hóa ............................................................................................................ 83
3.3 Đề xuất phương pháp mã hóa có thể chối từ dựa trên mã khối ........ 84
3.3.1 Lược đồ gài đặt mã hóa có thể chối từ dựa trên mã khối .......... 84
v
3.3.2 Thuật toán mã hóa có thể chối từ dựa trên mã khối .................. 93
3.4 Kết luận chương 3 ........................................................................... 108
KẾT LUẬN .............................................................................................................109
DANH MỤC CÁC CÔNG TRÌNH CÔNG BỐ .....................................................111
TÀI LIỆU THAM KHẢO .......................................................................................113
PHỤ LỤC A: MỘT SỐ THUẬT TOÁN SỬ DỤNG .............................................118
PHỤ LỤC B: MỘT SỐ KẾT QUẢ THỰC NGHIỆM VÀ MÃ NGUỒN CHƯƠNG
TRÌNH THỰC NGHIỆM .......................................................................................121
vi
DANH MỤC KÝ HIỆU VÀ CHỮ VIẾT TẮT
AES
Chuẩn mã hóa tiên tiến (Advanced Encryption Standard)
A
Bên gửi A
a|b
a là ước số của b
B
Bên nhận B
C
Tập các bản mã c
CA
Đơn vị cấp phát chứng thư (Certificate Authority)
CPA
Tấn công bản rõ chọn lựa (CPA: Chosen Plaintext Attack)
Dk (c)
Hàm giải mã D , giải mã bản mã
DES
Chuẩn mã hóa dữ liệu (Data Encryption Standard)
ĐPTC
Đối phương tấn công
e
c C với khóa k K
Tập khóa mã riêng của mã hóa khóa bất đối xứng
Ek (m)
Hàm mã hóa E , mã hóa thông điệp m M với khóa k K
gcd(a, b)
Ước chung lớn nhất của a và b (greatest common divisor)
fr (Z )
Hàm trích một chuỗi bit con từ chuỗi bit của z theo một thuật
toán bí mật.
f (m)
Hàm gài đặt mã hóa thông điệp bí mật m
H ( x)
Hàm băm của x
IND-CPA
Không phân biệt được về mặt tính toán khi tấn công lựa chọn
bản rõ (Indistinguishability under chosen-plaintext attack)
I
K
Khối mã trung gian
MHCTCT
Mã hóa có thể chối từ
m
m
Thông điệp giả mạo
m1 m2
Phép nối chuỗi bit m1 với chuỗi bit m2
m
Kích thước theo bit của
M
Tập các thông điệp
mod p
Phép toán modulo p
Tập các tham số, khóa mã bí mật của người dùng
Thông điệp bí mật
m
Tập các số tự nhiên
NIST
Viện công nghệ và chuẩn quốc gia Hoa Kỳ (National Institute
of Standards and Technology)
vii
OTP
Mã hóa khóa sử dụng một lần (one-time pad)
ord (t )
Cấp của phần tử t trong nhóm
PKE
Mã hóa khóa công khai (Public-key encryption)
R
Tập các ngẫu nhiên
RSA
Rivest -Shamir-Adlerman
SRA
Shamir-Rivest -Adlerman
SKE
Mã hóa khóa bí mật (Secret-key encryption)
XOR hoặc
*
n
Phép toán cộng modulo 2
Tập phân bố xác suất của biến ngẫu nhiên X n
{X n }n
c
{X n }n {Yn }n
{X n }n và {Yn }n không phân biệt được về mặt tính toán
Tập các số nguyên
p
Trường
*
p
Nhóm nhân các số nguyên theo modulo p
p
: tập hợp các số nguyên nhỏ hơn số nguyên p
z
Tham số bí mật dùng chung được hai bên A và B sử dụng
một giao thức trao đổi khóa an toàn để thống nhất
( n)
Hàm phi Eurler của n
viii
BẢNG ĐỐI CHIẾU THUẬT NGỮ
Nghĩa tiếng Anh
Nghĩa tiếng Việt
Active coercives
Tấn công chủ động (cưỡng ép chủ động)
Bi-deniable encryption
Mã hóa có thể chối từ đồng thời hai bên
Coercer
Người/ cơ quan ép buộc
Computational indistinguishability Không phân biệt được về mặt tính toán
Correctness
Tính chính xác
Coercive adversary
Tấn công cưỡng ép
Coercer adversary
Đối phương cưỡng ép
Deniability
Tính chối từ
Deniable Encryption
Mã hóa có thể chối từ
Flexible-deniable encryption
Mã hóa có thể chối từ linh hoạt
Fully-deniable encryption
Mã hóa có thể chối từ hoàn toàn
Negligible
Không đáng kể
Passive coercives
Tấn công bị động (cưỡng ép bị động)
Plan-ahead deniable encryption
Mã hóa có thể chối từ kế hoạch trước
Probabilistic encryption
Mã hóa xác suất
Sender-deniable encryption
Mã hóa có thể chối từ bên gửi
Receiver-deniable encryption
Mã hóa có thể chối từ bên nhận
Security
Tính an toàn
Shamir three-pass protocol
Giao thức ba bước Shamir
ix
DANH MỤC CÁC BẢNG
trang
Bảng 1.1 Phân loại MHCTCT theo bên chối từ ........................................................14
Bảng 2.1 Độ phức tạp tính toán của giao thức 2.1 ở chế độ gài đặt MHCTCT ........73
Bảng 2.2 Độ phức tạp tính toán của giao thức 2.2 ở chế độ gài đặt MHCTCT ........73
Bảng 2.3 Độ phức tạp tính toán của giao thức 2.3 ....................................................73
Bảng 2.4 So sánh 3 giao thức Luận án đề xuất và các công trình nghiên cứu tương
tự trước đó về MHCTCT dựa trên giao thức ba bước Shamir ..................................73
Bảng 2.5 So sánh giao thức 2.3 và công trình nghiên cứu tương tự về MHCTCT sử
dụng hệ mã khóa bí mật OTP ....................................................................................75
Bảng B.1 Kết quả thực nghiệm về tính đúng đắn và hiệu năng tính toán của giao
thức 2.1 ....................................................................................................................122
Bảng B.2 Kết quả thực nghiệm về tính đúng đắn và hiệu năng tính toán của Lược đồ
MHCTCT dựa trên mã khối ....................................................................................140
x
DANH MỤC CÁC HÌNH VẼ
.............................................................................................................................. trang
Hình 1.1 Mô hình tấn công nghe lén EAV (Eavesdropping Attack) ........................20
Hình 1.2 Mô hình tấn công cưỡng ép trong mã hóa thông thường ...........................21
Hình 1.3 Mô hình tấn công cưỡng ép trong MHCTCT ............................................21
Hình 2.1 Quá trình thực hiện giao thức ba bước Shamir bằng thuật toán mã hóa giao
hoán ...........................................................................................................................35
Hình 2.2 Phương pháp tổng quát thực hiện gài đặt MHCTCT dựa trên giao thức ba
bước Shamir ..............................................................................................................36
Hình 2.3 Giao thức 2.1 hoạt động ở chế độ mã hóa xác suất (dùng để chối từ khi bị
cưỡng ép) ...................................................................................................................41
Hình 2.4 Giao thức 2.1 hoạt động ở chế độ gài đặt mã hóa có thể chối (dùng để mã
hóa truyền tin mật) ....................................................................................................42
Hình 2.5 Giao thức 2.2 hoạt động ở chế độ mã hóa xác suất (dùng để chối từ khi bị
cưỡng ép) ...................................................................................................................56
Hình 2.6 Giao thức 2.2 hoạt động ở chế độ gài đặt MHCTCT (dùng để mã hóa
truyền tin mật) ...........................................................................................................57
Hình 2.7 Giao thức 2.3: giao thức mã hóa Vernam kết hợp thuật toán ElGamal gài
đặt mã hóa có thể chối từ ..........................................................................................65
Hình 3.1 Lược đồ tổng quát của mã hóa xác suất dựa trên mã khối .........................81
Hình 3.2 Lược đồ mã hóa xác suất dựa trên mã khối với hai giai đoạn mã hóa .......83
Hình 3.3 Mã hóa xác suất dựa trên mã khối và MHCTCT dựa trên mã khối (với hai
giai đoạn mã hóa) ......................................................................................................84
Hình 3.4 Giải mã ở MHCTCT dựa trên mã khối ở chế độ chối từ khi bị cưỡng ép .87
Hình 3.5 Giải mã ở MHCTC dựa trên mã khối ở chế độ mã hóa truyền tin mật .....88
Hình 3.6 Lược đồ mã hóa xác suất dựa trên mã khối và Lược đồ MHCTCT dựa trên
mã khối kết hợp với hệ phương trình đồng dư ..........................................................90
Hình 3.7 Giải mã ở lược đồ mã hóa xác suất dựa trên mã khối và giải mã ở lược đồ
MHCTCT dựa trên mã khối kết hợp với hệ phương trình đồng dư ..........................91
Hình 3.8 Giải mã ở MHCTCT dựa trên mã khối (chế độ mã hóa truyền tin mật) ...92
Hình 3.9 Lược đồ cải tiến MHCTCT dựa trên mã khối kết hợp với hệ phương trình
đồng dư ....................................................................................................................103
1
MỞ ĐẦU
1. Lý do chọn đề tài
Các kỹ thuật mật mã hiện nay nhằm bảo vệ tính bí mật và xác thực
trong quá trình truyền tin, chống lại các tấn công nghe lén, đánh cắp bí mật
hoặc cố tình sửa đổi thông tin. Mã hóa có thể chối từ (MHCTCT) là một kỹ
thuật mật mã đặc biệt nhằm chống lại dạng tấn công khác, đó là tấn công
cưỡng ép. Ngữ cảnh của tấn công cưỡng ép là khi bên gửi A mã hóa một
thông điệp gửi cho bên nhận B và đối phương tấn công (ĐPTC) thu được bản
mã trên kênh truyền, tiến hành cưỡng ép A hoặc B hoặc cả hai bên trình ra
bản rõ, các khóa bí mật, thuật toán mã hóa và thuật toán giải mã. Nếu sử dụng
MHCTCT, cho phép các bên bị tấn công có thể trình ra các tham số và khóa
mã giả mạo (hoặc thuật toán giả mạo) giải mã bản mã cho ra một bản rõ giả
mạo. ĐPTC không thể phát hiện hoặc chứng minh được vẫn tồn tại một bản
rõ nào khác. Ngữ cảnh này xuất hiện khi ở một số quốc gia, luật pháp quy
định khi các cơ quan chức năng của chính quyền yêu cầu, công dân hoặc các
tổ chức có sử dụng mật mã phải trình ra khóa mật mã. Một ngữ cảnh khác là
hoạt động truyền tin tình báo bị phát hiện, khi đó điệp viên sẽ bị cưỡng ép
phải trình ra khóa mật, bản rõ, thuật toán và thậm chí cả thiết bị mật mã.
Một tình huống khác cần đến MHCTCT, trong các giao thức bầu cử
điện tử [7, 24, 32, 66], một trong những tính chất cần có của giao thức bầu cử
điện tử là bên gửi không có khả năng chứng minh nội dung bỏ phiếu cho bên
thứ ba. Điều này nhằm chống lại việc mua phiếu bầu, vì không có bằng chứng
cho thấy người nhận hối lộ đã bỏ phiếu theo yêu cầu của kẻ mua phiếu. Một
ứng dụng hữu ích khác của MHCTCT đó lưu trữ dữ liệu có thể chối từ, đây là
một cơ chế lưu trữ dữ liệu mà người dùng có thể lưu trữ các dữ liệu bí mật
(khi được giải mã) trên một hoặc nhiều lớp ngụy trang dưới các lớp dữ liệu
giảo mạo nhằm che dấu dữ liệu nhạy cảm trong các hệ thống lưu trữ như ổ
cứng, máy chủ hoặc mô hình lưu trữ điện toán đám mây [15].
2
Mục đích chính của MHCTCT là làm cho đối phương không thể tìm ra
sự tồn tại của thông điệp mật mà không có khóa giải mã thích hợp (hoặc thuật
toán giải mã thích hợp), đặc trưng căn bản nhất của MHCTCT là từ một bản
mã cho phép giải mã ra hai bản rõ hợp lý khác nhau. Các lược đồ mã hóa
thông dụng hiện nay không có tính chất này, do các thuật toán mã hóa thường
hình thành từ một quá trình cam kết theo nghĩa một bản rõ là một kết quả duy
nhất khi giải mã một bản mã và khóa mã sử dụng [26, 27, 45, 68].
Tính chối từ của một thuật toán mã hóa được Julian Assange và cộng
sự đề cập lần đầu khi phát triển ứng dụng lưu trữ tập tin mã hóa Rubberhose
filesystem [4]. Tuy nhiên khái niệm “mã hóa có thể chối từ” (deniable
encryption) thực sự được định nghĩa, phân loại và mô tả tính chất một cách rõ
ràng trong công trình nghiên cứu về MHCTCT của Canetti và cộng sự [10].
Trên thế giới hiện nay, có hai hướng nghiên cứu chính về MHCTCT:
hướng thứ nhất là nghiên cứu đề xuất các lược đồ MHCTCT dựa trên các hệ
mật khóa công khai [5, 8, 17, 38, 43, 47, 52, 53, 59], hướng thứ hai là nghiên
cứu đề xuất các lược đồ MHCTCT dựa trên các hệ mật khóa bí mật [2, 48, 55,
70]. Tuy nhiên phần lớn các công trình nghiên cứu về MHCTCT mang tính lý
thuyết hoặc thuật toán mã hóa thực hiện theo từng bit và chỉ có tính minh họa
cho phương pháp đề xuất mà không có tính ứng dụng thực tiễn [5, 8, 10, 14,
20, 25, 34, 59, 65]. Chưa có nhiều công trình nghiên cứu về MHCTCT có thể
thực thi ứng dụng được trên thực tế, cụ thể:
Với MHCTCT khóa công khai: đã có một số đề xuất mang tính ứng
dụng khả thi trong thực tế: như của Klonowski và cộng sự [43], Moldovyan
và các cộng sự [47, 50, 52, 53, 54, 59].
Với MHCTCT khóa bí mật: một số đề xuất đã công bố mang tính khả
thi chỉ dùng trong việc lưu trữ ngụy trang dữ liệu, không áp dụng cho việc mã
hóa truyền tin giữa hai bên [3, 36, 44, 71]. Một lược đồ MHCTCT sử dụng
mã hóa OTP được đề xuất trong [2] khó có thể triển khai được trong thực tế
do tính phức tạp trong việc quản lý khóa bí mật và đáp án chối từ chia sẻ
3
trước. Mã khối là hệ mã khóa bí mật phổ biến hiện nay có nhiều ưu điểm về
bảo mật, tính chuẩn hóa, tính phổ dụng và tốc độ mã hóa, tuy nhiên chưa có
công trình nghiên cứu đề xuất MHCTCT dựa trên mã khối.
Ngoài hai hướng nghiên cứu chính ở trên, có một số nghiên cứu khác
về việc thực hiện MHCTCT dựa trên giao thức ba bước Shamir của tác giả
Moldovyan và các cộng sự trong [49, 53, 56]. Trong các công trình này, tính
đúng đắn của giao thức MHCTCT đã được chứng minh, tuy nhiên các chứng
minh về tính an toàn và chối từ của một giao thức MHCTCT theo định nghĩa
của Canetti chưa được nhóm tác giả đề cập; Ngoài ra, vấn đề xây dựng một
phương pháp tổng quát thực hiện MHCTCT dựa trên giao thức ba bước
Shamir với cách thức mã hóa xác suất, để từ đó dùng các hệ mật khác nhau
tạo ra các phiên bản giao thức MHCTCT khác nhau; Và vấn đề chống tấn
công chủ động trong MHCTCT dựa trên giao thức ba bước Shamir cũng cần
quan tâm. Đây là những vấn đề mở cần được nghiên cứu.
Tại Việt nam, theo khảo sát của nghiên cứu sinh, MHCTCT chưa có
các công trình nghiên cứu về mặt lý thuyết cũng như ứng dụng triển khai
trong thực tế.
Có thể nói, việc nghiên cứu về MHCTCT nhằm đề xuất một số phương
pháp MHCTCT cụ thể dựa trên mã hóa xác suất là một nhiệm vụ có ý nghĩa
khoa học và thực tiễn trong lĩnh vực bảo mật và an toàn thông tin.
Xuất phát từ cách đặt vấn đề như trên, nghiên cứu sinh đã chọn đề tài
“Một số phương pháp mã hóa có thể chối từ dựa trên mã hóa xác suất”.
Nhằm mục đích nghiên cứu và đề xuất một số phương pháp thực hiện gài đặt
MHCTCT dựa trên mã hóa xác suất, các phương pháp đề xuất đảm bảo tính
đúng đắn, an toàn và chối từ trong ngữ cảnh các bên truyền tin bị tấn công
cưỡng ép và có khả năng ứng dụng trong thực tiễn. Cũng xin nói thêm là,
phần thực nghiệm trong Luận án chỉ tập trung thực thi bằng phần mềm.
4
2. Mục tiêu nghiên cứu
Mục tiêu nghiên cứu của Luận án gồm:
- Nghiên cứu và đề xuất phương pháp MHCTCT khóa bất đối xứng dựa
trên giao thức ba bước Shamir sử dụng các thuật toán mã hóa có tính chất
giao hoán với cách thức mã hóa xác suất.
- Nghiên cứu và đề xuất phương pháp MHCTCT khóa đối xứng dựa
trên mã khối với cách thức mã hóa xác suất.
3. Đối tượng và phạm vi nghiên cứu
Đối tượng nghiên cứu của Luận án là các lược đồ mã hóa có thể chối từ
khóa bất đối xứng, các lược đồ mã hóa có thể chối từ khóa đối xứng, giao
thức ba bước Shamir, các thuật toán mã hóa giao hoán, các lược đồ mã hóa
xác suất, các lược đồ mã hóa xác suất dựa trên mã khối, các giao thức và lược
đồ MHCTCT dựa trên mã hóa xác suất.
Phạm vi nghiên cứu của Luận án là: phương pháp xây dựng các giao
thức, lược đồ và thuật toán mã hóa có thể chối từ khóa bất đối xứng hoặc
khóa đối xứng dựa trên mã hóa xác suất.
4. Nội dung nghiên cứu
Nội dung nghiên cứu cơ bản được trình bày trong Luận án bao gồm:
1. Nghiên cứu cách thức gài đặt MHCTCT dựa trên mã hóa xác suất.
2. Xuất phát từ cách thức thực hiện MHCTCT cụ thể được đề xuất
trong [49, 56] của tác giả Moldovyan và các cộng sự, Luận án đi nghiên cứu,
tổng hợp và đề xuất một phương pháp tổng quát thực hiện MHCTCT dựa trên
giao thức ba bước Shamir bằng cách thức mã hóa xác suất, sử dụng thuật toán
mã hóa có tính chất giao hoán và không cần quá trình trao đổi khóa trước. Từ
phương pháp tổng quát này, nghiên cứu đề xuất ba giao thức MHCTCT cụ thể
sử dụng các hệ mật khác nhau: giao thức thứ nhất sử dụng trao đổi khóa
Diffie-Hellman kết hợp với thuật toán mã hóa lũy thừa modulo PohligHellman; giao thức thứ hai sử dụng trao đổi khóa Diffie-Hellman kết hợp với
5
thuật toán mã hóa SRA; giao thức thứ ba sử dụng mã hóa khóa bí mật sử
dụng một lần Vernam kết hợp thuật toán mã hóa khóa công khai ElGamal.
3. Nghiên cứu cách thức mã hóa xác suất dựa trên mã khối, cách thức
kết hợp mã khối với thuật toán giải hệ phương trình đồng dư tạo thành mã hóa
xác suất dựa trên mã khối. Từ đó đề xuất xây dựng phương pháp mã hóa có
thể chối từ dựa trên mã khối.
5. Phương pháp nghiên cứu
Phương pháp nghiên cứu được sử dụng trong Luận án bao gồm:
- Phân tích, so sánh, tổng hợp, khái quát hóa và hệ thống hóa các tài liệu
khoa học đã công bố trên thế giới và trong nước, kết hợp với tự nghiên cứu.
- Sử dụng phương pháp luận liên ngành: toán ứng dụng, lý thuyết số, lý
thuyết mật mã và mật mã học ứng dụng, độ phức tạp tính toán.
- Sử dụng các công cụ phần mềm để mô phỏng, cài đặt thử nghiệm một
số thuật toán đã nghiên cứu, đề xuất.
6. Ý nghĩa khoa học và thực tiễn
Ý nghĩa khoa học:
1. Về mặt lý thuyết, Luận án đóng góp một số kết quả nghiên cứu mới
về đề xuất một số phương pháp MHCTCT khóa bất đối xứng và MHCTCT
khóa đối xứng. Cụ thể, Luận án đã:
- Đề xuất phương pháp tổng quát thực hiện MHCTCT khóa bất đối
xứng dựa trên giao thức ba bước Shamir sử dụng các thuật toán mã hóa có
tính chất giao hoán kết hợp với cách thức mã hóa xác suất. Trên cơ sở phương
pháp tổng quát này, đề xuất ba giao thức MHCTCT cụ thể sử dụng các hệ mật
khác nhau, các giao thức đề xuất được chứng minh đầy đủ các tính chất của
một giao thức MHCTCT.
- Đề xuất phương pháp thực hiện MHCTCT khóa đối xứng dựa trên mã
khối, bằng cách sử dụng mã khối kết hợp với thuật toán giải hệ phương trình
đồng dư. Phương pháp đề xuất được được chứng minh đầy đủ các tính chất
của một giao thức MHCTCT.
6
2. Về mặt ứng dụng mật mã, Luận án đề xuất ba giao thức và một lược
đồ MHCTCT cụ thể với các đặc tính kỹ thuật khác nhau phù hợp cho các ngữ
cảnh truyền tin khác nhau, cụ thể:
Ba giao thức MHCTCT khóa bất đối xứng dựa trên giao thức ba bước
Shamir, sử dụng các thuật toán mã hóa giao hoán:
- Giao thức MHCTCT sử dụng thuật toán mã hóa khóa bất đối xứng
giữ bí mật khóa Pohlig-Hellman.
- Giao thức MHCTCT sử dụng thuật toán mã hóa khóa bất đối xứng
giữ bí mật khóa SRA.
- Giao thức MHCTCT sử dụng mã hóa khóa bí mật dùng một lần
Vernam kết hợp thuật toán mã hóa khóa công khai ElGamal.
Một lược đồ MHCTCT khóa đối xứng dựa trên mã khối:
- Lược đồ MHCTCT dựa trên mã khối, thực hiện theo cách kết hợp mã
khối với thuật toán giải hệ phương trình đồng dư.
Ý nghĩa thực tiễn:
Các giao thức và lược đồ MHCTCT được đề xuất trong luận án sử
dụng các thuật toán mã hóa thông dụng và an toàn, đáp ứng yêu cầu về tính
đúng đắn, an toàn và chối từ của một lược đồ MHCTCT, có khả năng ứng
dụng trong thực tiễn truyền tin mật.
7. Cấu trúc của Luận án
Ngoài phần mở đầu, kết luận, tài liệu tham khảo, danh mục từ viết tắt
và các ký hiệu toán học, bảng đối chiếu thuật ngữ, danh mục bảng, danh mục
hình vẽ, nội dung chính của Luận án gồm 3 chương sau đây.
Chương 1. Tổng quan về mã hóa có thể chối từ
Tổng quan về MHCTCT, ứng dụng của MHCTCT; định nghĩa cơ bản
phân loại MHCTCT, tính chất của một giao thức MHCTCT; tổng quan về
tình hình nghiên cứu MHCTCT trong nước và quốc tế từ trước đến nay;
nghiên cứu tổng hợp cách thức tổng quát thực hiện gài đặt MHCTCT dựa trên
mã hóa xác suất; đề xuất nội dung nghiên cứu của Luận án.
7
Chương 2. Đề xuất phương pháp mã hóa có thể chối từ dựa trên giao
thức ba bước Shamir
Phân tích quá trình mã hóa bằng giao thức ba bước Shamir với quá
trình mã hóa không cần trao đổi khóa trước; Sử dụng thuật toán mã hóa giao
hoán để thực hiện giao thức Shamir; Đề xuất phương pháp tổng quát thực
hiện MHCTCT dựa trên giao thức ba bước Shamir với cách thức mã hóa xác
suất; Đề xuất ba giao thức MHCTCT cụ thể sử dụng các hệ mật khác nhau;
Chứng minh tính đúng đắn, an toàn, chối từ của các giao thức đề xuất. (Nội
dung này được đăng trên các bài báo CT1, CT4, CT5, CT7).
Chương 3. Đề xuất phương pháp mã hóa có thể chối từ dựa trên mã khối
Phân tích các lược đồ mã hóa xác suất dựa trên mã khối và ứng dụng để
đề xuất phương pháp MHCTCT dựa trên mã khối với cách thức mã hóa xác
suất; Đề xuất lược đồ MHCTCT dựa trên lược đồ mã hóa xác suất dựa trên
mã khối bằng cách sử dụng mã khối kết hợp với thuật toán giải hệ phương
trình đồng dư; Chứng minh tính đúng đắn, an toàn và chối từ của lược đồ đề
xuất. (Nội dung này được đăng trên các bài báo CT2, CT3, CT6, CT8).
8
Chương 1. TỔNG QUAN VỀ MÃ HÓA CÓ THỂ CHỐI TỪ
1.1 Tổng quan về mã hóa có thể chối từ
1.1.1 Khái niệm mã hóa có thể chối từ
Trong mật mã hiện đại, việc sử dụng mã hóa xác suất nhằm đạt được an
toàn ngữ nghĩa [29] là yêu cầu an toàn quan trọng nhằm chống lại một số
dạng tấn công mật mã [11, 19, 57, 61]. Về cơ bản, an toàn ngữ nghĩa có nghĩa
rằng việc thu được bản mã trên kênh truyền không giúp kẻ tấn công có thêm
được thông tin gì về bản rõ, khóa mã và quá trình mã hóa. Để một hệ mật đạt
được an toàn ngữ nghĩa trước hết nó phải là một hệ mã hóa xác suất. Thông
thường, để mã hóa có tính xác suất, thuật toán mã hóa sẽ sử dụng khóa mã
dùng một lần hoặc sử dụng thêm một tham số ngẫu nhiên cục bộ ở mỗi lần mã
hóa. Với việc sử dụng kênh truyền công cộng để truyền tin mật phổ biến hiện
nay, ĐPTC có khả năng chặn thu được các bản mã và theo dõi được toàn bộ
quá trình truyền tin. Do vậy việc đảm bảo an toàn của quá trình truyền tin phụ
thuộc vào việc bảo mật khóa mã và tham số ngẫu nhiên cục bộ.
Nhưng, trong một kịch bản tấn công: nếu ĐPTC có thẩm quyền ép
buộc các bên truyền tin tiết lộ khóa mã, thuật toán mã dịch và các tham số bí
mật khác dùng trong quá trình mã dịch, lúc này tính an toàn của quá trình
truyền tin không còn nữa. Trong các hệ mật thông dụng hiện nay, mỗi bản mã
khi giải mã chỉ cho một bản rõ phù hợp với khóa mã sử dụng. Liệu rằng có
một cách nào để trình ra một bản rõ giả mạo vô hại (cùng khóa giả mạo) phù
hợp với bản mã mà ĐPTC có trong tay? Từ câu hỏi này, Cannetti cùng các
cộng sự trong công trình [10] đã đề xuất một cài đặt mã hóa đặc thù khác với
mã hóa thông thường. Với kịch bản trong đó A truyền tin mật cho B, sau khi
bản mã được truyền đi. ĐPTC E thu được bản mã, có sức mạnh tiếp cận và
thẩm quyền cưỡng ép A (hoặc B, hoặc cả hai) trình ra tất cả những thông tin
bí mật gồm: bản rõ, khóa mã, thuật toán mã dịch, các tham số bí mật khác
dùng trong quá trình mã hóa. Trong trường hợp E không có quyền truy cập
9
vật lý trực tiếp vào bộ nhớ của thiết bị mật mã, hoặc thiết bị mật mã có cơ chế
tự vệ an toàn khi E cố ý truy xuất trực tiếp bộ nhớ vật lý. A (hoặc B) hoàn
toàn có thể trình ra bản rõ giả mạo, khóa mã giả mạo, tham số ngẫu nhiên giả
mạo phù hợp với bản mã và thuật toán mã dịch để bảo vệ cho bản tin thật.
Lược đồ mã hóa có tính chất mà từ một bản mã có thể giải mã thành hai
bản rõ khác nhau (đều có ý nghĩa - trong đó có một bản rõ thực sự có nội
dung cần truyền tải) gọi là lược đồ mã hóa có thể chối từ [10].
Lược đồ MHCTCT được mô tả sơ lược như sau:
Giả sử, A cần gửi thông điệp mật m1 cho B và ngụy trang bằng một
thông điệp giả mạo m2 (có cùng kích thước):
MHCTCT khóa bí mật
1. A mã hóa: c E (m1 , k , r1 ) E (m2 , k , r2 ), với E là thuật toán mã hóa, k
là khóa mã, r1 là ngẫu nhiên bí mật, r2 ngẫu nhiên giả mạo.
2. B nhận được bản mã c, B giải mã ở chế độ truyền tin mật để khôi
phục thông điệp mật m1 D(c, k , r1 ) , với D là thuật toán giải mã.
3. Trong trường hợp A hoặc B hoặc cả hai bên A, B bị tấn công cưỡng
ép. A hoặc B hoặc cả A, B sẽ trình ra khóa mã k , ngẫu nhiên giả mạo r2 , bản
mã c E (m2 , k , r2 ) và thông điệp giả mạo: m2 D(c, k , r2 ).
MHCTCT khóa công khai
1. A sử dụng khóa công khai của B là
pk B
mã hóa:
c E (m1 , rA , pkB ) E (m2 , rA , pkB ) , với E là thuật toán mã hóa, rA là ngẫu
1
2
1
nhiên cục bộ bí mật của A, rA là ngẫu nhiên cục giả mạo của A.
2
2. B nhận được bản mã c, B giải mã ở chế độ truyền tin mật để khôi
phục thông điệp mật m1 D(c, rB , skB ) , với D là thuật toán giải mã, sk B là khóa
1
riêng của B, rB là ngẫu nhiên cục bộ bí mật của B dùng để giải mã ứng với
1
bản rõ mà A sử dụng rA để mã hóa.
1
- Xem thêm -