LỜI CAM ĐOAN . i
LỜI CẢM ƠN . ii
MỤC LỤC. iii
DANH MỤC CÁC TỪ VIẾT TẮT . ix
DANH MỤC CÁC KÝ HIỆU. xii
DANH MỤC CÁC BẢNG. xiv
DANH MỤC CÁC HÌNH VẼ.xv
MỞ ĐẦU.1
CHƯƠNG 1. TỔNG QUAN VỀ MẬT MÃ VÀ CÁC HỆ MẬT DỰA TRÊN
VÀNH ĐA THỨC .10
1.1 MỞ ĐẦU CHƯƠNG.10
1.2 TỔNG QUAN VỀ MẬT MÃ.10
1.2.1 Mật mã khóa bí mật .10
1.2.2 Mật mã khóa công khai.12
1.2.3 Mật mã lai ghép .14
1.2.4 Độ an toàn của một hệ mật .15
1.2.5 Thí nghiệm đánh giá độ an toàn không thể phân biệt.18
1.2.6 Phương pháp đánh giá độ an toàn ngữ nghĩa của các hệ mật.20
1.2.7 Một số tham số khác được sử dụng để đánh giá các hệ mật.22
1.3 CÁC HỆ MẬT DỰA TRÊN VÀNH ĐA THỨC.23
1.3.1 Các hệ mật khoá bí mật dựa trên vành đa thức.23
1.3.2 Các hệ mật khoá công khai dựa trên vành đa thức .24iv
1.3.3 Các hệ mật lai ghép dựa trên vành đa thức.26
1.4 TIỀM NĂNG ỨNG DỤNG CỦA VÀNH ĐA THỨC CHẴN TRONG MẬT
MÃ VÀ CÁC VẤN ĐỀ MỞ.26
1.4.1 Các vấn đề chung với các hệ mật dựa trên vành đa thức chẵn .26
1.4.2 Các tiềm năng ứng dụng của vành đa thức chẵn trong mật mã.27
1.5 KẾT LUẬN CHƯƠNG.28
CHƯƠNG 2. VÀNH ĐA THỨC CHẴN.30
2.1 MỞ ĐẦU CHƯƠNG.30
2.2 TỔNG QUAN VỀ VÀNH ĐA THỨC.30
2.2.1 Các định nghĩa và ký hiệu.30
2.2.2 Lũy đẳng trong vành đa thức Rn .32
2.2.3 Các phần tử khả nghịch trong Rn .34
2.2.4 Đa thức bù và nghịch đảo mở rộng trong các vành Rn với n lẻ.36
2.3 VÀNH ĐA THỨC CHẴN, CÁC THẶNG DƯ BẬC HAI VÀ CÁC PHẦN
TỬ LIÊN HỢP .37
2.3.1 Các định nghĩa .38
2.3.2 Tính chất của các thặng dư bậc hai.38
2.3.3 Tính chất của các CE của lũy đẳng e1 1 trên vành đa thức chẵn.41
2.4 VÀNH ĐA THỨC CHẴN TUYỆT ĐỐI
R2k .41
2.4.1 Tập các phần tử khả nghịch trong R2k .41
2.4.2 Thuật toán tính phần tử nghịch đảo trong R2k .44
2.5 VÀNH ĐA THỨC CHỈ CÓ HAI LỚP KỀ CYCLIC
R2C .45
2.5.1 Các định nghĩa .45v
2.5.2 Tập các phần tử khả nghịch trên vành R2C .45
2.5.3 So sánh vành
R2C với vành R2k .46
2.6 KẾT LUẬN CHƯƠNG.47
CHƯƠNG 3. CÁC HỆ MẬT DỰA TRÊN VÀNH ĐA THỨC CHẴN.48
3.1 MỞ ĐẦU CHƯƠNG.48
3.2 HỆ MẬT KHÓA BÍ MẬT RISKE.48
3.2.1 Giới thiệu .48
3.2.2 Cấu trúc đại số nền tảng của RISKE .49
3.2.3 Thủ tục tạo khóa .50
3.2.4 Thủ tục mã hóa .50
3.2.5 Thủ tục giải mã .51
3.2.6 Ví dụ minh họa .51
3.2.7 Phân tích độ an toàn lý thuyết của RISKE .52
3.2.8 Phân tích hiệu năng lý thuyết của RISKE .55
3.2.9 Lựa chọn tham số.55
3.2.10 So sánh RISKE với OTP .56
3.2.11 Kết luận về hệ mật RISKE .57
3.3 HỆ MẬT LAI GHÉP QRHE.57
3.3.1 Giới thiệu .57
3.3.2 Sơ đồ hệ mật lai ghép QRHE.58
3.3.3 Cấu trúc đại số nền tảng của QRHE .59
3.3.4 Thủ tục tạo khóa .60
3.3.5 Thủ tục mã hóa .60
3.3.6 Thủ tục giải mã .60vi
3.3.7 Ví dụ minh họa .61
3.3.8 Phân tích độ an toàn lý thuyết của QRHE .62
3.3.9 Phân tích hiệu năng lý thuyết của QRHE .63
3.3.10 Lựa chọn tham số .63
3.3.11 Kết luận về QRHE.64
3.4 HỆ MẬT KHÓA CÔNG KHAI IPKE .64
3.4.1 Giới thiệu .64
3.4.2 Hàm cửa sập dựa trên các phần tử khả nghịch trong R2k .65
3.4.3 Không gian các cửa sập trong R2k .66
3.4.4 Cấu trúc đại số nền tảng của IPKE .67
3.4.5 Thủ tục tạo khóa .68
3.4.6 Thủ tục mã hóa .68
3.4.7 Thủ tục giải mã .68
3.4.8 Chứng minh thủ tục giải mã .69
3.4.9 Ví dụ minh họa .69
3.4.10 Phân tích độ an toàn lý thuyết của IPKE.72
3.4.11 Phân tích hiệu năng lý thuyết của IPKE.74
3.4.12 Lựa chọn tham số .75
3.4.13 Kết luận về IPKE.76
3.5 KẾT LUẬN CHƯƠNG.76
CHƯƠNG 4. CÁC HỆ MẬT MỞ RỘNG DỰA TRÊN VÀNH ĐA THỨC CHẴN
KẾT HỢP VỚI CÁC VÀNH ĐA THỨC KHÁC.78
4.1 MỞ ĐẦU CHƯƠNG.78
4.2 HỆ MẬT KHÓA CÔNG KHAI DTRU .79vii
4.2.1 Giới thiệu .79
4.2.2 Hệ mật NTRU.79
4.2.3 Ý tưởng về hệ mật DTRU.84
4.2.4 Hệ mật DTRU.84
4.3 HỆ MẬT KHÓA BÍ MẬT E-RISKE .95
4.3.1 Giới thiệu .95
4.3.2 Cấu trúc đại số nền tảng của E-RISKE.96
4.3.3 Thủ tục tạo khóa .96
4.3.4 Thủ tục mã hóa .97
4.3.5 Thủ tục giải mã .97
4.3.6 Ví dụ minh họa .98
4.3.7 Phân tích độ an toàn lý thuyết của E-RISKE.99
4.3.8 Phân tích hiệu năng lý thuyết của E-RISKE.102
4.3.9 Lựa chọn tham số.102
4.3.10 Kết luận về E-RISKE .102
4.4 HỆ MẬT LAI GHÉP HpNE.103
4.4.1 Giới thiệu .103
4.4.2 Hệ mật pNE .103
4.4.3 Hệ mật lai ghép HpNE.105
4.4.4 Kết luận về HpNE.109
4.5 KẾT LUẬN CHƯƠNG.110
KẾT LUẬN.111
DANH MỤC CÔNG TRÌNH CÔNG BỐ CỦA TÁC GIẢ.114
TÀI LIỆU THAM KHẢO.116viii
PHỤ LỤC 1: TẬP CÁC PHẦN TỬ n N n 2C , 10000 .126
143 trang |
Chia sẻ: trungkhoi17 | Lượt xem: 501 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Luận án Các hệ mật dựa trên vành đa thức chẵn - Cao Minh Thắng, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ng , giả sử là một đa thức có bậc tối đa là với
* 1, 2kp p , nếu một đa thức
2 1
0
(1 )
k
i
i
p
i
gg xx f
1
0
p
i
i
i
f g x
thì .
Chứng minh: Vì deg 1f p , ta có thể biểu diễn
1
2
0
|
p
i
i i
i
f f x f Z
và
1 1 1 1
0 0 0 0
. .
p p p p
i p i i i p
i i i i
i i i i
g f x x f x f x f x
Đổi biến i j p ta có
1 2 1
0
p p
i p j
i j
i j p
f x f x
và
1 2 1
0
p p
i i
i i
i i p
g f x f x
.
Rõ ràng , [0, 1]
i i
f g i p hay
1
0
.
p
i
i
i
f g x
Vậy ta có điều phải chứng
minh.
Bổ đề này chỉ ra rằng nếu bậc của đa thức f đủ nhỏ thì ta có thể tìm đa thức
này một cách dễ dàng từ đa thức (1 )pg f x . Cùng với Bổ đề 2-11, bổ đề này là
nền tảng để xây dựng hệ mật khóa công khai IPKE (mục 3.4).
44
2.4.2 Thuật toán tính phần tử nghịch đảo trong
2k
R
Như đã chứng minh trong Định lý 2-3, mọi phần tử
2k
f R có trọng số lẻ đều
khả nghịch. Vấn đề đặt ra là nếu sử dụng f làm khóa trong thủ tục mã hóa của các
hệ mật thì để giải mã thành công cần phải biết nghịch đảo g của nó.
Theo [17], 2kn được chứng minh là cấp cực đại của tất cả các đa thức
2k
f R hay 2 1
k
f . Điều này cho thấy 2 1
k
g f chính là phần tử nghịch đảo của
f trong
2k
R .
Tuy nhiên, cũng theo [17], trong
2k
R ord( )f luôn là ước của 2k hay
ord( ) 2 | [1, ]if i k . Do đó, ta có thể tính nghịch đảo của f bằng thuật toán sau
hiệu quả hơn phép tính 2 1
k
g f .
Thuật toán 2-1 g
2k
f I: Thuật toán tính nghịch đảo của đa thức
VÀO: Đa thức
2k
f I .
RA: Đa thức
2k
g I , 1g f .
THUẬT TOÁN:
g f ;
2a f ;
for 1i to 1k {
if 1g f exit;
g g a ;
2a a ;
}.
Lấy ví dụ, trong 32I , để tính nghịch đảo của
5 4 3f x x x , vì
2ord( ) 2 4,f sử dụng thuật toán trên, ta có thể tính 3g f tại bước 2i , thay vì
phải tính 7.g f
Thuật toán này có số bước lặp tối đa là 1k . Với các giá trị độ dài khóa
1024n , ứng với 10k , số vòng lặp là không đáng kể.
45
2.5 VÀNH ĐA THỨC CHỈ CÓ HAI LỚP KỀ CYCLIC 2CR
2.5.1 Các định nghĩa
Định nghĩa 2-10 [18
2
[ ] / ( 1)
n
nx xR Z ]: Vành đa thức được gọi là vành đa thức
( 1)nx chỉ có hai lớp kề cyclic nếu nhị thức có thể thừa số hóa thành dạng
1 (1 )nx x T
trong đó
1
0
n
i
i
T x
là một đa thức bất khả quy trong 2[ ]Z x .
Thuật toán để xác định 2Cn N (tập các số nguyên để nR là một vành đa thức
chỉ có hai lớp kề cylic) được mô tả trong [14]. Điểm đặc biệt là các phần tử 2Cn N
đều là các số nguyên tố. Một số phần tử 2 , 10000Cn N n được trình bày trong phụ
lục 1.
2.5.2 Tập các phần tử khả nghịch trên vành 2CR
Định lý 2-4 2,n CR n N f f: Trong , mọi đa thức là khả nghịch khi và chỉ khi có
2C
Ktrọng số lẻ và, hệ quả là , tỉ lệ giữa số phần tử khả nghịch trên tổng số đa thức
2
,
C
Rtrong đạt cực đại.
Chứng minh: Theo [18], nếu 2Cn N thì n là một số nguyên tố lẻ và vì vậy
( )w T luôn chẵn.
Khi ( )w f lẻ thì gcd( , 1) gcd( ,( 1) ) 1
nf x f x T . Theo định lý Euclid,
luôn tồn tại
2
,
C
u v R sao cho
( 1) 1nu f v x
hay 1u f và f là khả nghịch.
Ngược lại nếu ( )w f chẵn, theo Bổ đề 2-5, f không khả nghịch.
46
Ngoài ra, vì tất cả các phần tử có trọng số lẻ trong vành đều khả nghịch mà số
các phần tử này chiếm một nửa tổng số đa thức trong vành nên rõ ràng số tỉ lệ 2CK
đạt cực đại là 1/2. Vậy ta có điều phải chứng minh.
Theo [18], 12 1nm là cấp cực đại của các đa thức nf R và 1
mf hay
1mu f là nghịch đảo của f trong 2|n CR n N . Ví dụ, trong 5R , để tìm nghịch đảo
của 4 3 1f x x , do 5 1max(ord( )) 2 1 15f , ta có thể tính
15 1 4 3u f x x x .
Bên cạnh đó, trong 2CR , với mỗi một đa thức f có trọng số Hamming lẻ thì
luôn tồn tại một đa thức
0n
g e f có trọng số Hamming chẵn. Mặt khác, theo Định
lý 2-2, g là nghịch đảo mở rộng của f . Do đó, tập 2|n CE n N sẽ bao gồm tất cả
các đa thức có trọng số Hamming chẵn và 12 1n
n
E (trừ đa thức tầm thường
0g ). Ví dụ, trong 3R , có
22 4 đa thức khả nghịch 2 2{1, , ,1 }x x x x và tương
ứng 22 1 3 đa thức khả nghịch mở rộng
2 2{ ,1 ,1 }x x x x , trừ đa thức 0 .
Định lý này chỉ ra rằng
2C
R là một vành đặc biệt có một tập các phần tử khả
nghịch rất lớn và rất dễ xác định. Điều này rất thuận lợi để xây dựng các hệ mật có
khóa là các phần tử khả nghịch trên
2C
R vì thuật toán tạo khóa rất đơn giản và không
gian khóa đủ lớn để chống lại các tấn công vét cạn khóa.
Định lý này sẽ được ứng dụng để xây dựng hệ mật E-RISKE (mục 4.3).
2.5.3 So sánh vành 2CR với vành 2kR
Điểm tương đồng của hai lớp vành này là có tỉ lệ số phần tử khả nghịch trên
tổng số đa thức trong vành là cao nhất và là 1/2. Và có thể thấy một đa thức f có
khả nghịch trong một vành 2CR nào đó thì cũng sẽ khả nghịch trong một vành 2kR
nào đó miễn là f cũng thuộc vành đó và ngược lại.
Ví dụ, 3 2 1f x x khả nghịch trong 5R với nghịch đảo
4 3
5
g x x x
cũng khả nghịch trong 16R với nghịch đảo
47
15 13 10 9 8 6 3 2
16
g x x x x x x x x x .
Không những thế, một đặc điểm quan trọng nữa là bậc hữu hạn của hai lớp
vành này luôn nguyên tố cùng nhau. Đặc điểm này sẽ được khai thác để xây dựng hệ
mật DTRU (mục 4.2).
2.6 KẾT LUẬN CHƯƠNG
Kết quả nổi bật nhất trong chương này là nghiên cứu sinh đã chứng minh hai
loại vành đa thức đặc biệt (
2k
R ,
2C
R ) có tỉ lệ giữa số phần tử khả nghịch trên tổng số
đa thức của vành là cực đại (Định lý 2-3, Định lý 2-4) và đã đề xuất được một thuật
toán hiệu quả để xác định nghịch đảo của các phần tử khả nghịch trên vành
2k
R (Thuật
toán 2-1). Các kết quả này là cơ sở để đề xuất các hệ mật RISKE (mục 3.2), IPKE
(mục 3.4) và DTRU (4.2).
Một kết quả đáng chú ý khác của nghiên cứu sinh là chỉ ra trong các vành đa
thức nR với n lẻ còn tồn tại một lớp phần tử đặc biệt, các phần tử khả nghịch mở
rộng có đặc tính tương đồng với các khả nghịch truyền thống (Định nghĩa 2-5). Các
phần tử này cũng có thể được sử dụng làm khóa trong các hệ mật (Định lý 2-2) tương
tự như các phần tử khả nghịch truyền thống. Kết quả này cho phép linh hoạt trong
lựa chọn vành đa thức nền tảng để xây dựng các hệ mật và được cụ thể hóa bằng một
hệ mật E-RISKE (mục 4.4) hoạt động cả trên
2C
R , một cải tiến của hệ mật RISKE
vốn chỉ hoạt động trên
2k
R .
Ngoài ra, hai công thức tính căn bậc hai chính và phần tử liên hợp của một
thặng dư bậc hai trong vành
2n
R được nghiên cứu sinh xây dựng (Bổ đề 2-9 và Bổ đề
2-10) là nền tảng quan trọng để đề xuất hệ mật lai ghép QRHE trong mục 3.3.
48
CHƯƠNG 3. CÁC HỆ MẬT DỰA TRÊN VÀNH ĐA
THỨC CHẴN
3.1 MỞ ĐẦU CHƯƠNG
Trong chương này, luận án đề xuất ba hệ mật mới dựa trên vành đa thức chẵn
2n
R bao gồm RISKE, QRHE và IPKE tương ứng với ba công trình [C2], [J1] và [J3]
của nghiên cứu sinh. Trong đó: RISKE, một hệ mật khóa bí mật có độ an toàn IND-
CPA, được xây dựng dựa trên các phần tử khả nghịch trong vành đa thức chẵn tuyệt
đối
2k
R sẽ được trình bày trong mục 3.2; Hệ mật lai ghép QRHE hoạt động dựa trên
đặc tính của các thặng dư bậc hai và các phần tử liên hợp của chúng trong vành chẵn
2n
R sẽ được mô tả trong mục 3.3; Cuối cùng, hệ mật khóa công khai IPKE các phần
tử khả nghịch trong vành
2k
R làm cửa sập sẽ được đề xuất trong mục 3.4.
Ngoài các tấn công vét cạn để đánh giá độ an toàn bản rõ và độ an toàn khóa,
tấn công CPA sẽ được sử dụng trong thí nghiệm đánh giá độ an toàn không thể phân
biệt để đánh giá độ an toàn ngữ nghĩa của các hệ mật được đề xuất.
Trong các thuật toán tạo khóa, mã hóa và giải mã của các hệ mật, ta quy ước
Alice là bên mã hóa và gửi bản mã còn Bob là bên nhận bản mã và giải mã.
3.2 HỆ MẬT KHÓA BÍ MẬT RISKE
3.2.1 Giới thiệu
Hệ mật OTP (One-Time Pad) được Vernam đề xuất vào những năm 1920 và
được Shannon chứng minh là có độ an toàn hoàn hảo vào năm 1949 [89]. OTP hoạt
động trên trường (2) với các phép mã hóa và giải mã đều là các phép tính XOR
rất đơn giản với độ phức tạp tính toán là ( )O n trong đó n là độ dài khóa. Ngoài ra,
OTP hiện vẫn là hệ mật an toàn và vẫn được sử dụng trong các lĩnh vực rất đặc thù
đòi hỏi độ an toàn rất cao như quốc phòng, an ninh và ngoại giao. Tuy nhiên, nhược
điểm lớn nhất của OTP là khóa bí mật phải được chọn ngẫu nhiên và chỉ được sử
dụng duy nhất một lần để tránh tấn công KPA. Ngoài ra, khóa bí mật của OTP cần có
độ dài ít nhất bằng độ dài bản rõ dẫn đến hiệu quả mã hóa không cao. Những nhược
49
điểm này khiến cho OTP không phù hợp với các ứng dụng trong thương mại. Trên
thực tế, các nghiên cứu mật mã khóa bí mật cũng đều đi theo hướng xây dựng các hệ
mật có khả năng mã hóa những bản tin dài với khóa ngắn và có thể tái sử dụng mà
vẫn đảm bảo độ an toàn ngữ nghĩa thay vì xây dựng các hệ mật có độ an toàn hoàn
hảo [89].
Vấn đề đặt ra là có thể sử dụng vành đa thức chẵn
2n
R để xây dựng một hệ
mật có độ phức tạp mã hóa và giải mã tương đương với OTP nhưng có khóa bí mật
ngắn hơn độ dài của bản tin mà vẫn đảm bảo hệ mật có độ an toàn chứng minh được
hay không.
Quan sát kỹ ta thấy, thuật toán mã hóa và giải mã trong OTP thực ra là một
phép cộng trong vành đa thức
n
R , trong đó độ dài bản rõ, bản mã và khóa đều là n
bit. Ý tưởng ở đây nếu thay thế phép cộng đa thức trong OTP bằng một phép nhân
trong vành đa thức thì ta có thể sử dụng các phần tử khả nghịch trong
n
R để làm khóa
cho một hệ mật khóa bí mật và nếu tập này đủ lớn thì hệ mật sẽ đạt mức an toàn ngữ
nghĩa nào đó. Ngoài ra, nếu chọn khóa ngắn hơn bản rõ mà vẫn đảm bảo mức an toàn
ngữ nghĩa thì hệ mật được đề xuất sẽ hiệu quả hơn OTP.
Với Định lý 2-3, ta thấy rằng, tất cả các đa thức có trọng số Hamming lẻ trong
lớp vành đa thức chẵn tuyệt đối
2k
R là khả nghịch. Như vậy, tập này đủ lớn để có thể
sử dụng làm khóa trong hệ mật nêu trên. Dựa trên các phần tử khả nghịch trên
2k
R ,
nghiên cứu sinh sẽ đề xuất một hệ mật khóa bí mật, có tên là RISKE (Random
Invertible Secret-Key Encryption scheme) có độ phức tạp tính toán 2( )O n với độ dài
khóa không nhất thiết phải bằng độ dài bản tin mà vẫn có độ an toàn IND-CPA.
3.2.2 Cấu trúc đại số nền tảng của RISKE
Cấu trúc đại số nền tảng của RIKSE so sánh với OTP với cùng kích thước
khóa
*N được tóm tắt trong Bảng 3-1. Các giá trị kích thước được tính theo đơn
vị bit.
50
Để xây dựng hệ mật RISKE, Alice và Bob thống nhất một số nguyên dương
k để xác định vành đa thức , 2k
n
R n và độ dài bản rõ cùng một số nguyên 2kN
để xác định độ dài khóa bí mật. Việc lựa chọn độ dài khóa N nhỏ hơn độ dài của bản
rõ n nhằm đảm bảo hiệu quả mã hóa của RISKE so với OTP, trong đó khóa và bản
rõ có cùng độ dài N .
Bảng 3-1: Cấu trúc đại số nền tảng của hệ mật RISKE và OTP
Các tham số RISKE OTP
Vành đa thức *
2
[ ] / ( 1) | 2 ,n k
n
R Z x x n k (2)
Kích thước khóa *,N n N N
Không gian khóa { | 0 deg 1}
n
s I s N { {0,1} }Ns
Không gian bản rõ { | deg ( 1)}
n
m R m n
Kích thước bản rõ 1n N
Không gian bản mã
n
R
Kích thước bản mã n N
3.2.3 Thủ tục tạo khóa
Với 0 }{ | deg 1
n
I s Ns , Alice và Bob chia sẻ một đa thức khả
nghịch ngẫu nhiên s làm khóa bí mật chung. Do deg 1s N ta có thể biểu diễn
s bằng N bit. Điều kiện deg 0s để đảm bảo ta không thể dùng 1s làm khóa bí
mật trong RISKE. Hệ quả là,
12 1N . (3.1)
3.2.4 Thủ tục mã hóa
Mỗi phiên mã hóa ( 1)n bit bản rõ m nào đó, Alice sử dụng thủ tục tạo khóa
trên để tạo và chia sẻ với Bob một khóa ngẫu nhiên mới s
Tiếp theo, Alice tính n bit
51
1( ) 1 mod 2. nM w m x m (3.2)
sau đó tính n bit bản mã
.c M s (3.3)
và gửi c đến Bob.
Theo Bổ đề 2-6, ( )w M luôn lẻ do đó, theo Định lý 2-3, cả M và c đều có
trọng số lẻ và khả nghịch trong
2k
R .
3.2.5 Thủ tục giải mã
Để giải mã n bit bản mã c , dựa vào khóa phiên s , đầu tiên Bob tính n bit
1M c s (3.4)
trong đó 1s là nghịch đảo của s trong
2k
R tính bằng Thuật toán 2-1, từ đó sử dụng
công thức (2.15) khôi phục 1n bit bản rõ
1
1
. n
n
m M x M
(3.5)
với
1n
M
là hệ số ứng với đơn thức 1nx trong biểu diễn đa thức của M .
3.2.6 Ví dụ minh họa
Alice và Bob lựa chọn 32 8n và 5N để xây dựng hệ mật RIKSE.
a) Tạo khóa
Alice và Bob chia sẻ 5 bit khóa bí mật (00111)s dạng nhị phân hay
2 1s x x dạng đa thức. Vì ( ) 3w s nên nghịch đảo của s trong 8R , tính bởi
Thuật toán 2-1, là 7 51 4 2x x xs x x .
b) Mã hóa
Để mã hóa 7 bit bản rõ (1010011)m dưới dạng nhị phân hoặc
6 4 1m x x x dạng đa thức, Alice đầu tiên, bằng công thức (3.2), tính 8 bit
7 6 4 1M x x x x sau đó, bằng công thức (3.3), tính và gửi 8 bit bản mã
5 4 3 1x x xM xc s
52
dạng đa thức hoặc (00111011)c dạng nhị phân tới Bob.
c) Giải mã
Để giải mã 8 bit bản mã (00111011)c , bằng công thức (3.4), đầu tiên Bob
tính 8 bit
1 7 6 4 1M s c x x x x .
Sau đó, bằng công thức (3.5), với 7 1M , Bob khôi phục 7 bit bản rõ
7 7 6 5 6 4( 1) 1m x x x x x x x x .
3.2.7 Phân tích độ an toàn lý thuyết của RISKE
Để đánh giá độ an toàn cho hệ mật RISKE, trước hết, ta sẽ chứng minh bổ đề
sau đây.
Bổ đề 3-1 1 1( ) (2 1)nf n n: là hàm không đáng kể với biến .
Chứng minh:
Theo [54], 2
n
là một hàm không đáng kể và vì tổng của hai hàm không đáng
kể cũng là một hàm không đáng kể nên ta có ( 2) 22 2 4.2n n n là một hàm không
đáng kể. Theo Định nghĩa 1-4, với mọi hằng số c luôn tồn tại
0
n sao cho
0
n n thì
( 2)2 n cn .
Vì 1 1 ( 2) 22 2 2.2n n n và
22 1n khi 2n , ta luôn có 2 1 22 2 2 1n n n
hay 1 1 ( 2)(2 1) 2n n với 2n . Do đó, với mọi hằng số c luôn tồn tại
0 0
max{ ,2}N n để sao cho
0
n N thì
( 1) 1 ( 2)(2 1) 2n n cn .
Hệ quả là, 1 1( ) (2 1)nf n là một hàm không đáng kể với biến n và ta có điều phải
chứng minh.
a) Với các tấn công vét cạn
Kẻ tấn công có thể sử dụng phương pháp vét cạn để tìm khóa bí mật s .
Tuy nhiên, với độ an toàn khóa 2 1N xác suất để đoán đúng khóa là
53
1/ (2 1)N . Đây một hàm không đáng kể của N nên có thể coi RISKE là an toàn đối
với loại tấn công này.
Về lý thuyết, có thể sử dụng tấn công vét cạn để tìm bản rõ nhưng điều này
là không thực tế vì trong RIKSE độ an toàn bản rõ là 12n còn lớn hơn cả độ an
toàn khóa.
b) Với các tấn công EAV
Định lý 3-1: RISKE là hệ mật có độ an toàn IND-EAV.
Chứng minh: Nhắc lại rằng, với *c M s ta có thể tính 1M s c với 1s
là nghịch đảo của s trong
2k
R . Mặc dù kẻ tấn công không biết khóa bí mật,
vẫn có thể thử từng giá trị 's để tính 1' ( ')M s c cho đến khi 'M M . Bằng
cách này, xác suất để giải mã thành công mà không cần biết khóa bí mật là
1 1 1Pr[ ' ] Pr[( ') ] Pr[( ') ]M M s c M s M c
với 1c là nghịch đảo của c trong LR .
Vì 's được lựa chọn ngẫu nhiên trong trong khi M và 1c là cố định nên
1 1 1Pr[ ' ] Pr[( ') ]M M s M c .
Trong tấn công EAV, với bản mã thách thức bc M s nhận được từ thủ tục
mã hóa, có thể tính b b bằng cách đoán đơn giản với xác suất 1/2 hoặc thử lần
lượt tất cả các khóa 's để tính 1' ( ')M s c cho đến khi 0'M M hoặc
1
'M M . Giả sử rằng phải thử ( )p N lần để có 0'M M hoặc 1'M M , trong đó
( )p N là một đa thức của N (để chắc chắn rằng tấn công này có thể thực hiện trong
thời gian đa thức), ta có
eav, 0 1
1
1
Pr[SecK ( ) 1] ( ). Pr[ ' ].Pr[ 0] Pr[ ' ].Pr[ 1]
2
1 1 1 1 ( ) 1 ( )
( ). .
2 2 2 2 2 2 1n
N p N M M b M M b
p N p N
p N
54
Theo Bổ đề 3-1, vì ( 1) 1(2 1)N là một hàm không đáng kể của biến N đồng
thời do ( )p N là một đa thức nên, theo Bổ đề 1-2,
( 1)
( )
2 1N
p N
cũng là hàm không đáng kể của N . Vì vậy, theo Định nghĩa 1-6, RISKE có độ an
toàn IND-EAV và ta có điều phải chứng minh.
c) Với các tấn công CPA
Định lý 3-2: RISKE là hệ mật có độ an toàn IND-CPA.
Chứng minh: Nhắc lại rằng, với bản mã thu được {0,1* },
b
c M s b . Nếu
' '
b
c M s với 's thì xác suất để 'c c là
1 1 1Pr[ ' ] Pr[ ' ] Pr[ ' ]
b b b
c c M c M c s M c
với 1
b
M là nghịch đảo của
b
M trong
2k
R .
Do 's được bộ mã hóa chọn ngẫu nhiên trong tại mỗi phiên trong khi 1
b
M
và c không đổi nên
1Pr[ '] Pr ]
1
[ '
b
c c s M c
Quay trở lại thí nghiệm cpa
,
SecK ( )N
, với bản mã thách thức *
b
c M s ,
có thể đoán đúng b b bằng một trong hai cách sau:
1. Sử dụng thuật toán tương tự để đoán đúng b như trong thí nghiệm
eav
,
SecK ( )N
;
2. Chọn ngẫu nhiên ' {0,1}b và tiếp tục truy vấn bộ mã hóa ( )q N lần với đầu
vào 'bM và nhận về bản mã tương ứng 'c cho đến khi 'c c . Ở đây, ( )q N là
một đa thức của N để đảm bảo chắc chắn tấn công này có thể thực thi trong
thời gian đa thức.
Do đó, ta có
55
cpa eav
, ,
eav
,
1
Pr[SecK ( ) 1] Pr[SecK ( ) 1] ( ).Pr[ ' ]
1
= Pr[SecK ( ) 1] ( ).
1 ( ) ( ) 1 ( ) ( )
.
2 2 2 1N
N N q N c c
N q N
p N q N p N q N
Theo Bổ đề 3-1, vì ( 1) 1(2 1)N là một hàm không đáng kể của biến N đồng
thời do ( ) ( ) ( )g N p N q N cũng là một đa thức nên, theo Bổ đề 1-2,
( 1)
( )
2 1N
g N
là hàm không đáng kể của N . Hệ quả là, theo Định nghĩa 1-7, RISKE có độ an toàn
IND-CPA và ta có điều phải chứng minh.
3.2.8 Phân tích hiệu năng lý thuyết của RISKE
Ưu điểm quan trọng của RISKE là độ phức tạp tính toán thấp, cả thuật toán
mã hóa và giải mã chỉ sử dụng một phép cộng và nhân đa thức trong vành đa thức
chẵn tuyệt đối
2k
R với độ phức tạp tính toán
2( )n . So với hệ mật OTP, khóa bí mật
s trong RISKE có độ dài N nhỏ hơn độ dài n của bản rõ.
Tương tự OTP, nhược điểm của RISKE là phải thay đổi khóa ngẫu nhiên mới
s theo từng phiên. Vì lý do này, RISKE nên được sử dụng kết hợp với một hệ
mật khóa công khai nào đó để xây dựng một hệ mật lai ghép theo mô hình
KEM/DEM. Nếu hệ mật khóa công khai được chọn có độ an toàn IND-CPA thì hệ
mật lai ghép cũng sẽ có độ an toàn IND-CPA [28]. Ngoài ra, nếu hệ mật khóa công
khai được chọn có hệ số mở rộng bản tin lớn, ta có thể điều chỉnh N và n để giảm
giá trị này.
3.2.9 Lựa chọn tham số
Vì RISKE có độ an toàn IND-CPA, xác suất để tấn công được RIKSE là
không đáng kể. Tuy nhiên, để ngăn chặn các tấn công vét cạn, giá trị N cần đủ lớn.
Giá trị khuyến nghị cho các ứng dụng thực tế hiện nay là 1024N [64] và do đó
56
10k . Trong trường hợp này, số khóa cần vét cạn ít nhất sẽ là 1 20132 2N . Đối với
các ứng dụng đòi hỏi độ an toàn cao, giá trị khuyến nghị là 4096N .
Ngoài ra, do n càng lớn hơn so với N thì hiệu quả mã hóa của RISKE càng
cao. Điều này đặc biệt hữu ích để cải thiện hệ số mở rộng bản tin của các hệ mật khóa
công khai trong sơ đồ lai ghép với RISKE. Mặc dù vậy, giá trị này cần phải được lựa
chọn phù hợp cho từng ứng dụng cụ thể.
3.2.10 So sánh RISKE với OTP
Các so sánh về độ an toàn và hiệu năng của RIKSE với OTP được tóm tắt
trong Bảng 3-2. Với cùng kích thước bản rõ là n , khóa bí mật s của RISKE có kích
thước nhỏ hơn. Ngoài ra, khác với OTP, khóa bí mật s trong RISKE có thể sử dụng
lại miễn là đảm bảo phân bố đều trong không gian khóa.
Tuy vậy, để có thể sử dụng các khóa ngắn hơn bản rõ, thuật toán mã hóa và
giải mã trong RISKE phải sử dụng phép nhân đa thức với độ phức tạp 2( )O n . Đây
cũng là một nhược điểm của RISKE so với OTP nhưng có thể chấp nhận được vì các
phép nhân đa thức trong vành rất dễ thực hiện bằng cả phần cứng lẫn phần mềm.
Bảng 3-2: So sánh hiệu năng và độ an toàn của RISKE và OTP
Các tham số RISKE OTP
Kích thước bản rõ 1n n
Kích thước bản mã n n
Kích thước khóa N n n
Độ phức tạp mã hóa 2( )O n ( )O n
Độ phức tạp giải mã 2( )O n ( )O n
Độ an toàn IND-CPA Độ an toàn hoàn hảo
57
3.2.11 Kết luận về hệ mật RISKE
Có thể coi RISKE là một biến thể của OTP trên vành đa thức
2k
R với một số
ưu điểm về sự linh hoạt trong lựa chọn và quản lý khóa bí mật. Tuy nhiên, để đưa vào
sử dụng trên thực tế, việc lựa chọn một hệ mật khóa công khai phù hợp để chia sẻ
khóa phiên của RISKE là một vấn đề mở. Một kết quả của hướng nghiên cứu này sẽ
được trình bày trong mục 4.4.
Bên cạnh đó, do RISKE hoạt động dựa trên tập các phần tử khả nghịch nên
tìm ra các lớp con của
n
R khác có hệ số
n
K đạt cực đại hoặc gần cực đại để lựa chọn
linh hoạt cấu trúc đại số nền tảng của RISKE cũng là một hướng nghiên cứu đáng
quan tâm.
3.3 HỆ MẬT LAI GHÉP QRHE
3.3.1 Giới thiệu
Như đã đánh giá, mặc dù có độ an toàn IND-CPA, hệ mật khóa bí mật RISKE
vẫn có một nhược điểm là phải sử dụng khóa phiên (session-key) giống như hệ mật
OTP. Để phù hợp với các ứng dụng thực tế, RISKE cần phải được sử dụng kết hợp
với một hệ mật khóa công khai phù hợp và thường là theo mô hình KEM/DEM như
đã giới thiệu ở mục 1.2.3. Bên cạnh đó, xét về hiệu năng, phép mã hóa và giải mã của
RISKE vẫn là phép nhân đa thức có độ phức tạp 2( )O n .
Vấn đề đặt ra là có thể xây dựng một hệ mật lai ghép trong đó các thuật toán
mã hóa và giải mã đơn giản hơn, ví dụ như sử dụng phép cộng trong vành đa thức với
độ phức tạp ( )O n hay không. Ngoài ra, làm thế nào để có thể cải tiến thủ tục tạo khóa
của RISKE để giảm độ phức tạp khi sử dụng khóa phiên ngẫu nhiên.
Như đã phân tích trong mục 2.3, mỗi trong tổng số 22 n đa thức 2nm R đều là
một phần tử liên hợp với thặng dư bậc hai 2f m . Điều này có nghĩa là mọi đa thức,
tương ứng với mọi bản tin 2n bit, trong 2nR luôn có thể biểu diễn dưới dạng:
2(1 )n t
t U
m x x m
(3.6)
58
hay
(1 )nm x k l (3.7)
trong đó, 2l m và t
t U
k x
đều là các đa thức bậc tối đa ( 1)n và được biểu diễn
bởi các chuỗi n bit.
Với phân tích như trên, nếu coi k là một khóa bí mật và che giấu khóa này
bằng một hệ mật khóa công khai nào đó theo mô hình KEM/DEM thì
(1 )nl x k m (3.8)
là một bản mã mà , nếu không biết k sẽ không thể phát hiện ra m dù thu được l .
Từ Bổ đề 2-9 và Bổ đề 2-10, các phép tính 2l m và t
t U
k x
đều rất đơn giản với
độ phức tạp tính toán chỉ là ( )O n .
Với ý tưởng trên, trong mục này, nghiên cứu sinh đề xuất một hệ mật lai ghép
theo mô hình KEM/DEM có tên là QRHE dựa trên thặng dư bậc hai và các phần tử
liên hợp trong vành đa thức 2nR với các thuật toán tạo khóa, mã hóa và giải mã đơn
giản hơn đồng thời không cần sử dụng khóa phiên như hệ mật RISKE.
3.3.2 Sơ đồ hệ mật lai ghép QRHE
Sơ đồ hệ mật lai ghép QRHE (Quadratic Residue Hybrid Encryption scheme)
theo ý tưởng trên được mô tả chi tiết trong Hình 3-2. Với khối dữ liệu thứ i cần truyền
đi dài 2n bit tương ứng với đa thức
2 1
0
n
j
i ij
j
m m x
(3.9)
Alice sẽ tính toán và mã hóa khóa ik thành bản mã 2,ic (độ dài bit phụ thuộc vào phép
mã hóa khóa) rồi truyền tới Bob qua kênh mở. Ở phía nhận, Bob sẽ giải mã
2,i
c để
lấy khóa ik sau đó sử dụng khóa này để khôi phục được bản rõ im từ
2
1,i i
c m .
59
DEM
DEM
1,i
c
Alice
i
m
Bob
Thám
mã
KEM
i
k
2,ic KEM
t
t U
x
ik
i
m
1,
(1 )n
i i
c k x 2
i
m
Hình 3-1: Sơ đồ hệ mật QRHE
Có thể thấy, QRHE là một biến thể của sơ đồ lai ghép KEM/DEM trên Hình
1-1 vì khóa bí mật ik không tồn tại độc lập mà được tính toán từ bản rõ im bằng cách
phân tích nó thành một phần tử liên hợp của thặng dư bậc hai 2
i
m như trong biểu thức
(3.6).
3.3.3 Cấu trúc đại số nền tảng của QRHE
Cấu trúc đại số nền tảng của QRHE được tóm tắt trong Bảng 3-3. Các giá trị
kích thước được tính theo đơn vị bit. Để xây dựng hệ mật, Alice và Bob thống nhất
giá trị n để xác định vành đa thức chẵn 2nR và một hệ mật khóa công khai làm phần
KEM.
Trong cấu trúc đại số của QRHE, kích thước bản rõ m lớn gấp hai lần kích
thước khóa k . Khóa này được sinh ra từ chính bản rõ m và chứa một phần thông tin
từ m . Ngoài ra, kích thước bản mã 1c là n bit trong khi kích thước bản mã 2c lại phụ
thuộc vào hệ mật được sử dụng làm phần KEM và thường lớn hơn n . Nhìn chung,
hệ số mở rộng bản tin của QRHE sẽ lớn hơn 1. Do đó, cần lựa chọn phần KEM phù
hợp để đảm bảo hệ số mở rộng bản tin của QRHE không quá lớn qua đó đảm bảo
hiệu quả mã hóa.
60
Bảng 3-3: Cấu trúc đại số nền tảng của hệ mật QRHE
Các tham số Giá trị
Vành đa thức
22
2 *[ ] / ( 1) |n
n
R Z x x n
Không gian khóa
2
{ | 0 deg( ) 1}
n
k R k n
Kích thước khóa n
Không gian bản rõ
2n
R
Kích thước bản rõ 2n
Không gian bản mã
Các file đính kèm theo tài liệu này:
- luan_an_cac_he_mat_dua_tren_vanh_da_thuc_chan_cao_minh_thang.pdf